@charset "UTF-8";

/* /////////////////// ここから /////////////////// */

/* ----- トップページ固有 ----- */
.container {
  padding: 0 clamp(0px,calc(50vw / var(--window)),50px);
}

.home-lead {
  font-size: var(--maintxtsize);
  color: var(--txtcolor);
}
.home .btn_more {
  float: right!important;
}
.home_box {
  overflow: hidden;
  padding: calc(150vw / var(--window,7.68)) 0;
}
.h2_ttl {
  font-size: clamp(0rem,calc(54vw / var(--window)),3.375rem);
  font-weight: 700;
  color: var(--txtcolor);
  line-height: 1.75;
}
.h2_ttl_sub {
  font-family: "Gabarito", sans-serif;
  font-size: clamp(0rem,calc(34vw / var(--window)),2.125rem);
  color: var(--maincolor);
  font-weight: 500;
  padding-left: 10px;
}
.btn_calender {
  position: absolute;
  display: block;
  width: calc(140vw / var(--window));
  /* right: 50px; */
  top: calc(340vw / var(--window));
  /* bottom: 50px; */
  z-index: 9;
}
.btn_calender.sanpai {
  right: calc(210vw / var(--window));
}
.btn_calender.ippai {
  right: calc(50vw / var(--window));
}

/* .btn_calender_pc {
  display: none!important;
} */
/* ----- メインビジュアル ----- */
.home-mv__sp {
  position: relative;
  /* background-color: var(--white,#fff); */
  z-index: 2;
}

