@charset "UTF-8";
/* リキッドな余白 */
/**************************************/
/* -------------------------------------------
 * mv
 * 全体
 * -------------------------------------------*/
.top-mv {
  position: relative;
  inset: 0;
  top: calc(1 * var(--px));
  height: calc(100svh - var(--header-height) - 24 * var(--px));
  z-index: 1;
  overflow: clip;
  margin-inline: min(5%, 24 * var(--px));
  border-radius: 2vw 2vw 0 2vw;
  overflow: hidden;
  margin-bottom: calc(24 * var(--px));
}
@media (max-width: 969px) {
  .top-mv {
    height: auto;
    margin-inline: 0;
    border-radius: 0;
    margin-bottom: 0;
  }
}
.top-mv::after {
  background: #fff;
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(13 * var(--px));
  aspect-ratio: 1;
  bottom: 0;
  right: 0;
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 969px) {
  .top-mv::after {
    content: none;
  }
}

/* -------------------------------------------
 * mv
 * 診療時間テーブル
 * -------------------------------------------*/
.top-mv__hours-table {
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #fff;
  padding-left: calc(33 * var(--px));
  padding-top: calc(33 * var(--px));
  border-radius: 2vw 0 2vw 0;
  z-index: 2;
  width: 100%;
  max-width: calc(615 * var(--px));
}
@media (max-width: 1399px) {
  .top-mv__hours-table {
    max-width: calc(515 * var(--px));
    padding-left: calc(20 * var(--px));
    padding-top: calc(20 * var(--px));
  }
}
@media (max-width: 1240px) {
  .top-mv__hours-table {
    max-width: calc(440 * var(--px));
  }
}
@media (max-width: 969px) {
  .top-mv__hours-table {
    display: none;
  }
}
.top-mv__hours-table::before {
  position: absolute;
  content: "";
  top: -2vw;
  right: 0;
  background: transparent;
  width: 2vw;
  height: 2vw;
  border-bottom-right-radius: 2vw;
  -webkit-box-shadow: 0.333vw 0.333vw 0 0.333vw #fff;
          box-shadow: 0.333vw 0.333vw 0 0.333vw #fff;
}
.top-mv__hours-table::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: -2vw;
  background: transparent;
  width: 2vw;
  height: 2vw;
  border-bottom-right-radius: 2vw;
  -webkit-box-shadow: 0.333vw 0.333vw 0 0.333vw #fff;
          box-shadow: 0.333vw 0.333vw 0 0.333vw #fff;
}
@media (max-width: 1399px) {
  .top-mv__hours-table .hours-table__notes {
    padding: 1em;
  }
}

/* -------------------------------------------
 * mv
 * 予約ボタン
 * -------------------------------------------*/
.top-mv__reserve-buttons {
  position: absolute;
  top: calc(30 * var(--px));
  right: calc(26 * var(--px));
  z-index: 1;
  width: calc(540 * var(--px));
}
.top-mv__reserve-buttons .reserve-buttons {
  gap: 3%;
}
@media (max-width: 969px) {
  .top-mv__reserve-buttons {
    display: none;
  }
}
.top-mv__reserve-buttons .reserve-button--web.button {
  gap: 4%;
}
.top-mv__reserve-buttons .reserve-button--phone.button,
.top-mv__reserve-buttons .reserve-button--web.button {
  padding-block: 1em;
}
.top-mv__reserve-buttons .reserve-button--web:before {
  width: clamp(15 * var(--px), 20 / 1240 * 100vw, 20 * var(--px));
}
.top-mv__reserve-buttons .reserve-button--phone:before {
  width: clamp(18 * var(--px), 20 / 1240 * 100vw, 20 * var(--px));
}

/* -------------------------------------------
 * mv
 * スライダー
 * -------------------------------------------*/
.top-mv__swiper .swiper {
  height: calc(100svh - var(--header-height));
}
@media (max-width: 969px) {
  .top-mv__swiper .swiper {
    height: calc(100svh - var(--header-height) - var(--sp-fixed-reserve-buttons-height));
  }
}
.top-mv__swiper .swiper .swiper-wrapper,
.top-mv__swiper .swiper .swiper-slide {
  height: 100%;
}
.top-mv__swiper .swiper .swiper-img {
  height: calc(100svh - var(--header-height));
  position: relative;
}
@media (max-width: 969px) {
  .top-mv__swiper .swiper .swiper-img {
    height: calc(100svh - var(--header-height) - var(--sp-fixed-reserve-buttons-height));
  }
}
@media (max-width: 969px) {
  .top-mv__swiper .swiper .swiper-img::after {
    background: rgba(0, 0, 0, 0.3);
    content: "";
    display: inline-block;
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
  }
}
.top-mv__swiper .swiper img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left center;
     object-position: left center;
}

/* -------------------------------------------
 * mv
 * テキストアニメーション
 * -------------------------------------------*/
/* -------------------------------------------
 * mv
 * テキストエリアのスタイル
 * -------------------------------------------*/
.top-mv__swiper-text-area {
  position: absolute;
  bottom: calc(85 * var(--px));
  left: min(5%, 87 * var(--px));
  z-index: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  color: #fff;
}
@media (max-width: 1024px) {
  .top-mv__swiper-text-area {
    left: 5%;
    right: 5%;
    width: 40vw;
  }
}
@media (max-width: 969px) {
  .top-mv__swiper-text-area {
    bottom: calc(20 * var(--px));
    width: 90%;
  }
}

