@charset "UTF-8";
/*###################################################################
※※※※ 直接編集禁止 ※※※※
このCSSファイルはSassから生成されていますので直接編集しないようご注意ください。
  編集は拡張子「.scss」ファイルを編集して当ファイルにコンパイルしてください。
  もしくは別途cssファイルを作成して読み込ませてください。
###################################################################*/
:root {
  --base: #fff;
  --base2: #f8f5ee;
  --base3: #fff0f7;
  --main: #42b9d0;
  --main2: #9cbe30;
  --text: #524c41;
}

/*###################################################################
  base（共通設定）
###################################################################*/
/*----------------------------------
  html
----------------------------------*/
html {
  scroll-behavior: smooth;
}

[id] {
  scroll-margin-top: clamp(5rem, 3.5674366617rem + 2.9806259314vw, 6.25rem);
}
@media (max-width: 768px) {
  [id] {
    scroll-margin-top: 70px;
  }
}

body {
  color: var(--text);
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  line-height: 2;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

img {
  width: 100%;
  height: auto;
}

/*###################################################################
  animation（共通設定）
###################################################################*/
/*----------------------------------
  無限ループスライダー
----------------------------------*/
@-webkit-keyframes infinity-scroll {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes infinity-scroll {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
/*###################################################################
  header（module）
###################################################################*/
.header {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 10;
}
.header_sticky {
  position: fixed;
  background-color: rgba(255, 255, 255, 0.8);
}
.header_sticky .header__inner {
  padding-top: 10px;
  padding-bottom: 5px;
}
.header_sticky .header__logo {
  margin-top: 0;
}
.header__title {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}
.header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  padding-top: clamp(0.625rem, -0.3061661699rem + 1.9374068554vw, 1.4375rem);
  padding-right: clamp(0.625rem, -0.0912816692rem + 1.4903129657vw, 1.25rem);
  padding-left: clamp(0.625rem, -1.2373323398rem + 3.8748137109vw, 2.25rem);
}
@media (max-width: 768px) {
  .header__inner {
    padding-top: 32px;
  }
}
.header__logo {
  max-width: clamp(14.375rem, 1.4103017884rem + 26.9746646796vw, 25.6875rem);
  width: 100%;
  margin-top: clamp(0.25rem, -0.6811661699rem + 1.9374068554vw, 1.0625rem);
}
@media (max-width: 768px) {
  .header__logo {
    max-width: 177px;
    margin-top: 2px;
  }
}
.header__menu-group {
  max-width: clamp(27.0625rem, 19.3266579732rem + 16.0953800298vw, 33.8125rem);
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: clamp(0.9375rem, 0.6509873323rem + 0.5961251863vw, 1.1875rem);
     -moz-column-gap: clamp(0.9375rem, 0.6509873323rem + 0.5961251863vw, 1.1875rem);
          column-gap: clamp(0.9375rem, 0.6509873323rem + 0.5961251863vw, 1.1875rem);
}
@media (max-width: 768px) {
  .header__menu-group {
    max-width: 90px;
  }
}
.header__contact {
  max-width: clamp(20.5rem, 14.7697466468rem + 11.9225037258vw, 25.5rem);
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .header__contact {
    display: none;
  }
}
.header__tel {
  height: clamp(3.4375rem, 2.2914493294rem + 2.3845007452vw, 4.4375rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.3125rem, 0.2408718331rem + 0.1490312966vw, 0.375rem);
  background-color: var(--base);
  line-height: 1;
}
.header__tel-text {
  max-width: clamp(9.5rem, 7.852552161rem + 3.4277198212vw, 10.9375rem);
  width: 100%;
  height: clamp(1.3125rem, 0.8827309985rem + 0.8941877794vw, 1.6875rem);
  display: grid;
  place-items: center;
  background-color: var(--main2);
  color: var(--base);
  font-size: clamp(0.6875rem, 0.4726154993rem + 0.4470938897vw, 0.875rem);
  border-radius: 9999px;
}
.header__tel-number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 4px;
     -moz-column-gap: 4px;
          column-gap: 4px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.125rem, 0.6952309985rem + 0.8941877794vw, 1.5rem);
  letter-spacing: 0.07em;
}
.header__tel-number::before {
  content: "";
  min-width: clamp(0.75rem, 0.4634873323rem + 0.5961251863vw, 1rem);
  aspect-ratio: 1/1;
  background-color: var(--main2);
  -webkit-mask-image: url(../images/icon-tel.svg);
          mask-image: url(../images/icon-tel.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.header__reserve {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.3125rem, 0.1692436662rem + 0.2980625931vw, 0.4375rem);
  position: relative;
  background-color: var(--main);
  color: var(--base);
  line-height: 1;
}
.header__reserve::before {
  content: "";
  width: 10px;
  aspect-ratio: 1/1;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 3px;
  right: 3px;
  background-color: var(--base);
}
.header__reserve-text1 {
  font-size: clamp(0.6875rem, 0.4726154993rem + 0.4470938897vw, 0.875rem);
}
.header__reserve-text2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: clamp(0.5625rem, 0.2043591654rem + 0.7451564829vw, 0.875rem);
     -moz-column-gap: clamp(0.5625rem, 0.2043591654rem + 0.7451564829vw, 0.875rem);
          column-gap: clamp(0.5625rem, 0.2043591654rem + 0.7451564829vw, 0.875rem);
  -webkit-transform: translateX(-5px);
      -ms-transform: translateX(-5px);
          transform: translateX(-5px);
  font-size: clamp(1rem, 0.7134873323rem + 0.5961251863vw, 1.25rem);
  letter-spacing: 0.09em;
}
.header__reserve-text2::before {
  content: "";
  min-width: 13px;
  aspect-ratio: 13/10;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.header__menu {
  max-width: clamp(5.625rem, 3.905923994rem + 3.5767511177vw, 7.125rem);
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
.header__insta {
  max-width: clamp(1.875rem, 0.155923994rem + 3.5767511177vw, 3.375rem);
  width: 100%;
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  background-color: #f1ecdf;
  border-radius: 50%;
}
.header__insta::before {
  content: "";
  max-width: clamp(1rem, -0.0027943368rem + 2.086438152vw, 1.875rem);
  width: 100%;
  aspect-ratio: 1/1;
  background: url(../images/icon-insta.svg) no-repeat center center/contain;
}

@media (hover: hover) and (pointer: fine) {
  .header__tel {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .header__tel:hover {
    background-color: var(--base2);
  }
  .header__reserve {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .header__reserve:hover {
    background-color: var(--main2);
  }
  .header__insta {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .header__insta:hover {
    background-color: var(--base);
  }
}
/*###################################################################
  g-nav（module）
###################################################################*/
.g-nav {
  width: 100%;
}
@media (max-width: 768px) {
  .g-nav {
    display: none;
  }
}
.g-nav_pos {
  margin-top: clamp(0.9375rem, -1.6144911504rem + 5.3097345133vw, 2.4375rem);
}
.g-nav__inner {
  max-width: 1041px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
.g-nav__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.g-nav__item {
  min-height: 52px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.g-nav__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: clamp(2.5625rem, 1.3928373894rem + 2.4336283186vw, 3.25rem);
  position: absolute;
  top: 6px;
  right: calc(clamp(0.6875rem, -1.0138274336rem + 3.5398230088vw, 1.6875rem) * -1);
  background-color: var(--text);
}
.g-nav__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.5rem, 0.1810011062rem + 0.6637168142vw, 0.6875rem);
  line-height: 1;
}
.g-nav__jp {
  font-size: clamp(0.8125rem, 0.4935011062rem + 0.6637168142vw, 1rem);
  font-weight: 500;
}
.g-nav__en {
  color: var(--main);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(0.8125rem, 0.4935011062rem + 0.6637168142vw, 1rem);
  letter-spacing: 0.07em;
}

@media (hover: hover) and (pointer: fine) {
  .g-nav__link {
    -webkit-transition: color 0.4s ease;
    transition: color 0.4s ease;
  }
  .g-nav__link:hover, .g-nav__link:focus {
    color: var(--main2);
  }
  .g-nav__link:hover .g-nav__en, .g-nav__link:focus .g-nav__en {
    color: var(--main2);
  }
  .g-nav__en {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
}
/*###################################################################
  footer（module）
###################################################################*/
.footer {
  position: relative;
}
@media (max-width: 768px) {
  .footer {
    padding-bottom: 71px;
  }
}
.footer_top {
  margin-top: clamp(3.4375rem, 2.2447519084rem + 5.0890585242vw, 4.6875rem);
}
.footer_lower {
  margin-top: 100px;
}
.footer__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .footer__inner {
    padding: 0 clamp(0.625rem, -0.5677480916rem + 5.0890585242vw, 1.875rem);
  }
}
.footer__head {
  max-width: clamp(17.0625rem, 8.8325381679rem + 35.1145038168vw, 25.6875rem);
  margin-inline: auto;
}
.footer__address {
  text-align: center;
  margin-top: clamp(1.8125rem, 1.6932251908rem + 0.5089058524vw, 1.9375rem);
}
.footer__body {
  max-width: 1240px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: clamp(2.25rem, 2.0114503817rem + 1.0178117048vw, 2.5rem) 15px;
  margin-top: clamp(0.75rem, -0.4427480916rem + 5.0890585242vw, 2rem);
}
@media (max-width: 768px) {
  .footer__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.footer__info-wrapper {
  max-width: 481px;
  width: 100%;
  margin-top: clamp(0rem, -0.6560114504rem + 2.7989821883vw, 0.6875rem);
}
@media (max-width: 768px) {
  .footer__info-wrapper {
    max-width: 498px;
    padding: 0 17px;
  }
}
.footer__contact {
  max-width: 639px;
  width: 100%;
}
.footer__contact-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: clamp(0.8125rem, 0.7089088398rem + 0.4419889503vw, 1.0625rem);
     -moz-column-gap: clamp(0.8125rem, 0.7089088398rem + 0.4419889503vw, 1.0625rem);
          column-gap: clamp(0.8125rem, 0.7089088398rem + 0.4419889503vw, 1.0625rem);
  color: var(--main);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.5rem, 0.8784530387rem + 2.6519337017vw, 3rem);
  line-height: 1.2;
  letter-spacing: 0.06em;
  white-space: nowrap;
}
.footer__contact-title::before, .footer__contact-title::after {
  content: "";
  height: 1px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--main);
}
.footer__contact-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: clamp(0.9375rem, -0.6614481409rem + 3.3268101761vw, 2rem);
     -moz-column-gap: clamp(0.9375rem, -0.6614481409rem + 3.3268101761vw, 2rem);
          column-gap: clamp(0.9375rem, -0.6614481409rem + 3.3268101761vw, 2rem);
  margin-top: 25px;
}
@media (max-width: 500px) {
  .footer__contact-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 12px;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    margin-top: 9px;
  }
}
.footer__tel {
  max-width: 204px;
  width: 100%;
  height: 71px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 6px;
  line-height: 1;
}
.footer__tel-text {
  max-width: 175px;
  width: 100%;
  height: 27px;
  display: grid;
  place-items: center;
  background-color: var(--main2);
  color: var(--base);
  font-size: 0.875rem;
  white-space: nowrap;
  border-radius: 9999px;
}
.footer__tel-number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 6px;
     -moz-column-gap: 6px;
          column-gap: 6px;
  color: var(--text);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  white-space: nowrap;
}
.footer__tel-number::before {
  content: "";
  min-width: 16px;
  aspect-ratio: 1/1;
  background-color: var(--main2);
  -webkit-mask-image: url(../images/icon-tel.svg);
          mask-image: url(../images/icon-tel.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.footer__reserve {
  max-width: 204px;
  width: 100%;
  height: 71px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 7px;
  position: relative;
  background-color: var(--main);
  color: var(--base);
  line-height: 1;
}
.footer__reserve::before {
  content: "";
  width: 10px;
  aspect-ratio: 1/1;
  position: absolute;
  bottom: 3px;
  right: 3px;
  background-color: var(--base);
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.footer__reserve-text1 {
  font-size: 0.875rem;
}
.footer__reserve-text2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
  font-size: 1.25rem;
  letter-spacing: 0.09em;
  white-space: nowrap;
}
.footer__reserve-text2::before {
  content: "";
  min-width: 15px;
  aspect-ratio: 1/1;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.footer__map {
  margin-top: clamp(1.9375rem, -0.2094465649rem + 9.1603053435vw, 4.1875rem);
}
.footer__gmap {
  width: 100%;
  height: clamp(22.4375rem, 17.3rem + 21.92vw, 31rem);
}
.footer__bottom {
  margin-top: clamp(2.375rem, 1.5400763359rem + 3.5623409669vw, 3.25rem);
}
.footer__bottom-inner {
  max-width: 1041px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .footer__bottom-inner {
    max-width: 546px;
    padding: 0 1.96875rem;
  }
}
@media (max-width: 600px) {
  .footer__bottom-inner {
    max-width: 440px;
  }
}
.footer__bottom-head {
  color: var(--main);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.65rem + 2.56vw, 2.25rem);
  line-height: 1;
  letter-spacing: 0.06em;
  text-align: center;
}
.footer__nav {
  margin-top: clamp(1.375rem, 1.1960877863rem + 0.7633587786vw, 1.5625rem);
}
.footer__copy {
  height: 37px;
  display: grid;
  place-items: center;
  background-color: #e9f6e0;
  font-size: clamp(0.75rem, 0.6307251908rem + 0.5089058524vw, 0.875rem);
  letter-spacing: 0.06em;
  margin-top: clamp(1.8125rem, -0.036259542rem + 7.8880407125vw, 3.75rem);
}

@media (hover: hover) and (pointer: fine) {
  .footer__tel-number {
    -webkit-transition: color 0.4s ease;
    transition: color 0.4s ease;
  }
  .footer__tel-number:hover, .footer__tel-number:focus {
    color: var(--main2);
  }
  .footer__reserve {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .footer__reserve:hover, .footer__reserve:focus {
    background-color: var(--main2);
  }
}
.footer-nav {
  width: 100%;
}
.footer-nav__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 768px) {
  .footer-nav__items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
@media (max-width: 600px) {
  .footer-nav__items {
    grid-template-columns: repeat(2, 1fr);
  }
}
.footer-nav__item {
  min-height: 52px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.footer-nav__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: clamp(2.5625rem, 1.3928373894rem + 2.4336283186vw, 3.25rem);
  position: absolute;
  top: 6px;
  right: calc(clamp(0.6875rem, -1.0138274336rem + 3.5398230088vw, 1.6875rem) * -1);
  background-color: var(--text);
}
@media (max-width: 768px) {
  .footer-nav__item:not(:last-of-type)::after {
    content: none;
  }
}
@media (max-width: 768px) {
  .footer-nav__item:first-of-type {
    grid-area: 1/1/2/4;
  }
}
@media (max-width: 600px) {
  .footer-nav__item:first-of-type {
    grid-area: 1/1/2/3;
  }
}
.footer-nav__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.5rem, 0.1810011062rem + 0.6637168142vw, 0.6875rem);
  font-size: clamp(0.8125rem, 0.4935011062rem + 0.6637168142vw, 1rem);
  line-height: 1;
}
@media (max-width: 768px) {
  .footer-nav__link {
    font-size: 1rem;
    row-gap: 12px;
  }
}
.footer-nav__jp {
  font-weight: 500;
}
.footer-nav__en {
  color: var(--main);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0.07em;
}

@media (hover: hover) and (pointer: fine) {
  .footer-nav__link {
    -webkit-transition: color 0.4s ease;
    transition: color 0.4s ease;
  }
  .footer-nav__link:hover, .footer-nav__link:focus {
    color: var(--main2);
  }
  .footer-nav__link:hover .footer-nav__en, .footer-nav__link:focus .footer-nav__en {
    color: var(--main2);
  }
  .footer-nav__en {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
}
.footer-page-top {
  max-width: clamp(2.6875rem, 1.755179558rem + 3.9779005525vw, 4.9375rem);
  width: 100%;
  aspect-ratio: 1/1;
  display: none;
  position: fixed;
  right: clamp(0.625rem, 0.1070441989rem + 2.2099447514vw, 1.875rem);
  bottom: 33px;
  z-index: 5;
  background-color: #bae0a0;
  border-radius: 50%;
  opacity: 0;
}
@media (max-width: 768px) {
  .footer-page-top {
    bottom: 120px;
  }
}
.footer-page-top::before {
  content: "";
  width: clamp(1.0625rem, 0.6999309392rem + 1.546961326vw, 1.9375rem);
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-page-top.svg);
          mask-image: url(../images/icon-page-top.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}

@media (hover: hover) and (pointer: fine) {
  .footer-page-top {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .footer-page-top:hover, .footer-page-top:focus {
    background-color: var(--main2);
  }
}
.sp-nav {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 11px;
     -moz-column-gap: 11px;
          column-gap: 11px;
  position: fixed;
  bottom: 0;
  z-index: 5;
  background-color: var(--base);
  padding: 10px;
}
@media (min-width: 769px) {
  .sp-nav {
    display: none;
  }
}
.sp-nav__link {
  height: 51px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 2px;
  background-color: #e9f6e0;
  border-radius: 3px;
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}
.sp-nav__link::before {
  content: "";
  aspect-ratio: 1/1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.sp-nav__link_tel {
  color: #9cbe30;
}
.sp-nav__link_tel::before {
  width: 18px;
  background-color: #9cbe30;
  -webkit-mask-image: url(../images/icon-tel.svg);
          mask-image: url(../images/icon-tel.svg);
}
.sp-nav__link_reserve {
  color: #008796;
}
.sp-nav__link_reserve::before {
  width: 22px;
  background-color: #008796;
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
}
.sp-nav__link_map {
  color: #009640;
}
.sp-nav__link_map::before {
  width: 20px;
  background-color: #009640;
  -webkit-mask-image: url(../images/icon-pin.svg);
          mask-image: url(../images/icon-pin.svg);
}

@media (hover: hover) and (pointer: fine) {
  .sp-nav__link {
    -webkit-transition: background-color 0.3s ease, color 0.3s ease;
    transition: background-color 0.3s ease, color 0.3s ease;
  }
  .sp-nav__link::before {
    -webkit-transition: background-color 0.3s ease;
    transition: background-color 0.3s ease;
  }
  .sp-nav__link_tel:hover, .sp-nav__link_tel:focus {
    background-color: #9cbe30;
    color: var(--base);
  }
  .sp-nav__link_tel:hover::before, .sp-nav__link_tel:focus::before {
    background-color: var(--base);
  }
  .sp-nav__link_reserve:hover, .sp-nav__link_reserve:focus {
    background-color: #008796;
    color: var(--base);
  }
  .sp-nav__link_reserve:hover::before, .sp-nav__link_reserve:focus::before {
    background-color: var(--base);
  }
  .sp-nav__link_map:hover, .sp-nav__link_map:focus {
    background-color: #009640;
    color: var(--base);
  }
  .sp-nav__link_map:hover::before, .sp-nav__link_map:focus::before {
    background-color: var(--base);
  }
}
/*###################################################################
  c-text（module）
###################################################################*/
.c-t16 {
  font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
  line-height: 2;
  white-space: pre-line;
}

.c-t16c {
  font-size: clamp(0.875rem, 0.686888454rem + 0.3913894325vw, 1rem);
  line-height: 2;
  white-space: pre-line;
}
@media (max-width: 768px) {
  .c-t16c {
    font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
  }
}

/*###################################################################
  c-title（module）
###################################################################*/
.c-title-1 {
  min-height: clamp(5.625rem, 4.2783149171rem + 5.7458563536vw, 8.875rem);
  display: grid;
  place-items: center;
  position: relative;
  z-index: 1;
  background-color: var(--base2);
  font-size: clamp(1.5rem, 1.1892265193rem + 1.3259668508vw, 2.25rem);
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.07em;
  padding: 15px 10px;
}
.c-title-1::before {
  content: "";
  width: clamp(1.8125rem, 0.5176104972rem + 5.5248618785vw, 4.9375rem);
  aspect-ratio: 79/98;
  position: absolute;
  top: calc(clamp(0.8125rem, 0.5276243094rem + 1.2154696133vw, 1.5rem) * -1);
  left: clamp(0.8125rem, -2.2952348066rem + 13.2596685083vw, 8.3125rem);
  background: url(../images/icon-bird.svg) no-repeat center center/contain;
}
.c-title-1::after {
  content: "";
  width: clamp(2.125rem, 0.7783149171rem + 5.7458563536vw, 5.375rem);
  aspect-ratio: 86/73;
  position: absolute;
  top: calc(clamp(-3.375rem, -3.5562845304rem + 0.773480663vw, -2.9375rem) * -1);
  right: clamp(0.375rem, -2.5773480663rem + 12.5966850829vw, 7.5rem);
  background: url(../images/icon-title-deco-2.svg) no-repeat center center/contain;
}

.c-title-2 {
  max-width: 1280px;
  width: 100%;
  min-height: clamp(4.0625rem, 2.9430970149rem + 4.776119403vw, 7.0625rem);
  container-type: inline-size;
  display: grid;
  place-items: center;
  position: relative;
  z-index: 1;
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1.25rem, 0.9701492537rem + 1.1940298507vw, 2rem);
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.07em;
  padding: 15px 10px;
}
.c-title-2::before, .c-title-2::after {
  content: "";
  width: 100%;
  position: absolute;
  z-index: -1;
}
.c-title-2::before {
  max-width: 15.15625cqw;
  aspect-ratio: 194/113;
  top: 0;
  left: 0;
  background: url(../images/icon-title-deco-3.svg) no-repeat center center/contain;
}
.c-title-2::after {
  max-width: 17.109375cqw;
  aspect-ratio: 219/102;
  right: 0;
  bottom: 0;
  background: url(../images/icon-title-deco-4.svg) no-repeat center center/contain;
}

.c-title-3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 21px;
     -moz-column-gap: 21px;
          column-gap: 21px;
  color: var(--text);
  font-size: clamp(1.25rem, 1.1464088398rem + 0.4419889503vw, 1.5rem);
  font-weight: bold;
  line-height: 2;
  text-align: center;
  letter-spacing: 0.07em;
}
.c-title-3::before, .c-title-3::after {
  content: "";
  height: 1px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--text);
  margin-top: 5px;
}

.info__table {
  max-width: 480px;
  width: 100%;
  table-layout: fixed;
  background-color: var(--base);
  color: var(--main);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.07em;
  border: 1px solid var(--main);
  border-collapse: collapse;
}
.info__col_time {
  width: 30.42%;
}
.info__col {
  width: 8.33%;
}
.info__col_dual {
  width: 19.58%;
}
.info__th {
  height: 40px;
  background-color: var(--main);
  color: var(--base);
  font-weight: 500;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  border-bottom: 1px solid var(--main);
}
tbody tr:first-child .info__td, tbody tr:first-child .info__time {
  border-bottom: 1px solid var(--main);
}
.info__td, .info__time {
  font-weight: 500;
  line-height: 1;
  vertical-align: middle;
}
.info__time {
  text-align: center;
  white-space: nowrap;
}
tbody tr:nth-child(1) .info__td, tbody tr:nth-child(1) .info__time {
  height: 56px;
}
tbody tr:nth-child(2) .info__td, tbody tr:nth-child(2) .info__time {
  height: 58px;
}
.info__td_sat-pm {
  position: relative;
  line-height: 1;
  vertical-align: top;
  padding-top: clamp(0.0625rem, 0.0184859155rem + 0.1877934272vw, 0.1875rem);
}
.info__sat-mark {
  display: block;
  line-height: 1;
}
.info__sat-note {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: absolute;
  top: 27px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: clamp(0.625rem, 0.5809859155rem + 0.1877934272vw, 0.75rem);
  line-height: 1;
  text-align: center;
}
.info__note {
  color: var(--main);
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: 0.07em;
  margin-top: 4px;
}

/*###################################################################
  br（module）
###################################################################*/
.br-1000-b {
  display: none;
}
@media (max-width: 1000px) {
  .br-1000-b {
    display: block;
  }
}
.br-900-b {
  display: none;
}
@media (max-width: 900px) {
  .br-900-b {
    display: block;
  }
}
.br-800-b {
  display: none;
}
@media (max-width: 800px) {
  .br-800-b {
    display: block;
  }
}
.br-sp-b {
  display: none;
}
@media (max-width: 768px) {
  .br-sp-b {
    display: block;
  }
}
.br-600-b {
  display: none;
}
@media (max-width: 600px) {
  .br-600-b {
    display: block;
  }
}
.br-500-b {
  display: none;
}
@media (max-width: 500px) {
  .br-500-b {
    display: block;
  }
}

/*###################################################################
  hamburger（module）
###################################################################*/
.hamburger {
  width: 46px;
  height: 46px;
  display: inline-block;
  position: relative;
  z-index: 30;
  background-color: #009640;
}
@media (min-width: 769px) {
  .hamburger {
    display: none;
  }
}
@media (min-width: 769px) {
  .hamburger_sticky {
    display: inline-block;
  }
}
.hamburger[aria-expanded=true] .hamburger__line {
  background-color: transparent;
}
.hamburger[aria-expanded=true] .hamburger__line::before {
  -webkit-transform: translateY(-5px) rotate(135deg);
      -ms-transform: translateY(-5px) rotate(135deg);
          transform: translateY(-5px) rotate(135deg);
}
.hamburger[aria-expanded=true] .hamburger__line::after {
  -webkit-transform: translateY(5px) rotate(-135deg);
      -ms-transform: translateY(5px) rotate(-135deg);
          transform: translateY(5px) rotate(-135deg);
}
.hamburger__line {
  width: 18px;
  height: 2px;
  display: inline-block;
  position: absolute;
  top: calc(50% + 1px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  background-color: var(--base);
}
.hamburger__line::before {
  content: "";
  width: 100%;
  height: 2px;
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  background-color: var(--base);
}
.hamburger__line::after {
  content: "";
  width: 100%;
  height: 2px;
  display: inline-block;
  position: absolute;
  bottom: 5px;
  left: 0;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  background-color: var(--base);
}

@media (hover: hover) and (pointer: fine) {
  .hamburger {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .hamburger:hover {
    background-color: var(--main);
  }
}
/*###################################################################
  drawer（module）
###################################################################*/
.drawer {
  width: 375px;
  height: 100vh;
  -webkit-transform: translateX(375px);
      -ms-transform: translateX(375px);
          transform: translateX(375px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  background-color: var(--base);
  z-index: 15;
  overflow: auto;
  overscroll-behavior-y: contain;
  visibility: hidden;
}
.drawer[aria-hidden=false] {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  visibility: visible;
}
.drawer_position {
  position: fixed;
  top: 0;
  right: 0;
}
.drawer__inner {
  padding-bottom: 100px;
}
.drawer__top {
  padding-top: 65px;
}
.drawer__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 52px;
}
.drawer__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 10px;
  font-weight: 500;
  line-height: 1;
}
.drawer__en {
  color: var(--main);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0.07em;
}

.is-drawer-active {
  overflow: hidden;
}

@media (hover: hover) and (pointer: fine) {
  .drawer__link {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .drawer__link:hover, .drawer__link:focus {
    color: var(--main2);
  }
  .drawer__link:hover .drawer__en, .drawer__link:focus .drawer__en {
    color: var(--main2);
  }
  .drawer__en {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
}
.drawer-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  background-color: #000;
  visibility: hidden;
  opacity: 0;
  z-index: 5;
}

.is-drawer-active {
  height: 100%;
  overflow: hidden;
}
.is-drawer-active .drawer-bg {
  visibility: visible;
  opacity: 0.8;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

/*###################################################################
  hover（module）
###################################################################*/
@media (hover: hover) and (pointer: fine) {
  .op {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op:hover, .op:focus {
    opacity: 0.7;
  }
}
@media (hover: hover) and (pointer: fine) {
  .op-fn {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op-fn:hover {
    opacity: 0.7;
  }
}
@media (hover: hover) and (pointer: fine) {
  .op-im {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op-im:hover, .op-im:focus {
    opacity: 0.7 !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .op-fnim {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op-fnim:hover {
    opacity: 0.7 !important;
  }
}
/*###################################################################
  lower（module）
###################################################################*/
.lower-mv {
  height: clamp(13.5625rem, 9.8213028169rem + 15.9624413146vw, 24.1875rem);
  display: grid;
  place-items: center;
  position: relative;
  background: url(../images/lower-mv-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/lower-mv-1.webp) 1x, url(../images/lower-mv-1@2x.webp) 2x);
  background-image: image-set(url(../images/lower-mv-1.webp) 1x, url(../images/lower-mv-1@2x.webp) 2x);
}
.lower-mv::before, .lower-mv::after {
  content: "";
  position: absolute;
}
.lower-mv::before {
  width: clamp(5.625rem, 2.6320422535rem + 12.7699530516vw, 14.125rem);
  aspect-ratio: 226/186;
  bottom: calc(clamp(0.625rem, 0.2948943662rem + 1.4084507042vw, 1.5625rem) * -1);
  left: 0;
  background: url(../images/lower-mv-deco-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/lower-mv-deco-1.webp) 1x, url(../images/lower-mv-deco-1@2x.webp) 2x);
  background-image: image-set(url(../images/lower-mv-deco-1.webp) 1x, url(../images/lower-mv-deco-1@2x.webp) 2x);
}
.lower-mv::after {
  width: clamp(9rem, 4.2024647887rem + 20.4694835681vw, 22.625rem);
  aspect-ratio: 362/249;
  top: 0;
  right: 0;
  background: url(../images/lower-mv-deco-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/lower-mv-deco-2.webp) 1x, url(../images/lower-mv-deco-2@2x.webp) 2x);
  background-image: image-set(url(../images/lower-mv-deco-2.webp) 1x, url(../images/lower-mv-deco-2@2x.webp) 2x);
}
.lower-mv__inner {
  max-width: clamp(19.3125rem, 14.0088028169rem + 22.6291079812vw, 34.375rem);
  width: 100%;
  height: 100%;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  position: relative;
}
.lower-mv__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.8125rem, 0.636443662rem + 0.7511737089vw, 1.3125rem);
  position: relative;
  z-index: 3;
  line-height: 1;
  margin-top: clamp(4.25rem, 3.9419014085rem + 1.3145539906vw, 5.125rem);
}
.lower-mv__jp {
  font-size: clamp(1.5rem, 1.323943662rem + 0.7511737089vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.04em;
  -webkit-text-stroke: 4px var(--base);
  paint-order: stroke;
}
.lower-mv__en {
  color: var(--main);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  letter-spacing: 0.07em;
}
.lower-mv__fox {
  max-width: clamp(3.875rem, 1.8063380282rem + 8.8262910798vw, 9.75rem);
  width: 100%;
  aspect-ratio: 156/157;
  position: absolute;
  bottom: clamp(1.875rem, 1.8309859155rem + 0.1877934272vw, 2rem);
  right: 0;
  background: url(../images/lower-mv-fox.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/lower-mv-fox.webp) 1x, url(../images/lower-mv-fox@2x.webp) 2x);
  background-image: image-set(url(../images/lower-mv-fox.webp) 1x, url(../images/lower-mv-fox@2x.webp) 2x);
}

/*###################################################################
  WordPressテスト環境用設定
###################################################################*/
/*###################################################################
  top（page）
###################################################################*/
.top-mv {
  container-type: inline-size;
  position: relative;
}
.top-mv__title-box {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: absolute;
  top: 17.1527777778cqw;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 3;
}
@media (max-width: 768px) {
  .top-mv__title-box {
    top: 37.0666666667cqw;
  }
}
.top-mv__title-box::before {
  content: "";
  width: 1.875cqw;
  aspect-ratio: 27/25;
  position: absolute;
  top: 14.7916666667cqw;
  left: calc(50% + 9.375cqw);
  z-index: 3;
  background: url(../images/icon-mv-deco-3.svg) no-repeat center center/contain;
}
@media (max-width: 768px) {
  .top-mv__title-box::before {
    width: 5.6cqw;
    top: 36.5333333333cqw;
    left: calc(50% + 22.5333333333cqw);
  }
}
.top-mv__title {
  position: relative;
  font-weight: bold;
  text-align: center;
  white-space: pre-line;
  -webkit-text-stroke: 4px var(--base);
  paint-order: stroke;
}
.top-mv__title-sub {
  font-size: 2.2222222222cqw;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .top-mv__title-sub {
    font-size: 5.3333333333cqw;
  }
}
.top-mv__title-main {
  font-size: 3.3333333333cqw;
  line-height: 1.36;
  letter-spacing: 0.09em;
}
@media (max-width: 768px) {
  .top-mv__title-main {
    font-size: 8.5333333333cqw;
  }
}
.top-mv__title-strong {
  font-size: 4.4444444444cqw;
}
@media (max-width: 768px) {
  .top-mv__title-strong {
    font-size: 10.6666666667cqw;
  }
}
.top-mv__blue {
  color: var(--main);
}
.top-mv__green {
  color: var(--main2);
}
.top-mv__tag {
  max-width: 31.1111111111cqw;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.9701388889cqw;
  position: absolute;
  bottom: 2.2916666667cqw;
  right: 3.6805555556cqw;
  z-index: 3;
}
@media (max-width: 768px) {
  .top-mv__tag {
    max-width: 69.8666666667cqw;
    gap: 2.1333333333cqw;
    bottom: 30.6666666667cqw;
    right: inherit;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.top-mv__tag-bg {
  aspect-ratio: 218/337;
  position: relative;
  background: url(../images/top-mv-tag.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-mv-tag.webp) 1x, url(../images/top-mv-tag@2x.webp) 2x);
  background-image: image-set(url(../images/top-mv-tag.webp) 1x, url(../images/top-mv-tag@2x.webp) 2x);
}
.top-mv__tag-text {
  width: 100%;
  position: absolute;
  bottom: 4.8611111111cqw;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: var(--main);
  font-size: 1.6666666667cqw;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  white-space: pre-line;
}
@media (max-width: 768px) {
  .top-mv__tag-text {
    font-size: 4.2666666667cqw;
    bottom: 9.3333333333cqw;
  }
}
.top-mv__faq {
  max-width: 23.3333333333cqw;
  width: 100%;
  position: absolute;
  bottom: 7.0138888889cqw;
  left: 5.7638888889cqw;
  z-index: 3;
  padding-right: 0.1388888889cqw;
  padding-bottom: 0.2777777778cqw;
}
@media (max-width: 768px) {
  .top-mv__faq {
    max-width: 70.9333333333cqw;
    bottom: 3.2cqw;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    padding-right: 0.5333333333cqw;
    padding-bottom: 1.0666666667cqw;
  }
}
.top-mv__faq::after {
  content: "";
  max-width: 23.1944444444cqw;
  width: 100%;
  aspect-ratio: 334/108;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  background-color: #bae0a0;
}
@media (max-width: 768px) {
  .top-mv__faq::after {
    max-width: 70.4cqw;
  }
}
.top-mv__faq-link {
  display: block;
  max-width: 23.1944444444cqw;
  width: 100%;
}
@media (max-width: 768px) {
  .top-mv__faq-link {
    max-width: 70.4cqw;
  }
}
.top-mv::before {
  content: "";
  width: 2.2222222222cqw;
  aspect-ratio: 32/33;
  position: absolute;
  top: 19.7916666667cqw;
  left: 39.7222222222cqw;
  z-index: 3;
  background: url(../images/icon-mv-deco-1.svg) no-repeat center center/contain;
}
@media (max-width: 768px) {
  .top-mv::before {
    width: 6.9333333333cqw;
    top: 45.8666666667cqw;
    left: 22.4cqw;
  }
}
.top-mv::after {
  content: "";
  width: 2.2916666667cqw;
  aspect-ratio: 33/32;
  position: absolute;
  top: 29.6527777778cqw;
  left: 43.4722222222cqw;
  z-index: 3;
  background: url(../images/icon-mv-deco-2.svg) no-repeat center center/contain;
}
@media (max-width: 768px) {
  .top-mv::after {
    width: 6.9333333333cqw;
    top: 60.8cqw;
    left: 34.1333333333cqw;
  }
}

@media (hover: hover) and (pointer: fine) {
  .top-mv__faq-link {
    -webkit-transition: -webkit-transform 0.4s;
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
  }
  .top-mv__faq-link:hover, .top-mv__faq-link:focus {
    -webkit-transform: translate(0.1388888889cqw, 0.2777777778cqw);
        -ms-transform: translate(0.1388888889cqw, 0.2777777778cqw);
            transform: translate(0.1388888889cqw, 0.2777777778cqw);
  }
}
@media (hover: hover) and (pointer: fine) and (max-width: 768px) {
  .top-mv__faq-link:hover, .top-mv__faq-link:focus {
    -webkit-transform: translate(0.5333333333cqw, 1.0666666667cqw);
        -ms-transform: translate(0.5333333333cqw, 1.0666666667cqw);
            transform: translate(0.5333333333cqw, 1.0666666667cqw);
  }
}
.top-group1 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .top-group1 {
    grid-template-columns: 1fr;
  }
}
.top-group1_pos {
  margin-top: 45px;
}
@media (max-width: 768px) {
  .top-group1_pos {
    margin-top: 71px;
  }
}
.top-group1__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.1875rem, 0.0085877863rem + 0.7633587786vw, 0.375rem);
  line-height: 1;
}
.top-group1__jp {
  font-size: clamp(1.25rem, 0.873776908rem + 0.782778865vw, 1.5rem);
}
@media (max-width: 768px) {
  .top-group1__jp {
    font-size: clamp(1rem, 0.5229007634rem + 2.0356234097vw, 1.5rem);
  }
}
.top-group1__en {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 13px;
     -moz-column-gap: 13px;
          column-gap: 13px;
}
.top-group1__en::before, .top-group1__en::after {
  content: "";
  width: clamp(1.6875rem, 0.935053816rem + 1.5655577299vw, 2.1875rem);
  aspect-ratio: 35/29;
  background: url(../images/icon-title-deco-1.svg) no-repeat center center/contain;
}
@media (max-width: 768px) {
  .top-group1__en::before, .top-group1__en::after {
    width: clamp(1.4375rem, 0.721851145rem + 3.0534351145vw, 2.1875rem);
  }
}
.top-group1__en::after {
  -webkit-transform: scaleX(-1);
      -ms-transform: scaleX(-1);
          transform: scaleX(-1);
}
.top-group1__en-text {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.75rem, 0.997553816rem + 1.5655577299vw, 2.25rem);
  letter-spacing: 0.09em;
}
@media (max-width: 768px) {
  .top-group1__en-text {
    font-size: clamp(1.5rem, 0.784351145rem + 3.0534351145vw, 2.25rem);
  }
}
.top-group1__en-text::first-letter {
  color: var(--main);
}

.top-news {
  background-color: #e9f6e0;
}
.top-news__inner {
  max-width: 750px;
  margin-left: auto;
  padding: clamp(1.5rem, 0.5458015267rem + 4.0712468193vw, 2.5rem) clamp(0.625rem, 0.3268129771rem + 1.272264631vw, 0.9375rem);
}
.top-news__body {
  max-width: 629px;
  min-height: clamp(40.3125rem, 32.9761497065rem + 15.2641878669vw, 45.1875rem);
  background-color: var(--base);
  margin-inline: auto;
  padding: clamp(2.1875rem, 0.8158396947rem + 5.8524173028vw, 3.625rem) 15px 35px;
}
@media (max-width: 768px) {
  .top-news__body {
    min-height: clamp(20.1875rem, 0.9842557252rem + 81.9338422392vw, 40.3125rem);
  }
}
.top-news__body-inner {
  max-width: 470px;
  margin-inline: auto;
}
.top-news__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(1.125rem, 0.409351145rem + 3.0534351145vw, 1.875rem);
  margin-top: clamp(1.1875rem, -0.3630725191rem + 6.6157760814vw, 2.8125rem);
}
.top-news__post-link {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
}
.top-news__date {
  max-width: 110px;
  width: 100%;
  height: 27px;
  display: grid;
  place-items: center;
  background-color: var(--main2);
  color: var(--base);
  font-size: 0.875rem;
  line-height: 1;
  border-radius: 9999px;
}
.top-news__post-title {
  line-height: 1.75;
}
.top-news__more {
  width: 260px;
  height: 55px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--main);
  color: var(--base);
  text-align: center;
  border-radius: 9999px;
  margin-inline: auto;
}
.top-news__no-post {
  height: clamp(11.9375rem, 5.4370229008rem + 27.7353689567vw, 18.75rem);
  display: grid;
  place-items: center;
  font-size: clamp(1.125rem, 1.0057251908rem + 0.5089058524vw, 1.25rem);
  font-weight: 500;
  text-align: center;
}

