@charset "UTF-8";
/*###################################################################
※※※※ 直接編集禁止 ※※※※
このCSSファイルはSassから生成されていますので直接編集しないようご注意ください。
  編集は拡張子「.scss」ファイルを編集して当ファイルにコンパイルしてください。
  もしくは別途cssファイルを作成して読み込ませてください。
###################################################################*/
:root {
  --base: #fff4ed;
  --main: #fe3f00;
  --main-l: #e96d44;
  --blue: #0083b3;
  --white: #fff;
  --text: #404040;
}

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

[id] {
  scroll-margin-top: 150px;
}
@media (max-width: 768px) {
  [id] {
    scroll-margin-top: 110px;
  }
}

body {
  background-color: var(--base);
  color: var(--text);
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

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

/*###################################################################
  animation（共通設定）
###################################################################*/
/*----------------------------------
  背景色が伸びて出現
----------------------------------*/
@-webkit-keyframes bgextendAnimeBase {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes bgextendAnimeBase {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes bgextendAnimeSecond {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes bgextendAnimeSecond {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes bgLRextendAnime {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
@keyframes bgLRextendAnime {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
/*###################################################################
  header（module）
###################################################################*/
.header {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 10;
  background-color: rgba(255, 255, 255, 0.7);
}
@media (max-width: 600px) {
  .header {
    background-color: transparent;
  }
}
.header_sticky {
  position: fixed;
}
@media (max-width: 600px) {
  .header_sticky {
    background-color: rgba(255, 255, 255, 0.7);
  }
}
.header__inner {
  height: clamp(3.75rem, 0.3503536693rem + 7.0733863837vw, 8.75rem);
  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;
  padding: 0 clamp(1.25rem, -5.7787124583rem + 11.234705228vw, 7.5625rem) 0 clamp(1.25rem, -5.7787124583rem + 11.234705228vw, 7.5625rem);
}
@media (max-width: 768px) {
  .header__inner {
    height: clamp(3.125rem, 0.875748503rem + 5.9880239521vw, 3.75rem);
  }
}
@media (max-width: 600px) {
  .header__inner {
    height: 96px;
  }
}
.header__logo {
  max-width: clamp(10.875rem, 4.50066313rem + 13.2625994695vw, 20.25rem);
  width: 100%;
}
@media (max-width: 768px) {
  .header__logo {
    max-width: clamp(9.25rem, 3.4019461078rem + 15.5688622754vw, 10.875rem);
  }
}
@media (max-width: 600px) {
  .header__logo {
    max-width: 188px;
  }
}
.header__group {
  max-width: clamp(33.125rem, 20.625rem + 50vw, 80rem);
  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;
}
@media (max-width: 768px) {
  .header__group {
    max-width: 95px;
  }
}
@media (max-width: 600px) {
  .header__group {
    max-width: 125px;
  }
}
.header__tel {
  max-width: clamp(10.625rem, 0.8126390434rem + 15.6840934372vw, 19.4375rem);
  width: 100%;
  height: clamp(3.4375rem, 1.3497636263rem + 3.3370411568vw, 5.3125rem);
  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: clamp(0.1875rem, -0.1256604561rem + 0.5005561735vw, 0.46875rem);
     -moz-column-gap: clamp(0.1875rem, -0.1256604561rem + 0.5005561735vw, 0.46875rem);
          column-gap: clamp(0.1875rem, -0.1256604561rem + 0.5005561735vw, 0.46875rem);
  border: clamp(0.125rem, -0.0837736374rem + 0.3337041157vw, 0.3125rem) solid var(--text);
  border-radius: 9999px;
}
@media (max-width: 1000px) {
  .header__tel {
    max-width: clamp(2.375rem, -1.7862554113rem + 8.658008658vw, 3.625rem);
    height: inherit;
    aspect-ratio: 1/1;
    background-color: var(--white);
    border-radius: 50%;
  }
}
@media (max-width: 600px) {
  .header__tel {
    max-width: 58px;
  }
}
.header__tel-svg {
  width: clamp(1.25rem, 0.2061318131rem + 1.6685205784vw, 2.1875rem);
}
@media (max-width: 1000px) {
  .header__tel-svg {
    width: clamp(0.9375rem, 0.3133116883rem + 1.2987012987vw, 1.125rem);
  }
}
@media (max-width: 600px) {
  .header__tel-svg {
    width: 18px;
  }
}
.header__tel-number {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.125rem, 0.6378615128rem + 0.7786429366vw, 1.5625rem);
  font-weight: 400;
}
@media (max-width: 1000px) {
  .header__tel-number {
    display: none;
  }
}

.header-nav {
  max-width: clamp(30.125rem, 23.2583333333rem + 27.4666666667vw, 55.875rem);
  width: 100%;
}
@media (max-width: 768px) {
  .header-nav {
    display: none;
  }
}
.header-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-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
.header-nav__item {
  position: relative;
}
.header-nav__link {
  font-size: clamp(1rem, 0.375rem + 1vw, 1.5625rem);
}
@media (max-width: 1000px) {
  .header-nav__link {
    font-size: clamp(0.875rem, 0.4588744589rem + 0.8658008658vw, 1rem);
  }
}
.header-nav__sub-items {
  min-width: clamp(9.0625rem, 6.5625rem + 5vw, 12.5rem);
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
  padding-top: 10px;
}
.header-nav__sub-link {
  display: block;
  font-size: clamp(0.875rem, 0.6022727273rem + 0.5454545455vw, 1.25rem);
  background-color: rgba(255, 255, 255, 0.7);
  padding: clamp(0.25rem, 0.1590909091rem + 0.1818181818vw, 0.375rem) 9px;
}

@media (hover: hover) and (pointer: fine) {
  .header-nav__link {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .header-nav__link:hover, .header-nav__link:focus {
    color: var(--main);
  }
  .header-nav__link:hover + .header-nav__sub-items, .header-nav__link:focus + .header-nav__sub-items {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  .header-nav__sub-items {
    -webkit-transition: -webkit-clip-path 0.3s ease-in-out;
    transition: -webkit-clip-path 0.3s ease-in-out;
    transition: clip-path 0.3s ease-in-out;
    transition: clip-path 0.3s ease-in-out, -webkit-clip-path 0.3s ease-in-out;
  }
  .header-nav__sub-items:hover, .header-nav__sub-items:focus {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  .header-nav__sub-link {
    -webkit-transition: background-color 0.4s, color 0.4s;
    transition: background-color 0.4s, color 0.4s;
  }
  .header-nav__sub-link:hover, .header-nav__sub-link:focus {
    background-color: var(--main);
    color: var(--white);
  }
}
/*###################################################################
  footer（module）
###################################################################*/
.footer {
  position: relative;
}
.footer_pos {
  margin-top: clamp(3.75rem, 0.9210526316rem + 10.5263157895vw, 7.5rem);
}
.footer__bg {
  background: url(../images/footer-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/footer-bg.webp) 1x, url(../images/footer-bg@2x.webp) 2x);
  background-image: image-set(url(../images/footer-bg.webp) 1x, url(../images/footer-bg@2x.webp) 2x);
}
.footer__inner {
  max-width: 1240px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 60px 30px 52px;
}
@media (max-width: 1000px) {
  .footer__inner {
    padding: clamp(2.5rem, 1.5570175439rem + 3.5087719298vw, 3.75rem) clamp(1.25rem, 0.4548816568rem + 2.9585798817vw, 1.875rem) 59px;
  }
}
.footer__logo {
  max-width: clamp(16.1875rem, 3.9287280702rem + 45.6140350877vw, 32.4375rem);
  display: block;
  margin-inline: auto;
}
.footer__address {
  text-align: center;
  margin-top: 17px;
}
.footer__tel {
  max-width: clamp(21.0625rem, 13.6600877193rem + 27.5438596491vw, 30.875rem);
  height: clamp(4.9375rem, 3.2872807018rem + 6.1403508772vw, 7.125rem);
  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.375rem, 0.1864035088rem + 0.701754386vw, 0.625rem);
  background-color: var(--white);
  border: 3px solid var(--text);
  border-radius: 9999px;
  margin-top: clamp(2.3125rem, 1.4638157895rem + 3.1578947368vw, 3.4375rem);
  margin-inline: auto;
  padding-top: clamp(0.8125rem, 0.6239035088rem + 0.701754386vw, 1.0625rem);
}
.footer__tel-text {
  font-size: clamp(0.875rem, 0.7807017544rem + 0.350877193vw, 1rem);
}
.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: calc(clamp(-1.25rem, -1.7214912281rem + 1.7543859649vw, -0.625rem) * -1);
     -moz-column-gap: calc(clamp(-1.25rem, -1.7214912281rem + 1.7543859649vw, -0.625rem) * -1);
          column-gap: calc(clamp(-1.25rem, -1.7214912281rem + 1.7543859649vw, -0.625rem) * -1);
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 1.014254386rem + 0.8771929825vw, 1.5625rem);
}
.footer__tel-number::before {
  content: "";
  width: clamp(1.3125rem, 0.6524122807rem + 2.4561403509vw, 2.1875rem);
  aspect-ratio: 35/45;
  background: url(../images/icon-tel.svg) no-repeat 0 0/contain;
}
.footer__bottom {
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(2.125rem, 0.3333333333rem + 6.6666666667vw, 4.5rem);
}
@media (max-width: 1000px) {
  .footer__bottom {
    -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: 42px;
  }
}
.footer__calendar {
  max-width: clamp(21.875rem, -33.0962343096rem + 87.8661087866vw, 35rem);
  width: 100%;
}
@media (max-width: 1000px) {
  .footer__calendar {
    max-width: 560px;
  }
}
.footer__calendar .xo-event-calendar {
  overflow: hidden;
}
.footer__calendar .xo-event-calendar table.xo-month .month-header > span {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.25rem, 0.4595588235rem + 2.9411764706vw, 1.5625rem);
  font-weight: 500;
  line-height: 1.6;
}
.footer__calendar .xo-event-calendar table.xo-month {
  border: 1px solid #0090c6;
}
.footer__calendar .xo-event-calendar table.xo-month th {
  height: clamp(2.1875rem, -0.6580882353rem + 10.5882352941vw, 3.3125rem);
  background-color: #0090c6;
  color: var(--white);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  vertical-align: middle;
}
.footer__calendar .xo-event-calendar table.xo-month > thead th.sunday {
  color: var(--white);
}
.footer__calendar .xo-event-calendar table.xo-month > thead th.saturday {
  color: var(--white);
}
.footer__calendar .xo-event-calendar table.xo-month .month-event-space {
  height: inherit;
}
.footer__calendar .xo-event-calendar table.xo-month .month-week {
  height: clamp(0.8125rem, -1.5588235294rem + 8.8235294118vw, 1.75rem);
}
.footer__calendar .xo-event-calendar table.xo-month .month-dayname td div {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.25rem;
  text-align: center;
  padding-top: clamp(0.375rem, -1.0477941176rem + 5.2941176471vw, 0.9375rem);
}
.footer__calendar .xo-event-calendar p.holiday-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1rem, 0.3676470588rem + 2.3529411765vw, 1.25rem);
  font-weight: 500;
}
.footer__calendar .xo-event-calendar p.holiday-title span {
  margin-right: 18px;
  padding-left: clamp(1.1875rem, -0.2352941176rem + 5.2941176471vw, 1.75rem);
}
.footer__calendar .holiday-titles {
  margin-top: clamp(0.625rem, -0.0073529412rem + 2.3529411765vw, 0.875rem);
}
.footer__info {
  max-width: 602px;
  width: 100%;
  margin-top: 48px;
}
@media (max-width: 1000px) {
  .footer__info {
    margin-top: 0;
  }
}
.footer__table {
  width: 100%;
  background-color: var(--white);
  font-size: clamp(0.75rem, -0.2272727273rem + 3.6363636364vw, 1.25rem);
}
.footer__tr {
  border-bottom: clamp(0.075rem, -0.0227272727rem + 0.3636363636vw, 0.125rem) solid var(--text);
  padding-right: 5px;
}
.footer__tr_top {
  border-top: clamp(0.075rem, -0.0227272727rem + 0.3636363636vw, 0.125rem) solid var(--text);
}
.footer__th-left {
  width: 26%;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
}
.footer__th-left_l {
  height: clamp(3.5rem, -1.0198863636rem + 16.8181818182vw, 5.8125rem);
}
.footer__th-left_s {
  height: clamp(2.4375rem, -0.6164772727rem + 11.3636363636vw, 4rem);
}
.footer__th-weekday {
  height: clamp(2.3125rem, -0.7414772727rem + 11.3636363636vw, 3.875rem);
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
}
.footer__th-s {
  font-size: clamp(0.6rem, -0.1818181818rem + 2.9090909091vw, 1rem);
  margin-top: 10px;
}
.footer__td {
  text-align: center;
  vertical-align: middle;
}
.footer__dot {
  color: #fc9775;
  font-size: clamp(1.125rem, -0.0965909091rem + 4.5454545455vw, 1.75rem);
}
.footer__blank {
  width: 2%;
}
.footer__note {
  font-size: clamp(1rem, 0.5113636364rem + 1.8181818182vw, 1.25rem);
  margin-top: 11px;
}
.footer__copy {
  height: clamp(3.5rem, 0.6903409091rem + 10.4545454545vw, 4.9375rem);
  display: grid;
  place-items: center;
  font-size: clamp(0.8125rem, 0.4460227273rem + 1.3636363636vw, 1rem);
  font-weight: 400;
}

.footer-page-top {
  max-width: clamp(2.5rem, 0.4193722944rem + 4.329004329vw, 3.125rem);
  width: 100%;
  aspect-ratio: 1/1;
  position: absolute;
  bottom: 95px;
  right: clamp(0.625rem, -1.4556277056rem + 4.329004329vw, 1.25rem);
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  z-index: 5;
  background: url(../images/icon-arrow-rw.svg) no-repeat 0 0/contain;
}
@media (max-width: 768px) {
  .footer-page-top {
    bottom: 68px;
  }
}

/*###################################################################
  c-link（module）
###################################################################*/
.c-link-1 {
  max-width: clamp(18.125rem, 10.5811403509rem + 28.0701754386vw, 28.125rem);
  width: 100%;
  height: clamp(3.75rem, 2.8070175439rem + 3.5087719298vw, 5rem);
  display: grid;
  place-items: center;
  background-color: var(--main);
  border-radius: 9999px;
}
.c-link-1__text {
  max-width: clamp(14.375rem, 10.6030701754rem + 14.0350877193vw, 19.375rem);
  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;
  color: var(--white);
  font-size: clamp(1.125rem, 0.7949561404rem + 1.2280701754vw, 1.5625rem);
  font-weight: 900;
}
.c-link-1__text::after {
  content: "";
  width: clamp(1.875rem, 1.4035087719rem + 1.7543859649vw, 2.5rem);
  aspect-ratio: 1/1;
  background: url(../images/icon-arrow-wr.svg) no-repeat center center/contain;
  border-radius: 50%;
}

/*###################################################################
  c-text（module）
###################################################################*/
.c-t20 {
  font-size: clamp(1rem, 0.9074074074rem + 0.3703703704vw, 1.25rem);
  line-height: 2;
  white-space: pre-line;
}

/*###################################################################
  c-title（module）
###################################################################*/
.c-title-1 {
  background-color: var(--white);
  color: var(--main);
  font-size: clamp(1.25rem, 0.6176470588rem + 2.3529411765vw, 2.5rem);
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  border: clamp(0.125rem, 0.0617647059rem + 0.2352941176vw, 0.25rem) solid var(--main);
  border-radius: 10px clamp(2.5rem, 1.8676470588rem + 2.3529411765vw, 3.75rem);
  padding: clamp(0.9375rem, 0.8426470588rem + 0.3529411765vw, 1.125rem) 20px;
}

.c-title-2 {
  background-color: #e96d44;
  color: var(--white);
  font-size: clamp(1.125rem, 0.7455882353rem + 1.4117647059vw, 1.875rem);
  line-height: 1.6;
  text-align: center;
  border-radius: 10px;
  padding: clamp(0.65625rem, 0.5455882353rem + 0.4117647059vw, 0.875rem) 20px;
}

.c-title-3 {
  background-color: #6b4b00;
  color: var(--white);
  font-size: clamp(1.125rem, 0.9036764706rem + 0.8235294118vw, 1.5625rem);
  line-height: 1.6;
  text-align: center;
  border-radius: 9999px;
  padding: clamp(0.625rem, 0.4669117647rem + 0.5882352941vw, 0.9375rem) 20px;
}

/*###################################################################
  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: 38px;
  aspect-ratio: 1/1;
  display: inline-block;
  position: relative;
  z-index: 30;
  background-color: var(--white);
  border: 2px solid var(--text);
  border-radius: 50%;
}
@media (max-width: 600px) {
  .hamburger {
    width: 58px;
  }
}
@media (min-width: 769px) {
  .hamburger {
    display: none;
  }
}
.hamburger[aria-expanded=true] .hamburger__line {
  background-color: transparent;
}
.hamburger[aria-expanded=true] .hamburger__line::before {
  -webkit-transform: translateY(-8px) rotate(135deg);
      -ms-transform: translateY(-8px) rotate(135deg);
          transform: translateY(-8px) rotate(135deg);
}
@media (max-width: 600px) {
  .hamburger[aria-expanded=true] .hamburger__line::before {
    -webkit-transform: translateY(-10px) rotate(135deg);
        -ms-transform: translateY(-10px) rotate(135deg);
            transform: translateY(-10px) rotate(135deg);
  }
}
.hamburger[aria-expanded=true] .hamburger__line::after {
  -webkit-transform: translateY(8px) rotate(-135deg);
      -ms-transform: translateY(8px) rotate(-135deg);
          transform: translateY(8px) rotate(-135deg);
}
@media (max-width: 600px) {
  .hamburger[aria-expanded=true] .hamburger__line::after {
    -webkit-transform: translateY(10px) rotate(-135deg);
        -ms-transform: translateY(10px) rotate(-135deg);
            transform: translateY(10px) rotate(-135deg);
  }
}
.hamburger__line {
  width: 20px;
  height: 4px;
  display: inline-block;
  position: absolute;
  top: 50%;
  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(--text);
  border-radius: 9999px;
}
@media (max-width: 600px) {
  .hamburger__line {
    width: 30px;
  }
}
.hamburger__line::before {
  content: "";
  width: 100%;
  height: 4px;
  display: inline-block;
  position: absolute;
  top: 8px;
  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(--text);
  border-radius: 9999px;
}
@media (max-width: 600px) {
  .hamburger__line::before {
    top: 10px;
  }
}
.hamburger__line::after {
  content: "";
  width: 100%;
  height: 4px;
  display: inline-block;
  position: absolute;
  bottom: 8px;
  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(--text);
  border-radius: 9999px;
}
@media (max-width: 600px) {
  .hamburger__line::after {
    bottom: 10px;
  }
}

/*###################################################################
  drawer（module）
###################################################################*/
.drawer {
  max-width: 430px;
  width: 100%;
  height: 100vh;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  background-color: var(--base);
  z-index: 15;
  overflow: auto;
  overscroll-behavior-y: contain;
  visibility: hidden;
  border-radius: 40px 0px 0px 40px;
}
.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 {
  width: 100%;
  height: 108px;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-color: var(--base);
  z-index: 1;
}
.drawer__logo-area {
  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: 26px;
}
.drawer__logo {
  width: 208px;
}
.drawer__address {
  font-weight: 500;
}
.drawer__nav {
  max-width: 350px;
  margin-top: 38px;
  margin-inline: auto;
}
.drawer__item {
  background-image: -webkit-radial-gradient(circle, var(--text) 2px, transparent 2px);
  background-image: radial-gradient(circle, var(--text) 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 14px 4px;
}
.drawer__item:first-of-type {
  background-image: -webkit-radial-gradient(circle, var(--text) 2px, transparent 2px), -webkit-radial-gradient(circle, var(--text) 2px, transparent 2px);
  background-image: radial-gradient(circle, var(--text) 2px, transparent 2px), radial-gradient(circle, var(--text) 2px, transparent 2px);
  background-position: left top, left bottom;
  background-repeat: repeat-x, repeat-x;
  background-size: 14px 4px, 14px 4px;
}
.drawer__link {
  height: 81px;
  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;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: 1.25rem;
  font-weight: 400;
  padding-right: 20px;
  padding-left: 24px;
}
.drawer__link::after {
  content: "";
  width: 40px;
  aspect-ratio: 1/1;
  background: url(../images/icon-arrow-rw.svg) no-repeat center center/contain;
  border-radius: 50%;
}
.drawer__sub-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px 20px;
  padding-bottom: 20px;
}
.drawer__sub-link {
  min-height: 40px;
  display: grid;
  place-items: center;
  background-color: #8cd5f1;
  color: var(--white);
  border-radius: 5px;
}

.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(--main);
  }
  .drawer__link:hover::after, .drawer__link:focus::after {
    -webkit-transform: translateX(5px);
        -ms-transform: translateX(5px);
            transform: translateX(5px);
  }
  .drawer__link::after {
    -webkit-transition: -webkit-transform 0.4s;
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
  }
  .drawer__sub-link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .drawer__sub-link:hover, .drawer__sub-link:focus {
    background-color: var(--main);
  }
}
.drawer-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  background-color: transparent;
  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(18.75rem, 2.9226125137rem + 32.930845225vw, 37.5rem);
  display: grid;
  place-items: center;
  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__title {
  color: var(--white);
  font-size: clamp(2.25rem, 1.304rem + 3.52vw, 5rem);
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  margin-top: clamp(1.875rem, 0.456rem + 5.28vw, 6rem);
}