.catch_area {
  line-height: 0;
  padding: clamp(0px,calc(87vw / var(--window)),87px) clamp(0px,calc(50vw / var(--window)),50px) clamp(0px,calc(106vw / var(--window)),106px);
  background-color: var(--white,#fff);
}
.catch01 {
  font-size: clamp(1rem,calc(80vw / var(--window,7.68)),5rem);
  line-height: 1.4;
  font-weight: 700;
  color: var(--txtcolor,#323232);
}

.catch02 {
  font-size: clamp(1rem,calc(32vw / var(--window,7.68)),2rem);
  line-height: 1.75;
  font-weight: 500;
  color: var(--txtcolor,#323232);
}
.mv01a,.mv01bc {
  position: relative;
  overflow: hidden;
  line-height: 0;
}
.mv01a img,.mv01bc img {
  position: relative;
}
.mv01bc .mv01c {
  width: calc(500vw / var(--window));
  margin-top: calc(-190vw / var(--window,7.68));
  float: right;
  z-index: 3;
}

/* ----- はじめに ----- */
.first {
  position: relative;
  line-height: 0;
  background-color: var(--basecolor,#FCF7E2);
  padding-top: calc(320vw / var(--window,7.68));
  margin-top: calc(-314vw / var(--window,7.68));
  z-index: 1;
}
.first_txt01 {
  font-size: clamp(0rem,calc(46vw / var(--window)),2.875rem);
  line-height: 1.6;
  font-weight: 700;
  padding-top: calc(120vw / var(--window,7.68));
}
.first_txt02 {
  font-size: clamp(0rem,calc(30vw / var(--window)),1.875rem);
  line-height: 1.75;
  font-weight: normal;
  padding-bottom: calc(150vw / var(--window,7.68));
}

/* ----- 事業内容 ----- */
.service {
  background-color: var(--white,#fff);
}
.service_img01,.service_img02 {
  line-height: 0;
}
/* ----- 企業情報 ----- */
.about {
  background-color: var(--basecolor,#FCF7E2);
  padding-bottom: calc(75vw / var(--window,7.68));
}
.about_img0102 {
  position: relative;
  overflow: hidden;
}
.about_img0102 img {
  width: calc(430vw / var(--window,7.68));
  position: relative;
}
.about_img02 {
  float: right;
  margin-top: calc(-80vw / var(--window,7.68));
}

/* ----- ニュース ----- */
.home_img0102 {
  position: relative;
  overflow: hidden;
  line-height: 0;
}
.home_img0102 img {
  position: relative;
}
.home_img01 {
  position: relative;
  width: calc(590vw / var(--window,7.68));
  float: left;
  z-index: 2;
}
.home_img02 {
  position: relative;
  float: left;
  width: 100%;
  margin-top: calc(-85vw / var(--window,7.68));
}
.home-news {
  padding: clamp(48px, 8vw, 88px) 0;
  background-color: var(--white, #fff);
}

.h2_ttl_news {
  display: inline-block;
}
.home-news__head {
  margin-bottom: clamp(28px, 4vw, 40px);
}

.home-news__list {
  border-top: 1px solid var(--txtcolor);
}

.home-news__item {
  border-bottom: 1px solid var(--txtcolor);
}

.home-news__link {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: clamp(16px, 2vw, 20px) 0;
  color: var(--txtcolor, #323232);
}

.home-news__date {
  flex-shrink: 0;
  font-family: "Gabarito", sans-serif;
  font-size: clamp(0.625rem,calc(32vw / var(--window)),2rem);
  font-weight: 700;
  color: var(--maincolor, #1446a0);
}
.home-news__ttl-text {
  font-size: clamp(0.625rem,calc(32vw / var(--window)),2rem);
}

.home-news__link:hover .home-news__ttl-text {
  color: var(--maincolor, #1446a0);
}

.home-news__more {
  margin-top: clamp(24px, 4vw, 36px);
  text-align: center;
}

.home-news__more .btn {
  display: inline-block;
  min-width: 200px;
  padding-left: 1rem;
  padding-right: 2.5rem;
}

/* ----- 採用 ----- */
.home-recruit {
  position: relative;
  background-image: url(../img/recruit_img01.webp);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain;
  background-color: var(--maincolor, #1446a0);
  padding-top: calc(320vw / var(--window));
}

.home-recruit__inner {
  margin-left: auto;
  margin-right: auto;
}
.home-recruit__inner .h2_ttl,
.home-recruit__inner .h2_ttl .h2_ttl_sub {
  color: var(--white,#fff);
}
.home-recruit__lead {
  font-size: var(--maintxtsize, 1rem);
  margin-top: clamp(16px, 2vw, 24px);
  margin-bottom: clamp(24px, 3vw, 32px);
  color: var(--white,#fff);
}

.home-recruit .btn {
  display: inline-block;
  min-width: 220px;
}

/* ----- お問い合わせ ----- */
.contact {
  padding-top: clamp(30px,calc(80vw / var(--window)),40px);
  padding-bottom: clamp(30px,calc(80vw / var(--window)),40px);
  background-color: var(--footcolor);
  border-bottom: 1px solid var(--txtcolor);
  text-align: center;
}

.contact_ttl {
  text-align: center;
  margin-bottom: clamp(20px,calc(50vw / var(--window)),30px);
}
.contact_ttl + p {
  text-align: center;
  font-size: var(--maintxtsize);
  margin-bottom: clamp(15px,calc(74vw / var(--window)),37px);
}
.contact .home-lead {
  margin-bottom: clamp(30px,calc(75vw / var(--window)),75px);
}
.contact_address {
  background-color: var(--white);
  text-align: center;
  font-size: clamp(0.72rem,calc(32vw / var(--window)),1rem);
  padding: clamp(15px,calc(60vw / var(--window)),30px);
}
.contact_phone {
  font-size: clamp(.625rem,calc(40vw / var(--window)),1.25rem);
  font-weight: 700;
  line-height: 1;
}
.contact_phone a {
  font-size: clamp(1.25rem,calc(80vw / var(--window)),2.5rem);
  font-weight: 700;
  color: var(--maincolor);
}
.contact_num {
  font-family: "Gabarito","Zen Kaku Gothic New","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
}
.contact_line_ttl {
  font-weight: 900;
  font-size: clamp(1rem,calc(48vw / var(--window)),1.5rem);
  color: var(--white);
}
.contact_line_box p {
  color: var(--white);
  font-size: var(--maintxtsize);
  font-weight: 500;
  margin-bottom: clamp(18px,calc(58vw / var(--window)),28px);
}
.contact-card {
  width: 100%;
  background: var(--white,#fff);
  overflow: hidden;
}

.contact-card__top {
  text-align: center;
  padding: calc(60vw / var(--window,7.68)) 10px;
}

.contact-tel-label {
  color: var(--maincolor, #1446a0);
  font-weight: 900;
  font-size: clamp(.625rem, calc(40vw / var(--window,7.68)), 2.5rem);
}

.contact-tel-number {
  color: var(--maincolor, #1446a0);
  font-weight: 900;
  font-size: clamp(.625rem, calc(80vw / var(--window)), 5rem);
  line-height: 1;
  margin-top: -10px;
}

.contact-meta {
  font-size: var(--maintxtsize);
  font-weight: 500;
  color: var(--txtcolor,#323232);
}

.contact-note {
  font-size: var(--maintxtsize);
  font-weight: 500;
  color: var(--txtcolor,#323232);
}

.contact-schedule {
  font-size: var(--maintxtsize);
  font-weight: 500;
  color: var(--txtcolor,#323232);
  line-height: 1.55;
}

.contact-card__line {
  background: #00B900;
  padding: calc(60vw / var(--window,7.68)) 10px;
  text-align: center;
}

.contact-line-title {
  color: var(--white,#fff);
  font-weight: 900;
  font-size: clamp(0rem, calc(48vw / var(--window)), 3rem);
  margin-bottom: 14px;
  letter-spacing: 0.02em;
}

.contact-line-id,
.contact-line-account {
  color: #fff;
  font-weight: 700;
  font-size: var(--maintxtsize);
  line-height: 1.4;
}

.contact-line-account {
  margin-top: 8px;
  margin-bottom: calc(60vw / var(--window));
}

.btn_line {
  width: calc(550vw / var(--window,7.68));
  background-color: var(--white,#fff);
  background-image: url(../img/ic_link_line.svg)!important;
  font-size: var(--maintxtsize);
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(18px,calc(58vw / var(--window)),28px);
  padding: clamp(16px,calc(40vw / var(--window)),20px) 0;
  color: var(--line);
}

.contact-line-benri {
  margin-top: 6px;
  color: var(--txtcolor,#323232);
  font-size: clamp(0px, calc(32vw / var(--window)), 2rem);
  font-weight: 700;
  line-height: 1.5;
}

.foot {
  width: 100%;
  padding: clamp(30px,calc(80vw / var(--window)),40px) clamp(25px,calc(50vw / var(--window)),25px);
}
.foot_logo {
  display: block;
  width: calc(650 / 750 * 100%);
  max-width: 175px;
}
.foot_address {
  margin-bottom: clamp(20px,calc(70vw / var(--window)),35px);
}
.foot_address_item {
  font-size: var(--maintxtsize);
  line-height: 1.4;
}
.foot_address_item span {
  font-size: clamp(0rem,calc(28vw / var(--window)),1.75rem);
}
.foot_menu {
  margin-bottom: clamp(20px,calc(70vw / var(--window)),35px);
}
.foot_menu_item {
  display: inline-block;
  font-size: var(--maintxtsize);
  margin-right: clamp(24px,calc(96vw / var(--window)),48px);
  position: relative;
}
.foot_menu_item:nth-child(5) {
  margin-bottom: clamp(20px,calc(70vw / var(--window)),35px);
}
.foot_menu_item::before {
  content: "";
  display: inline-block;
  width: clamp(0px,calc(17vw / var(--window)),17px);
  height: clamp(0px,calc(17vw / var(--window)),17px);
  background-color: var(--txtcolor);
  border-radius: 50%;
  margin-bottom: calc(2vw / var(--window));
  margin-right: calc(4vw / var(--window));
}
.foot_copy {
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  text-align: center;
}
.foot_copy a {
  display: block;
  font-size: clamp(.625rem,calc(28vw / var(--window)),.875rem);
  margin-bottom: clamp(20px,calc(70vw / var(--window)),35px);
}
.copy {
  width: 100%;
  font-size: clamp(10px,calc(10vw / var(--window)),10px);
}



/* ここからPC //////////////////////////////////////////////////////////////////////////////// 
 //////////////////////////////////////////////////////////////////////////////// */
@media screen and (min-width: 769px) {

  /* ----- トップページ固有 ----- */
  .container {
    padding: unset;
    position: relative;
    overflow: hidden;
  }

  .home-lead {
    font-size: var(--maintxtsize);
    color: var(--txtcolor);
  }
  .home .btn_more {
    float: right;
    padding-right: clamp(0px,calc(32vw / var(--window)),10000px);
  }
  .home_box {
    overflow: hidden;
    padding: calc(150vw / var(--window,7.68)) 0;
  }
  .h2_ttl {
    font-size: clamp(.9rem,calc(36vw / var(--window)),10000rem);
    font-weight: 700;
    color: var(--txtcolor);
    line-height: 1.75;
  }
  .h2_ttl_sub {
    /* font-family: "Gabarito", sans-serif; */
    font-size: clamp(.5rem,calc(20vw / var(--window)),10000rem);
    color: var(--maincolor);
    /* font-weight: 500;
    padding-left: 10px; */
  }
  /* .btn_calender {
    position: fixed;
    display: none;
    width: calc(140vw / var(--window));
    right: 50px;
    bottom: 50px;
    z-index: 9;
  } */

  /* ----- メインビジュアル ----- */
  .home {
    margin-top: clamp(50px,calc(100vw / var(--window)),200px);
    /* margin-top: clamp(85px,calc(148vw / var(--window)),10000px); */
  }
  .home-mv__sp {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .catch_area {
    width: 100%;
    position: absolute;
    top: clamp(205px,calc(500vw / var(--window)),10000px);
    line-height: 0;
    padding-top: clamp(16px,calc(40vw / var(--window)),10000px);
    padding-right: unset;
    padding-bottom: clamp(16px,calc(40vw / var(--window)),10000px);
    padding-left: clamp(64px,calc(160vw / var(--window)),10000px);
    background-color: var(--white,#fff);
  }
  .catch01 {
    font-size: clamp(2.0625rem,calc(82vw / var(--window,7.68)),10000rem);
    line-height: 1.4;
    font-weight: 700;
    color: var(--txtcolor,#323232);
    margin-bottom: calc(25vw / var(--window));
  }
  .catch02 {
    font-size: clamp(.5rem,calc(20vw / var(--window,7.68)),10000rem);
    line-height: 1.75;
    font-weight: 500;
    color: var(--txtcolor,#323232);
    margin-bottom: clamp(20px,calc(42vw / var(--window,19.2)),1000px);
  }
  .btn_calender.sp {
    display: none;
  }
  .btn_calender_pc {
    display: block!important;
    width: clamp(237px,calc(590vw / var(--window,19.2)),10000px);
    background-image: url(../img/ic_pdf.svg)!important;
    background-color: var(--accolor);
    background-size: clamp(20px,calc(40vw / var(--window)),40px);
    border-color: var(--accolor);
    border-radius: calc(80vw / var(--window));
    font-weight: 500;
    color: var(--txtcolor);
    font-size: var(--maintxtsize);
    line-height: 1.8;
    padding: clamp(16px,calc(20vw / var(--window)),10000px) 0;
    /* padding-right: clamp(50px,calc(100vw / var(--window)),100px); */
    /* text-align: right; */
  }
  .btn_calender_pc.sanpai {
    margin-bottom: clamp(10px,calc(30vw / var(--window)),30px);
  }
  .btn_calender_pc:hover {
    background-color: var(--white);
    color: var(--txtcolor);
    background-position: 90% 50%;
  }

  .mv01a img,.mv01bc img {
    position: relative;
    width: 100%;
  }
  .mv01a {
    width: clamp(317px,calc(790vw / var(--window,19.2)),10000px);
    /* top: 0; */
    margin-left: clamp(64px,calc(160vw / var(--window,19.2)),10000px);
  }
  .mv01bc {
    width: clamp(370px,calc(930vw / var(--window,19.2)),10000px);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    margin-left: auto;
  }
  .mv01bc .mv01b.pc {
    display: block;
    width: clamp(372px,calc(930vw / var(--window)),10000px);
    margin-bottom: clamp(16px,calc(40vw / var(--window,19.2)),100000px);
  }
  .mv01bc .mv01c.pc {
    width: clamp(372px,calc(930vw / var(--window)),10000px);
    margin-top: unset;
    float: none;
  }

  /* ----- はじめに ----- */
  .first {
    /* position: relative;
    line-height: 0; */
    text-align: center;
    background-color: var(--basecolor,#FCF7E2);
    padding-top: calc(180vw / var(--window,19.2));
    margin-top: calc(-70vw / var(--window,19.2));
    z-index: 1;
  }
  .first_txt01 {
    font-size: clamp(.9rem,calc(36vw / var(--window)),10000rem);
    line-height: 1.75;
    font-weight: 700;
    padding-top: unset;
    margin-bottom: calc(40vw / var(--window,19.2));
  }
  .first_txt02 {
    font-size: clamp(.45rem,calc(18vw / var(--window)),10000rem);
    line-height: 1.75;
    font-weight: normal;
    padding-bottom: calc(150vw / var(--window,19.2));
  }

  /* ----- 事業内容 ----- */
  .service {
    background-color: var(--basecolor);
    height: calc(720vw / var(--window));
  }
  .service::after {
    content: "";
    display: block;
    width: 100%;
    height: clamp(44px,calc(110vw / var(--window)),10000px);
    z-index: 2;
    background-color: var(--white);
    position: absolute;
    left: 0;
    bottom: clamp(42px,calc(105vw / var(--window)),10000px);
  }
  .service_img01,.service_img02 {
    /* line-height: 0; */
    position: absolute;
  }
  .service_img01 img,.service_img02 img {
    width: 100%;
  }
  .service_box {
    width: clamp(168px,420vw / var(--window),10000px);
    padding: unset;
    margin-left: calc(1155vw / var(--window));
  }
  .service_img01 {
    width: clamp(224px,calc(560vw / var(--window)),10000px);
    height: auto;
    left: clamp(164px,calc(410vw / var(--window)),10000px);
    z-index: 4;
  }
  .service_img02 {
    width: clamp(200px,calc(500vw / var(--window)),10000px);
    height: auto;
    left: clamp(16px,calc(40vw / var(--window)),10000px);
    top: clamp(104px,calc(260vw / var(--window)),10000px);
    z-index: 3;
  }
  /* ----- 企業情報 ----- */
  .about {
    background-color: var(--basecolor,#FCF7E2);
    padding-bottom: unset;
    padding-top: clamp(95px,calc(239vw / var(--window)),10000px);
    margin-top: calc(-105vw / var(--window));
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .about .container {
    width: 50%;
  }
  .about_box {
    width: clamp(168px,420vw / var(--window),10000px);
    padding: unset;
    margin-left: clamp(138px,calc(345vw / var(--window)),10000px);
  }
  .about_img0102 {
    width: 50%;
    /* position: relative;
    overflow: hidden; */
  }
  .about_img0102 img {
    width: calc(430vw / var(--window,19.2));
    position: relative;
    width: 100%;
  }
  .about_img01 {
    width: clamp(224px,calc(560vw / var(--window)),10000px);
    position: relative;
    z-index: 2;
  }
  .about_img02 {
    position: relative;
    float: none;
    width: clamp(200px,calc(500vw / var(--window)),10000px);
    margin-top: calc(-254vw / var(--window,19.2));
    /* margin-top: clamp(-100px,calc(-254vw / var(--window,19.2)),-10000px); */
    margin-left: clamp(164px,calc(410vw / var(--window,19.2)),10000px);
    z-index: 1;
  }

  /* ----- ニュース ----- */
  .home-news {
    padding: 0;
    background-color: transparent;
    margin-top: calc(-152vw / var(--window));
  }
  .home_img0102 {
    position: relative;
    overflow: hidden;
    line-height: 0;
  }
  .home_img0102 img {
    position: relative;
    width: 100%;
  }
  .home_img01 {
    position: relative;
    width: clamp(280px,calc(708vw / var(--window,19.2)),10000px);
    float: none;
    z-index: 2;
  }
  .home_img02 {
    position: relative;
    float: right;
    width: clamp(472px,calc(1180vw / var(--window)),10000px);
    margin-top: calc(-182vw / var(--window,19.2));
  }
  .news_box {
    width: clamp(492px,calc(1230vw / var(--window)),10000px);
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0 clamp(24px,calc(60vw / var(--window)),10000px);
  }
  .h2_ttl_news {
    display: inline-block;
  }
  .home-news__head {
    margin-bottom: clamp(28px, 4vw, 40px);
    width: clamp(126px,calc(314vw / var(--window)),10000px);
  }

  .home-news__list {
    border-top: 1px solid var(--txtcolor);
    flex: 1;
  }

  .home-news__item {
    border-bottom: 1px solid var(--txtcolor);
  }

  .home-news__link {
    display: flex;
    flex-wrap: wrap;
    gap: 0.875rem 0;
    padding: clamp(16px, calc(20vw / var(--window)), 10000px) 0;
    color: var(--txtcolor, #323232);
  }

  .home-news__date {
    flex-shrink: 0;
    font-family: "Gabarito", sans-serif;
    font-size: var(--maintxtsize);
    font-weight: 700;
    color: var(--maincolor, #1446a0);
  }

  .home-news__ttl-text {
    font-size: var(--maintxtsize);
  }

  .home-news__link:hover .home-news__ttl-text {
    color: var(--maincolor, #1446a0);
  }

  .home-news__more {
    margin-top: clamp(24px, 4vw, 36px);
    text-align: center;
  }

  .home-news__more .btn {
    display: inline-block;
    min-width: 200px;
    padding-left: 1rem;
    padding-right: 2.5rem;
  }

  /* ----- 採用 ----- */
  .home-recruit {
    background-image: url(../img/recruit_img01_pc.webp);
    padding-top: calc(320vw / var(--window));
    background-position: 100% 50%;
    background-size: calc(1060vw / var(--window));
    padding: clamp(60px,calc(150vw / var(--window)),10000px) 0 clamp(78px,calc(195vw / var(--window)),10000px);
    /* position: relative;
    background-repeat: no-repeat;
    background-color: var(--maincolor, #1446a0); */
  }
  .recruit_box {
    width: calc(1230vw / var(--window));
    margin-left: auto;
    margin-right: auto;
  }

  .home-recruit__inner {
    width: clamp(164px,calc(410vw / var(--window)),10000px);
    margin: unset;
  }
  .home-recruit__inner .h2_ttl,
  .home-recruit__inner .h2_ttl .h2_ttl_sub {
    color: var(--white,#fff);
  }
  .home-recruit__lead {
    font-size: var(--maintxtsize, 1rem);
    margin-top: clamp(16px, 2vw, 24px);
    margin-bottom: clamp(24px, 3vw, 32px);
    color: var(--white,#fff);
  }

  /* ----- お問い合わせ ----- */
  .contact {
    padding-top: clamp(30px,calc(80vw / var(--window)),40px);
    padding-bottom: clamp(30px,calc(80vw / var(--window)),40px);
    background-color: var(--footcolor);
    border-bottom: 1px solid var(--txtcolor);
    text-align: center;
  }
  .contact_box {
    width: clamp(492px,calc(1230vw / var(--window)),10000px);
    margin-left: auto;
    margin-right: auto;
  }
  .contact .home-lead {
    font-size: clamp(10px,calc(26vw / var(--window)),10000px);
    font-weight: 700;
    margin-bottom: clamp(24px,calc(60vw / var(--window)),10000px);
  }
  .contact .h2_ttl {
    line-height: 1;
    margin-bottom: calc(30vw / var(--window));
  }
  .contact_ttl {
    text-align: center;
    margin-bottom: clamp(20px,calc(50vw / var(--window)),30px);
  }
  .contact_ttl + p {
    text-align: center;
    font-size: var(--maintxtsize);
    margin-bottom: clamp(24px,calc(60vw / var(--window)),60px);
  }
  .contact_address {
    background-color: var(--white);
    text-align: center;
    font-size: clamp(0.72rem,calc(32vw / var(--window)),1rem);
    padding: clamp(15px,calc(60vw / var(--window)),30px);
  }
  .contact_phone {
    font-size: clamp(.625rem,calc(40vw / var(--window)),1.25rem);
    font-weight: 700;
    line-height: 1;
  }
  .contact_phone a {
    font-size: clamp(1.25rem,calc(80vw / var(--window)),2.5rem);
    font-weight: 700;
    color: var(--maincolor);
  }
  .contact_num {
    font-family: "Gabarito","Zen Kaku Gothic New","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;;
  }
  .contact_line_ttl {
    font-weight: 900;
    font-size: clamp(1rem,calc(48vw / var(--window)),1.5rem);
    color: var(--white);
  }
  .contact_line_box p {
    color: var(--white);
    font-size: var(--maintxtsize);
    font-weight: 500;
    margin-bottom: clamp(18px,calc(58vw / var(--window)),28px);
  }
  .contact-card {
    width: 100%;
    background: var(--white,#fff);
    overflow: hidden;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-bottom: clamp(12px,calc(30vw / var(--window)),10000px);
  }

  .contact-card__top {
    width: 50%;
    text-align: left;
    padding: 0 10px 0 calc(80vw / var(--window));
    /* padding: calc(60vw / var(--window)) 10px; */
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    flex-wrap: wrap;
  }

  .contact-tel-label {
    display: inline-block;
    color: var(--txtcolor);
    font-weight: 500;
    font-size: clamp(.625rem, calc(30vw / var(--window)), 10000rem);
    line-height: 1;
  }
  .contact-tel-label span {
    display: inline-block;
  }
  .contact-tel-number {
    display: inline-block;
    color: var(--txtcolor);
    font-weight: 900;
    font-size: clamp(.625rem, calc(50vw / var(--window)), 10000rem);
    line-height: 1;
    margin-top: unset;
  }

  .contact-meta {
    font-size: clamp(.625rem, calc(30vw / var(--window)), 10000rem);
    line-height: 1;
    /* font-weight: 500;
    color: var(--txtcolor,#323232); */
  }
  .contact-meta span {
    font-size: clamp(.625rem, calc(50vw / var(--window)), 10000rem);
    font-weight: 900;
  }

  .contact-note {
    font-size: clamp(.625rem, calc(22vw / var(--window)), 10000rem);
    font-weight: 400;
    /* color: var(--txtcolor,#323232); */
  }

  .contact-card__line {
    width: 50%;
    background: var(--white);
    padding: calc(60vw / var(--window)) 10px calc(33vw / var(--window));
    text-align: center;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 0 calc(17vw / var(--window));
  }
  .contact-line-box {
    width: (115px,calc(284vw / var(--window)),10000px);
    text-align: left;
  }
  .contact_line {
    display: block;
    width: clamp(80px,calc(200vw / var(--window)),10000px);
  }
  .contact-line-title {
    width: 100%;
    color: var(--line);
    font-weight: 900;
    font-size: clamp(.625rem, calc(30vw / var(--window)), 10000rem);
    margin-bottom: 14px;
    letter-spacing: 0.02em;
    text-align: left;
  }

  .contact-line-id,
  .contact-line-account {
    color: var(--txtcolor);
    font-weight: 700;
    font-size: clamp(.625rem,calc(20vw / var(--window)),10000rem);
    line-height: 1.3;
  }

  .contact-line-account {
    /* color: var(--txtcolor);
    margin-top: 8px; */
    margin-bottom: unset;
  }
  .contact-line-notes {
    font-size: clamp(.625rem,calc(16vw / var(--window)),10000rem);
    line-height: 1.5;
  }

  .contact-schedule {
    width: 100%;
    font-size: clamp(.625rem, calc(18vw / var(--window)), 10000rem);
    font-weight: 400;
    color: var(--txtcolor,#323232);
    line-height: 1.75;
    text-align: center;
  }
  .contact-schedule p {
    width: 100%;
  }

  .btn_line {
    width: calc(550vw / var(--window,7.68));
    background-color: var(--white,#fff);
    background-image: url(../img/ic_link_line.svg)!important;
    font-size: var(--maintxtsize);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: clamp(18px,calc(58vw / var(--window)),28px);
    padding: clamp(16px,calc(40vw / var(--window)),20px) 0;
    color: var(--line);
  }

  .contact-line-benri {
    margin-top: 6px;
    background-color: var(--basecolor);
    color: var(--txtcolor,#323232);
    font-size: clamp(0.625rem, calc(16vw / var(--window)), 10000rem);
    font-weight: 700;
    line-height: 1.5;
    padding: calc(15vw / var(--window)) 0;
    text-align: center;
  }

  .foot {
    width: 100%;
    padding: clamp(30px,calc(80vw / var(--window)),40px) clamp(25px,calc(50vw / var(--window)),25px);
  }
  .foot_wrap {
    width: clamp(440px,calc(1100vw / var(--window)),10000px);
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    /* gap: 0 calc(10vw / var(--window)); */
  }
  .foot_logo {
    display: block;
    width: calc(250vw / var(--window));
    max-width: 100%;
  }
  .foot_address {
    /* width: clamp(184px,calc(460vw / var(--window)),10000px); */
    /* width: auto; */
    margin-bottom: clamp(20px,calc(70vw / var(--window)),35px);
    flex: 1;
  }
  .foot_address_item {
    font-size: clamp(.625rem,calc(14vw / var(--window)),10000rem);
    line-height: 1.5;
  }
  .foot_address_item span {
    font-size: clamp(0.625rem,calc(14vw / var(--window)),10000rem);
  }
  .foot_menu {
    width: clamp(256px,calc(660vw / var(--window)),10000px);
    margin-bottom: clamp(20px,calc(70vw / var(--window)),35px);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0 calc(15vw / var(--window));
    flex-wrap: wrap;
  }
  .foot_menu_item {
    display: inline-block;
    font-size: clamp(0.625rem,calc(14vw / var(--window)),10000rem);
    margin-right: unset;
    position: relative;
    transition: color ease .3s;
  }
  .foot_menu_item:hover {
    color: var(--maincolor);
  }
  .foot_menu_item:nth-child(5) {
    margin-bottom: unset;
  }
  .foot_menu_item::before {
    display: none;
  }

  .btn_contact {
    width: clamp(60px,calc(160vw / var(--window)),10000px);
    font-size: clamp(0.625rem,calc(14vw / var(--window)),10000rem);
    margin-bottom: unset;
    padding: clamp(7px,calc(18vw / var(--window)),18px) clamp(15px,calc(36vw / var(--window)),1000px) clamp(7px,calc(18vw / var(--window)),18px) 0;
    margin-left: unset;
    margin-right: unset;
  }
  .btn_contact:hover {
    background-image: url(../img/ic_link_blue.svg);
    background-color: var(--white);
    color: var(--maincolor);
  }

  .foot_copy {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    gap: 0 calc(20vw / var(--window));
    text-align: left;
    width: 100%;
  }
  .foot_copy a {
    display: block;
    font-size: clamp(.625rem,calc(12vw / var(--window)),10000rem);
    margin-bottom: unset;
  }
  .foot_copy a:nth-child(1) {
    order: 2;
  }
  .foot_copy a:nth-child(2) {
    order: 3;
  }
  .copy {
    order: 1;
    width: auto;
    font-size: 10px;
    margin-right: auto;
  }


}