@media (hover: hover) and (pointer: fine) {
  .top-news__more {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .top-news__more:hover, .top-news__more:focus {
    background-color: var(--main2);
  }
}
.top-info {
  background-color: #e0ebf6;
}
.top-info__inner {
  max-width: 750px;
  margin-right: auto;
  padding: clamp(1.25rem, 0.0572519084rem + 5.0890585242vw, 2.5rem) clamp(0.625rem, 0.3268129771rem + 1.272264631vw, 0.9375rem);
}
.top-info__body {
  max-width: 629px;
  min-height: clamp(40.3125rem, 32.9761497065rem + 15.2641878669vw, 45.1875rem);
  background-color: var(--base);
  margin-inline: auto;
  padding: clamp(2.4375rem, 1.304389313rem + 4.834605598vw, 3.625rem) 15px 35px;
}
@media (max-width: 768px) {
  .top-info__body {
    min-height: clamp(36.8125rem, 33.4728053435rem + 14.2493638677vw, 40.3125rem);
    padding: clamp(2.4375rem, 1.304389313rem + 4.834605598vw, 3.625rem) 1.0521875rem 35px;
  }
}
.top-info__body-inner {
  max-width: 481px;
  margin-inline: auto;
}
.top-info__table-wrapper {
  margin-top: clamp(1.1875rem, -0.0052480916rem + 5.0890585242vw, 2.4375rem);
}
.top-info__address {
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  margin-top: clamp(3.5625rem, 3.1450381679rem + 1.7811704835vw, 4rem);
}
.top-info__reserve {
  width: 262px;
  height: 32px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--main2);
  color: var(--base);
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  border-radius: 32px;
  margin-top: 22px;
  margin-inline: auto;
  padding: 10px;
}
.top-info__tel {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: 2.25rem;
  line-height: 1;
  letter-spacing: 0.07em;
  margin-top: 10px;
  margin-inline: auto;
}
.top-info__tel::before {
  content: "";
  min-width: 26px;
  aspect-ratio: 1/1;
  background-color: var(--main2);
  -webkit-mask-image: url(../images/icon-tel.svg);
          mask-image: url(../images/icon-tel.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.top-info__logo-link {
  max-width: clamp(17.0625rem, 14.025528169rem + 12.9577464789vw, 25.6875rem);
  width: 100%;
  display: block;
  margin-top: clamp(1.375rem, 1.1549295775rem + 0.9389671362vw, 2rem);
  margin-inline: auto;
}

.top-group2 {
  background-color: var(--base2);
  position: relative;
  overflow: hidden;
}
@media (max-width: 768px) {
  .top-group2 {
    overflow: visible;
  }
}

.top-concept {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(95%, var(--base)), color-stop(95%, var(--base2)));
  background: -webkit-linear-gradient(top, var(--base) 95%, var(--base2) 95%);
  background: linear-gradient(to bottom, var(--base) 95%, var(--base2) 95%);
}
.top-concept::before, .top-concept::after {
  content: "";
  position: absolute;
  top: calc(clamp(0.875rem, -0.7948473282rem + 7.1246819338vw, 2.625rem) * -1);
  z-index: 1;
}
.top-concept::before {
  max-width: clamp(15.625rem, 8.4621833085rem + 14.9031296572vw, 21.875rem);
  width: 100%;
  aspect-ratio: 350/278;
  left: 0;
  background: url(../images/top-concept-deco-1.webp) no-repeat center center/contain;
  background-image: -webkit-image-set(url(../images/top-concept-deco-1.webp) 1x, url(../images/top-concept-deco-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-concept-deco-1.webp) 1x, url(../images/top-concept-deco-1@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-concept::before {
    max-width: clamp(11rem, 6.5868320611rem + 18.8295165394vw, 15.625rem);
    aspect-ratio: 176/134;
    background: url(../images/top-concept-deco-1_sp.webp) no-repeat center center/contain;
    background-image: -webkit-image-set(url(../images/top-concept-deco-1_sp.webp) 1x, url(../images/top-concept-deco-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-concept-deco-1_sp.webp) 1x, url(../images/top-concept-deco-1_sp@2x.webp) 2x);
  }
}
.top-concept::after {
  max-width: clamp(15.875rem, 8.7121833085rem + 14.9031296572vw, 22.125rem);
  width: 100%;
  aspect-ratio: 354/278;
  right: 0;
  background: url(../images/top-concept-deco-2.webp) no-repeat center center/contain;
  background-image: -webkit-image-set(url(../images/top-concept-deco-2.webp) 1x, url(../images/top-concept-deco-2@2x.webp) 2x);
  background-image: image-set(url(../images/top-concept-deco-2.webp) 1x, url(../images/top-concept-deco-2@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-concept::after {
    max-width: clamp(10.5rem, 5.3711832061rem + 21.8829516539vw, 15.875rem);
    aspect-ratio: 168/134;
    background: url(../images/top-concept-deco-2_sp.webp) no-repeat center center/contain;
    background-image: -webkit-image-set(url(../images/top-concept-deco-2_sp.webp) 1x, url(../images/top-concept-deco-2_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-concept-deco-2_sp.webp) 1x, url(../images/top-concept-deco-2_sp@2x.webp) 2x);
  }
}
.top-concept__outer {
  max-width: 1440px;
  position: relative;
  z-index: 1;
  margin-inline: auto;
  padding-top: 114px;
}
@media (max-width: 768px) {
  .top-concept__outer {
    padding-top: 120px;
  }
}
.top-concept__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.8125rem, -0.275rem + 4.64vw, 2.625rem);
  position: relative;
  line-height: 1;
}
.top-concept__title::before {
  content: "";
  width: clamp(2.625rem, 1.2375rem + 5.92vw, 4.9375rem);
  aspect-ratio: 79/98;
  position: absolute;
  top: calc(clamp(2rem, 0.9125rem + 4.64vw, 3.8125rem) * -1);
  left: calc(50% - clamp(8.0625rem, 4.575rem + 14.88vw, 13.875rem));
  background: url(../images/icon-bird.svg) no-repeat center center/contain;
}
.top-concept__title-text {
  font-size: clamp(1.5rem, 1.1892265193rem + 1.3259668508vw, 2.25rem);
  font-weight: bold;
  letter-spacing: 0.07em;
}
.top-concept__body {
  max-width: 1393px;
  min-height: 643px;
  position: relative;
  z-index: 1;
  margin-top: clamp(2.5rem, 0.7092958271rem + 3.7257824143vw, 4.0625rem);
  margin-left: auto;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .top-concept__body {
    min-height: inherit;
    margin-top: clamp(1.6875rem, 0.9122137405rem + 3.3078880407vw, 2.5rem);
    margin-right: auto;
    padding-left: 0;
  }
}
.top-concept__box {
  max-width: clamp(30rem, 15.1013412817rem + 30.998509687vw, 43rem);
  container-type: inline-size;
  position: relative;
  z-index: 1;
  padding-bottom: 80px;
}
@media (max-width: 768px) {
  .top-concept__box {
    max-width: 660px;
    margin-inline: auto;
    padding: 0 clamp(0.625rem, -0.5677480916rem + 5.0890585242vw, 1.875rem);
  }
}
.top-concept__balloon {
  max-width: clamp(25rem, 16.1181073025rem + 18.479880775vw, 32.75rem);
  margin-left: 5.8139534884cqw;
}
@media (max-width: 768px) {
  .top-concept__balloon {
    max-width: clamp(21.125rem, 17.427480916rem + 15.7760814249vw, 25rem);
    margin-left: initial;
    margin-inline: auto;
  }
}
.top-concept__subtitle {
  font-size: clamp(1.125rem, 0.6952309985rem + 0.8941877794vw, 1.5rem);
  font-weight: bold;
  line-height: 1.45;
  letter-spacing: 0.07em;
  margin-top: clamp(0.6875rem, -0.2070610687rem + 3.8167938931vw, 1.625rem);
}
@media (max-width: 768px) {
  .top-concept__subtitle {
    font-size: clamp(1.25rem, 1.0114503817rem + 1.0178117048vw, 1.5rem);
    text-align: center;
  }
}
.top-concept__strong {
  font-size: clamp(1.5rem, 0.9269746647rem + 1.1922503726vw, 2rem);
}
@media (max-width: 768px) {
  .top-concept__strong {
    font-size: clamp(1.5rem, 1.0229007634rem + 2.0356234097vw, 2rem);
  }
}
.top-concept__text {
  max-width: 682px;
  margin-top: clamp(1.375rem, 0.8382633588rem + 2.2900763359vw, 1.9375rem);
}
.top-concept__img {
  max-width: clamp(26rem, -2.0782414307rem + 58.4202682563vw, 50.5rem);
  width: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  border-radius: 100px 0 0 0;
  margin-left: auto;
  overflow: hidden;
}
@media (max-width: 768px) {
  .top-concept__img {
    max-width: 70.9333333333%;
    position: static;
    margin-top: clamp(0.625rem, -0.5677480916rem + 5.0890585242vw, 1.875rem);
  }
}
.top-concept__bg {
  max-width: 75.0694444444%;
  width: 100%;
  height: 896px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
@media (max-width: 768px) {
  .top-concept__bg {
    max-width: 100%;
    height: 100%;
  }
}
.top-concept__bg img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0.54)), to(rgba(255, 255, 255, 0.54))), url(../images/top-concept-bg.webp) lightgray 50%/cover no-repeat;
  background: -webkit-linear-gradient(bottom, rgba(255, 255, 255, 0.54) 0%, rgba(255, 255, 255, 0.54) 100%), url(../images/top-concept-bg.webp) lightgray 50%/cover no-repeat;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.54) 0%, rgba(255, 255, 255, 0.54) 100%), url(../images/top-concept-bg.webp) lightgray 50%/cover no-repeat;
  -webkit-filter: blur(5px);
          filter: blur(5px);
}