/*###################################################################
  WordPressテスト環境用設定
###################################################################*/
/*###################################################################
  top（page）
###################################################################*/
.top-stripe-bg {
  background-image: -webkit-repeating-linear-gradient(left, #fff4ed, #fff4ed clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(1.1875rem, 0.2469422701rem + 1.9569471624vw, 1.8125rem));
  background-image: repeating-linear-gradient(90deg, #fff4ed, #fff4ed clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(1.1875rem, 0.2469422701rem + 1.9569471624vw, 1.8125rem));
  padding-top: clamp(2.75rem, 0.1096491228rem + 9.8245614035vw, 6.25rem);
}

.top-concept__inner {
  max-width: 1680px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 40px;
  padding-left: 40px;
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media (max-width: 1000px) {
  .top-concept__inner {
    -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.1875rem, 0.6688596491rem + 1.9298245614vw, 1.875rem);
  }
}
@media (max-width: 429px) {
  .top-concept__inner {
    padding: 0 clamp(1.5625rem, -11.3685344828rem + 51.724137931vw, 2.5rem);
  }
}
.top-concept__box {
  max-width: 762px;
  width: 100%;
  margin-top: 64px;
}
@media (max-width: 1000px) {
  .top-concept__box {
    margin-top: 0;
  }
}
.top-concept__title {
  max-width: clamp(16.3125rem, 6.9958333333rem + 34.6666666667vw, 39.0625rem);
  position: relative;
}
@media (max-width: 1000px) {
  .top-concept__title {
    margin-inline: auto;
  }
}
.top-concept__title::after {
  content: "";
  max-width: clamp(10.625rem, 1.0904227557rem + 15.2400835073vw, 15.1875rem);
  width: 100%;
  aspect-ratio: 243/136;
  position: absolute;
  top: calc(clamp(4.1875rem, 1.5752870564rem + 4.1753653445vw, 5.4375rem) * -1);
  right: calc(clamp(5.5rem, -0.8999217119rem + 10.2296450939vw, 8.5625rem) * -1);
  z-index: 1;
  background: url(../images/top-concept-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-concept-deco.webp) 1x, url(../images/top-concept-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-concept-deco.webp) 1x, url(../images/top-concept-deco@2x.webp) 2x);
}
@media (max-width: 1000px) {
  .top-concept__title::after {
    max-width: clamp(5.875rem, 2.2916666667rem + 13.3333333333vw, 10.625rem);
    top: calc(clamp(1.8125rem, 0.0208333333rem + 6.6666666667vw, 4.1875rem) * -1);
    right: calc(clamp(3rem, 1.1140350877rem + 7.0175438596vw, 5.5rem) * -1);
  }
}
@media (max-width: 768px) {
  .top-concept__title::after {
    max-width: clamp(5.875rem, 2.2916666667rem + 13.3333333333vw, 10.625rem);
    aspect-ratio: 94/52;
    background: url(../images/top-concept-deco_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-concept-deco_sp.webp) 1x, url(../images/top-concept-deco_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-concept-deco_sp.webp) 1x, url(../images/top-concept-deco_sp@2x.webp) 2x);
  }
}
.top-concept__jp {
  color: var(--main);
  font-size: clamp(1.25rem, 0.7380952381rem + 1.9047619048vw, 2.5rem);
  font-weight: bold;
  line-height: 1.2;
  margin-top: clamp(1rem, -0.3201754386rem + 4.9122807018vw, 2.75rem);
}
@media (max-width: 1000px) {
  .top-concept__jp {
    text-align: center;
  }
}
.top-concept__text {
  max-width: 746px;
  margin-top: clamp(1.1875rem, -0.3212719298rem + 5.6140350877vw, 3.1875rem);
}
.top-concept__img {
  max-width: 891px;
  width: 100%;
  overflow: hidden;
  border-radius: clamp(5rem, 3.5855263158rem + 5.2631578947vw, 6.875rem) clamp(1.25rem, 0.7785087719rem + 1.7543859649vw, 1.875rem);
}
@media (max-width: 1000px) {
  .top-concept__img {
    max-width: 580px;
  }
}