.top-mv__swiper-text-lead {
  font-size: var(--f32);
  font-family: var(--notoserif);
  font-weight: 500;
  line-height: 1.8;
  text-shadow: 0 0 21px rgba(0, 0, 0, 0.3);
}
.top-mv__swiper-text-lead sup {
  font-size: 47%;
  top: -1.2em;
}
.top-mv__swiper-text-lead .label-item {
  font-size: var(--f24);
  background: var(--blue-green-light);
  line-height: 1;
  padding: 0.1em 0.5em;
  color: #fff;
  font-weight: 500;
  margin-left: 0.5em;
}

.top-mv__swiper-text-tagline {
  font-size: var(--f56);
  font-family: var(--notoserif);
  font-weight: 500;
  line-height: 1.1;
  margin-block: 0.2em 0.4em;
  text-shadow: 0 0 21px rgba(0, 0, 0, 0.3);
}
@media (max-width: 1240px) {
  .top-mv__swiper-text-tagline {
    line-height: 1.23;
  }
}

@media (max-width: 1240px) {
  .top-mv__swiper-text-tagline--with-underline {
    display: inline-block;
    line-height: 1.6;
  }
}
.top-mv__swiper-text-tagline--with-underline .underline {
  display: inline;
  border-bottom: 1px solid #fff;
  padding-bottom: 0.1em;
}

.top-mv__swiper-features {
  border-radius: clamp(10 * var(--px), 15 / 1240 * 100vw, 15 * var(--px));
  border: solid 1px rgba(255, 255, 255, 0.5);
  padding: 1.5em 8%;
  display: grid;
  grid-template-columns: auto auto auto;
  gap: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 1399px) {
  .top-mv__swiper-features {
    padding: 1em 5%;
  }
}
@media (max-width: 1024px) {
  .top-mv__swiper-features {
    width: 100%;
  }
}
@media (max-width: 969px) {
  .top-mv__swiper-features {
    padding: 1em 4%;
  }
}
.top-mv__swiper-features > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.top-mv__swiper-features > li:first-child {
  padding-right: 1.8em;
}
@media (max-width: 1240px) {
  .top-mv__swiper-features > li:first-child {
    padding-right: 0.5em;
  }
}
.top-mv__swiper-features > li:last-child {
  padding-left: 1.8em;
}
@media (max-width: 1240px) {
  .top-mv__swiper-features > li:last-child {
    padding-left: 0.5em;
  }
}
.top-mv__swiper-features > li:not(:last-child):not(:first-child) {
  padding-inline: 1.8em;
}
@media (max-width: 1240px) {
  .top-mv__swiper-features > li:not(:last-child):not(:first-child) {
    padding-inline: 0.5em;
  }
}
.top-mv__swiper-features > li + li {
  border-left: 1px solid rgba(255, 255, 255, 0.5);
}

.top-mv__swiper-features--col2 {
  grid-template-columns: auto auto;
}

.top-mv__swiper-features-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0;
}
.top-mv__swiper-features-main .symbol {
  letter-spacing: -0.2em;
  margin-left: -0.2em;
}

.top-mv__swiper-features-lead {
  font-size: clamp(10 * var(--px), 1.0714285714vw, 18 * var(--px));
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  white-space: nowrap;
}

.top-mv__swiper-features-main-text {
  font-size: clamp(14 * var(--px), 1.4285714286vw, 24 * var(--px));
  font-family: var(--notoserif);
  font-weight: 500;
  line-height: 1.8;
  white-space: nowrap;
}
.top-mv__swiper-features-main-text .number {
  font-family: var(--inter);
  font-size: var(--f48);
  line-height: 1;
  font-weight: 500;
  display: inline-block;
  margin-inline: 0.1em;
  -webkit-transform: translateY(0.1em);
          transform: translateY(0.1em);
}

.top-mv__swiper-features-main-text--strong {
  font-size: var(--f32);
  font-family: var(--notoserif);
  font-weight: 500;
  line-height: 1.9;
}

.top-mv__swiper-features-note {
  font-size: var(--f12);
  margin-top: clamp(10 * var(--px), 32 / 1240 * 100vw, 32 * var(--px));
  font-weight: 400;
}
@media (max-width: 499px) {
  .top-mv__swiper-features-note {
    text-align: right;
  }
}

/* -------------------------------------------
 * mv
 * お知らせ
 * -------------------------------------------*/
.top-mv__news {
  position: absolute;
  bottom: calc(230 * var(--px));
  right: calc(19 * var(--px));
  width: 100%;
  z-index: 1;
  max-width: calc(596 * var(--px));
  background: var(--brown);
  border-radius: 10px;
  padding: 1.5em 1.5em 1.5em 2.3em;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1399px) {
  .top-mv__news {
    padding: 1em 1.5em 1em 2em;
    max-width: calc(495 * var(--px));
    bottom: calc(204 * var(--px));
  }
}
@media (max-width: 1240px) {
  .top-mv__news {
    max-width: calc(420 * var(--px));
    bottom: calc(224 * var(--px));
  }
}
@media (max-width: 969px) {
  .top-mv__news {
    max-width: none;
    width: 90%;
    position: static;
    padding-inline: 1.2em;
    gap: 0.8em;
    margin-inline: auto;
    margin-block: calc(20 * var(--px));
  }
}