.top-feature {
  position: relative;
  z-index: 1;
}
.top-feature_pos {
  margin-top: clamp(3.8125rem, 2.679389313rem + 4.834605598vw, 5rem);
}
.top-feature__inner {
  max-width: 1360px;
  margin-inline: auto;
  padding: 0 30px;
}
@media (max-width: 768px) {
  .top-feature__inner {
    padding: 0;
  }
}
.top-feature__title {
  max-width: clamp(43.375rem, 12.7897727273rem + 63.6363636364vw, 70.0625rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
@media (max-width: 768px) {
  .top-feature__title {
    max-width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
  }
}
.top-feature__jp {
  font-size: clamp(1.5rem, 0.640461997rem + 1.7883755589vw, 2.25rem);
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.07em;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .top-feature__jp {
    font-size: clamp(1rem, 0.1650763359rem + 3.5623409669vw, 1.875rem);
    margin-top: 0;
  }
}
.top-feature__en {
  max-width: clamp(28.5rem, 6.7250372578rem + 45.305514158vw, 47.5rem);
  width: 100%;
}
@media (max-width: 768px) {
  .top-feature__en {
    max-width: clamp(23.4375rem, 10.0190839695rem + 57.2519083969vw, 37.5rem);
    padding-left: calc(clamp(-0.625rem, -1.2213740458rem + 2.5445292621vw, 0rem) * -1);
  }
}
.top-feature__outer {
  max-width: 1440px;
  container-type: inline-size;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .top-feature__outer {
    max-width: 620px;
  }
}
.top-feature__box-title {
  font-size: clamp(1.25rem, 0.1039493294rem + 2.3845007452vw, 2.25rem);
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .top-feature__box-title {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
.top-feature__bg {
  position: relative;
  z-index: 1;
  background-color: var(--base3);
  margin-top: clamp(4.25rem, 2.9735915493rem + 5.4460093897vw, 7.875rem);
  padding-top: clamp(6.75rem, 5.616889313rem + 4.834605598vw, 7.9375rem);
  padding-bottom: clamp(6.5625rem, 2.341160221rem + 18.0110497238vw, 16.75rem);
}
.top-feature__bg::after {
  content: "";
  max-width: clamp(14.875rem, 1.1940201192rem + 28.4649776453vw, 26.8125rem);
  width: 100%;
  aspect-ratio: 429/326;
  position: absolute;
  top: calc(clamp(1.375rem, -0.2008196721rem + 3.2786885246vw, 2.75rem) * -1);
  right: 0;
  z-index: -1;
  background: url(../images/top-feature3-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature3-deco.webp) 1x, url(../images/top-feature3-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature3-deco.webp) 1x, url(../images/top-feature3-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature__bg::after {
    max-width: clamp(10.5rem, 6.3253816794rem + 17.8117048346vw, 14.875rem);
    top: calc(clamp(0.75rem, 0.1536259542rem + 2.5445292621vw, 1.375rem) * -1);
  }
}

.top-feature1_pos {
  margin-top: calc(clamp(0rem, -5.5153688525rem + 11.4754098361vw, 4.8125rem) * -1);
}
@media (max-width: 768px) {
  .top-feature1_pos {
    margin-top: 20px;
  }
}
.top-feature1__outer {
  position: relative;
}
.top-feature1__outer::after {
  content: "";
  max-width: clamp(6.9375rem, -0.8699701937rem + 16.2444113264vw, 13.75rem);
  width: 100%;
  aspect-ratio: 220/215;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  background: url(../images/top-feature1-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature1-deco.webp) 1x, url(../images/top-feature1-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature1-deco.webp) 1x, url(../images/top-feature1-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature1__outer::after {
    max-width: clamp(7.5rem, 1.536259542rem + 25.4452926209vw, 13.75rem);
    bottom: -4px;
  }
}
.top-feature1__body {
  max-width: 1390px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 40px 15px;
  padding-right: 30px;
}
@media (max-width: 768px) {
  .top-feature1__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-right: 0;
  }
}
.top-feature1__box {
  max-width: 687px;
  width: 100%;
  margin-top: clamp(0rem, -7.3777011923rem + 15.3502235469vw, 6.4375rem);
}
@media (max-width: 768px) {
  .top-feature1__box {
    padding: 0 clamp(0.625rem, -0.5677480916rem + 5.0890585242vw, 1.875rem);
  }
}
.top-feature1__title {
  white-space: pre-line;
}
@media (max-width: 768px) {
  .top-feature1__title {
    text-align: center;
  }
}
.top-feature1__text {
  margin-top: clamp(0.6875rem, -0.2070610687rem + 3.8167938931vw, 1.625rem);
}
.top-feature1__img {
  max-width: 641px;
  width: 100%;
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .top-feature1__img {
    max-width: 100%;
  }
}
.top-feature1__en {
  width: 88.3333333333cqw;
  position: absolute;
  top: clamp(2.0625rem, -4.7421758569rem + 14.1579731744vw, 8rem);
  left: clamp(2.8125rem, 0.0906296572rem + 5.6631892697vw, 5.1875rem);
}
@media (max-width: 768px) {
  .top-feature1__en {
    display: none;
  }
}

.top-feature2_pos {
  margin-top: clamp(2.4375rem, 1.3640267176rem + 4.5801526718vw, 3.5625rem);
}
.top-feature2__body {
  max-width: 1386px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(1.5rem, 0.5458015267rem + 4.0712468193vw, 2.5rem) 6px;
  margin-left: auto;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .top-feature2__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: auto;
    padding-left: 0;
  }
}
.top-feature2__box {
  max-width: 778px;
  width: 100%;
}
@media (max-width: 768px) {
  .top-feature2__box {
    padding: 0 clamp(0.625rem, -0.5677480916rem + 5.0890585242vw, 1.875rem);
  }
}
@media (max-width: 768px) {
  .top-feature2__title {
    text-align: center;
  }
}
.top-feature2__text {
  max-width: 750px;
  margin-top: clamp(1.125rem, 0.1938338301rem + 1.9374068554vw, 1.9375rem);
}
@media (max-width: 768px) {
  .top-feature2__text {
    margin-top: clamp(0.75rem, 0.3921755725rem + 1.5267175573vw, 1.125rem);
  }
}
.top-feature2__img {
  max-width: 572px;
  width: 100%;
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .top-feature2__img {
    max-width: 100%;
  }
}
.top-feature2__img::after {
  content: "";
  max-width: clamp(7.875rem, 3.0042846498rem + 10.1341281669vw, 12.125rem);
  width: 100%;
  aspect-ratio: 194/151;
  position: absolute;
  bottom: -9.8%;
  right: 37px;
  background: url(../images/top-feature2-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature2-deco.webp) 1x, url(../images/top-feature2-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature2-deco.webp) 1x, url(../images/top-feature2-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature2__img::after {
    max-width: clamp(4.8125rem, 1.8902671756rem + 12.4681933842vw, 7.875rem);
    bottom: -14.8%;
    right: 19px;
  }
}
.top-feature2__en {
  width: 100cqw;
  position: absolute;
  top: 40px;
  right: 0;
}
@media (max-width: 768px) {
  .top-feature2__en {
    display: none;
  }
}

.top-feature3__outer {
  position: relative;
}
@media (max-width: 768px) {
  .top-feature3__outer {
    z-index: 1;
  }
}
.top-feature3__body {
  max-width: 1390px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(1.5rem, 0.5458015267rem + 4.0712468193vw, 2.5rem) 15px;
  padding-right: 30px;
}
@media (max-width: 768px) {
  .top-feature3__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-right: 0;
  }
}
.top-feature3__box {
  max-width: 751px;
  width: 100%;
  margin-top: clamp(0rem, -2.2142857143rem + 4.6130952381vw, 1.9375rem);
}
@media (max-width: 768px) {
  .top-feature3__box {
    padding: 0 clamp(0.40625rem, -0.9952290076rem + 5.9796437659vw, 1.875rem);
  }
}
.top-feature3__title {
  max-width: 578px;
  white-space: pre-line;
}
.top-feature3__text {
  margin-top: clamp(0.4375rem, -0.7552480916rem + 5.0890585242vw, 1.6875rem);
}
@media (max-width: 768px) {
  .top-feature3__text {
    padding: 0 calc(clamp(-0.21875rem, -1rem + 2.0833333333vw, 0rem) * -1);
  }
}
.top-feature3__img {
  max-width: 572px;
  width: 100%;
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .top-feature3__img {
    max-width: 100%;
  }
}
.top-feature3__en {
  width: 68.1944444444cqw;
  position: absolute;
  top: -40px;
  left: clamp(14.3125rem, -1.8038375559rem + 33.5320417288vw, 28.375rem);
}
@media (max-width: 768px) {
  .top-feature3__en {
    max-width: clamp(19.3125rem, 12.0963740458rem + 30.7888040712vw, 26.875rem);
    width: 100%;
    top: calc(clamp(3.5rem, 1.5319656489rem + 8.3969465649vw, 5.5625rem) * -1);
    left: clamp(0.75rem, -0.3234732824rem + 4.5801526718vw, 1.875rem);
    z-index: -1;
  }
}
@media (max-width: 768px) {
  .top-feature3__en_pc {
    display: none;
  }
}
@media (min-width: 769px) {
  .top-feature3__en_sp {
    display: none;
  }
}

.top-feature4_pos {
  margin-top: clamp(2.4375rem, 1.1851145038rem + 5.3435114504vw, 3.75rem);
}
.top-feature4__body {
  max-width: 1390px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(1.5rem, 0.5458015267rem + 4.0712468193vw, 2.5rem) 6px;
  margin-left: auto;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .top-feature4__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: auto;
    padding-left: 0;
  }
}
.top-feature4__box {
  max-width: 778px;
  width: 100%;
  margin-top: clamp(0rem, -1.1428571429rem + 2.380952381vw, 1rem);
}
@media (max-width: 768px) {
  .top-feature4__box {
    padding: 0 clamp(0.40625rem, -0.9952290076rem + 5.9796437659vw, 1.875rem);
  }
}
.top-feature4__text {
  max-width: 721px;
  margin-top: clamp(1.125rem, 0.1938338301rem + 1.9374068554vw, 1.9375rem);
}
@media (max-width: 768px) {
  .top-feature4__text {
    margin-top: clamp(0.5rem, -0.0963740458rem + 2.5445292621vw, 1.125rem);
    padding: 0 calc(clamp(-0.21875rem, -1rem + 2.0833333333vw, 0rem) * -1);
  }
}
.top-feature4__img {
  max-width: 572px;
  width: 100%;
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .top-feature4__img {
    max-width: 100%;
  }
}
.top-feature4__img::after {
  content: "";
  max-width: 126px;
  width: 100%;
  aspect-ratio: 126/144;
  position: absolute;
  bottom: -15.2%;
  left: calc(clamp(-1.8125rem, -10.8376490313rem + 18.7779433681vw, 6.0625rem) * -1);
  background: url(../images/top-feature4-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature4-deco.webp) 1x, url(../images/top-feature4-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature4-deco.webp) 1x, url(../images/top-feature4-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature4__img::after {
    max-width: clamp(4.6875rem, 1.6459923664rem + 12.9770992366vw, 7.875rem);
    left: 45px;
    bottom: -16%;
  }
}

.top-feature-gallery {
  position: relative;
  z-index: 1;
}
.top-feature-gallery_pos {
  margin-top: calc(clamp(2.9375rem, -0.1702348066rem + 13.2596685083vw, 10.4375rem) * -1);
}
.top-feature-gallery__slider {
  overflow: hidden;
}
.top-feature-gallery__wrapper {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.top-feature-gallery__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-animation: infinity-scroll 30s linear infinite both;
          animation: infinity-scroll 30s linear infinite both;
}
.top-feature-gallery__slide {
  max-width: clamp(8.5rem, 5.5735497238rem + 12.4861878453vw, 15.5625rem);
  margin-right: clamp(0.75rem, 0.4651243094rem + 1.2154696133vw, 1.4375rem);
}
.top-feature-gallery__slide:nth-last-of-type(even) {
  margin-top: clamp(0.75rem, 0.4910220994rem + 1.1049723757vw, 1.375rem);
}

.top-med {
  background: url(../images/top-med-bg.webp) no-repeat bottom center/cover;
  background-image: -webkit-image-set(url(../images/top-med-bg.webp) 1x, url(../images/top-med-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-med-bg.webp) 1x, url(../images/top-med-bg@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-med {
    background: url(../images/top-med-bg_sp.webp) no-repeat bottom center/100% auto;
    background-image: -webkit-image-set(url(../images/top-med-bg_sp.webp) 1x, url(../images/top-med-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-med-bg_sp.webp) 1x, url(../images/top-med-bg_sp@2x.webp) 2x);
  }
}
.top-med_pos {
  margin-top: clamp(0rem, -2.3625rem + 10.08vw, 3.9375rem);
}
@media (max-width: 768px) {
  .top-med_pos {
    margin-top: 0;
  }
}
.top-med__inner {
  max-width: 924px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 88px 30px 59px;
}
@media (max-width: 1280px) {
  .top-med__inner {
    padding: clamp(1.9375rem, -1.4618320611rem + 14.5038167939vw, 5.5rem) clamp(1.65625rem, 1.447519084rem + 0.8905852417vw, 1.875rem) clamp(3rem, 2.3439885496rem + 2.7989821883vw, 3.6875rem);
  }
}
.top-med__title {
  display: grid;
  place-items: center;
  text-align: center;
}
.top-med__title > * {
  grid-area: 1/1;
}
.top-med__en {
  max-width: clamp(14rem, 1.9156403941rem + 51.5599343186vw, 33.625rem);
  width: 100%;
}
.top-med__jp {
  color: #f79427;
  font-size: clamp(1.25rem, 0.6342364532rem + 2.6272577997vw, 2.25rem);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.07em;
}
.top-med__items {
  max-width: clamp(20.125rem, -3.0431034483rem + 98.8505747126vw, 57.75rem);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(0.625rem, -0.0677339901rem + 2.9556650246vw, 1.75rem) clamp(0.625rem, -0.9528940887rem + 6.7323481117vw, 3.1875rem);
  margin-top: clamp(1.375rem, 0.9131773399rem + 1.9704433498vw, 2.125rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .top-med__items {
    max-width: clamp(20.125rem, 6.0505725191rem + 60.0508905852vw, 34.875rem);
    grid-template-columns: repeat(2, 1fr);
  }
}
.top-med__link {
  width: 100%;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.6875rem, 0.1102216749rem + 2.4630541872vw, 1.625rem);
  background-color: var(--base);
  border: 1px solid var(--main);
  border-radius: 50%;
}
.top-med__icon {
  width: clamp(1.6875rem, 0.8408251232rem + 3.6124794745vw, 3.0625rem);
  height: clamp(1.5625rem, 0.7543103448rem + 3.4482758621vw, 2.875rem);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.top-med__icon_1 {
  background-image: url(../images/icon-med-1.svg);
}
.top-med__icon_2 {
  background-image: url(../images/icon-med-2.svg);
}
.top-med__icon_3 {
  background-image: url(../images/icon-med-3.svg);
}
.top-med__icon_4 {
  background-image: url(../images/icon-med-4.svg);
}
.top-med__icon_5 {
  background-image: url(../images/icon-med-5.svg);
}
.top-med__icon_6 {
  background-image: url(../images/icon-med-6.svg);
}
.top-med__name {
  color: var(--text);
  font-size: clamp(1rem, 0.6921182266rem + 1.3136288998vw, 1.5rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.07em;
}

@media (hover: hover) and (pointer: fine) {
  .top-med__link {
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  }
  .top-med__link:hover, .top-med__link:focus {
    -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
.top-kids {
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding-top: clamp(1.125rem, -0.3075633383rem + 2.9806259314vw, 2.375rem);
  padding-bottom: clamp(0rem, -1.5505725191rem + 6.6157760814vw, 1.625rem);
}
@media (max-width: 768px) {
  .top-kids {
    padding-top: calc(clamp(-1.625rem, -1.7442748092rem + 0.5089058524vw, -1.5rem) * -1);
  }
}
.top-kids::before, .top-kids::after {
  content: "";
  width: 100%;
  position: absolute;
  top: calc(clamp(-0.4375rem, -0.8549618321rem + 1.7811704835vw, 0rem) * -1);
  z-index: 1;
}
.top-kids::before {
  max-width: clamp(11.75rem, 0.3611214605rem + 23.695976155vw, 21.6875rem);
  aspect-ratio: 347/278;
  left: 0;
  background: url(../images/top-kids-deco-1t.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-deco-1t.webp) 1x, url(../images/top-kids-deco-1t@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-deco-1t.webp) 1x, url(../images/top-kids-deco-1t@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-kids::before {
    max-width: clamp(11rem, 6.6464694656rem + 18.5750636132vw, 15.5625rem);
    aspect-ratio: 350/266;
    background: url(../images/top-kids-deco-1t_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-kids-deco-1t_sp.webp) 1x, url(../images/top-kids-deco-1t_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-kids-deco-1t_sp.webp) 1x, url(../images/top-kids-deco-1t_sp@2x.webp) 2x);
  }
}
.top-kids::after {
  max-width: clamp(11.875rem, 2.3484538003rem + 19.8211624441vw, 20.1875rem);
  aspect-ratio: 323/278;
  right: 0;
  background: url(../images/top-kids-deco-2t.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-deco-2t.webp) 1x, url(../images/top-kids-deco-2t@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-deco-2t.webp) 1x, url(../images/top-kids-deco-2t@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-kids::after {
    max-width: clamp(10.5rem, 6.4446564885rem + 17.3027989822vw, 14.75rem);
    aspect-ratio: 350/279;
    background: url(../images/top-kids-deco-2t_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-kids-deco-2t_sp.webp) 1x, url(../images/top-kids-deco-2t_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-kids-deco-2t_sp.webp) 1x, url(../images/top-kids-deco-2t_sp@2x.webp) 2x);
  }
}
.top-kids_pos {
  margin-top: calc(clamp(1.125rem, -0.3075633383rem + 2.9806259314vw, 2.375rem) * -1);
}
@media (max-width: 768px) {
  .top-kids_pos {
    margin-top: -26px;
  }
}
.top-kids__bg {
  position: relative;
  background: url(../images/top-kids-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-bg.webp) 1x, url(../images/top-kids-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-bg.webp) 1x, url(../images/top-kids-bg@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-kids__bg {
    background: url(../images/top-kids-bg_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-kids-bg_sp.webp) 1x, url(../images/top-kids-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-kids-bg_sp.webp) 1x, url(../images/top-kids-bg_sp@2x.webp) 2x);
  }
}
.top-kids__outer {
  max-width: 1440px;
  position: relative;
  margin-inline: auto;
}
.top-kids__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 110px 30px 84px;
}
@media (max-width: 1480px) {
  .top-kids__inner {
    padding-top: calc(clamp(-9.625rem, -12.7766393443rem + 6.5573770492vw, -6.875rem) * -1);
  }
}
@media (max-width: 768px) {
  .top-kids__inner {
    padding: clamp(6.125rem, 3.6202290076rem + 10.6870229008vw, 8.75rem) clamp(0.625rem, -0.5677480916rem + 5.0890585242vw, 1.875rem) clamp(3.8125rem, 2.4408396947rem + 5.8524173028vw, 5.25rem);
  }
}
.top-kids__body {
  max-width: 1017px;
  margin-left: auto;
}
.top-kids__main {
  max-width: 765px;
  margin-left: auto;
}
.top-kids__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.5625rem, -0.8091603053rem + 5.8524173028vw, 2rem);
  line-height: 1;
}
.top-kids__jp {
  max-width: clamp(17.25rem, 5.2032442748rem + 51.3994910941vw, 29.875rem);
  width: 100%;
  aspect-ratio: 478/100;
  background: url(../images/top-kids-jp-deco.webp) no-repeat center center/contain;
  background-image: -webkit-image-set(url(../images/top-kids-jp-deco.webp) 1x, url(../images/top-kids-jp-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-jp-deco.webp) 1x, url(../images/top-kids-jp-deco@2x.webp) 2x);
  font-size: clamp(1rem, 0.0458015267rem + 4.0712468193vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.07em;
  text-align: center;
  padding-top: clamp(1rem, 0.5825381679rem + 1.7811704835vw, 1.4375rem);
}
.top-kids__en {
  color: var(--base);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(4.75rem, 3.3174366617rem + 2.9806259314vw, 6rem);
  font-weight: 600;
}
@media (max-width: 768px) {
  .top-kids__en {
    font-size: clamp(2.5rem, 0.3530534351rem + 9.1603053435vw, 4.75rem);
  }
}
.top-kids__box {
  position: relative;
  background-color: var(--base);
  border-radius: 44px;
  outline: 2px dotted #f5c98c;
  outline-offset: -13px;
  margin-top: clamp(1.4375rem, -1.4250954198rem + 12.213740458vw, 4.4375rem);
  padding: clamp(6.5625rem, 5.2504770992rem + 5.5979643766vw, 7.9375rem) 24px calc(clamp(-3.4375rem, -4.8091603053rem + 5.8524173028vw, -2rem) * -1);
}
@media (max-width: 768px) {
  .top-kids__box {
    outline-offset: -14px;
  }
}
.top-kids__box::before, .top-kids__box::after {
  content: "";
  max-width: clamp(9.8125rem, 0.9265267176rem + 37.9134860051vw, 19.125rem);
  width: 100%;
  aspect-ratio: 306/105;
  position: absolute;
  top: calc(clamp(-2.5rem, -4.348759542rem + 7.8880407125vw, -0.5625rem) * -1);
}
.top-kids__box::before {
  left: 0;
  background: url(../images/top-kids-box-deco-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-box-deco-1.webp) 1x, url(../images/top-kids-box-deco-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-box-deco-1.webp) 1x, url(../images/top-kids-box-deco-1@2x.webp) 2x);
}
.top-kids__box::after {
  right: 0;
  background: url(../images/top-kids-box-deco-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-box-deco-2.webp) 1x, url(../images/top-kids-box-deco-2@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-box-deco-2.webp) 1x, url(../images/top-kids-box-deco-2@2x.webp) 2x);
}
.top-kids__box-inner {
  max-width: 584px;
  margin-inline: auto;
}
.top-kids__box-title {
  font-size: clamp(1.25rem, 0.534351145rem + 3.0534351145vw, 2rem);
  font-weight: bold;
  line-height: 1.45;
  text-align: center;
  letter-spacing: 0.07em;
}
.top-kids__bule {
  color: var(--main);
}
.top-kids__box-balloon {
  max-width: clamp(20.8125rem, 10.1970419847rem + 45.2926208651vw, 31.9375rem);
  width: 100%;
  position: absolute;
  top: calc(clamp(0.3125rem, -2.9675572519rem + 13.9949109415vw, 3.75rem) * -1);
  left: calc(50% - clamp(0.375rem, -0.9370229008rem + 5.5979643766vw, 1.75rem));
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}
.top-kids__text {
  margin-top: clamp(0.625rem, 0.5653625954rem + 0.2544529262vw, 0.6875rem);
}
.top-kids__balloon {
  max-width: 754px;
  position: relative;
  z-index: 1;
  margin-top: clamp(1rem, 0.8807251908rem + 0.5089058524vw, 1.125rem);
}
@media (max-width: 768px) {
  .top-kids__balloon {
    max-width: clamp(17.75rem, 8.4465648855rem + 39.6946564885vw, 27.5rem);
    margin-left: 5px;
  }
}
.top-kids__img {
  max-width: clamp(16.3125rem, -12.2671385991rem + 59.4634873323vw, 41.25rem);
  width: 100%;
  position: absolute;
  top: 55px;
  left: -59px;
}
@media (max-width: 768px) {
  .top-kids__img {
    max-width: clamp(20.25rem, 10.9465648855rem + 39.6946564885vw, 30rem);
    position: relative;
    top: inherit;
    left: 2px;
    z-index: 1;
    margin-top: clamp(1.8125rem, 0.2619274809rem + 6.6157760814vw, 3.4375rem);
    margin-inline: auto;
  }
}
.top-kids__deco-b::before, .top-kids__deco-b::after {
  content: "";
  width: 100%;
  position: absolute;
  bottom: calc(clamp(-1.375rem, -2.6870229008rem + 5.5979643766vw, 0rem) * -1);
}
.top-kids__deco-b::before {
  max-width: clamp(16rem, 1.0297131148rem + 31.1475409836vw, 29.0625rem);
  aspect-ratio: 465/369;
  left: 0;
  background: url(../images/top-kids-deco-1b.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-deco-1b.webp) 1x, url(../images/top-kids-deco-1b@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-deco-1b.webp) 1x, url(../images/top-kids-deco-1b@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-kids__deco-b::before {
    max-width: clamp(11rem, 6.2290076336rem + 20.3562340967vw, 16rem);
    aspect-ratio: 350/266;
    background: url(../images/top-kids-deco-1b_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-kids-deco-1b_sp.webp) 1x, url(../images/top-kids-deco-1b_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-kids-deco-1b_sp.webp) 1x, url(../images/top-kids-deco-1b_sp@2x.webp) 2x);
  }
}
.top-kids__deco-b::after {
  max-width: clamp(14.5625rem, 0.236866617rem + 29.8062593145vw, 27.0625rem);
  aspect-ratio: 433/486;
  right: 0;
  background: url(../images/top-kids-deco-2b.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-kids-deco-2b.webp) 1x, url(../images/top-kids-deco-2b@2x.webp) 2x);
  background-image: image-set(url(../images/top-kids-deco-2b.webp) 1x, url(../images/top-kids-deco-2b@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-kids__deco-b::after {
    max-width: clamp(10.5rem, 6.6235687023rem + 16.5394402036vw, 14.5625rem);
    aspect-ratio: 350/279;
    background: url(../images/top-kids-deco-2b_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-kids-deco-2b_sp.webp) 1x, url(../images/top-kids-deco-2b_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-kids-deco-2b_sp.webp) 1x, url(../images/top-kids-deco-2b_sp@2x.webp) 2x);
  }
}

/*###################################################################
  clinic（page）
###################################################################*/
.clinic-c_pos {
  margin-top: clamp(3.125rem, 2.0515267176rem + 4.5801526718vw, 4.25rem);
}

.clinic1_pos {
  margin-top: clamp(3.125rem, 1.5125rem + 6.88vw, 5.8125rem);
}

.clinic1-1 {
  position: relative;
}
.clinic1-1::after {
  content: "";
  width: 100%;
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url(../images/clinic1-1-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic1-1-bg.webp) 1x, url(../images/clinic1-1-bg@2x.webp) 2x);
  background-image: image-set(url(../images/clinic1-1-bg.webp) 1x, url(../images/clinic1-1-bg@2x.webp) 2x);
  -webkit-filter: blur(5px);
          filter: blur(5px);
}
.clinic1-1__inner {
  max-width: 929px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 64px 30px 95px;
}
@media (max-width: 1280px) {
  .clinic1-1__inner {
    padding: clamp(3.125rem, 2.6rem + 2.24vw, 4rem) clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem) clamp(4.0625rem, 2.9375rem + 4.8vw, 5.9375rem);
  }
}
.clinic1-1__inner::before, .clinic1-1__inner::after {
  content: "";
  width: 100%;
  position: absolute;
  top: calc(clamp(0.9375rem, 0.3433098592rem + 2.5352112676vw, 2.625rem) * -1);
}
.clinic1-1__inner::before {
  max-width: clamp(8.1875rem, 3.3679577465rem + 20.5633802817vw, 21.875rem);
  aspect-ratio: 350/278;
  left: 0;
  background: url(../images/clinic1-deco-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic1-deco-1.webp) 1x, url(../images/clinic1-deco-1@2x.webp) 2x);
  background-image: image-set(url(../images/clinic1-deco-1.webp) 1x, url(../images/clinic1-deco-1@2x.webp) 2x);
}
.clinic1-1__inner::after {
  max-width: clamp(8.5625rem, 3.786971831rem + 20.3755868545vw, 22.125rem);
  aspect-ratio: 354/278;
  right: 0;
  background: url(../images/clinic1-deco-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic1-deco-2.webp) 1x, url(../images/clinic1-deco-2@2x.webp) 2x);
  background-image: image-set(url(../images/clinic1-deco-2.webp) 1x, url(../images/clinic1-deco-2@2x.webp) 2x);
}
.clinic1-1__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  color: var(--base);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.875rem, 1.65rem + 0.96vw, 2.25rem);
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.09em;
  margin-inline: auto;
}
.clinic1-1__title::before {
  content: "";
  width: clamp(2.5rem, 1.0375rem + 6.24vw, 4.9375rem);
  aspect-ratio: 79/98;
  position: absolute;
  top: calc(clamp(-2rem, -3.9125rem + 8.16vw, 1.1875rem) * -1);
  right: clamp(11rem, 8.4875rem + 10.72vw, 15.1875rem);
  background: url(../images/icon-bird.svg) no-repeat center center/contain;
}
.clinic1-1__body {
  background-color: var(--base);
  margin-top: 21px;
  padding: clamp(1.875rem, 0.5625rem + 5.6vw, 4.0625rem) 20px clamp(2.1875rem, 1.6625rem + 2.24vw, 3.0625rem);
}
.clinic1-1__body-inner {
  max-width: 501px;
  margin-inline: auto;
}
.clinic1-1__box-title {
  font-size: clamp(1.25rem, 0.65rem + 2.56vw, 2.25rem);
  font-weight: bold;
  line-height: 1.4444444444;
  text-align: center;
  letter-spacing: 0.07em;
}
.clinic1-1__text {
  text-align: center;
  margin-top: clamp(1.4375rem, 0.721851145rem + 3.0534351145vw, 2.1875rem);
}
@media (max-width: 600px) {
  .clinic1-1__text {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left;
    margin-inline: auto;
  }
}