.top-news {
  background: url(../images/top-news-bg.webp) no-repeat top center/cover;
  background-image: -webkit-image-set(url(../images/top-news-bg.webp) 1x, url(../images/top-news-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-news-bg.webp) 1x, url(../images/top-news-bg@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-news {
    background: url(../images/top-news-bg_sp.webp) no-repeat top center/cover;
    background-image: -webkit-image-set(url(../images/top-news-bg_sp.webp) 1x, url(../images/top-news-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-news-bg_sp.webp) 1x, url(../images/top-news-bg_sp@2x.webp) 2x);
  }
}
.top-news_pos {
  margin-top: clamp(3.8125rem, 1.9736842105rem + 6.8421052632vw, 6.25rem);
}
.top-news__inner {
  max-width: 1682px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 144px 30px 91px;
}
@media (max-width: 1100px) {
  .top-news__inner {
    padding: clamp(3.5rem, -0.649122807rem + 15.4385964912vw, 9rem) clamp(0rem, -4.3561178248rem + 9.0634441088vw, 1.875rem) clamp(3.125rem, 1.1918859649rem + 7.1929824561vw, 5.6875rem);
  }
}
.top-news__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(1.5rem, 1.2696428571rem + 0.8571428571vw, 2.0625rem);
}
.top-news__jp {
  font-size: clamp(1.25rem, 0.7380952381rem + 1.9047619048vw, 2.5rem);
  font-weight: bold;
}
.top-news__en {
  max-width: clamp(11.8125rem, 8.5875rem + 12vw, 19.6875rem);
}
.top-news__wrapper {
  overflow: auto;
  margin-top: clamp(2.5rem, 0.8554104478rem + 6.1194029851vw, 5.0625rem);
  padding-bottom: 10px;
}
.top-news__wrapper.is-scrollable {
  cursor: -webkit-grab;
  cursor: grab;
}
.top-news__items {
  min-width: calc(clamp(-64rem, -66.9040785498rem + 6.0422960725vw, -62.75rem) * -1);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -webkit-column-gap: clamp(1.5rem, -0.8400313152rem + 2.9227557411vw, 2.375rem);
     -moz-column-gap: clamp(1.5rem, -0.8400313152rem + 2.9227557411vw, 2.375rem);
          column-gap: clamp(1.5rem, -0.8400313152rem + 2.9227557411vw, 2.375rem);
  padding: 0 calc(clamp(-1.25rem, -4.1540785498rem + 6.0422960725vw, 0rem) * -1);
}
.top-news__post-link {
  min-width: 228px;
  min-height: clamp(25.625rem, -1.2853601253rem + 33.611691023vw, 35.6875rem);
  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.625rem, -0.1701183432rem + 2.9585798817vw, 1.25rem);
  background-color: var(--white);
  font-size: clamp(1rem, 0.3314196242rem + 0.8350730689vw, 1.25rem);
  font-weight: bold;
  border-radius: clamp(1.25rem, -3.7643528184rem + 6.2630480167vw, 3.125rem);
  padding: clamp(1.25rem, -3.4300626305rem + 5.8455114823vw, 3rem) clamp(1.9375rem, -2.2411273486rem + 5.2192066806vw, 3.5rem) 30px;
}
@media (max-width: 1280px) {
  .top-news__post-link {
    min-height: clamp(20.75rem, 17.6212686567rem + 11.6417910448vw, 25.625rem);
  }
}
.top-news__thumbnail {
  overflow: hidden;
  border-radius: 20px;
}
.top-news__thumbnail img {
  height: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-news__time {
  line-height: 2;
}
@media (max-width: 768px) {
  .top-news__time {
    line-height: 1.2;
  }
}
.top-news__post-title {
  max-width: 245px;
  width: 100%;
  line-height: 2;
}
@media (max-width: 768px) {
  .top-news__post-title {
    line-height: 1.6;
  }
}
.top-news__more {
  margin-top: clamp(1.875rem, 0.9320175439rem + 3.5087719298vw, 3.125rem);
  margin-inline: auto;
}
.top-news__no-post {
  font-size: clamp(1.25rem, 1.1235294118rem + 0.4705882353vw, 1.5rem);
  text-align: center;
  margin-top: 80px;
}

.top-feature {
  overflow: hidden;
}
.top-feature_pos {
  margin-top: clamp(3.5rem, -0.6962719298rem + 15.6140350877vw, 9.0625rem);
}
.top-feature__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(1.5rem, 1.2696428571rem + 0.8571428571vw, 2.0625rem);
}
.top-feature__jp {
  font-size: clamp(1.25rem, 0.7380952381rem + 1.9047619048vw, 2.5rem);
  font-weight: bold;
}
.top-feature__en {
  max-width: clamp(17.5rem, 12.7392857143rem + 17.7142857143vw, 29.125rem);
}
.top-feature__outer {
  max-width: 1920px;
  margin-inline: auto;
}
.top-feature__01 {
  margin-top: clamp(3.9375rem, 2.5230263158rem + 5.2631578947vw, 5.8125rem);
  margin-left: auto;
}
.top-feature__02 {
  margin-top: clamp(9.6875rem, 5.7269736842rem + 14.7368421053vw, 14.9375rem);
}
.top-feature__03 {
  margin-top: 63px;
  margin-left: auto;
}
@media (max-width: 1000px) {
  .top-feature__03 {
    margin-top: 101px;
  }
}
.top-feature__col {
  margin-top: 94px;
}
@media (max-width: 768px) {
  .top-feature__col {
    margin-top: 101px;
  }
}
.top-feature__link {
  margin-top: 27px;
}
@media (max-width: 768px) {
  .top-feature__link {
    margin-top: 60px;
  }
}