.top-mv__news-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1em;
}
@media (max-width: 834px) {
  .top-mv__news-link {
    gap: 0.8em;
  }
}
.top-mv__news-link .link-arrow {
  color: #fff;
}
@media (max-width: 834px) {
  .top-mv__news-link .link-arrow:after {
    width: calc(10 * var(--px));
  }
}

.top-mv__news-date {
  font-size: var(--f12);
  color: rgba(255, 255, 255, 0.5019607843);
}

.top-mv__news-title {
  color: #fff;
  font-size: var(--f15);
  font-weight: 400;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.top-mv__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8em;
  font-family: var(--inter);
  color: #fff;
  font-size: var(--f16);
  font-weight: 300;
  padding-right: 1em;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 834px) {
  .top-mv__label {
    gap: 0.6em;
    padding-right: 0.8em;
  }
}
.top-mv__label::before {
  font-family: "Material Symbols Outlined";
  content: "\e88e";
  font-weight: 700;
  color: #fff;
  font-size: clamp(18 * var(--px), 24 / 1240 * 100vw, 24 * var(--px));
  font-variation-settings: "FILL" 1;
  line-height: 1;
}

.top-mv__news-content {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 834px) {
  .top-mv__news-content {
    gap: 0.8em;
  }
}

/* -------------------------------------------
 * reserve
 * -------------------------------------------*/
.top-reserve {
  padding-top: clamp(50 * var(--px), 80 / 1240 * 100vw, 80 * var(--px));
}
@media (max-width: 969px) {
  .top-reserve {
    padding-top: 0;
  }
}