.clinic1-2_pos {
  margin-top: clamp(3.125rem, 2.3rem + 3.52vw, 4.5rem);
}
.clinic1-2__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
}
@media (max-width: 768px) {
  .clinic1-2__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: clamp(1.875rem, 0.6822519084rem + 5.0890585242vw, 3.125rem);
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.clinic1-2__body {
  max-width: 733px;
  width: 100%;
  padding-top: clamp(0rem, -8.5855954466rem + 17.8633975482vw, 6.375rem);
}
@media (max-width: 768px) {
  .clinic1-2__body {
    max-width: 600px;
  }
}
.clinic1-2__title {
  font-size: clamp(1.5rem, 1.2085492228rem + 1.2435233161vw, 2.25rem);
  font-weight: bold;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .clinic1-2__title {
    text-align: center;
  }
}
.clinic1-2__text {
  margin-top: clamp(1.25rem, 1.2257124352rem + 0.103626943vw, 1.3125rem);
}
.clinic1-2__img {
  max-width: 510px;
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 45px;
}
@media (max-width: 768px) {
  .clinic1-2__img {
    max-width: 400px;
    border-radius: 30px;
  }
}
.clinic1-2__badge {
  width: clamp(6.875rem, 4.5191062176rem + 10.0518134715vw, 12.9375rem);
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  right: clamp(0.9375rem, 0.3303108808rem + 2.5906735751vw, 2.5rem);
  bottom: clamp(0.5rem, 0.4514248705rem + 0.207253886vw, 0.625rem);
  border: 1px solid var(--base);
  border-radius: 50%;
  color: var(--base);
}
.clinic1-2__badge::before {
  content: "";
  width: 91.7874396135%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  left: 50%;
  border: 1px solid var(--base);
  border-radius: 50%;
  translate: -50% -50%;
}
.clinic1-2__badge-role {
  font-size: clamp(1rem, 0.8056994819rem + 0.829015544vw, 1.5rem);
  font-weight: bold;
  line-height: 1.4;
}
.clinic1-2__badge-name {
  font-size: clamp(1.25rem, 0.9585492228rem + 1.2435233161vw, 2rem);
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin-top: 4px;
}

.clinic1-3 {
  background-color: var(--base2);
}
.clinic1-3_pos {
  margin-top: clamp(2.5rem, 0.9625rem + 6.56vw, 5.0625rem);
}
.clinic1-3__inner {
  max-width: 928px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 93px 30px 90px;
}
@media (max-width: 768px) {
  .clinic1-3__inner {
    padding: clamp(3.125rem, 0.5605916031rem + 10.941475827vw, 5.8125rem) clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem) clamp(3.75rem, 1.9608778626rem + 7.6335877863vw, 5.625rem);
  }
}
.clinic1-3__title {
  display: grid;
  place-items: center;
  text-align: center;
}
.clinic1-3__title > * {
  grid-area: 1/1;
}
.clinic1-3__en {
  width: 100%;
}
.clinic1-3__jp {
  font-size: clamp(1.5rem, 1.0411908646rem + 1.9575856444vw, 2.25rem);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.07em;
  margin-top: clamp(0rem, -0.8706352155rem + 3.7147102526vw, 1.5625rem);
}
.clinic1-3__divider {
  height: 1px;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, var(--text)), color-stop(50%, transparent));
  background-image: -webkit-linear-gradient(left, var(--text) 50%, transparent 50%);
  background-image: linear-gradient(to right, var(--text) 50%, transparent 50%);
  background-repeat: repeat-x;
  background-size: 8px 1px;
  margin-top: clamp(1.375rem, -0.1159351145rem + 6.3613231552vw, 2.9375rem);
}
.clinic1-3__list {
  display: grid;
  grid-template-columns: clamp(7.625rem, -2.3216463415rem + 42.4390243902vw, 13.0625rem) 1fr;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 0;
  font-size: clamp(1rem, 0.8470636215rem + 0.6525285481vw, 1.25rem);
  line-height: 2;
  margin-top: clamp(1.5rem, 1.1176590538rem + 1.6313213703vw, 2.125rem);
}
.clinic1-3__year {
  font-weight: 400;
}