.top-feature1 {
  max-width: 1706px;
  min-height: 480px;
  background: url(../images/top-feature-1-bg.webp) no-repeat top center/cover;
  background-image: -webkit-image-set(url(../images/top-feature-1-bg.webp) 1x, url(../images/top-feature-1-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-1-bg.webp) 1x, url(../images/top-feature-1-bg@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature1 {
    background: none;
  }
}
.top-feature1__pc-inner {
  max-width: 1468px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  padding-top: 30px;
}
@media (max-width: 768px) {
  .top-feature1__pc-inner {
    display: contents;
  }
}
.top-feature1__body {
  max-width: 1453px;
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-left: auto;
}
@media (max-width: 1000px) {
  .top-feature1__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;
    row-gap: clamp(6.4375rem, 4.2906804734rem + 7.9881656805vw, 8.125rem);
  }
}
.top-feature1__sp-bg {
  display: contents;
}
@media (max-width: 768px) {
  .top-feature1__sp-bg {
    display: block;
    background: url(../images/top-feature-1-bg_sp.webp) no-repeat top center/cover;
    background-image: -webkit-image-set(url(../images/top-feature-1-bg_sp.webp) 1x, url(../images/top-feature-1-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-feature-1-bg_sp.webp) 1x, url(../images/top-feature-1-bg_sp@2x.webp) 2x);
    padding-top: 1px;
  }
}
.top-feature1__box {
  max-width: 920px;
  width: 100%;
  margin-top: 18px;
}
@media (max-width: 768px) {
  .top-feature1__box {
    margin-top: -31px;
    padding: 0 clamp(1.5625rem, -11.3685344828rem + 51.724137931vw, 2.5rem);
  }
}
.top-feature1__box-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media (max-width: 1000px) {
  .top-feature1__box-top {
    -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: 20px;
  }
}
.top-feature1__number-group {
  max-width: clamp(6.3125rem, 5.5173816568rem + 2.9585798817vw, 6.9375rem);
  width: 100%;
  position: relative;
}
.top-feature1__number-group::after {
  content: "";
  width: clamp(2.9375rem, 0.740419708rem + 8.1751824818vw, 9.9375rem);
  aspect-ratio: 159/234;
  position: absolute;
  top: calc(clamp(10.4375rem, 10.124295995rem + 0.5006257822vw, 10.6875rem) * -1);
  left: calc(clamp(1.125rem, -13.7521902378rem + 23.7797246558vw, 13rem) * -1);
  z-index: -1;
  background: url(../images/top-feature-deco-l.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature-deco-l.webp) 1x, url(../images/top-feature-deco-l@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-deco-l.webp) 1x, url(../images/top-feature-deco-l@2x.webp) 2x);
}
@media (max-width: 1000px) {
  .top-feature1__number-group::after {
    top: calc(clamp(2.875rem, 2.1206140351rem + 2.8070175439vw, 3.875rem) * -1);
    left: calc(clamp(4rem, 0.7467105263rem + 12.1052631579vw, 8.3125rem) * -1);
  }
}
.top-feature1__number-group_03 {
  max-width: clamp(6.3125rem, 4.9607988166rem + 5.0295857988vw, 7.375rem);
}
.top-feature1__number-en {
  width: clamp(6.3125rem, 4.3322368421rem + 7.3684210526vw, 8.9375rem);
  position: absolute;
  top: -25px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.top-feature1__number {
  color: var(--main);
  font-size: clamp(5rem, 3.1140350877rem + 7.0175438596vw, 7.5rem);
  font-weight: 900;
  line-height: 1;
  text-align: center;
}
.top-feature1__title {
  color: var(--main);
  font-size: clamp(1.25rem, 0.7785087719rem + 1.7543859649vw, 1.875rem);
  font-weight: 900;
  line-height: 1.6;
  white-space: pre-line;
}
@media (max-width: 768px) {
  .top-feature1__title {
    text-align: center;
    margin-top: 8px;
  }
}
.top-feature1__text {
  margin-top: clamp(1.125rem, -0.0676775148rem + 4.4378698225vw, 2.0625rem);
}
.top-feature1__img {
  max-width: clamp(18.75rem, -7.3721294363rem + 41.7536534447vw, 31.25rem);
  width: 100%;
  position: relative;
}
@media (max-width: 1000px) {
  .top-feature1__img {
    max-width: 500px;
  }
}
@media (max-width: 768px) {
  .top-feature1__img {
    max-width: 580px;
    padding: 0 40px;
  }
}
.top-feature1__img-inner {
  position: relative;
}
.top-feature1__img-inner::after {
  content: "";
  width: 108.8%;
  aspect-ratio: 544/517;
  position: absolute;
  top: 60.5%;
  left: 55.1%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
  background: url(../images/top-feature-1-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature-1-deco.webp) 1x, url(../images/top-feature-1-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-1-deco.webp) 1x, url(../images/top-feature-1-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature1__img-inner::after {
    width: 95%;
    top: 53.9%;
    left: 49.5%;
  }
}

.top-feature2 {
  max-width: 1691px;
  min-height: 417px;
  background: url(../images/top-feature-2-bg.webp) no-repeat top center/cover;
  background-image: -webkit-image-set(url(../images/top-feature-2-bg.webp) 1x, url(../images/top-feature-2-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-2-bg.webp) 1x, url(../images/top-feature-2-bg@2x.webp) 2x);
  padding-top: 1px;
}
@media (max-width: 768px) {
  .top-feature2 {
    background: none;
  }
}
.top-feature2__pc-inner {
  max-width: 1468px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .top-feature2__pc-inner {
    display: contents;
  }
}
.top-feature2__body {
  max-width: 1453px;
  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-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-left: auto;
}
@media (max-width: 1000px) {
  .top-feature2__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;
    row-gap: 130px;
  }
}
.top-feature2__sp-bg {
  display: contents;
}
@media (max-width: 768px) {
  .top-feature2__sp-bg {
    display: block;
    background: url(../images/top-feature-2-bg_sp.webp) no-repeat top center/cover;
    background-image: -webkit-image-set(url(../images/top-feature-2-bg_sp.webp) 1x, url(../images/top-feature-2-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-feature-2-bg_sp.webp) 1x, url(../images/top-feature-2-bg_sp@2x.webp) 2x);
    padding-top: 1px;
  }
}
.top-feature2__box {
  max-width: 920px;
  width: 100%;
  margin-top: 3px;
}
@media (max-width: 768px) {
  .top-feature2__box {
    margin-top: -57px;
    padding: 0 clamp(1.5625rem, -11.3685344828rem + 51.724137931vw, 2.5rem);
  }
}
.top-feature2__box-top {
  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-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media (max-width: 1000px) {
  .top-feature2__box-top {
    -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: 20px;
  }
}
.top-feature2__number-group {
  max-width: clamp(6.3125rem, 2.9730029586rem + 12.426035503vw, 8.9375rem);
  width: 100%;
  position: relative;
}
.top-feature2__number-group::after {
  content: "";
  width: clamp(2.9375rem, 0.740419708rem + 8.1751824818vw, 9.9375rem);
  aspect-ratio: 159/234;
  position: absolute;
  top: clamp(-10.9375rem, -12.4252190238rem + 2.3779724656vw, -9.75rem);
  right: calc(clamp(1.8125rem, -12.4382822278rem + 22.7784730914vw, 13.1875rem) * -1);
  z-index: -1;
  background: url(../images/top-feature-deco-r.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature-deco-r.webp) 1x, url(../images/top-feature-deco-r@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-deco-r.webp) 1x, url(../images/top-feature-deco-r@2x.webp) 2x);
}
@media (max-width: 1000px) {
  .top-feature2__number-group::after {
    top: calc(clamp(2rem, 0.5855263158rem + 5.2631578947vw, 3.875rem) * -1);
    right: calc(clamp(4.375rem, 1.4046052632rem + 11.0526315789vw, 8.3125rem) * -1);
  }
}
.top-feature2__number-group_03 {
  max-width: clamp(6.3125rem, 4.9607988166rem + 5.0295857988vw, 7.375rem);
}
.top-feature2__number-en {
  width: clamp(6.3125rem, 4.3322368421rem + 7.3684210526vw, 8.9375rem);
  position: absolute;
  top: -25px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.top-feature2__number {
  color: var(--blue);
  font-size: clamp(5rem, 3.1140350877rem + 7.0175438596vw, 7.5rem);
  font-weight: 900;
  line-height: 1;
  text-align: center;
}
.top-feature2__title {
  color: var(--blue);
  font-size: clamp(1.25rem, 0.7785087719rem + 1.7543859649vw, 1.875rem);
  font-weight: 900;
  line-height: 1.6;
  white-space: pre-line;
}
@media (max-width: 768px) {
  .top-feature2__title {
    text-align: center;
    margin-top: 8px;
  }
}
.top-feature2__text {
  margin-top: clamp(1.125rem, -0.0676775148rem + 4.4378698225vw, 2.0625rem);
}
.top-feature2__img {
  max-width: clamp(18.75rem, -7.3721294363rem + 41.7536534447vw, 31.25rem);
  width: 100%;
  position: relative;
  margin-top: -56px;
}
@media (max-width: 1000px) {
  .top-feature2__img {
    max-width: 500px;
  }
}
@media (max-width: 768px) {
  .top-feature2__img {
    max-width: 580px;
    padding: 0 40px;
  }
}
.top-feature2__img-inner {
  position: relative;
}
.top-feature2__img-inner::after {
  content: "";
  width: 108.8%;
  aspect-ratio: 544/517;
  position: absolute;
  top: 44.5%;
  left: 44.9%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
  background: url(../images/top-feature-2-deco.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-feature-2-deco.webp) 1x, url(../images/top-feature-2-deco@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-2-deco.webp) 1x, url(../images/top-feature-2-deco@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature2__img-inner::after {
    width: 95%;
    top: 50%;
    left: 49.5%;
  }
}

.top-feature-col {
  background: url(../images/top-feature-bg-45.webp) no-repeat bottom center/100%;
  background-image: -webkit-image-set(url(../images/top-feature-bg-45.webp) 1x, url(../images/top-feature-bg-45@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-bg-45.webp) 1x, url(../images/top-feature-bg-45@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-feature-col {
    background: none;
  }
}
.top-feature-col__inner {
  max-width: 1457px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 178px;
}
@media (max-width: 768px) {
  .top-feature-col__inner {
    padding: 0 clamp(1.25rem, 0.4548816568rem + 2.9585798817vw, 1.875rem);
  }
}
.top-feature-col__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-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media (max-width: 1000px) {
  .top-feature-col__items {
    -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: 40px;
  }
}
.top-feature-col__item {
  max-width: 702px;
  width: 100%;
  background-color: var(--white);
  background-image: -webkit-radial-gradient(circle, #f3edeb 2px, transparent 2px), -webkit-radial-gradient(circle, #f3edeb 2px, transparent 2px);
  background-image: radial-gradient(circle, #f3edeb 2px, transparent 2px), radial-gradient(circle, #f3edeb 2px, transparent 2px);
  background-position: 0 0, 8px 8px;
  background-size: 16px 16px;
  border-radius: clamp(1.25rem, -1.1353550296rem + 8.875739645vw, 3.125rem);
  padding: clamp(1.1875rem, 0.3128698225rem + 3.2544378698vw, 1.875rem) 20px clamp(1.125rem, -0.3857248521rem + 5.6213017751vw, 2.3125rem);
}
.top-feature-col__item-inner {
  max-width: 600px;
  margin-inline: auto;
}
.top-feature-col__img {
  max-width: clamp(19.375rem, -3.6834319527rem + 85.798816568vw, 37.5rem);
  margin-inline: auto;
}
.top-feature-col__number-group {
  max-width: clamp(6.3125rem, 2.9730029586rem + 12.426035503vw, 8.9375rem);
  width: 100%;
  position: relative;
  margin-top: clamp(3.3125rem, 2.7559171598rem + 2.0710059172vw, 3.75rem);
  margin-inline: auto;
}
.top-feature-col__number-group_b {
  color: var(--blue);
}
.top-feature-col__number-group_r {
  color: var(--main);
}
.top-feature-col__number-en {
  width: clamp(6.3125rem, 4.3322368421rem + 7.3684210526vw, 8.9375rem);
  position: absolute;
  top: -25px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.top-feature-col__number {
  font-size: clamp(5rem, 3.1140350877rem + 7.0175438596vw, 7.5rem);
  font-weight: 900;
  line-height: 1;
  text-align: center;
}
.top-feature-col__title {
  background-image: -webkit-radial-gradient(circle, #404040 clamp(0.1875rem, 0.1079881657rem + 0.2958579882vw, 0.25rem), transparent clamp(0.1875rem, 0.1079881657rem + 0.2958579882vw, 0.25rem));
  background-image: radial-gradient(circle, #404040 clamp(0.1875rem, 0.1079881657rem + 0.2958579882vw, 0.25rem), transparent clamp(0.1875rem, 0.1079881657rem + 0.2958579882vw, 0.25rem));
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 14px clamp(0.375rem, 0.2159763314rem + 0.5917159763vw, 0.5rem);
  font-size: clamp(1.25rem, 0.7785087719rem + 1.7543859649vw, 1.875rem);
  font-weight: 900;
  line-height: 1.6;
  text-align: center;
  white-space: pre-line;
  margin-top: calc(clamp(-1.8125rem, -2.5281065089rem + 2.6627218935vw, -1.25rem) * -1);
  padding-bottom: calc(clamp(-1.125rem, -1.4430473373rem + 1.1834319527vw, -0.875rem) * -1);
}
.top-feature-col__title_b {
  color: var(--blue);
}
.top-feature-col__title_r {
  color: var(--main);
}
.top-feature-col__text {
  margin-top: 21px;
}

.top-feature-link__pc-bg {
  max-width: 2228px;
  height: 517px;
  display: grid;
  place-items: center;
  background: url(../images/top-feature-bottom-bg.webp) no-repeat center left calc(50% - clamp(-1rem, -7.2337662338rem + 5.1948051948vw, 0rem) * -1)/cover;
  background-image: -webkit-image-set(url(../images/top-feature-bottom-bg.webp) 1x, url(../images/top-feature-bottom-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-feature-bottom-bg.webp) 1x, url(../images/top-feature-bottom-bg@2x.webp) 2x);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .top-feature-link__pc-bg {
    display: block;
    max-width: 692px;
    height: inherit;
    background: none;
  }
}
.top-feature-link__more {
  margin-top: 18px;
  margin-inline: auto;
}
.top-feature-link__sp-bg {
  display: none;
}
@media (max-width: 768px) {
  .top-feature-link__sp-bg {
    width: 100%;
    height: 244px;
    display: block;
    background: url(../images/top-feature-bottom-bg_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-feature-bottom-bg_sp.webp) 1x, url(../images/top-feature-bottom-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-feature-bottom-bg_sp.webp) 1x, url(../images/top-feature-bottom-bg_sp@2x.webp) 2x);
    margin-top: 61px;
  }
}

.top-medical {
  background: url(../images/top-medical-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-medical-bg.webp) 1x, url(../images/top-medical-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-medical-bg.webp) 1x, url(../images/top-medical-bg@2x.webp) 2x);
}
.top-medical_pos {
  margin-top: calc(clamp(-5rem, -11.0338203463rem + 12.5541125541vw, -3.1875rem) * -1);
}
@media (max-width: 768px) {
  .top-medical {
    background: url(../images/top-medical-bg_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-medical-bg_sp.webp) 1x, url(../images/top-medical-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-medical-bg_sp.webp) 1x, url(../images/top-medical-bg_sp@2x.webp) 2x);
  }
}
.top-medical__inner {
  max-width: 1040px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 146px 30px 120px;
}
@media (max-width: 1000px) {
  .top-medical__inner {
    padding: clamp(3.5rem, -0.7434210526rem + 15.7894736842vw, 9.125rem) clamp(0.9375rem, -11.9935344828rem + 51.724137931vw, 1.875rem) clamp(3.75rem, 0.9210526316rem + 10.5263157895vw, 7.5rem);
  }
}
.top-medical__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(1.5rem, 1.2696428571rem + 0.8571428571vw, 2.0625rem);
}
.top-medical__jp {
  font-size: clamp(1.25rem, 0.7380952381rem + 1.9047619048vw, 2.5rem);
  font-weight: bold;
}
.top-medical__en {
  max-width: clamp(18.0625rem, 13.1994047619rem + 18.0952380952vw, 29.9375rem);
}
.top-medical__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(0.625rem, -3.7311178248rem + 9.0634441088vw, 2.5rem);
  margin-top: clamp(2.5rem, 0.5668859649rem + 7.1929824561vw, 5.0625rem);
}
@media (max-width: 800px) {
  .top-medical__items {
    max-width: 650px;
    grid-template-columns: repeat(2, 1fr);
    margin-inline: auto;
  }
}
@media (max-width: 800px) {
  .top-medical__item_9 {
    max-width: clamp(11.25rem, -2.1875rem + 50vw, 20rem);
    width: 100%;
    grid-area: 5/1/6/3;
    margin-inline: auto;
  }
}
.top-medical__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;
  background-color: var(--white);
  border-radius: 30px;
  -webkit-box-shadow: 6px 6px 20px rgba(0, 100, 137, 0.2);
          box-shadow: 6px 6px 20px rgba(0, 100, 137, 0.2);
  padding: clamp(1.3125rem, -0.9933431953rem + 8.5798816568vw, 3.125rem) 5px clamp(1.3125rem, 0.5968934911rem + 2.6627218935vw, 1.875rem);
}
.top-medical__img {
  width: auto;
  height: clamp(3.125rem, -0.850591716rem + 14.7928994083vw, 6.25rem);
}
.top-medical__item-title {
  min-height: clamp(3.2rem, 2.1822485207rem + 3.7869822485vw, 4rem);
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  font-size: clamp(1rem, 0.6819526627rem + 1.1834319527vw, 1.25rem);
  font-weight: 900;
  line-height: 1.6;
  text-align: center;
  white-space: pre-line;
  margin-top: clamp(0.25rem, -1.2607248521rem + 5.6213017751vw, 1.4375rem);
}
.top-medical__item-title_lh-s {
  line-height: 1.45;
}
.top-medical__s {
  font-size: clamp(0.875rem, 0.5569526627rem + 1.1834319527vw, 1.125rem);
}
.top-medical__arrow {
  width: clamp(1.5625rem, 0.3698224852rem + 4.4378698225vw, 2.5rem);
  aspect-ratio: 1/1;
  background: url(../images/icon-arrow-rw.svg) no-repeat 0 0/contain;
  margin-top: clamp(0.5rem, 0.1024408284rem + 1.4792899408vw, 0.8125rem);
}

@media (hover: hover) and (pointer: fine) {
  .top-medical__link:hover .top-medical__img, .top-medical__link:focus .top-medical__img {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .top-medical__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;
  }
}
.top-dot-bg {
  background-color: var(--white);
  background-image: -webkit-radial-gradient(circle, #d8c5bf 2px, transparent 2px), -webkit-radial-gradient(circle, #d8c5bf 2px, transparent 2px);
  background-image: radial-gradient(circle, #d8c5bf 2px, transparent 2px), radial-gradient(circle, #d8c5bf 2px, transparent 2px);
  background-position: 0 0, 8px 8px;
  background-size: 16px 16px;
  padding-top: clamp(2.5rem, 0.4906542056rem + 7.476635514vw, 7.5rem);
  padding-bottom: clamp(3.75rem, 0.9210526316rem + 10.5263157895vw, 7.5rem);
}

.top-greet__inner {
  max-width: 1680px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 1000px) {
  .top-greet__inner {
    max-width: 800px;
    padding: 0 clamp(1.25rem, 0.4548816568rem + 2.9585798817vw, 1.875rem);
  }
}
@media (max-width: 429px) {
  .top-greet__inner {
    padding: 0 clamp(0.9375rem, -11.9935344828rem + 51.724137931vw, 1.875rem);
  }
}
.top-greet__bg {
  background-image: -webkit-repeating-linear-gradient(left, #fff4ed, #fff4ed clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(1.1875rem, 0.2469422701rem + 1.9569471624vw, 1.8125rem));
  background-image: repeating-linear-gradient(90deg, #fff4ed, #fff4ed clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(0.59375rem, 0.123471135rem + 0.9784735812vw, 0.90625rem), #fbebe2 clamp(1.1875rem, 0.2469422701rem + 1.9569471624vw, 1.8125rem));
  border-radius: clamp(1.875rem, 0.1168224299rem + 6.5420560748vw, 6.25rem);
  padding: 120px 20px 120px;
}
@media (max-width: 1000px) {
  .top-greet__bg {
    padding: clamp(3.375rem, 2.149122807rem + 4.5614035088vw, 5rem) 20px clamp(2.5rem, -0.6804733728rem + 11.8343195266vw, 5rem);
  }
}
.top-greet__bg-inner {
  max-width: 1492px;
  margin-inline: auto;
}
.top-greet__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: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media (max-width: 1000px) {
  .top-greet__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.top-greet__box {
  max-width: 600px;
  width: 100%;
  margin-top: clamp(0rem, -21.3138777555rem + 34.0681362725vw, 10.625rem);
}
@media (max-width: 1000px) {
  .top-greet__box {
    display: contents;
  }
}
.top-greet__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: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  row-gap: clamp(1.5rem, 1.2696428571rem + 0.8571428571vw, 2.0625rem);
}
@media (max-width: 1000px) {
  .top-greet__title {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.top-greet__jp {
  font-size: clamp(1.25rem, 0.7380952381rem + 1.9047619048vw, 2.5rem);
  font-weight: bold;
}
.top-greet__en {
  max-width: clamp(19.625rem, 14.25rem + 20vw, 32.75rem);
}
.top-greet__text {
  margin-top: 81px;
}
@media (max-width: 1000px) {
  .top-greet__text {
    max-width: 600px;
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    margin-top: clamp(1.25rem, -0.3402366864rem + 5.9171597633vw, 2.5rem);
  }
}
.top-greet__img-area {
  max-width: 706px;
  width: 100%;
  position: relative;
  padding-bottom: clamp(3.4375rem, 1.2906804734rem + 7.9881656805vw, 5.125rem);
}
@media (max-width: 1000px) {
  .top-greet__img-area {
    max-width: clamp(19.375rem, 9.0384615385rem + 38.4615384615vw, 27.5rem);
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin-top: 41px;
  }
}
.top-greet__img {
  max-width: clamp(21.875rem, -9.4689378758rem + 50.1002004008vw, 37.5rem);
  margin-left: auto;
}
@media (max-width: 1000px) {
  .top-greet__img {
    max-width: 100%;
  }
}
.top-greet__name-box {
  max-width: clamp(12.5rem, -2.5450901804rem + 24.0480961924vw, 20rem);
  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.9375rem, 0.3106212425rem + 1.002004008vw, 1.25rem);
  position: absolute;
  bottom: 0;
  background: url(../images/top-greet-name.webp) no-repeat center center/contain;
  background-image: -webkit-image-set(url(../images/top-greet-name.webp) 1x, url(../images/top-greet-name@2x.webp) 2x);
  background-image: image-set(url(../images/top-greet-name.webp) 1x, url(../images/top-greet-name@2x.webp) 2x);
  color: var(--white);
  border-radius: 50%;
}
@media (max-width: 1000px) {
  .top-greet__name-box {
    max-width: clamp(8.9375rem, 4.4053254438rem + 16.8639053254vw, 12.5rem);
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    row-gap: calc(clamp(0.4375rem, -0.1985946746rem + 2.3668639053vw, 0.9375rem) * -1);
  }
}
.top-greet__job {
  font-size: clamp(1.75rem, 0.746993988rem + 1.6032064128vw, 2.25rem);
  font-weight: 400;
  margin-top: calc(clamp(0.625rem, 0.1479289941rem + 1.775147929vw, 1rem) * -1);
}
@media (max-width: 1000px) {
  .top-greet__job {
    font-size: clamp(1rem, 0.0458579882rem + 3.550295858vw, 1.75rem);
  }
}
.top-greet__name {
  font-size: clamp(2.5rem, 1.246242485rem + 2.004008016vw, 3.125rem);
  font-weight: 500;
}
@media (max-width: 1000px) {
  .top-greet__name {
    font-size: clamp(1.25rem, -0.3402366864rem + 5.9171597633vw, 2.5rem);
  }
}
.top-greet__more {
  max-width: clamp(17rem, 9.7861842105rem + 26.8421052632vw, 26.5625rem);
  margin-top: calc(clamp(-1.875rem, -5.8870240481rem + 6.4128256513vw, 0.125rem) * -1);
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .top-greet__more {
    margin-top: 38px;
  }
}
.top-greet__more-text {
  max-width: clamp(13.25rem, 9.7609649123rem + 12.9824561404vw, 17.875rem);
}

.top-gallery_pos {
  margin-top: clamp(4.6875rem, 1.3870614035rem + 12.2807017544vw, 9.0625rem);
}
.top-gallery__inner {
  max-width: 1640px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .top-gallery__inner {
    padding: 0;
  }
}
.top-gallery__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(1.5rem, 1.2696428571rem + 0.8571428571vw, 2.0625rem);
}
.top-gallery__jp {
  font-size: clamp(1.25rem, 0.7380952381rem + 1.9047619048vw, 2.5rem);
  font-weight: bold;
}
.top-gallery__en {
  max-width: clamp(17.9375rem, 13.1511904762rem + 17.8095238095vw, 29.625rem);
}
.top-gallery__body {
  position: relative;
  margin-top: clamp(2.5rem, 0.5197368421rem + 7.3684210526vw, 5.125rem);
  padding: 0 clamp(3.125rem, 1.0146816685rem + 4.3907793633vw, 5.625rem);
}
@media (max-width: 768px) {
  .top-gallery__body {
    padding: 0;
  }
}
.top-gallery__swiper {
  max-width: 1400px;
  margin-inline: auto;
}
.top-gallery__prev, .top-gallery__next {
  width: clamp(2.5rem, 0.3896816685rem + 4.3907793633vw, 5rem);
  height: inherit;
  aspect-ratio: 1/1;
  top: calc(50% + 22px);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 3;
}
@media (max-width: 768px) {
  .top-gallery__prev, .top-gallery__next {
    display: none;
  }
}
.top-gallery__prev::after, .top-gallery__next::after {
  content: "";
  width: 100%;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  margin: auto;
}
.top-gallery__prev {
  left: 0;
}
.top-gallery__prev::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  background-image: url(../images/icon-arrow-rw.svg);
}
.top-gallery__next {
  right: 0;
}
.top-gallery__next::after {
  background-image: url(../images/icon-arrow-rw.svg);
}

/*###################################################################
  clinic（page）
###################################################################*/
.clinic-c_pos {
  margin-top: clamp(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
.clinic-c__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) {
  .clinic-c__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}

.clinic1__items {
  max-width: 1210px;
  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: 20px;
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
  margin-inline: auto;
}
.clinic1__item {
  max-width: 830px;
  width: 100%;
  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;
}
.clinic1__item_r {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-left: auto;
}
.clinic1__box {
  max-width: clamp(10.625rem, 2.9719387755rem + 30.612244898vw, 20rem);
  width: 100%;
  min-height: clamp(10.625rem, 2.9719387755rem + 30.612244898vw, 20rem);
  position: relative;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  background-color: var(--white);
  border-radius: clamp(1.25rem, 0.7397959184rem + 2.0408163265vw, 1.875rem);
  outline: clamp(0.1875rem, 0.1364795918rem + 0.2040816327vw, 0.25rem) dashed var(--main);
  outline-offset: calc(clamp(0.5625rem, -0.2028061224rem + 3.0612244898vw, 1.5rem) * -1);
}
.clinic1__number {
  color: var(--main);
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(2.125rem, 0.7984693878rem + 5.306122449vw, 3.75rem);
  line-height: 1;
  text-align: center;
}
.clinic1__number::first-letter {
  color: var(--text);
}
.clinic1__text {
  font-size: clamp(1.125rem, 0.7678571429rem + 1.4285714286vw, 1.5625rem);
  line-height: 1.6;
  text-align: center;
  white-space: pre-line;
  margin-top: clamp(0.3125rem, -0.6568877551rem + 3.8775510204vw, 1.5rem);
}
.clinic1__red {
  color: var(--main);
  font-size: clamp(1.25rem, 0.7397959184rem + 2.0408163265vw, 1.875rem);
}
.clinic1__img {
  max-width: 600px;
  width: 100%;
  margin-top: calc(clamp(-8.125rem, -12.2066326531rem + 16.3265306122vw, -3.125rem) * -1);
  margin-left: clamp(-8.75rem, -11.3010204082rem + 10.2040816327vw, -5.625rem);
}
.clinic1__img_r {
  margin-right: clamp(-8.75rem, -11.3010204082rem + 10.2040816327vw, -5.625rem);
  margin-left: inherit;
}
.clinic1__subtitle {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--main);
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  line-height: 1.6;
  margin-top: clamp(3.125rem, 0.4583333333rem + 10.6666666667vw, 7.125rem);
  margin-inline: auto;
}
.clinic1__text-2 {
  max-width: 960px;
  margin-top: clamp(1.25rem, 0.625rem + 2.5vw, 2.1875rem);
  margin-inline: auto;
}

.clinic2_pos {
  margin-top: clamp(4.375rem, 2.3333333333rem + 8.1666666667vw, 7.4375rem);
}
.clinic2__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(0.625rem, -0.5718085106rem + 4.7872340426vw, 3.4375rem);
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.clinic2__item {
  overflow: hidden;
  border-radius: clamp(0.4375rem, -0.1742021277rem + 2.4468085106vw, 1.875rem);
}

@media (hover: hover) and (pointer: fine) {
  .clinic2__link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .clinic2__link:hover .clinic2__img, .clinic2__link:focus .clinic2__img {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .clinic2__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;
  }
}
.clinic3_pos {
  margin-top: clamp(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
.clinic3__body {
  max-width: 1134px;
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(2.1875rem, 1.2708333333rem + 3.6666666667vw, 3.5625rem);
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .clinic3__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;
    row-gap: 40px;
  }
}
.clinic3__outline {
  max-width: clamp(21.875rem, -15.222361809rem + 59.2964824121vw, 29.25rem);
  width: 100%;
}
@media (max-width: 1000px) {
  .clinic3__outline {
    max-width: 468px;
  }
}
.clinic3__dl {
  display: grid;
  grid-template-columns: 132px 1fr;
  font-size: clamp(1rem, 0.5rem + 2vw, 1.25rem);
  line-height: 1.6;
  border-bottom: 3px dashed var(--text);
  padding: clamp(1.125rem, 0.125rem + 4vw, 1.625rem) 0;
}
@media (max-width: 1200px) {
  .clinic3__dl {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
}
@media (max-width: 1000px) {
  .clinic3__dl {
    grid-template-columns: clamp(5.9375rem, 1.3125rem + 18.5vw, 8.25rem) 1fr;
  }
}
.clinic3__dl_top {
  padding-top: 0;
}
.clinic3__dl_last {
  border: none;
  padding-bottom: 0;
}
.clinic3__dt {
  font-weight: 500;
  padding-left: clamp(0rem, -1.5rem + 6vw, 0.75rem);
}
.clinic3__dd {
  white-space: pre-line;
}
@media (max-width: 1200px) {
  .clinic3__dd {
    padding-left: 12px;
  }
}
@media (max-width: 1000px) {
  .clinic3__dd {
    padding-left: 0;
  }
}
.clinic3__info {
  max-width: 602px;
  width: 100%;
  margin-top: 3px;
}
@media (max-width: 1000px) {
  .clinic3__info {
    margin-top: 0;
  }
}

/*###################################################################
  doctor（page）
###################################################################*/
.doctor-c_pos {
  margin-top: clamp(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
.doctor-c__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) {
  .doctor-c__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}

.doctor1__col {
  max-width: 1119px;
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(2.5rem, 1.9565217391rem + 2.1739130435vw, 3rem);
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .doctor1__col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: clamp(1.5625rem, 0.3698224852rem + 4.4378698225vw, 2.5rem);
  }
}
.doctor1__box {
  max-width: 480px;
  width: 100%;
  margin-top: clamp(4.5625rem, -46.0533919598rem + 80.9045226131vw, 14.625rem);
}
@media (max-width: 1000px) {
  .doctor1__box {
    margin-top: 0;
  }
}
.doctor1__img-area {
  max-width: 588px;
  width: 100%;
  padding-bottom: clamp(3.4375rem, 1.2906804734rem + 7.9881656805vw, 5.125rem);
}
@media (max-width: 1000px) {
  .doctor1__img-area {
    max-width: clamp(18.75rem, 5.1630434783rem + 54.347826087vw, 31.25rem);
  }
}
.doctor1__img {
  max-width: clamp(21.875rem, -25.2826633166rem + 75.3768844221vw, 31.25rem);
  margin-left: auto;
}
@media (max-width: 1000px) {
  .doctor1__img {
    max-width: 100%;
  }
}
.doctor1__name-box {
  max-width: clamp(12.5rem, -25.2261306533rem + 60.3015075377vw, 20rem);
  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.9375rem, -0.6344221106rem + 2.5125628141vw, 1.25rem);
  position: absolute;
  bottom: 0;
  background: url(../images/top-greet-name.webp) no-repeat center center/contain;
  background-image: -webkit-image-set(url(../images/top-greet-name.webp) 1x, url(../images/top-greet-name@2x.webp) 2x);
  background-image: image-set(url(../images/top-greet-name.webp) 1x, url(../images/top-greet-name@2x.webp) 2x);
  color: var(--white);
  border-radius: 50%;
}
@media (max-width: 1000px) {
  .doctor1__name-box {
    max-width: clamp(8.9375rem, 4.4053254438rem + 16.8639053254vw, 12.5rem);
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    row-gap: calc(clamp(0.4375rem, -0.1985946746rem + 2.3668639053vw, 0.9375rem) * -1);
  }
}
.doctor1__job {
  font-size: clamp(1.75rem, -0.7650753769rem + 4.0201005025vw, 2.25rem);
  font-weight: 400;
  margin-top: calc(clamp(0.625rem, 0.1479289941rem + 1.775147929vw, 1rem) * -1);
}
@media (max-width: 1000px) {
  .doctor1__job {
    font-size: clamp(1rem, 0.0458579882rem + 3.550295858vw, 1.75rem);
  }
}
.doctor1__name {
  font-size: clamp(2.5rem, -0.6438442211rem + 5.0251256281vw, 3.125rem);
  font-weight: 500;
}
@media (max-width: 1000px) {
  .doctor1__name {
    font-size: clamp(1.25rem, -0.3402366864rem + 5.9171597633vw, 2.5rem);
  }
}
.doctor1__subtitle {
  margin-top: clamp(2.5rem, 1.4166666667rem + 4.3333333333vw, 4.125rem);
}
.doctor1__items {
  max-width: 896px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: column;
  grid-template-rows: repeat(4, auto);
  gap: clamp(1.125rem, 0.8333333333rem + 1.1666666667vw, 1.5625rem) 61px;
  margin-top: clamp(1.875rem, 1.3333333333rem + 2.1666666667vw, 2.6875rem);
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .doctor1__items {
    max-width: 500px;
    grid-template-columns: 1fr;
    grid-auto-flow: inherit;
    grid-template-rows: inherit;
  }
}
.doctor1__item {
  display: grid;
  grid-template-columns: clamp(9.0625rem, 4.8958333333rem + 16.6666666667vw, 10.625rem) 1fr;
  font-size: clamp(1rem, 0.8333333333rem + 0.6666666667vw, 1.25rem);
  line-height: 1.75;
}

.doctor2_pos {
  margin-top: clamp(4.375rem, 2.2083333333rem + 8.6666666667vw, 7.625rem);
}
.doctor2__items {
  max-width: 1200px;
  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(0.625rem, -0.0543478261rem + 2.7173913043vw, 1.25rem);
     -moz-column-gap: clamp(0.625rem, -0.0543478261rem + 2.7173913043vw, 1.25rem);
          column-gap: clamp(0.625rem, -0.0543478261rem + 2.7173913043vw, 1.25rem);
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}

/*###################################################################
  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(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
@media (max-width: 768px) {
  .med-c__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med-c__section {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.med-c__subinner {
  max-width: 1140px;
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
  margin-inline: auto;
}
.med-c__section-mt {
  margin-top: clamp(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
.med-c__subheading {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #8cd5f1;
  color: var(--white);
  font-size: clamp(1rem, 0.6022727273rem + 1.5909090909vw, 1.875rem);
  line-height: 1.6;
  border-radius: 10px;
  padding: clamp(0.625rem, 0.5113636364rem + 0.4545454545vw, 0.875rem) clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
}

.med-col1 {
  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: 30px 20px;
}
@media (max-width: 1000px) {
  .med-col1 {
    -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-col1_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: 1000px) {
  .med-col1_r {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.med-col1__box {
  max-width: 640px;
  width: 100%;
}
@media (max-width: 1000px) {
  .med-col1__box {
    max-width: 100%;
  }
}
.med-col1__img {
  max-width: 600px;
  width: 100%;
}

.med-col-s {
  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: 30px 20px;
}
@media (max-width: 1000px) {
  .med-col-s {
    -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-s_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: 1000px) {
  .med-col-s_r {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.med-col-s__box {
  max-width: 500px;
  width: 100%;
}
@media (max-width: 1000px) {
  .med-col-s__box {
    max-width: 100%;
  }
}
.med-col-s__img {
  max-width: 600px;
  width: 100%;
}

.med-faq {
  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: 40px;
}
.med-faq__item {
  background-color: var(--white);
  border-radius: clamp(1.25rem, 0.9375rem + 1.25vw, 1.875rem);
  -webkit-box-shadow: 7px 7px 20px rgba(0, 0, 0, 0.2);
          box-shadow: 7px 7px 20px rgba(0, 0, 0, 0.2);
  padding: clamp(1.875rem, 1.25rem + 2.5vw, 3.125rem) clamp(0.9375rem, -0.15625rem + 4.375vw, 3.125rem);
}
.med-faq__inner {
  max-width: 1040px;
  margin-inline: auto;
}
.med-faq__q {
  display: grid;
  grid-template-columns: clamp(2.5rem, 1.25rem + 5vw, 5rem) 1fr;
}
.med-faq__q-icon {
  width: clamp(1.875rem, 1.25rem + 2.5vw, 3.125rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  background-color: #8cd5f1;
  color: var(--white);
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.125rem, 0.90625rem + 0.875vw, 1.5625rem);
  font-weight: bold;
  border-radius: 50%;
}
.med-faq__q-text {
  border-bottom: 3px dashed var(--text);
  margin-top: clamp(0rem, -0.1875rem + 0.75vw, 0.375rem);
  padding-bottom: clamp(0.75rem, 0.5625rem + 0.75vw, 1.125rem);
}
.med-faq__a {
  display: grid;
  grid-template-columns: clamp(2.5rem, 1.25rem + 5vw, 5rem) 1fr;
  margin-top: clamp(1rem, 0.5625rem + 1.75vw, 1.875rem);
}
.med-faq__a-icon {
  width: clamp(1.875rem, 1.25rem + 2.5vw, 3.125rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--white);
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: clamp(1.125rem, 0.90625rem + 0.875vw, 1.5625rem);
  font-weight: bold;
  border-radius: 50%;
}

.med1__section {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}

.med1-1__body {
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
@media (max-width: 1000px) {
  .med1-1__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;
    row-gap: 30px;
  }
}
.med1-1__dl {
  max-width: 628px;
  width: 100%;
  display: grid;
  grid-template-columns: clamp(9.6875rem, 5.0737463127rem + 7.3746312684vw, 11.25rem) 1fr;
  row-gap: clamp(1.25rem, -0.0407608696rem + 5.1630434783vw, 2.4375rem);
}
@media (max-width: 1000px) {
  .med1-1__dl {
    grid-template-columns: clamp(6rem, 0.2934782609rem + 22.8260869565vw, 11.25rem) 1fr;
  }
}
.med1-1__dt {
  max-width: clamp(5.25rem, 1.4456521739rem + 15.2173913043vw, 8.75rem);
  height: clamp(2.8125rem, 1.5217391304rem + 5.1630434783vw, 4rem);
  display: grid;
  place-items: center;
  background-color: #8cd5f1;
  color: var(--white);
  font-size: clamp(1rem, 0.7282608696rem + 1.0869565217vw, 1.25rem);
  font-weight: 500;
  border-radius: 10px;
}
.med1-1__dd {
  padding-top: 1px;
}
.med1-1__img {
  max-width: 600px;
  width: 100%;
}

.med1-2__subheading {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med1-2__text {
  margin-top: 20px;
}

.med1-3__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med1-3__subinner {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.med1-3__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med1-4__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med1-4__subinner {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.med1-4__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med2__col {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}

.med2-1__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med2-1__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med2-2__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med2-3__text-s {
  max-width: 812px;
}

.med3__subheading {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.med3__col {
  margin-top: 20px;
}
.med3__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med3-2__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med3-4__subheading {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med3-4__text {
  margin-top: 20px;
}

.med4__items {
  max-width: 1080px;
  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: 20px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}
.med4__item {
  min-height: 70px;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  background-color: #8cd5f1;
  color: var(--white);
  font-size: clamp(1rem, 0.8863636364rem + 0.4545454545vw, 1.25rem);
  line-height: 1.6;
  text-align: center;
  border-radius: 10px;
  padding: 11px clamp(0.9375rem, 0.597826087rem + 1.3586956522vw, 1.25rem);
}
.med4__item_low {
  min-height: inherit;
}

.med4-1__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med4-2__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med4-2__text {
  max-width: 1080px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}

.med4-3__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med5__mt40 {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med5__subtitle {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}

.med5-2__col {
  margin-top: 20px;
}

.med5-3__col {
  margin-top: 20px;
}
.med5-3__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem) clamp(1.25rem, -11.3253768844rem + 20.1005025126vw, 3.75rem);
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
@media (max-width: 900px) {
  .med5-3__items {
    max-width: 540px;
    grid-template-columns: 1fr;
    margin-inline: auto;
  }
}
.med5-3__item-title {
  height: clamp(3rem, 2.0833333333rem + 3.6666666667vw, 4.375rem);
  display: grid;
  place-items: center;
  color: var(--white);
  font-size: clamp(1.125rem, 0.8333333333rem + 1.1666666667vw, 1.5625rem);
  border-radius: 10px;
}
.med5-3__item-title_m {
  background-color: #8cd5f1;
}
.med5-3__item-title_d {
  background-color: #a3a3a3;
}
.med5-3__item-text {
  margin-top: clamp(0.625rem, 0.2083333333rem + 1.6666666667vw, 1.25rem);
}

.med5-4__subinner-1 {
  margin-top: 43px;
}
.med5-4__dl {
  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: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
  font-size: clamp(1rem, 0.9074074074rem + 0.3703703704vw, 1.25rem);
  line-height: 2;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
@media (max-width: 1000px) {
  .med5-4__dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 15px;
  }
}
.med5-4__dt {
  background-color: #8cd5f1;
  color: var(--white);
  border-radius: 10px;
  padding: clamp(0.375rem, 0.125rem + 1vw, 0.75rem) clamp(1.25rem, 0.8333333333rem + 1.6666666667vw, 1.875rem);
}
.med5-4__dd {
  white-space: pre-line;
}
.med5-4__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med5-4__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;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
@media (max-width: 900px) {
  .med5-4__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;
    row-gap: 30px;
  }
}
.med5-4__col-body {
  max-width: 540px;
  width: 100%;
  color: var(--white);
  border-radius: 10px;
  padding: 20px 15px 40px;
}
.med5-4__col-body_m {
  background-color: #f0a78f;
}
.med5-4__col-body_d {
  background-color: #a3a3a3;
}
.med5-4__col-inner {
  max-width: 430px;
  margin-inline: auto;
}
.med5-4__col-title {
  font-size: clamp(1.375rem, 1.1898148148rem + 0.7407407407vw, 1.875rem);
  line-height: 1.2;
  text-align: center;
  border-bottom: 3px dashed var(--white);
  padding-bottom: clamp(0.75rem, 0.6342592593rem + 0.462962963vw, 1.0625rem);
}
.med5-4__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: 8px;
  margin-top: 20px;
}
.med5-4__item {
  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: clamp(0.3125rem, 0.1967592593rem + 0.462962963vw, 0.625rem);
     -moz-column-gap: clamp(0.3125rem, 0.1967592593rem + 0.462962963vw, 0.625rem);
          column-gap: clamp(0.3125rem, 0.1967592593rem + 0.462962963vw, 0.625rem);
  font-size: clamp(1rem, 0.9074074074rem + 0.3703703704vw, 1.25rem);
  line-height: 2;
  white-space: pre-line;
}
.med5-4__item::before {
  content: "";
  min-width: clamp(0.875rem, 0.7361111111rem + 0.5555555556vw, 1.25rem);
  aspect-ratio: 1/1;
  background-color: var(--white);
  border-radius: 50%;
  margin-top: clamp(0rem, -0.2314814815rem + 0.9259259259vw, 0.625rem);
}

.med5-5__subinner {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med5-5__subtitle {
  background-color: #8cd5f1;
}
.med5-5__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med5-5__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med6_pos {
  margin-top: clamp(4.375rem, -0.0833333333rem + 17.8333333333vw, 11.0625rem);
}

.med6-1__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med6-2__faq {
  max-width: 1140px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}

.med7__col {
  margin-top: clamp(1.875rem, 0.625rem + 5vw, 3.75rem);
}

.med7-1__items {
  max-width: 1140px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px clamp(1.25rem, -3.2105568445rem + 9.2807424594vw, 3.75rem);
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .med7-1__items {
    max-width: 480px;
    grid-template-columns: 1fr;
  }
}
.med7-1__item-title {
  background-color: #8cd5f1;
  color: var(--white);
  font-size: clamp(1.125rem, 0.9036764706rem + 0.8235294118vw, 1.5625rem);
  line-height: 1.6;
  text-align: center;
  border-radius: 10px;
  margin-top: 20px;
  padding: clamp(0.625rem, 0.4669117647rem + 0.5882352941vw, 0.9375rem) 20px;
}
.med7-1__text {
  margin-top: clamp(0.625rem, -0.0543478261rem + 2.7173913043vw, 1.25rem);
}

.med7-2__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med7-3__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med7-4__faq {
  max-width: 1140px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}

.med8-1__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med8-2__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: 40px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med8-2__item {
  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: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: clamp(1.25rem, 0.8333333333rem + 1.6666666667vw, 1.875rem) 20px;
}
@media (max-width: 1000px) {
  .med8-2__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;
  }
}
.med8-2__item_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: 1000px) {
  .med8-2__item_r {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.med8-2__box {
  max-width: 640px;
  width: 100%;
}
@media (max-width: 1000px) {
  .med8-2__box {
    max-width: 700px;
  }
}
.med8-2__item-title {
  background-color: #8cd5f1;
  color: var(--white);
  font-size: clamp(1.125rem, 0.9036764706rem + 0.8235294118vw, 1.5625rem);
  line-height: 1.6;
  text-align: center;
  border-radius: 10px;
  padding: clamp(0.625rem, 0.4669117647rem + 0.5882352941vw, 0.9375rem) 20px;
}
.med8-2__text {
  margin-top: clamp(1.25rem, 0.4166666667rem + 3.3333333333vw, 2.5rem);
}
.med8-2__img {
  max-width: 600px;
  width: 100%;
}

.med8-3__col-1 {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med8-3__col-2 {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
.med8-3__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-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}
@media (max-width: 768px) {
  .med8-3__items {
    max-width: 370px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 30px;
    margin-inline: auto;
  }
}
.med8-3__item {
  max-width: 200px;
  width: 100%;
  position: relative;
  background-color: #8cd5f1;
  color: var(--white);
  border-radius: 20px;
  padding: 20px 0;
}
.med8-3__item:not(:last-of-type)::after {
  content: "";
  width: clamp(1.25rem, -4.6875rem + 9.5vw, 2.4375rem);
  aspect-ratio: 39/70;
  position: absolute;
  top: 50%;
  right: calc(clamp(2rem, -11.125rem + 21vw, 4.625rem) * -1);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/icon-med-8-3.svg) no-repeat 0 0/contain;
}
@media (max-width: 1000px) {
  .med8-3__item:not(:last-of-type)::after {
    right: calc(clamp(1.625rem, 0.3766233766rem + 2.5974025974vw, 2rem) * -1);
  }
}
@media (max-width: 768px) {
  .med8-3__item:nth-last-of-type(3)::after {
    top: inherit;
    right: inherit;
    bottom: -37px;
    left: -26px;
    -webkit-transform: translateY(0) rotate(135deg);
        -ms-transform: translateY(0) rotate(135deg);
            transform: translateY(0) rotate(135deg);
  }
}
.med8-3__number {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-size: 50px;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
.med8-3__item-text {
  text-align: center;
  margin-top: 20px;
}
.med8-3__text {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med8-4__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med9-1__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med9-2__col {
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
}

.med9-3__items {
  max-width: 1140px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px clamp(1.25rem, -11.25rem + 20vw, 3.75rem);
  margin-top: clamp(1.875rem, 1.4583333333rem + 1.6666666667vw, 2.5rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .med9-3__items {
    max-width: 540px;
    grid-template-columns: 1fr;
  }
}
.med9-3__item {
  display: grid;
  place-items: center;
  background-color: #8cd5f1;
  color: var(--white);
  font-size: clamp(1rem, 0.875rem + 0.5vw, 1.25rem);
  line-height: 1.6;
  text-align: center;
  border-radius: 10px;
  padding: clamp(0.625rem, 0.4375rem + 0.75vw, 1rem) 0;
}
.med9-3__br {
  display: none;
}
@media (max-width: 1200px) {
  .med9-3__br {
    display: block;
  }
}
@media (max-width: 768px) {
  .med9-3__br {
    display: none;
  }
}
@media (max-width: 500px) {
  .med9-3__br {
    display: block;
  }
}

/*###################################################################
  price（page）
###################################################################*/
.price1_pos {
  margin-top: clamp(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
.price1__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) {
  .price1__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.price1__items {
  max-width: 955px;
  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.5rem, 1.4583333333rem + 4.1666666667vw, 4.0625rem);
  margin-top: clamp(2.5rem, 1.5416666667rem + 3.8333333333vw, 3.9375rem);
  margin-inline: auto;
}
.price1__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-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.125rem, 0.8333333333rem + 1.1666666667vw, 1.5625rem);
  line-height: 1;
}
.price1__item-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;
  row-gap: clamp(0.5rem, 0.2083333333rem + 1.1666666667vw, 0.9375rem);
  white-space: pre-line;
  margin-right: clamp(1.25rem, -1.25rem + 10vw, 5rem);
}
.price1__s {
  font-size: clamp(0.9375rem, 0.7291666667rem + 0.8333333333vw, 1.25rem);
}
.price1__line {
  height: 2px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--text);
}
.price1__fee {
  min-width: clamp(5.625rem, 2.125rem + 14vw, 10.875rem);
  text-align: right;
}
.price1__fee_l {
  min-width: clamp(10.625rem, 6.0833333333rem + 18.1666666667vw, 17.4375rem);
}
.price1__title-2 {
  margin-top: clamp(4.375rem, 2.25rem + 8.5vw, 7.5625rem);
}

/*###################################################################
  access（page）
###################################################################*/
.access1_pos {
  margin-top: clamp(4.375rem, 2.5833333333rem + 7.1666666667vw, 7.0625rem);
}
.access1__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) {
  .access1__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.access1__bottom {
  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: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media (max-width: 1000px) {
  .access1__bottom {
    -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: 42px;
  }
}
.access1__calendar {
  max-width: clamp(21.875rem, -37.8080543933rem + 95.3974895397vw, 36.125rem);
  width: 100%;
}
@media (max-width: 1000px) {
  .access1__calendar {
    max-width: 560px;
  }
}
.access1__info {
  max-width: 621px;
  width: 100%;
  margin-top: 48px;
}
@media (max-width: 1000px) {
  .access1__info {
    margin-top: 0;
  }
}

.access2_pos {
  margin-top: clamp(4.375rem, 2.3333333333rem + 8.1666666667vw, 7.4375rem);
}
.access2__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) {
  .access2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.access2__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(0.625rem, -0.5718085106rem + 4.7872340426vw, 3.4375rem);
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.access2__item {
  overflow: hidden;
  border-radius: clamp(0.4375rem, -0.1742021277rem + 2.4468085106vw, 1.875rem);
}

@media (hover: hover) and (pointer: fine) {
  .access2__link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .access2__link:hover .access2__img, .access2__link:focus .access2__img {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .access2__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;
  }
}
.access3_pos {
  margin-top: clamp(4.375rem, 2.2916666667rem + 8.3333333333vw, 7.5rem);
}
.access3__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) {
  .access3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.access3__items {
  max-width: 1132px;
  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: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  margin-top: clamp(1.875rem, 0.625rem + 5vw, 3.75rem);
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .access3__items {
    max-width: 456px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: clamp(1.25rem, 1.0416666667rem + 0.8333333333vw, 1.5625rem);
  }
}
.access3__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-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  font-size: clamp(1.125rem, 0.7840909091rem + 1.3636363636vw, 1.875rem);
  line-height: 1.2;
}
.access3__item::before {
  content: "";
  width: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  aspect-ratio: 1/1;
  background-color: var(--main);
  border-radius: 50%;
}
.access3__map {
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 3.75rem);
}
.access3__gmap {
  width: 100%;
  height: clamp(28.125rem, 21.875rem + 25vw, 37.5rem);
}

/*###################################################################
  news（page）
###################################################################*/
.news-list_pos {
  margin-top: clamp(5rem, -0.5658284024rem + 20.7100591716vw, 9.375rem);
}
.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);
  margin-top: 100px;
}
@media (max-width: 600px) {
  .news-list__items {
    row-gap: 50px;
    margin-top: 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(--white);
  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(5rem, -0.5658284024rem + 20.7100591716vw, 9.375rem);
}
.news-post__inner {
  max-width: 840px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 150px;
}
@media (max-width: 768px) {
  .news-post__inner {
    padding: 0 clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) 150px;
  }
}
.news-post__bg {
  background-color: var(--white);
  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(--white);
  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(5rem, 2.0833333333rem + 11.6666666667vw, 9.375rem);
}
.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.5;
}
.page-404__text {
  margin-top: clamp(2.5rem, 0.6140350877rem + 7.0175438596vw, 5rem);
}
.page-404__button {
  margin-top: 100px;
  margin-inline: auto;
}

@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制御用）
###################################################################*/