.top-reserve__inner {
  background: -webkit-gradient(linear, left top, right bottom, from(#f5c6b7), to(#dbc6e1));
  background: linear-gradient(to bottom right, #f5c6b7, #dbc6e1);
  border-radius: calc(20 * var(--px));
  padding-block: clamp(16 * var(--px), 50 / 1240 * 100vw, 50 * var(--px)) clamp(20 * var(--px), 60 / 1240 * 100vw, 60 * var(--px));
  width: min(1400 * var(--px), 90%);
  margin-inline: auto;
}
@media (max-width: 969px) {
  .top-reserve__inner {
    border-radius: 0;
    width: 100%;
  }
}

.top-reserve__title {
  font-family: var(--notoserif);
  font-size: clamp(24 * var(--px), 1.9047619048vw, 32 * var(--px));
  font-weight: 400;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5em;
  margin-bottom: clamp(10 * var(--px), 30 / 1240 * 100vw, 30 * var(--px));
}
@media (max-width: 834px) {
  .top-reserve__title {
    margin-bottom: 0.5em;
  }
}
.top-reserve__title::before {
  background: url(../img/common/icon-reserve.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  width: clamp(24 * var(--px), 41 / 1240 * 100vw, 41 * var(--px));
  aspect-ratio: 41/34;
  z-index: 1;
}

.top-reserve__item-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(20 * var(--px), 30 / 1240 * 100vw, 30 * var(--px));
}

.top-reserve__item {
  background: #fff;
  border-radius: calc(10 * var(--px));
  padding: calc(20 * var(--px));
  padding-inline: 0;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 834px) {
  .top-reserve__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-reserve__item-title-wrap {
  width: 100%;
}
@media (max-width: 834px) {
  .top-reserve__item-title-wrap {
    margin-bottom: 1em;
  }
}

.top-reserve__item-title-area {
  position: relative;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(232 * var(--px));
}
@media (max-width: 834px) {
  .top-reserve__item-title-area {
    width: 90%;
    margin-inline: auto;
  }
}
.top-reserve__item-title-area::after {
  content: "";
  position: absolute;
  width: 3px;
  height: 100%;
  top: 0;
  right: 0;
  background-image: radial-gradient(circle, var(--purple) 1px, transparent 1px);
  background-size: 2px 6px;
  background-repeat: repeat-y;
  background-position: center;
}
@media (max-width: 834px) {
  .top-reserve__item-title-area::after {
    width: 100%;
    height: 3px;
    top: unset;
    right: unset;
    left: 0;
    bottom: 0;
    background-image: radial-gradient(circle, var(--purple) 1px, transparent 1px);
    background-size: 6px 2px;
    background-repeat: repeat-x;
    background-position: center;
  }
}

.top-reserve__item-title {
  color: var(--purple);
  font-weight: 500;
  font-size: var(--f21);
  text-align: center;
  line-height: 1.4;
}

.top-reserve__item-note {
  color: var(--purple);
  font-size: var(--f14);
  text-align: center;
  line-height: 1.4;
}

.top-reserve__item-title + .top-reserve__item-note {
  margin-top: 0.2em;
}

.top-reserve__item-iframe {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
.top-reserve__item-iframe > iframe {
  width: 100%;
}

/* -------------------------------------------
 * about
 * -------------------------------------------*/
.top-about {
  padding-block: clamp(50 * var(--px), 130 / 1240 * 100vw, 130 * var(--px)) clamp(80 * var(--px), 200 / 1240 * 100vw, 200 * var(--px));
  position: relative;
}
.top-about::before {
  background: url(../img/top/about_bg01.webp) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  position: absolute;
  width: 59.5%;
  aspect-ratio: 2004/1276;
  bottom: -5%;
  left: 0;
  z-index: -1;
  pointer-events: none;
}
@media (max-width: 834px) {
  .top-about::before {
    width: 80%;
    bottom: 5%;
  }
}
@media (max-width: 834px) {
  .top-about .section__title-wrap {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.top-about__inner {
  width: min(1300 * var(--px), 90%);
  margin-left: calc((100vw - min(1400px, 90vw)) / 2);
  margin-right: calc((100vw - min(1200px, 90vw)) / 2);
  display: grid;
  grid-template-columns: 644fr 575fr;
  gap: 0 6.6%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 834px) {
  .top-about__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.top-about__inner .section__title--en {
  margin-bottom: clamp(5 * var(--px), 20 / 1240 * 100vw, 20 * var(--px));
}

.top-about__text {
  margin-block: 1.8em 1.5em;
}
@media (max-width: 834px) {
  .top-about__text {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 2em;
  }
}

@media (max-width: 834px) {
  .top-about__visual {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

@media (max-width: 834px) {
  .top-about__button {
    margin-top: calc(40 * var(--px));
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
}

.top-about__content {
  margin-top: clamp(20 * var(--px), 60 / 1240 * 100vw, 60 * var(--px));
}
@media (max-width: 834px) {
  .top-about__content {
    margin-top: 0;
    display: contents;
  }
}

/* -------------------------------------------
 * about
 * 画像エリア
 * -------------------------------------------*/
.top-about__visual {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
}

.top-about__visual-img {
  width: 30.9%;
  position: absolute;
}
.top-about__visual-img:nth-child(1) {
  top: 0.6%;
  right: 13.1%;
}
.top-about__visual-img:nth-child(2) {
  bottom: 3.5%;
  right: 14.2%;
}
.top-about__visual-img:nth-child(3) {
  top: 22.8%;
  left: -1%;
}

.top-about__visual-svg .item01-bg {
  fill: var(--lavender);
}
.top-about__visual-svg .item02-bg {
  fill: var(--blue-green-light);
}
.top-about__visual-svg .item03-bg {
  fill: var(--orange);
}
.top-about__visual-svg .item04-bg {
  fill: var(--purple-light);
}
.top-about__visual-svg .bg-gray-circle {
  fill: none;
  stroke: #efefef;
  stroke-miterlimit: 10;
  stroke-width: 13.1px;
}
.top-about__visual-svg .item-text-path {
  fill: #fff;
}
.top-about__visual-svg .center-text-path {
  fill: #6a5c4f;
}

/* -------------------------------------------
 * policy 5つのこと
 * -------------------------------------------*/
.top-policy {
  background: var(--ivory);
  position: relative;
  padding-block: 0 clamp(50 * var(--px), 148 / 1240 * 100vw, 148 * var(--px));
}
.top-policy::before {
  background: -webkit-gradient(linear, left bottom, left top, from(var(--ivory)), to(transparent));
  background: linear-gradient(to top, var(--ivory) 0%, transparent 100%);
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 100%;
  left: 0;
  z-index: -1;
  width: 100%;
  height: clamp(80 * var(--px), 150 / 1240 * 100vw, 150 * var(--px));
}

.top-policy__heading {
  display: grid;
  grid-template-columns: auto auto auto;
  gap: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-inline: auto;
  margin-bottom: clamp(30 * var(--px), 59 / 1240 * 100vw, 59 * var(--px));
}

.top-policy__title {
  font-size: var(--f48);
  font-family: var(--notoserif);
  color: var(--base-text02);
  font-weight: 600;
  text-align: right;
  line-height: 1.45;
  margin-bottom: 0.2em;
}

.top-policy__subtitle {
  font-family: var(--notoserif);
  font-size: var(--f48);
  font-weight: 600;
}

.top-policy__title-number {
  margin-inline: 2em 1em;
  width: min(7.8vw, 113 * var(--px));
}
@media (max-width: 834px) {
  .top-policy__title-number {
    width: 13vw;
    margin-inline: 1em 1em;
  }
}

.top-policy__list {
  display: grid;
  counter-reset: policy-num;
  grid-template-columns: 1fr 1fr;
  gap: clamp(20 * var(--px), 60 / 1240 * 100vw, 60 * var(--px)) 3.5%;
}
@media (max-width: 834px) {
  .top-policy__list {
    grid-template-columns: 1fr;
    gap: calc(20 * var(--px));
  }
}

.top-policy__item {
  background: #fff;
  border-radius: 30px;
  padding-block: clamp(30 * var(--px), 64 / 1240 * 100vw, 64 * var(--px)) clamp(30 * var(--px), 53 / 1240 * 100vw, 53 * var(--px));
  padding-inline: min(3.5vw, 66 * var(--px));
  position: relative;
  counter-increment: policy-num;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 834px) {
  .top-policy__item {
    border-radius: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.top-policy__item:nth-child(1) {
  grid-row: 1/2;
  grid-column: 1/2;
}
.top-policy__item:nth-child(2) {
  grid-row: 1/2;
  grid-column: 2/3;
}
.top-policy__item:nth-child(3) {
  grid-row: 2/3;
  grid-column: 1/3;
}
.top-policy__item:nth-child(4) {
  grid-row: 3/4;
  grid-column: 1/2;
}
.top-policy__item:nth-child(5) {
  grid-row: 3/4;
  grid-column: 2/3;
}
@media (max-width: 834px) {
  .top-policy__item:nth-child(1), .top-policy__item:nth-child(2), .top-policy__item:nth-child(3), .top-policy__item:nth-child(4), .top-policy__item:nth-child(5) {
    grid-row: auto;
    grid-column: auto;
  }
}

.top-policy__item-flex {
  display: grid;
  grid-template-columns: 450fr 542fr;
  gap: calc(20 * var(--px)) 6.2%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 834px) {
  .top-policy__item-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
  }
}
.top-policy__item-flex .top-policy__button {
  margin-left: 0;
}
@media (max-width: 834px) {
  .top-policy__item-flex .top-policy__button {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
    margin-left: auto;
  }
}
@media (max-width: 834px) {
  .top-policy__item-flex .top-policy__item-flex-body {
    display: contents;
  }
}

.top-policy__item-heading {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.3em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 834px) {
  .top-policy__item-heading {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 1em;
    gap: 0.8em;
  }
}

.top-policy__item-num {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: clamp(50 * var(--px), 100 / 1240 * 100vw, 100 * var(--px));
  aspect-ratio: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../img/top/policy_count-number-bg.webp) no-repeat center center/cover;
  color: #fff;
  font-size: var(--f36);
  font-weight: 500;
  border-radius: clamp(10 * var(--px), 27 / 1240 * 100vw, 27 * var(--px));
  font-family: var(--inter);
}
.top-policy__item-num::before {
  content: counter(policy-num, decimal-leading-zero);
}

.top-policy__item-img {
  overflow: hidden;
  margin-bottom: calc(20 * var(--px));
}
@media (max-width: 834px) {
  .top-policy__item-img {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 0;
  }
}
.top-policy__item-img img {
  width: 100%;
  aspect-ratio: 450/300;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-policy__item-title {
  font-size: var(--f32);
  line-height: 1.5;
  font-weight: 500;
}
.top-policy__item-title span {
  color: var(--purple);
}

.top-policy__item-text {
  font-size: var(--f15);
  margin-block: 1.2em 2.2em;
}
@media (max-width: 834px) {
  .top-policy__item-text {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
@media (max-width: 499px) {
  .top-policy__item-text {
    margin-bottom: 1.5em;
  }
}

.top-policy__button {
  margin-inline: auto;
}
@media (max-width: 834px) {
  .top-policy__button {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
}

/* -------------------------------------------
 * troubles
 * -------------------------------------------*/
.top-troubles {
  background: url(../img/top/troubles_bg01.webp) no-repeat center center/cover;
  padding-top: clamp(50 * var(--px), 129 / 1240 * 100vw, 129 * var(--px));
  padding-bottom: clamp(50 * var(--px), 197 / 1240 * 100vw, 197 * var(--px));
}

.top-troubles__head-img {
  -webkit-transform: translateY(-11%);
          transform: translateY(-11%);
}
@media (max-width: 834px) {
  .top-troubles__head-img {
    -webkit-transform: unset;
            transform: unset;
  }
}

.top-troubles__head-img--left {
  width: min(3.7vw, 63 * var(--px));
  justify-self: end;
  -ms-flex-item-align: end;
      align-self: end;
}
@media (max-width: 834px) {
  .top-troubles__head-img--left {
    width: 65%;
    -ms-flex-item-align: center;
        align-self: center;
  }
}
@media (max-width: 499px) {
  .top-troubles__head-img--left {
    -webkit-transform: translateX(calc(-5 * var(--px)));
            transform: translateX(calc(-5 * var(--px)));
  }
}

.top-troubles__head-img--right {
  width: min(6vw, 98 * var(--px));
}
@media (max-width: 834px) {
  .top-troubles__head-img--right {
    width: 100%;
  }
}

.top-troubles__head {
  display: grid;
  grid-template-columns: 8.9% auto 8.9%;
  gap: 3rem 2%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: clamp(20 * var(--px), 42 / 1240 * 100vw, 42 * var(--px));
  width: min(1260 * var(--px), 90%);
  margin-inline: auto;
}
@media (max-width: 834px) {
  .top-troubles__head {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 499px) {
  .top-troubles__head {
    grid-template-columns: 14% auto 14%;
    width: 95%;
  }
}

.top-troubles__title {
  font-size: var(--f48);
  color: #fff;
  text-align: center;
  font-weight: 500;
  font-family: var(--notoserif);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(10 * var(--px), 18 / 1240 * 100vw, 18 * var(--px));
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.top-troubles__title::before, .top-troubles__title::after {
  background: url(../img/top/troubles_highlight.webp) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  width: min(5vw, 43 * var(--px));
  aspect-ratio: 43/85;
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 834px) {
  .top-troubles__title::before, .top-troubles__title::after {
    width: 4vw;
  }
}
@media (max-width: 499px) {
  .top-troubles__title::before, .top-troubles__title::after {
    width: 10vw;
  }
}
.top-troubles__title::before {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}

.top-troubles__title-inner {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.4em;
}
@media (max-width: 834px) {
  .top-troubles__title-inner {
    line-height: 1.4;
  }
}

.top-troubles__title-highlight {
  display: block;
  width: clamp(20 * var(--px), 43 / 1240 * 100vw, 43 * var(--px));
  aspect-ratio: 82/160;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../img/top/troubles_highlight.webp) no-repeat center/contain;
}

.top-troubles__title-highlight--left {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}

.top-troubles__list {
  width: min(1260 * var(--px), 90%);
  margin-inline: auto;
  display: grid;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1%;
}
@media (max-width: 969px) {
  .top-troubles__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: clamp(20 * var(--px), 40 / 1240 * 100vw, 40 * var(--px));
  }
}
.top-troubles__list > li {
  width: 16%;
}
@media (max-width: 969px) {
  .top-troubles__list > li {
    width: 30%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 499px) {
  .top-troubles__list > li {
    width: 40%;
  }
}
.top-troubles__list > li:nth-child(even) {
  margin-top: calc(35 * var(--px));
}
@media (max-width: 969px) {
  .top-troubles__list > li:nth-child(even) {
    margin-top: 0;
  }
}

.top-troubles__list-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(20 * var(--px), 40 / 1240 * 100vw, 40 * var(--px));
}

.top-troubles__item-link {
  background: url(../img/top/troubles_bubble.svg) no-repeat center center/cover;
  aspect-ratio: 196/172;
  max-width: calc(196 * var(--px));
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1024px) {
  .top-troubles__item-link {
    width: 100%;
  }
}
@media (max-width: 834px) {
  .top-troubles__item-link {
    justify-self: center;
  }
}
@media (max-width: 834px) {
  .top-troubles__item-link {
    justify-self: center;
  }
}

.top-troubles__item-link-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: calc(10 * var(--px));
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.top-troubles__item-text {
  font-size: clamp(16 * var(--px), 1.4285714286vw, 24 * var(--px));
  font-weight: 600;
  text-align: center;
  line-height: 1.5;
}
@media (max-width: 499px) {
  .top-troubles__item-text {
    font-size: calc(14 * var(--px));
  }
}
@media (max-width: 399px) {
  .top-troubles__item-text {
    font-size: calc(12 * var(--px));
  }
}
.top-troubles__item-text span {
  color: var(--purple);
  display: inline;
  padding-bottom: 0.1em;
  background-image: radial-gradient(circle, var(--purple) 1px, transparent 1px);
  background-size: 4px 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

/* -------------------------------------------
 * treatment
 * -------------------------------------------*/
.top-treatment {
  background: var(--ivory);
  padding-block: clamp(50 * var(--px), 151 / 1240 * 100vw, 151 * var(--px)) clamp(50 * var(--px), 144 / 1240 * 100vw, 144 * var(--px));
}
.top-treatment .section__title--ja {
  line-height: 1.63;
  margin-top: 0.4em;
}
@media (max-width: 834px) {
  .top-treatment .section__title--ja {
    margin-top: 0;
  }
}
@media (max-width: 834px) {
  .top-treatment .section__title-wrap {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: calc(30 * var(--px));
  }
}

.top-treatment__head {
  margin-bottom: clamp(30 * var(--px), 73 / 1240 * 100vw, 73 * var(--px));
}
@media (max-width: 834px) {
  .top-treatment__head {
    display: contents;
  }
}

@media (max-width: 834px) {
  .top-treatment__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-treatment__content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(50 * var(--px), 59 / 1240 * 100vw, 59 * var(--px)) 4.2%;
}
@media (max-width: 834px) {
  .top-treatment__content {
    grid-template-columns: 1fr;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    gap: calc(50 * var(--px));
  }
}

.top-treatment__category:nth-child(1) .top-treatment__category-title-icon {
  background: var(--purple-light);
}
.top-treatment__category:nth-child(1) .top-treatment__category-title-icon img {
  aspect-ratio: 21/26;
  width: 38%;
}
.top-treatment__category:nth-child(2) .top-treatment__category-title-icon {
  background: var(--blue-green);
}
.top-treatment__category:nth-child(2) .top-treatment__category-title-icon img {
  aspect-ratio: 31/28;
  width: 57.4%;
}
.top-treatment__category:nth-child(3) .top-treatment__category-title-icon {
  background: #ee8f63;
}
.top-treatment__category:nth-child(3) .top-treatment__category-title-icon img {
  aspect-ratio: 29/26;
  width: 53.7%;
}
.top-treatment__category:nth-child(4) .top-treatment__category-title-icon {
  background: #dc88cc;
}
.top-treatment__category:nth-child(4) .top-treatment__category-title-icon img {
  aspect-ratio: 29/34;
  width: 53.7%;
}
.top-treatment__category:nth-child(5) .top-treatment__category-title-icon {
  background: #76bbaf;
}
.top-treatment__category:nth-child(5) .top-treatment__category-title-icon img {
  aspect-ratio: 34/20;
  width: 62.9%;
}
.top-treatment__category:nth-child(6) .top-treatment__category-title-icon {
  background: #a08d74;
}
.top-treatment__category:nth-child(6) .top-treatment__category-title-icon img {
  aspect-ratio: 24/32;
  width: 44.4%;
}
.top-treatment__category:nth-child(7) .top-treatment__category-title-icon {
  background: #ad9bd1;
}
.top-treatment__category:nth-child(7) .top-treatment__category-title-icon img {
  aspect-ratio: 31/35;
  width: 57.4%;
}
.top-treatment__category:nth-child(8) .top-treatment__category-title-icon {
  background: #eeb163;
}
.top-treatment__category:nth-child(8) .top-treatment__category-title-icon img {
  aspect-ratio: 29/28;
  width: 53.7%;
}

.top-treatment__item-link {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 5%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.top-treatment__item-label {
  display: grid;
  grid-template-columns: min(5vw, 30 * var(--px)) 1fr;
  gap: 0.3em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.top-treatment__item {
  border-bottom: 1px solid #a7a4a0;
}
.top-treatment__item:first-child {
  padding-bottom: 1em;
}
@media (max-width: 834px) {
  .top-treatment__item:first-child {
    padding-bottom: 1.5em;
  }
}
.top-treatment__item:not(:first-child) {
  padding-block: 1em;
}
@media (max-width: 834px) {
  .top-treatment__item:not(:first-child) {
    padding-block: 1.5em;
  }
}

.top-treatment__category-title {
  font-size: var(--f28);
  font-weight: 500;
  line-height: 1.7;
  background: #fff;
  padding: 0.7em 1.2em;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.7em;
  margin-bottom: clamp(20 * var(--px), 35 / 1240 * 100vw, 35 * var(--px));
}
@media (max-width: 834px) {
  .top-treatment__category-title {
    border-radius: 10px;
    padding: 0.7em 0.7em;
    gap: 0.5em;
  }
}

.top-treatment__item-icon {
  width: clamp(20 * var(--px), 30 / 1240 * 100vw, 30 * var(--px));
  aspect-ratio: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top-treatment__item-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.top-treatment__item-text {
  font-size: var(--f17);
  line-height: 1.38;
}
.top-treatment__item-text .small {
  font-size: var(--f12);
  margin-left: 0.5em;
}

.top-treatment__item-text--small {
  font-size: var(--f15);
}

.top-treatment__category-title-icon {
  border-radius: clamp(5 * var(--px), 15 / 1240 * 100vw, 15 * var(--px));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: clamp(36 * var(--px), 54 / 1240 * 100vw, 54 * var(--px));
  aspect-ratio: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media (max-width: 834px) {
  .top-treatment__button {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    margin-top: calc(40 * var(--px));
  }
}

.top-treatment__lists {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 1em 8.3%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 834px) {
  .top-treatment__lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-treatment__lists--col1 {
  grid-template-columns: 1fr 1fr;
  grid-auto-flow: row;
}

/* -------------------------------------------
 * news + staff blog
 * -------------------------------------------*/
.top-news-blog {
  padding-block: clamp(50 * var(--px), 139 / 1240 * 100vw, 139 * var(--px)) clamp(50 * var(--px), 144 / 1240 * 100vw, 144 * var(--px));
  color: var(--base-text02);
}
.top-news-blog .news__item-head,
.top-news-blog .blog__item-head {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.3em;
}
@media (max-width: 834px) {
  .top-news-blog .news__item-head,
  .top-news-blog .blog__item-head {
    grid-template-columns: 1fr;
    gap: 0.2em;
  }
}
.top-news-blog .blog__item-head {
  margin-top: 1.2em;
}
@media (max-width: 834px) {
  .top-news-blog .blog__item-head {
    margin-top: 0.5em;
  }
}
.top-news-blog .blog__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top-news-blog .blog__list .swiper-slide {
  width: 16vw;
  max-width: calc(310 * var(--px));
  margin-right: calc(30 * var(--px));
}
@media (max-width: 834px) {
  .top-news-blog .blog__list .swiper-slide {
    margin-right: calc(20 * var(--px));
    width: 42vw;
  }
}
.top-news-blog .news__item-thumbnail img {
  aspect-ratio: 310/210;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  width: 100%;
  height: auto;
}

.top-news-blog__inner {
  display: grid;
  grid-template-columns: 555fr 3fr 555fr;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: calc(30 * var(--px)) 4%;
}
@media (max-width: 834px) {
  .top-news-blog__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-news-blog__line {
  width: 2px;
  height: 100%;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  background-image: radial-gradient(circle, #eee 1px, transparent 1px);
  background-size: 2px 6px;
  background-repeat: repeat-y;
  background-position: center;
}

.top-news-blog__head {
  display: grid;
  grid-template-columns: auto auto;
  gap: 3rem 2%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: clamp(20 * var(--px), 48 / 1240 * 100vw, 48 * var(--px));
}
.top-news-blog__head .section__title--en {
  font-size: clamp(15 * var(--px), 1.25vw, 21 * var(--px));
  line-height: 1.2;
}
.top-news-blog__head .section__title--ja {
  font-size: clamp(23 * var(--px), 1.9047619048vw, 32 * var(--px));
}

.top-news-blog__link {
  margin-bottom: 0.5em;
}

.top-news-blog__link-text {
  font-size: var(--f18);
}

.top-news__list {
  border-top: 1px solid #EEE;
}
.top-news__list > li {
  padding-block: 1.2em;
  border-bottom: 1px solid #EEE;
}

.top-news__item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4em;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.top-news-blog__news,
.top-news-blog__blog {
  padding-top: 1em;
}
@media (max-width: 834px) {
  .top-news-blog__news,
  .top-news-blog__blog {
    padding-top: 0;
  }
}

/* -------------------------------------------
 * blog
 * -------------------------------------------*/
.top-news-blog__blog {
  overflow: hidden;
}

.top-blog .swiper-scrollbar {
  background: #e3e3e3;
  height: calc(3 * var(--px));
  margin-top: clamp(20 * var(--px), 48 / 1240 * 100vw, 48 * var(--px));
  position: static;
  width: 100%;
}
.top-blog .swiper-scrollbar .swiper-scrollbar-drag {
  background: #eea284;
  height: 100%;
  border-radius: 0;
}

/* -------------------------------------------
 * doctor
 * -------------------------------------------*/
.top-doctor__inner {
  border-radius: clamp(10 * var(--px), 30 / 1240 * 100vw, 30 * var(--px));
  overflow: hidden;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: calc(600 * var(--px));
}
@media (max-width: 1024px) {
  .top-doctor__inner {
    min-height: auto;
  }
}
@media (hover: hover) {
  .top-doctor__inner:hover .top-doctor__bg {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .top-doctor__inner:hover .link-arrow {
    background: var(--brown);
  }
  .top-doctor__inner:hover .link-arrow:after {
    background-color: #fff;
  }
}

.top-doctor__bg {
  -webkit-transition: -webkit-transform 0.8s ease;
  transition: -webkit-transform 0.8s ease;
  transition: transform 0.8s ease;
  transition: transform 0.8s ease, -webkit-transform 0.8s ease;
  position: absolute;
  inset: 0;
  z-index: 0;
}
.top-doctor__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-doctor__content {
  position: relative;
  z-index: 1;
  margin-top: auto;
  margin-bottom: clamp(35 * var(--px), 83 / 1240 * 100vw, 83 * var(--px));
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media (max-width: 1024px) {
  .top-doctor__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: clamp(35 * var(--px), 83 / 1240 * 100vw, 83 * var(--px));
  }
}
@media (max-width: 834px) {
  .top-doctor__content {
    margin-top: calc(100 * var(--px));
  }
}
.top-doctor__content .section__title--en,
.top-doctor__content .section__title--ja {
  color: #fff;
}
.top-doctor__content .section__title--ja {
  line-height: 1.63;
  font-size: clamp(21 * var(--px), 2.380952381vw, 40 * var(--px));
  margin-top: 0.3em;
  font-weight: 500;
}
@media (max-width: 1024px) {
  .top-doctor__content .section__title--ja {
    margin-top: 0.2em;
    line-height: 1.5;
    margin-bottom: 1em;
  }
}

.top-doctor__text {
  font-size: var(--f17);
  color: #fff;
  line-height: 1.9;
  margin-inline: 7% 8%;
}
@media (max-width: 1024px) {
  .top-doctor__text {
    margin-inline: 0;
  }
}

@media (max-width: 1024px) {
  .top-doctor__button {
    margin-top: 1.4em;
    margin-left: 0;
  }
}

/* -------------------------------------------
 * recruit
 * -------------------------------------------*/
.top-recruit {
  padding-block: clamp(50 * var(--px), 122 / 1240 * 100vw, 122 * var(--px)) clamp(50 * var(--px), 110 / 1240 * 100vw, 110 * var(--px));
}
@media (max-width: 1024px) {
  .top-recruit .section__title-wrap {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}

.top-recruit__text {
  font-size: var(--f17);
  line-height: 1.9;
  margin-block: calc(22 * var(--px)) calc(32 * var(--px));
}
@media (max-width: 1024px) {
  .top-recruit__text {
    grid-column: 1/2;
    grid-row: 2/3;
    margin-block: 0;
  }
}

.top-recruit__content {
  background: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  height: 100%;
  top: 0;
  left: calc((100vw - min(1200px, 90vw)) / 2);
  z-index: 10;
  padding-inline: min(5vw, 150 * var(--px));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1024px) {
  .top-recruit__content {
    position: static;
    width: 100%;
  }
}

.top-recruit__swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  height: auto;
}
.top-recruit__swiper img {
  aspect-ratio: 640/800;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-recruit__inner {
  position: relative;
}

@media (max-width: 1024px) {
  .top-recruit__content-inner {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: calc(24 * var(--px)) 2%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
  }
}
@media (max-width: 834px) {
  .top-recruit__content-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-recruit__swiper .swiper-slide {
  width: auto;
}
.top-recruit__swiper .swiper-slide img {
  aspect-ratio: 640/800;
  width: auto;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.top-recruit__button {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media (max-width: 1024px) {
  .top-recruit__button {
    margin-top: auto;
    grid-column: 2/3;
    grid-row: 2/3;
    margin-bottom: calc(30 * var(--px));
  }
}/*# sourceMappingURL=top.css.map */