.clinic2__bg {
  position: relative;
  background-color: var(--base3);
  padding-top: clamp(3.3125rem, -1.1006679389rem + 18.8295165394vw, 7.9375rem);
  padding-bottom: clamp(3.125rem, 1.55rem + 6.72vw, 5.75rem);
}
.clinic2__bg::after {
  content: "";
  max-width: clamp(12.375rem, 7.2913732394rem + 21.6901408451vw, 26.8125rem);
  width: 100%;
  aspect-ratio: 429/326;
  position: absolute;
  top: calc(clamp(1.1875rem, 0.6373239437rem + 2.3474178404vw, 2.75rem) * -1);
  right: 0;
  z-index: 1;
  background: url(../images/clinic2-1-deco-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic2-1-deco-1.webp) 1x, url(../images/clinic2-1-deco-1@2x.webp) 2x);
  background-image: image-set(url(../images/clinic2-1-deco-1.webp) 1x, url(../images/clinic2-1-deco-1@2x.webp) 2x);
}

.clinic2-1 {
  position: relative;
  z-index: 1;
}
.clinic2-1__outer {
  max-width: 1440px;
  margin-inline: auto;
  position: relative;
}
.clinic2-1__body {
  max-width: 1390px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  padding-right: 30px;
}
@media (max-width: 768px) {
  .clinic2-1__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0;
  }
}
.clinic2-1__img {
  max-width: 572px;
  width: 100%;
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .clinic2-1__img {
    max-width: 100%;
  }
}
.clinic2-1__img::after {
  content: "";
  width: clamp(12.4375rem, 3.5556073025rem + 18.479880775vw, 20.1875rem);
  aspect-ratio: 323/236;
  position: absolute;
  bottom: clamp(-5.875rem, -9.1698956781rem + 6.8554396423vw, -3rem);
  left: clamp(10.9375rem, -4.9639530551rem + 33.084947839vw, 24.8125rem);
  z-index: 1;
  background: url(../images/clinic2-1-deco-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic2-1-deco-2.webp) 1x, url(../images/clinic2-1-deco-2@2x.webp) 2x);
  background-image: image-set(url(../images/clinic2-1-deco-2.webp) 1x, url(../images/clinic2-1-deco-2@2x.webp) 2x);
}
@media (max-width: 768px) {
  .clinic2-1__img::after {
    content: none;
  }
}
.clinic2-1__box {
  max-width: 751px;
  width: 100%;
  margin-top: 49px;
}
@media (max-width: 768px) {
  .clinic2-1__box {
    margin-top: calc(clamp(1.25rem, -0.4198473282rem + 7.1246819338vw, 3rem) * -1);
    padding: 0 clamp(0.9375rem, 0.0429389313rem + 3.8167938931vw, 1.875rem);
  }
}
@media (max-width: 768px) {
  .clinic2-1__title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 30px;
  }
}
.clinic2-1__jp {
  font-size: clamp(1.5rem, 0.784351145rem + 3.0534351145vw, 2.25rem);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.07em;
}
.clinic2-1__text {
  margin-top: clamp(1.75rem, 1.1536259542rem + 2.5445292621vw, 2.375rem);
}
.clinic2-1__photo {
  max-width: 566px;
  width: 100%;
  margin-top: clamp(1.875rem, -0.2738450075rem + 4.4709388972vw, 3.75rem);
  margin-left: auto;
}
@media (max-width: 768px) {
  .clinic2-1__photo {
    margin-left: 0;
    margin-inline: auto;
    padding: 0 clamp(0.9375rem, 0.0429389313rem + 3.8167938931vw, 1.875rem);
  }
}
.clinic2-1__en {
  width: 651px;
  position: absolute;
  top: -40px;
  left: clamp(3.125rem, -29.7299069374rem + 68.358714044vw, 28.375rem);
}
@media (max-width: 768px) {
  .clinic2-1__en {
    max-width: clamp(17.75rem, -2.4670801527rem + 86.2595419847vw, 38.9375rem);
    width: 100%;
    position: static;
  }
}
@media (max-width: 768px) {
  .clinic2-1__en_pc {
    display: none;
  }
}
@media (min-width: 769px) {
  .clinic2-1__en_sp {
    display: none;
  }
}

.clinic2-2_pos {
  margin-top: clamp(4.375rem, 2.6125rem + 7.52vw, 7.3125rem);
}
.clinic2-2__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .clinic2-2__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.clinic2-2__list {
  display: grid;
  grid-template-columns: clamp(15.5rem, 10.4496497373rem + 10.5078809107vw, 19.25rem) 1fr;
  row-gap: 11px;
  margin-top: clamp(1.875rem, 1.2786259542rem + 2.5445292621vw, 2.5rem);
}
@media (max-width: 768px) {
  .clinic2-2__list {
    grid-template-columns: 1fr;
    row-gap: 0;
  }
}
.clinic2-2__dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1rem, 0.8056994819rem + 0.829015544vw, 1.5rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.07em;
  padding: 11px 20px;
}
@media (max-width: 768px) {
  .clinic2-2__dt {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.clinic2-2__dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--base);
  color: var(--text);
  font-size: clamp(0.9375rem, 0.7189119171rem + 0.932642487vw, 1.5rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.07em;
  border: 1px solid var(--main);
  padding: 10px clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
}
.clinic2-2__dd_time {
  line-height: 1.6;
}
.clinic2-2__line {
  display: block;
}
.clinic2-2__line_card {
  padding-left: 1em;
}
.clinic2-2__card {
  max-width: 516px;
  width: 100%;
}

.clinic2-3_pos {
  margin-top: clamp(4.375rem, 3.7786259542rem + 2.5445292621vw, 5rem);
}
.clinic2-3__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .clinic2-3__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.clinic2-3__body {
  max-width: 1067px;
  margin-top: clamp(1.25rem, 0.0572519084rem + 5.0890585242vw, 2.5rem);
  margin-inline: auto;
}
.clinic2-3__map {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
}
.clinic2-3__gmap {
  width: 100%;
  height: clamp(21.25rem, 18.0616859624rem + 13.6034732272vw, 27.125rem);
}
.clinic2-3__map-btn {
  max-width: 301px;
  width: 100%;
  height: 66px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: clamp(0.9375rem, 0.32697178rem + 2.6049204052vw, 2.0625rem);
     -moz-column-gap: clamp(0.9375rem, 0.32697178rem + 2.6049204052vw, 2.0625rem);
          column-gap: clamp(0.9375rem, 0.32697178rem + 2.6049204052vw, 2.0625rem);
  position: absolute;
  top: 21px;
  left: 20px;
  z-index: 1;
  background-color: var(--base);
  color: #000;
  font-size: clamp(1rem, 0.8056994819rem + 0.829015544vw, 1.5rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.07em;
  border-radius: 44px;
  padding: 10px;
}
@media (max-width: 768px) {
  .clinic2-3__map-btn {
    max-width: clamp(13.75rem, 10.1717557252rem + 15.2671755725vw, 17.5rem);
    height: clamp(3.125rem, 2.1708015267rem + 4.0712468193vw, 4.125rem);
    top: 15px;
    left: 15px;
  }
}
.clinic2-3__map-text {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
.clinic2-3__map-pin {
  min-width: 18px;
  aspect-ratio: 15/18;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  background-color: var(--main);
  -webkit-mask-image: url(../images/icon-pin.svg);
          mask-image: url(../images/icon-pin.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.clinic2-3__map-arrow {
  width: 8px;
  height: 8px;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  border-top: 2px solid var(--main);
  border-right: 2px solid var(--main);
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.clinic2-3__access {
  min-height: 86px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-column-gap: clamp(1rem, 0.4233900145rem + 2.4602026049vw, 2.0625rem);
     -moz-column-gap: clamp(1rem, 0.4233900145rem + 2.4602026049vw, 2.0625rem);
          column-gap: clamp(1rem, 0.4233900145rem + 2.4602026049vw, 2.0625rem);
  background-color: #f1ecdf;
  border-radius: 5px;
  margin-top: 18px;
  padding-block: 10px;
  padding-inline: clamp(0.9375rem, 0.0429389313rem + 3.8167938931vw, 1.875rem);
}
@media (max-width: 768px) {
  .clinic2-3__access {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 12px;
    padding-block: 16px;
  }
}
.clinic2-3__access-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.clinic2-3__access-text {
  color: #000;
  font-size: clamp(0.875rem, 0.5358176556rem + 1.4471780029vw, 1.5rem);
  font-weight: 400;
  line-height: 2;
  white-space: nowrap;
}
.clinic2-3__access-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: clamp(2.25rem, 1.8768994211rem + 1.5918958032vw, 2.9375rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  border-radius: 50%;
  margin-right: clamp(0.5rem, 0.3643270622rem + 0.5788712012vw, 0.75rem);
}
.clinic2-3__access-icon_train {
  background-color: var(--main);
}
.clinic2-3__access-icon_train::before {
  content: "";
  width: 44.6808510638%;
  aspect-ratio: 21/25;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-train.svg);
          mask-image: url(../images/icon-train.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.clinic2-3__access-icon_car {
  background-color: #f79427;
}
.clinic2-3__access-icon_car::before {
  content: "";
  width: 46.8085106383%;
  aspect-ratio: 1/1;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-car.svg);
          mask-image: url(../images/icon-car.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}

.clinic2-4_pos {
  margin-top: clamp(2.5rem, 0.5916030534rem + 8.1424936387vw, 4.5rem);
}
.clinic2-4__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .clinic2-4__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.clinic2-4__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: clamp(0.625rem, 0.1878238342rem + 1.8652849741vw, 1.75rem);
     -moz-column-gap: clamp(0.625rem, 0.1878238342rem + 1.8652849741vw, 1.75rem);
          column-gap: clamp(0.625rem, 0.1878238342rem + 1.8652849741vw, 1.75rem);
  row-gap: clamp(1.5625rem, 1.3681994819rem + 0.829015544vw, 2.0625rem);
  margin-top: clamp(1.25rem, 0.5699481865rem + 2.9015544041vw, 3rem);
}
@media (max-width: 768px) {
  .clinic2-4__items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 500px) {
  .clinic2-4__items {
    grid-template-columns: 1fr;
    justify-items: center;
  }
}
.clinic2-4__item {
  max-width: clamp(17.5rem, 14.3911917098rem + 13.2642487047vw, 25.5rem);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 500px) {
  .clinic2-4__item {
    max-width: 400px;
    height: auto;
  }
}
.clinic2-4__img {
  width: 100%;
  aspect-ratio: 408/280;
  overflow: hidden;
}
.clinic2-4__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.clinic2-4__name {
  display: grid;
  place-items: center;
  background-color: #f5c98c;
  color: var(--base);
  font-size: clamp(1.125rem, 0.9792746114rem + 0.621761658vw, 1.5rem);
  font-weight: bold;
  line-height: 2;
  text-align: center;
  letter-spacing: 0.07em;
  padding: 10px;
}
.clinic2-4__text {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--base2);
  color: var(--text);
  font-size: clamp(0.875rem, 0.8264248705rem + 0.207253886vw, 1rem);
  line-height: 2;
  padding: 10px clamp(0.625rem, -1.2132352941rem + 2.9411764706vw, 1.25rem);
}
@media (max-width: 500px) {
  .clinic2-4__text {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    padding: 10px 20px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .clinic2-3__map-btn {
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
  }
  .clinic2-3__map-btn:hover, .clinic2-3__map-btn:focus {
    opacity: 0.8;
  }
}
/*###################################################################
  medical（page）
###################################################################*/
.med-c__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
@media (max-width: 768px) {
  .med-c__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.med-c__mt96 {
  margin-top: clamp(4.375rem, 2.8244274809rem + 6.6157760814vw, 6rem);
}
.med-c__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}

.med-col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem) 15px;
}
@media (max-width: 768px) {
  .med-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.med-col_r {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media (max-width: 768px) {
  .med-col_r {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.med-col__box {
  max-width: 679px;
  width: 100%;
}
.med-col__title {
  font-size: clamp(1.25rem, 0.2399299475rem + 2.1015761821vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.07em;
  white-space: pre-line;
}
@media (max-width: 768px) {
  .med-col__title {
    font-size: clamp(1.25rem, 0.8921755725rem + 1.5267175573vw, 1.625rem);
  }
}
.med-col__sub {
  font-size: clamp(1rem, 0.326619965rem + 1.4010507881vw, 1.5rem);
  font-weight: bold;
  letter-spacing: 0.07em;
  white-space: pre-line;
  margin-top: -4px;
}
@media (max-width: 768px) {
  .med-col__sub {
    font-size: clamp(1rem, 0.7614503817rem + 1.0178117048vw, 1.25rem);
  }
}
.med-col__text {
  max-width: 679px;
  font-size: clamp(0.875rem, 0.686888454rem + 0.3913894325vw, 1rem);
  white-space: pre-line;
  margin-top: clamp(0.3125rem, -1.0342600701rem + 2.8021015762vw, 1.3125rem);
}
@media (max-width: 768px) {
  .med-col__text {
    font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
    margin-top: clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
  }
}
.med-col__img {
  max-width: 572px;
  width: 100%;
}

.med-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 21px;
}
.med-list_pos {
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
.med-list__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 25px;
     -moz-column-gap: 25px;
          column-gap: 25px;
}
@media (max-width: 768px) {
  .med-list__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 21px;
  }
}
.med-list__box {
  max-width: 900px;
  width: 100%;
}
.med-list__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 23px;
     -moz-column-gap: 23px;
          column-gap: 23px;
  font-size: clamp(1.125rem, -0.0534150613rem + 2.4518388792vw, 2rem);
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .med-list__title {
    font-size: clamp(1.125rem, 0.6479007634rem + 2.0356234097vw, 1.625rem);
  }
}
.med-list__title::before {
  content: "";
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 19px;
  aspect-ratio: 1/1;
  background: url(../images/icon-title-dot.svg) no-repeat center center/contain;
  margin-top: calc(1em - 9.5px);
}
.med-list__text {
  font-size: clamp(0.875rem, 0.686888454rem + 0.3913894325vw, 1rem);
  margin-top: clamp(0.3125rem, -0.1083625219rem + 0.8756567426vw, 0.625rem);
}
@media (max-width: 768px) {
  .med-list__text {
    font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
    margin-top: clamp(0.5rem, 0.3807251908rem + 0.5089058524vw, 0.625rem);
  }
}
.med-list__img {
  max-width: 355px;
  width: 100%;
}

.med1_pos {
  margin-top: clamp(3.125rem, 2.0515267176rem + 4.5801526718vw, 4.25rem);
}
.med1__col-title2 {
  max-width: 584px;
}
@media (max-width: 768px) {
  .med1__col-title2 {
    max-width: 100%;
  }
}

.med2__inner {
  max-width: 1304px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
@media (max-width: 768px) {
  .med2__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.med2__col {
  max-width: 1292px;
  margin-left: auto;
}
.med2__col-box {
  max-width: 691px;
}

.med3__bottom {
  margin-top: clamp(2.1875rem, 0.9351145038rem + 5.3435114504vw, 3.5rem);
}
.med3__list {
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
.med3__title-short {
  max-width: 515px;
}
.med3__box-wide {
  max-width: 690px;
}
.med3__text-mt {
  margin-top: clamp(0.3125rem, -0.5292250438rem + 1.7513134851vw, 0.9375rem);
}
@media (max-width: 768px) {
  .med3__text-mt {
    margin-top: clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
  }
}

.med4_pos {
  margin-top: calc(clamp(-6rem, -10.8820052539rem + 10.1576182137vw, -2.375rem) * -1);
}
@media (max-width: 768px) {
  .med4_pos {
    margin-top: clamp(4.375rem, 2.8244274809rem + 6.6157760814vw, 6rem);
  }
}
.med4__inner1 {
  max-width: 1304px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
@media (max-width: 768px) {
  .med4__inner1 {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.med4__col1 {
  max-width: 1292px;
  margin-left: auto;
}
.med4__col1-box {
  max-width: 691px;
}
.med4__inner2 {
  margin-top: clamp(2.5rem, 0.1rem + 10.24vw, 6.5rem);
}
.med4__items {
  margin-top: clamp(2.1875rem, 0.9351145038rem + 5.3435114504vw, 3.5rem);
}

.med5__col-title-shotr {
  max-width: 585px;
}
@media (max-width: 768px) {
  .med5__col-title-shotr {
    max-width: 100%;
  }
}
.med5__title-price {
  margin-top: clamp(2.5rem, 0.5916030534rem + 8.1424936387vw, 4.5rem);
}
.med5__title-feature {
  margin-top: clamp(2.5rem, 0.5916030534rem + 8.1424936387vw, 4.5rem);
}
.med5__title-price2 {
  margin-top: clamp(2.5rem, 0.5916030534rem + 8.1424936387vw, 4.5rem);
}
.med5__price2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(1.25rem, 0.9585492228rem + 1.2435233161vw, 2rem);
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
.med5__price2-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(0.9375rem, 0.5796755725rem + 1.5267175573vw, 1.3125rem);
}
.med5__price2-row {
  display: grid;
  grid-template-columns: clamp(9.5rem, -8.5970884413rem + 37.6532399299vw, 22.9375rem) clamp(11.375rem, 4.5570271454rem + 14.1856392294vw, 16.4375rem) 650fr;
  grid-template-areas: "label value desc";
}
@media (max-width: 768px) {
  .med5__price2-row {
    grid-template-columns: 1fr clamp(9.375rem, 6.393129771rem + 12.7226463104vw, 12.5rem);
    grid-template-areas: "label value" "desc desc";
  }
}
.med5__price2-label {
  grid-area: label;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #e9f6e0;
  font-size: clamp(0.875rem, 0.7292746114rem + 0.621761658vw, 1.25rem);
  font-weight: 500;
  text-align: center;
  padding: 9px;
}
.med5__br1 {
  display: none;
}
@media (max-width: 1240px) {
  .med5__br1 {
    display: block;
  }
}
@media (max-width: 768px) {
  .med5__br1 {
    display: none;
  }
}
@media (max-width: 500px) {
  .med5__br1 {
    display: block;
  }
}
.med5__price2-value {
  grid-area: value;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(0.875rem, 0.7292746114rem + 0.621761658vw, 1.25rem);
  font-weight: 500;
  border: 1px solid #e9f6e0;
  padding: 9px clamp(0.5rem, 0.2085492228rem + 1.2435233161vw, 1.25rem);
}
.med5__price2-desc {
  grid-area: desc;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f8f5ee;
  font-size: clamp(0.875rem, 0.7292746114rem + 0.621761658vw, 1.25rem);
  font-weight: 500;
  line-height: 1.6;
  border-top: 1px solid #e9f6e0;
  border-right: 1px solid #e9f6e0;
  border-bottom: 1px solid #e9f6e0;
  padding: 9px clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
}
@media (max-width: 768px) {
  .med5__price2-desc {
    border-left: 1px solid #e9f6e0;
  }
}
.med5__price {
  max-width: 931px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 12px;
  margin-top: clamp(1.875rem, 0.8015267176rem + 4.5801526718vw, 3rem);
  margin-inline: auto;
}
.med5__price-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.med5__price-label {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  background-color: #e9f6e0;
  font-size: clamp(0.875rem, 0.65rem + 0.96vw, 1.25rem);
  font-weight: 500;
  text-align: center;
  padding: 9px 10px;
}
.med5__price-value {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: clamp(8.125rem, -8.15rem + 69.44vw, 35.25rem);
  font-size: clamp(0.875rem, 0.65rem + 0.96vw, 1.25rem);
  font-weight: 500;
  border: 1px solid #e9f6e0;
  padding: 9px clamp(0.5rem, 0.05rem + 1.92vw, 1.25rem);
}
.med5__list {
  margin-top: clamp(2.1875rem, -0.0190839695rem + 9.4147582697vw, 4.5rem);
}
.med5__title-price3 {
  margin-top: clamp(2.5rem, 2.0229007634rem + 2.0356234097vw, 3rem);
}
.med5__price3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: clamp(1.25rem, 0.534351145rem + 3.0534351145vw, 2rem);
}
.med5__price3-note {
  font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
  text-align: center;
}
.med5__price3-btn {
  max-width: 280px;
  width: 100%;
  min-height: 72px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  background-color: #e2558f;
  color: #fff;
  font-size: clamp(1rem, 0.85rem + 0.64vw, 1.25rem);
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.09em;
  margin-top: clamp(1.25rem, 0.5939885496rem + 2.7989821883vw, 1.9375rem);
  padding: 10px;
}
.med5__price3-btn::after {
  content: "";
  width: 10px;
  aspect-ratio: 1/1;
  position: absolute;
  right: 2px;
  bottom: 3px;
  background-color: #fff;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
          clip-path: polygon(100% 0, 100% 100%, 0 100%);
}

@media (hover: hover) and (pointer: fine) {
  .med5__price3-btn {
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
  }
  .med5__price3-btn:hover, .med5__price3-btn:focus {
    background-color: var(--main);
  }
}
.med6__title-merit {
  margin-top: clamp(2.5rem, 1.3rem + 5.12vw, 4.5rem);
}
@media (max-width: 768px) {
  .med6__br1 {
    display: none;
  }
}
.med6__title-compare1 {
  margin-top: clamp(2.1875rem, -0.0190839695rem + 9.4147582697vw, 4.5rem);
}
.med6__title-compare2 {
  margin-top: clamp(2.1875rem, 1.4122137405rem + 3.3078880407vw, 3rem);
}
.med6__compare {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: clamp(1.25rem, 0.8128238342rem + 1.8652849741vw, 2.375rem);
     -moz-column-gap: clamp(1.25rem, 0.8128238342rem + 1.8652849741vw, 2.375rem);
          column-gap: clamp(1.25rem, 0.8128238342rem + 1.8652849741vw, 2.375rem);
  margin-top: clamp(1.25rem, 0.9585492228rem + 1.2435233161vw, 2rem);
}
@media (max-width: 768px) {
  .med6__compare {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: clamp(1.25rem, 0.534351145rem + 3.0534351145vw, 2rem);
  }
}
.med6__compare-col {
  max-width: 621px;
  width: 100%;
}
.med6__compare-label {
  background-color: #e9f6e0;
  color: #9cbe30;
  font-size: clamp(1.125rem, 0.6199649737rem + 1.0507880911vw, 1.5rem);
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.07em;
  padding: 10px;
}
@media (max-width: 768px) {
  .med6__compare-label {
    font-size: clamp(1.125rem, 1.0057251908rem + 0.5089058524vw, 1.25rem);
  }
}
.med6__compare-text {
  font-size: clamp(0.875rem, 0.686888454rem + 0.3913894325vw, 1rem);
  margin-top: 12px;
}
@media (max-width: 768px) {
  .med6__compare-text {
    font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
  }
}
.med6__qa {
  margin-top: clamp(2.1875rem, 1.2888601036rem + 3.8341968912vw, 4.5rem);
}
.med6__qa-q {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #f79427;
  color: #fff;
  font-size: clamp(1.125rem, 0.6199649737rem + 1.0507880911vw, 1.5rem);
  font-weight: bold;
  letter-spacing: 0.07em;
  padding: 10px 20px;
}
@media (max-width: 768px) {
  .med6__qa-q {
    font-size: clamp(1rem, 0.8807251908rem + 0.5089058524vw, 1.125rem);
  }
}
.med6__qa-mark {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.med6__qa-a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
  background-color: #f5c98c;
  padding: clamp(0.9375rem, 0.7674870466rem + 0.725388601vw, 1.375rem) clamp(0.9375rem, 0.8160621762rem + 0.518134715vw, 1.25rem);
}
.med6__qa-a-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(1.125rem, 0.6199649737rem + 1.0507880911vw, 1.5rem);
  font-weight: bold;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .med6__qa-a-title {
    font-size: clamp(1rem, 0.8807251908rem + 0.5089058524vw, 1.125rem);
  }
}
.med6__qa-a-body {
  font-size: clamp(0.875rem, 0.686888454rem + 0.3913894325vw, 1rem);
}
@media (max-width: 768px) {
  .med6__qa-a-body {
    font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
  }
}
.med6__title-price {
  margin-top: clamp(2.1875rem, 1.2888601036rem + 3.8341968912vw, 4.5rem);
}
.med6__price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(1.25rem, 0.9585492228rem + 1.2435233161vw, 2rem);
  margin-top: clamp(1.875rem, 0.8015267176rem + 4.5801526718vw, 3rem);
}
.med6__price-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(0.9375rem, 0.5796755725rem + 1.5267175573vw, 1.3125rem);
}
.med6__price-row-2col {
  display: grid;
  grid-template-columns: -webkit-max-content 1fr;
  grid-template-columns: max-content 1fr;
  grid-template-areas: "value desc";
}
@media (max-width: 768px) {
  .med6__price-row-2col {
    grid-template-columns: 1fr;
    grid-template-areas: "value" "desc";
  }
}
.med6__price-row-3col {
  display: grid;
  grid-template-columns: clamp(9.5rem, -8.5970884413rem + 37.6532399299vw, 22.9375rem) clamp(14.4375rem, 11.7439798599rem + 5.6042031524vw, 16.4375rem) 650fr;
  grid-template-areas: "label value desc";
}
@media (max-width: 768px) {
  .med6__price-row-3col {
    grid-template-columns: 1fr clamp(12.625rem, 10.358778626rem + 9.6692111959vw, 15rem);
    grid-template-areas: "label value" "desc desc";
  }
}
.med6__price-label {
  grid-area: label;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #e9f6e0;
  font-size: clamp(0.875rem, 0.3699649737rem + 1.0507880911vw, 1.25rem);
  font-weight: 500;
  text-align: center;
  padding: 9px clamp(0.3125rem, 0.0739503817rem + 1.0178117048vw, 0.5625rem);
}
@media (max-width: 768px) {
  .med6__price-label {
    font-size: clamp(0.8125rem, 0.6335877863rem + 0.7633587786vw, 1rem);
  }
}
.med6__price-value {
  grid-area: value;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(0.875rem, 0.7292746114rem + 0.621761658vw, 1.25rem);
  font-weight: 500;
  border: 1px solid #e9f6e0;
  padding: 9px clamp(0.5rem, 0.2085492228rem + 1.2435233161vw, 1.25rem);
}
@media (max-width: 768px) {
  .med6__price-value {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.med6__price-value_col3 {
  padding: 9px 10px;
}
.med6__price-desc {
  grid-area: desc;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f8f5ee;
  font-size: clamp(0.875rem, 0.7292746114rem + 0.621761658vw, 1.25rem);
  font-weight: 500;
  line-height: 1.6;
  border-top: 1px solid #e9f6e0;
  border-right: 1px solid #e9f6e0;
  border-bottom: 1px solid #e9f6e0;
  padding: 9px clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
}
@media (max-width: 768px) {
  .med6__price-desc {
    border-left: 1px solid #e9f6e0;
  }
}
.med6__price-desc_col2 {
  padding: clamp(0.5625rem, 0.1738989637rem + 1.6580310881vw, 1.5625rem) clamp(0.625rem, 0.0286259542rem + 2.5445292621vw, 1.25rem);
}
.med6__price-note {
  font-size: clamp(0.75rem, 0.6771373057rem + 0.310880829vw, 0.9375rem);
}
.med6__br1 {
  display: none;
}
@media (max-width: 1310px) {
  .med6__br1 {
    display: block;
  }
}
@media (max-width: 768px) {
  .med6__br1 {
    display: none;
  }
}
@media (max-width: 600px) {
  .med6__br1 {
    display: block;
  }
}

/*###################################################################
  qa（page）
###################################################################*/
.qa1_pos {
  margin-top: 44px;
}
.qa1__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .qa1__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.qa1__nav {
  margin-inline: auto;
}
.qa1__group {
  margin-top: 40px;
}
.qa1__group:first-of-type {
  margin-top: clamp(2.5rem, 2.0856353591rem + 1.7679558011vw, 3.5rem);
}
.qa1__category {
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1.25rem, 0.9392265193rem + 1.3259668508vw, 2rem);
  font-weight: bold;
  line-height: 1.45;
  text-align: center;
  letter-spacing: 0.12em;
  padding: 10px;
}
.qa1__item {
  margin-top: 24px;
}
.qa1__summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  cursor: pointer;
}
.qa1__summary::-webkit-details-marker {
  display: none;
}
.qa1__q {
  width: clamp(2.75rem, 2.4651243094rem + 1.2154696133vw, 3.4375rem);
  display: grid;
  place-items: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  background-color: #009640;
  color: var(--base);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 1.1464088398rem + 0.4419889503vw, 1.5rem);
  letter-spacing: 0.12em;
}
.qa1__bar {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  background-color: var(--main2);
  color: var(--base);
  font-size: clamp(1rem, 0.7928176796rem + 0.8839779006vw, 1.5rem);
  line-height: 1.45;
  letter-spacing: 0.12em;
  padding: 10px clamp(0.8125rem, 0.6571132597rem + 0.6629834254vw, 1.1875rem) 10px clamp(1rem, 0.7928176796rem + 0.8839779006vw, 1.5rem);
}
.qa1__plus {
  width: 24px;
  height: 24px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  position: relative;
}
.qa1__plus::before, .qa1__plus::after {
  content: "";
  width: 14px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: var(--base);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.qa1__plus::before {
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.qa1__plus::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.qa1__item[open] .qa1__plus::after {
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.qa1__answer {
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #e9f6e0;
  padding: clamp(0.9375rem, 0.6137776243rem + 1.3812154696vw, 1.71875rem) clamp(0.9375rem, 0.8598066298rem + 0.3314917127vw, 1.125rem);
}
.qa1__answer-text {
  color: #000;
  font-size: clamp(0.875rem, 0.7557251908rem + 0.5089058524vw, 1rem);
  line-height: 2;
}

.qa-nav {
  max-width: 494px;
}
.qa-nav__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
.qa-nav__link {
  height: clamp(3.9375rem, 2.5766129032rem + 5.8064516129vw, 4.5rem);
  display: grid;
  place-items: center;
  position: relative;
  background: url(../images/qa-link-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/qa-link-bg.webp) 1x, url(../images/qa-link-bg@2x.webp) 2x);
  background-image: image-set(url(../images/qa-link-bg.webp) 1x, url(../images/qa-link-bg@2x.webp) 2x);
  color: var(--main);
  font-size: clamp(0.875rem, 0.5725806452rem + 1.2903225806vw, 1rem);
  font-weight: 500;
  line-height: 1;
}
.qa-nav__icon {
  width: clamp(0.9375rem, 0.5776209677rem + 1.535483871vw, 1.08625rem);
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  right: clamp(0.625rem, -0.2822580645rem + 3.8709677419vw, 1rem);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: var(--main);
  border-radius: 50%;
}
.qa-nav__icon::after {
  content: "";
  width: 6px;
  aspect-ratio: 6/4;
  -webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
          clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: var(--base);
}

.qa2_pos {
  margin-top: 80px;
}
.qa2__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .qa2__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.qa2__group {
  margin-top: 40px;
}
.qa2__list {
  max-width: 931px;
  display: grid;
  grid-template-columns: 367px 1fr;
  row-gap: 12px;
  margin-top: 21px;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .qa2__list {
    grid-template-columns: 1fr;
    row-gap: 0;
  }
}
.qa2__label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #e9f6e0;
  color: var(--text);
  font-size: clamp(0.9375rem, 0.8080110497rem + 0.5524861878vw, 1.25rem);
  font-weight: 500;
  line-height: 2;
  padding: 9px 10px;
}
.qa2__value {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--text);
  font-size: clamp(0.9375rem, 0.8080110497rem + 0.5524861878vw, 1.25rem);
  font-weight: 500;
  line-height: 2;
  border: 1px solid #e9f6e0;
  padding: 9px 20px;
}
@media (max-width: 768px) {
  .qa2__value {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

/*###################################################################
  recruit（page）
###################################################################*/
.recruit-c_pos {
  margin-top: clamp(3.125rem, 2.0515267176rem + 4.5801526718vw, 4.25rem);
}
.recruit-c__bg {
  position: relative;
  z-index: 1;
  background-color: var(--base3);
  margin-top: clamp(3.125rem, 1.0973282443rem + 8.6513994911vw, 5.25rem);
  padding-top: clamp(4.3125rem, 2.1375rem + 9.28vw, 7.9375rem);
  padding-bottom: 60px;
}

.recruit1::after {
  content: "";
  max-width: clamp(12.375rem, 7.2913732394rem + 21.6901408451vw, 26.8125rem);
  width: 100%;
  aspect-ratio: 429/326;
  position: absolute;
  top: calc(clamp(1.1875rem, 0.6373239437rem + 2.3474178404vw, 2.75rem) * -1);
  right: 0;
  background: url(../images/recruit1-deco-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/recruit1-deco-1.webp) 1x, url(../images/recruit1-deco-1@2x.webp) 2x);
  background-image: image-set(url(../images/recruit1-deco-1.webp) 1x, url(../images/recruit1-deco-1@2x.webp) 2x);
}
.recruit1__outer {
  max-width: 1440px;
  margin-inline: auto;
  position: relative;
}
.recruit1__body {
  max-width: 1390px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  padding-right: 30px;
}
@media (max-width: 768px) {
  .recruit1__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0;
  }
}
.recruit1__img {
  max-width: 572px;
  width: 100%;
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .recruit1__img {
    max-width: 100%;
  }
}
.recruit1__img::after {
  content: "";
  width: clamp(6.25rem, -0.48304769rem + 14.0089418778vw, 12.125rem);
  aspect-ratio: 194/151;
  position: absolute;
  bottom: -28px;
  left: clamp(17rem, 0.5971497765rem + 34.1281669151vw, 31.3125rem);
  z-index: 1;
  background: url(../images/top-feature2-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature2-deco.webp) 1x, url(../images/top-feature2-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature2-deco.webp) 1x, url(../images/top-feature2-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .recruit1__img::after {
    width: clamp(3.9375rem, 1.7309160305rem + 9.4147582697vw, 6.25rem);
    left: inherit;
    right: 0;
  }
}
.recruit1__box {
  max-width: 751px;
  width: 100%;
  margin-top: 75px;
}
@media (max-width: 768px) {
  .recruit1__box {
    margin-top: calc(clamp(1.25rem, -0.3005725191rem + 6.6157760814vw, 2.875rem) * -1);
    padding: 0 clamp(0.9375rem, 0.0429389313rem + 3.8167938931vw, 1.875rem);
  }
}
@media (max-width: 768px) {
  .recruit1__text {
    margin-top: 20px;
  }
}
.recruit1__photo {
  max-width: 566px;
  width: 100%;
  margin-top: clamp(1.875rem, -0.2738450075rem + 4.4709388972vw, 3.75rem);
  margin-left: auto;
}
@media (max-width: 768px) {
  .recruit1__photo {
    margin-left: 0;
    margin-inline: auto;
    padding: 0 clamp(0.9375rem, 0.0429389313rem + 3.8167938931vw, 1.875rem);
  }
}
.recruit1__en {
  width: 671px;
  position: absolute;
  top: -40px;
  left: clamp(3.125rem, -29.7299069374rem + 68.358714044vw, 28.375rem);
}
@media (max-width: 768px) {
  .recruit1__en {
    max-width: clamp(17.75rem, -2.4670801527rem + 86.2595419847vw, 38.9375rem);
    width: 100%;
    position: static;
  }
}
@media (max-width: 768px) {
  .recruit1__en_pc {
    display: none;
  }
}
@media (min-width: 769px) {
  .recruit1__en_sp {
    display: none;
  }
}

.recruit2_pos {
  margin-top: 111px;
}
.recruit2__text1 {
  height: 200px;
  display: grid;
  place-items: center;
  font-size: clamp(1.5rem, 1.275rem + 0.96vw, 1.875rem);
  line-height: 2;
  font-weight: bold;
  text-align: center;
}
.recruit2__inner {
  display: none;
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .recruit2__inner {
    padding: 0 clamp(1.25rem, 0.6536259542rem + 2.5445292621vw, 1.875rem);
  }
}
.recruit2__list {
  display: grid;
  grid-template-columns: 308px 1fr;
  row-gap: 10px;
  margin-top: clamp(1.875rem, 1.2786259542rem + 2.5445292621vw, 2.5rem);
}
@media (max-width: 768px) {
  .recruit2__list {
    grid-template-columns: 1fr;
    row-gap: 0;
  }
}
.recruit2__dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1rem, 0.7928176796rem + 0.8839779006vw, 1.5rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.07em;
  padding: 10px 20px;
}
.recruit2__dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--base);
  color: var(--text);
  font-size: clamp(0.9375rem, 0.7044198895rem + 0.9944751381vw, 1.5rem);
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.07em;
  border: 1px solid var(--main);
  padding: 10px 20px;
}
.recruit2__line {
  display: block;
}
.recruit2__line_indent {
  text-indent: -1em;
  padding-left: 1em;
}
.recruit2__line_num {
  text-indent: -1.7em;
  padding-left: 1.7em;
}
.recruit2__tel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 10px;
  margin-top: 45px;
}
.recruit2__tel-text {
  max-width: 262px;
  width: 100%;
  height: 32px;
  display: grid;
  place-items: center;
  background-color: var(--main2);
  color: var(--base);
  font-size: 1rem;
  white-space: nowrap;
  border-radius: 9999px;
}
.recruit2__tel-number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 7px;
     -moz-column-gap: 7px;
          column-gap: 7px;
  color: var(--text);
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.5rem, 1.1892265193rem + 1.3259668508vw, 2.25rem);
  line-height: 1;
  letter-spacing: 0.07em;
  white-space: nowrap;
}
.recruit2__tel-number::before {
  content: "";
  min-width: clamp(1.25rem, 1.0946132597rem + 0.6629834254vw, 1.625rem);
  aspect-ratio: 1/1;
  background-color: var(--main2);
  -webkit-mask-image: url(../images/icon-tel.svg);
          mask-image: url(../images/icon-tel.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}

@media (hover: hover) and (pointer: fine) {
  .recruit2__tel-number {
    -webkit-transition: color 0.4s ease;
    transition: color 0.4s ease;
  }
  .recruit2__tel-number:hover, .recruit2__tel-number:focus {
    color: var(--main2);
  }
}
/*###################################################################
  news（page）
###################################################################*/
.news-list_pos {
  margin-top: clamp(3.125rem, 2.0118343195rem + 4.1420118343vw, 4rem);
}
.news-list__inner {
  max-width: 1000px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .news-list__inner {
    padding: 0 clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem);
  }
}
@media (max-width: 600px) {
  .news-list__inner {
    max-width: 400px;
  }
}
.news-list__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(1.875rem, -0.3571428571rem + 5.9523809524vw, 2.5rem);
}
@media (max-width: 600px) {
  .news-list__items {
    row-gap: 50px;
  }
}
.news-list__post-link {
  display: grid;
  grid-template-columns: clamp(11.25rem, -4.375rem + 41.6666666667vw, 15.625rem) 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: clamp(0.9375rem, -2.4107142857rem + 8.9285714286vw, 1.875rem);
     -moz-column-gap: clamp(0.9375rem, -2.4107142857rem + 8.9285714286vw, 1.875rem);
          column-gap: clamp(0.9375rem, -2.4107142857rem + 8.9285714286vw, 1.875rem);
  background-color: var(--base);
  border: 1px solid #75778d;
}
@media (max-width: 600px) {
  .news-list__post-link {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
}
.news-list__thumbnail {
  max-width: 300px;
  height: 100%;
  overflow: hidden;
}
@media (max-width: 600px) {
  .news-list__thumbnail {
    max-width: 100%;
  }
}
.news-list__thumbnail img {
  height: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.news-list__text-box {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media (max-width: 600px) {
  .news-list__text-box {
    padding-top: 0;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 20px;
  }
}
.news-list__date {
  display: block;
  color: var(--main);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75;
}
.news-list__post-title {
  font-size: clamp(1.125rem, 0.6785714286rem + 1.1904761905vw, 1.25rem);
  line-height: 1.75;
  text-align: start;
  word-break: break-all;
  padding-right: 15px;
}
@media (max-width: 600px) {
  .news-list__post-title {
    padding-right: 0;
  }
}
.news-list__no-post {
  height: 200px;
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: 1.25rem;
  font-weight: 500;
}
.news-list__pagination {
  font-size: 1.25rem;
  margin-top: 150px;
}
@media (max-width: 768px) {
  .news-list__pagination {
    margin-top: 80px;
  }
}
.news-list__pagination ul.page-numbers {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.125rem, -0.875rem + 8vw, 2.125rem);
  margin-inline: auto;
}
.news-list__pagination ul.page-numbers li {
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
}
.news-list__pagination ul.page-numbers li .page-numbers {
  --spacing: 0;
}
.news-list__pagination .page-numbers.current {
  color: var(--main);
}

@media (hover: hover) and (pointer: fine) {
  .news-list__post-link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .news-list__post-link:hover .news-list__thumbnail img, .news-list__post-link:focus .news-list__thumbnail img {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .news-list__post-link:hover .news-list__post-title, .news-list__post-link:focus .news-list__post-title {
    color: var(--main);
    text-decoration: underline;
  }
  .news-list__thumbnail img {
    -webkit-transition: -webkit-transform ease 0.4s;
    transition: -webkit-transform ease 0.4s;
    transition: transform ease 0.4s;
    transition: transform ease 0.4s, -webkit-transform ease 0.4s;
  }
  .news-list__post-title {
    -webkit-transition: color ease 0.4s;
    transition: color ease 0.4s;
    -webkit-text-decoration-color: var(--main);
            text-decoration-color: var(--main);
  }
  .news-list__pagination a {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .news-list__pagination a:hover, .news-list__pagination a:focus {
    opacity: 0.7;
  }
}
.news-post_pos {
  margin-top: clamp(3.125rem, 2.0118343195rem + 4.1420118343vw, 4rem);
}
.news-post__inner {
  max-width: 840px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .news-post__inner {
    padding: 0 clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem);
  }
}
.news-post__bg {
  background-color: var(--base);
  border: 1px solid #75778d;
  padding: 50px 20px 100px;
}
@media (max-width: 768px) {
  .news-post__bg {
    padding: 50px clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) 100px;
  }
}
.news-post__date {
  display: block;
  color: var(--main);
  font-size: 1.25rem;
  font-weight: 500;
}
@media (max-width: 768px) {
  .news-post__date {
    font-size: 1.125rem;
  }
}
.news-post__title {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.75;
  word-break: break-all;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .news-post__title {
    font-size: 1.375rem;
    margin-top: 10px;
  }
}
.news-post__thumbnail {
  margin-top: 40px;
}
.news-post__editor {
  margin-top: 40px;
}

.news-post-pager {
  background-color: var(--base);
  border: 1px solid #75778d;
}
.news-post-pager_pos {
  max-width: 840px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 20px;
  padding-left: 20px;
  margin-top: 80px;
}
@media (max-width: 768px) {
  .news-post-pager_pos {
    margin-top: 60px;
  }
}
.news-post-pager__nav {
  height: 70px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--main);
  font-size: clamp(1rem, 0.1071428571rem + 3.8095238095vw, 1.25rem);
  font-weight: 500;
  padding-right: clamp(0rem, -4.4642857143rem + 19.0476190476vw, 1.25rem);
  padding-left: clamp(0rem, -4.4642857143rem + 19.0476190476vw, 1.25rem);
}
.news-post-pager__link {
  --spacing: 0;
}
.news-post-pager__blank {
  min-width: 106px;
  min-width: clamp(5.4375rem, 0.5267857143rem + 20.9523809524vw, 6.8125rem);
}

@media (hover: hover) and (pointer: fine) {
  .news-post-pager__link {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .news-post-pager__link:hover, .news-post-pager__link:focus {
    opacity: 0.7;
  }
}
/*###################################################################
  page-404（page）
###################################################################*/
.page-404_pos {
  margin-top: clamp(3.125rem, 2.5416666667rem + 2.3333333333vw, 4rem);
}
.page-404__inner {
  max-width: 1000px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .page-404__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.page-404__title {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.75;
}
.page-404__text {
  line-height: 2;
  white-space: pre-line;
  margin-top: 40px;
}
.page-404__button {
  width: 175px;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  border: 1px solid var(--text);
  margin: 54px auto 0;
}

@media (hover: hover) and (pointer: fine) {
  .page-404__button {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .page-404__button:hover, .page-404__button:focus {
    opacity: 0.7;
  }
}
/*###################################################################
  js-（js制御用）
###################################################################*/