@charset "UTF-8";
/*###################################################################
※※※※ 直接編集禁止 ※※※※
このCSSファイルはSassから生成されていますので直接編集しないようご注意ください。
  編集は拡張子「.scss」ファイルを編集して当ファイルにコンパイルしてください。
  もしくは別途cssファイルを作成して読み込ませてください。
###################################################################*/
:root {
  --base: #fff;
  --base2: #eaf7ff;
  --main: #7899b3;
  --accent: #3a54b4;
  --accent-l: #bde6ff;
  --accent-d: #0572b5;
  --text: #333;
  --text2: #4b4b4b;
  --ls: 0.1em;
}

/*###################################################################
  base（共通設定）
###################################################################*/
* {
  letter-spacing: var(--ls);
}

/*----------------------------------
  html
----------------------------------*/
html {
  scroll-behavior: smooth;
}

[id] {
  scroll-margin-top: 100px;
}
@media (max-width: 768px) {
  [id] {
    scroll-margin-top: 0;
  }
}

body {
  color: var(--text);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  line-height: 2.2222222222;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

img {
  width: 100%;
  height: auto;
}

/*###################################################################
  animation（共通設定）
###################################################################*/
/*----------------------------------
  zoom
----------------------------------*/
@-webkit-keyframes zoom {
  0% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes zoom {
  0% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes zoom-sp {
  0% {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes zoom-sp {
  0% {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/*----------------------------------
  無限ループスライダー
----------------------------------*/
@-webkit-keyframes infinity-scroll {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes infinity-scroll {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
/*###################################################################
  header（module）
###################################################################*/
.header {
  position: relative;
  background-color: var(--base);
  z-index: 10;
}
.header_sticky {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
}
@media (max-width: 768px) {
  .header_sticky {
    background-color: transparent;
  }
}
.header_sticky .header__top {
  display: none;
}
@media (max-width: 768px) {
  .header_sticky .header__top {
    display: block;
  }
}
.header_sticky .header__inner {
  padding-top: 20px;
}
@media (max-width: 768px) {
  .header_sticky .header__inner {
    padding-top: 0;
  }
}
@media (max-width: 768px) {
  .header_sticky .header__logo {
    display: none;
  }
}
.header__inner {
  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: 28px;
  padding-right: clamp(0.75rem, -4.0186128527rem + 5.9561128527vw, 1.9375rem);
  padding-left: clamp(0.75rem, -4.0186128527rem + 5.9561128527vw, 1.9375rem);
}
@media (max-width: 768px) {
  .header__inner {
    padding-right: clamp(0.5rem, 0.0833333333rem + 1.3888888889vw, 0.75rem);
  }
}
.header__top {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
}
.header__address {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: clamp(0.5rem, 0.029721135rem + 0.9784735812vw, 0.8125rem);
     -moz-column-gap: clamp(0.5rem, 0.029721135rem + 0.9784735812vw, 0.8125rem);
          column-gap: clamp(0.5rem, 0.029721135rem + 0.9784735812vw, 0.8125rem);
  font-size: clamp(0.9375rem, 0.655332681rem + 0.5870841487vw, 1.125rem);
  line-height: 1.75;
  padding-top: 35px;
  padding-left: clamp(0rem, -2.7607758621rem + 3.4482758621vw, 0.6875rem);
}
@media (max-width: 768px) {
  .header__address {
    display: none;
  }
}
.header__address::before {
  content: "";
  min-width: clamp(1.125rem, 0.748776908rem + 0.782778865vw, 1.375rem);
  aspect-ratio: 22/33;
  background-color: var(--text2);
  -webkit-mask-image: url(../images/icon-map.svg);
          mask-image: url(../images/icon-map.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.header__logo {
  max-width: clamp(5.5625rem, -4.1252446184rem + 20.156555773vw, 12rem);
}
@media (max-width: 768px) {
  .header__logo {
    max-width: clamp(5.625rem, 1.4583333333rem + 13.8888888889vw, 8.125rem);
    grid-area: 1/2/2/3;
  }
}
.header__contact {
  max-width: 618px;
  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-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  margin-left: auto;
  padding-top: 6px;
}
@media (max-width: 1600px) {
  .header__contact {
    -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: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    row-gap: 10px;
    padding-top: 5px;
  }
}
@media (max-width: 768px) {
  .header__contact {
    display: none;
  }
}
.header__tel {
  max-width: 331px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 6px;
  line-height: 1;
  margin-top: 13px;
}
@media (max-width: 1600px) {
  .header__tel {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin-top: 0;
  }
}
.header__tel-text {
  font-size: 1.25rem;
}
@media (max-width: 1600px) {
  .header__tel-text {
    font-size: clamp(0.875rem, 0.498776908rem + 0.782778865vw, 1.125rem);
  }
}
.header__tel-link {
  font-size: 2.25rem;
  line-height: 1;
}
@media (max-width: 1600px) {
  .header__tel-link {
    font-size: clamp(1.375rem, 0.4344422701rem + 1.9569471624vw, 2rem);
  }
}
.header__tel-s {
  font-size: 1.625rem;
}
@media (max-width: 1600px) {
  .header__tel-s {
    font-size: clamp(1.0625rem, 0.498165362rem + 1.1741682975vw, 1.4375rem);
  }
}
.header__inquiry {
  max-width: clamp(13.625rem, 8.1697651663rem + 11.3502935421vw, 17.25rem);
  width: 100%;
  height: 82px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: clamp(0.75rem, 0.373776908rem + 0.782778865vw, 1rem);
     -moz-column-gap: clamp(0.75rem, 0.373776908rem + 0.782778865vw, 1rem);
          column-gap: clamp(0.75rem, 0.373776908rem + 0.782778865vw, 1rem);
  position: relative;
  background-color: var(--accent);
  color: var(--base);
  font-size: clamp(1.25rem, 0.685665362rem + 1.1741682975vw, 1.625rem);
  padding-left: 29px;
}
@media (max-width: 1600px) {
  .header__inquiry {
    height: clamp(2.875rem, 0.4295499022rem + 5.0880626223vw, 4.5rem);
  }
}
/*.header__inquiry::before {
  content: "";
  min-width: clamp(1.25rem, 0.497553816rem + 1.5655577299vw, 1.75rem);
  aspect-ratio: 28/20;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}*/
.header__inquiry::after {
  content: "";
  width: 27px;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--main);
}

@media (hover: hover) and (pointer: fine) {
  .header__tel-link {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .header__tel-link:hover, .header__tel-link:focus {
    color: var(--accent);
  }
  .header__inquiry {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .header__inquiry:hover, .header__inquiry:focus {
    background-color: var(--main);
  }
  .header__inquiry:hover::after, .header__inquiry:focus::after {
    background-color: var(--accent);
  }
  .header__inquiry::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
@media (max-width: 768px) {
  .header-nav {
    display: none;
  }
}
.header-nav__inner {
  max-width: 1200px;
  margin-inline: auto;
}
.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;
}
.header-nav__item {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  position: relative;
  padding-bottom: 23px;
}
.header-nav__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: 20px;
  position: absolute;
  top: calc(50% - 12px);
  right: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: var(--text);
}
.header-nav__link {
  display: block;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(0.9375rem, 0.467221135rem + 0.9784735812vw, 1.25rem);
  font-weight: 600;
  line-height: 1;
  text-align: center;
}
.header-nav__link::after {
  content: "";
  width: 3px;
  height: 11px;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: var(--main);
  opacity: 0;
}
.header-nav__link.current::after {
  opacity: 1;
}
.header-nav__submenu {
  width: clamp(21.4375rem, 9.8686399217rem + 24.0704500978vw, 29.125rem);
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
  position: absolute;
  top: clamp(1rem, 0.623776908rem + 0.782778865vw, 1.25rem);
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
  padding-top: clamp(0.5rem, -0.5346135029rem + 2.1526418787vw, 1.1875rem);
}
.header-nav__subitems {
  display: grid;
  grid-template-columns: clamp(10.5rem, 7.1139921722rem + 7.0450097847vw, 12.75rem) 1fr;
  gap: clamp(0.5625rem, 0.374388454rem + 0.3913894325vw, 0.6875rem) clamp(0.9375rem, -0.9436154599rem + 3.9138943249vw, 2.1875rem);
  background-color: var(--accent-l);
  padding: clamp(0.625rem, 0.060665362rem + 1.1741682975vw, 1rem) clamp(0.625rem, -1.0680039139rem + 3.5225048924vw, 1.75rem) 2px clamp(0.625rem, -0.5977250489rem + 2.5440313112vw, 1.4375rem);
}
.header-nav__subitem {
  border-bottom: 1px solid #9d9d9d;
  padding-bottom: clamp(0.5rem, -0.158390411rem + 1.3698630137vw, 0.9375rem);
}
.header-nav__subitem_last {
  border: none;
}
.header-nav__sublink {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
  font-size: clamp(0.875rem, 0.498776908rem + 0.782778865vw, 1.125rem);
  line-height: 1;
  padding-left: 7px;
}
.header-nav__sublink::before {
  content: "";
  width: clamp(0.375rem, 0.092832681rem + 0.5870841487vw, 0.5625rem);
  aspect-ratio: 9/10;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
          clip-path: polygon(0 0, 0% 100%, 100% 50%);
  background-color: var(--text);
  margin-top: clamp(0.0625rem, -0.125611546rem + 0.3913894325vw, 0.1875rem);
}

@media (hover: hover) and (pointer: fine) {
  .header-nav__item:focus-within .header-nav__submenu {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  .header-nav__link {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .header-nav__link::after {
    -webkit-transition: opacity 0.4s;
    transition: opacity 0.4s;
  }
  .header-nav__link:hover, .header-nav__link:focus {
    color: var(--accent);
  }
  .header-nav__link:hover::after, .header-nav__link:focus::after {
    opacity: 1;
  }
  .header-nav__link:hover + .header-nav__submenu, .header-nav__link:focus + .header-nav__submenu {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  .header-nav__sublink {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .header-nav__sublink:hover, .header-nav__sublink:focus {
    color: var(--accent);
  }
  .header-nav__sublink:hover::before, .header-nav__sublink:focus::before {
    -webkit-transform: translateX(3px);
        -ms-transform: translateX(3px);
            transform: translateX(3px);
    background-color: var(--accent);
  }
  .header-nav__sublink::before {
    -webkit-transition: background-color 0.4s, -webkit-transform 0.4s;
    transition: background-color 0.4s, -webkit-transform 0.4s;
    transition: transform 0.4s, background-color 0.4s;
    transition: transform 0.4s, background-color 0.4s, -webkit-transform 0.4s;
  }
  .header-nav__submenu {
    -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__submenu:hover, .header-nav__submenu:focus {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
}
/*###################################################################
  footer（module）
###################################################################*/
@media (max-width: 768px) {
  .footer {
    padding-bottom: 62px;
  }
}
.footer__copy {
  height: 70px;
  display: grid;
  place-items: center;
  background-color: var(--accent-d);
  color: var(--base);
  font-size: 1.125rem;
}

.footer1 {
  position: relative;
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
}
@media (max-width: 768px) {
  .footer1 {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}
.footer1::after {
  content: "";
  width: 100%;
  height: 363px;
  position: absolute;
  bottom: 0;
  background-color: var(--base);
}
@media (max-width: 768px) {
  .footer1::after {
    display: none;
  }
}
.footer1__inner {
  max-width: 1748px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  position: relative;
  z-index: 1;
  padding-top: 175px;
}
@media (max-width: 1280px) {
  .footer1__inner {
    padding: clamp(5.625rem, 2.4375rem + 10.625vw, 10.9375rem) clamp(1.71875rem, 1.4583333333rem + 0.8680555556vw, 1.875rem) 0;
  }
}
@media (max-width: 768px) {
  .footer1__inner {
    padding-bottom: 69px;
  }
}
@media (max-width: 479px) {
  .footer1__inner {
    padding: 90px clamp(0.9375rem, -3.0181962025rem + 15.8227848101vw, 1.71875rem) 69px;
  }
}
.footer1__logo {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 11px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1;
  --ls: 0.1em;
  margin-inline: auto;
}
.footer1__logo::before {
  content: "";
  width: 45px;
  aspect-ratio: 45/57;
  background-color: var(--text);
  -webkit-mask-image: url(../images/icon-teeth.svg);
          mask-image: url(../images/icon-teeth.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.footer1__address {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 13px;
     -moz-column-gap: 13px;
          column-gap: 13px;
  font-size: 1.125rem;
  line-height: 1.75;
  --ls: 0.1em;
  margin-top: clamp(2.6875rem, 2.375rem + 1.0416666667vw, 2.875rem);
}
.footer1__address::before {
  content: "";
  min-width: 22px;
  aspect-ratio: 22/33;
  background-color: var(--text2);
  -webkit-mask-image: url(../images/icon-map.svg);
          mask-image: url(../images/icon-map.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.footer1__group-outer {
  max-width: 1286px;
  margin-top: clamp(2.6875rem, 0.8125rem + 6.25vw, 3.8125rem);
  margin-inline: auto;
}
.footer1__group {
  max-width: 1140px;
  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) {
  .footer1__group {
    -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: 81px;
  }
}
.footer1__contact {
  max-width: 366px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: calc(clamp(-2.3125rem, -4.1875rem + 6.25vw, -1.1875rem) * -1);
  margin-top: 6px;
}
.footer1__tel {
  height: 84px;
  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: 8px;
  background-color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  line-height: 1;
  border: 2px solid var(--main);
  padding-top: 8px;
}
.footer1__tel-text {
  font-size: 1.25rem;
  --ls: 0.1em;
}
.footer1__tel-number {
  font-size: 2.25rem;
  --ls: 0.1em;
}
.footer1__tel-s {
  font-size: 1.625rem;
}
.footer1__inquiry {
  height: 82px;
  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: 27px;
     -moz-column-gap: 27px;
          column-gap: 27px;
  position: relative;
  background-color: var(--accent);
  color: var(--base);
  font-size: 1.625rem;
  --ls: 0.1em;
}
/*.footer1__inquiry::before {
  content: "";
  min-width: 28px;
  aspect-ratio: 28/20;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}*/
.footer1__inquiry::after {
  content: "";
  width: 27px;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--main);
}
.footer1__info {
  max-width: clamp(26.5rem, 7.9583333333rem + 61.8055555556vw, 37.625rem);
  width: 100%;
}
.footer1__table-wrapper {
  background-color: var(--base);
  padding: clamp(0.75rem, 0.0208333333rem + 2.4305555556vw, 1.1875rem) clamp(0.5rem, -0.0208333333rem + 1.7361111111vw, 0.8125rem) clamp(1.125rem, 0.6041666667rem + 1.7361111111vw, 1.4375rem);
}
.footer1__table {
  width: 100%;
  color: var(--text2);
  font-size: clamp(1rem, 0.2927083333rem + 2.3576388889vw, 1.424375rem);
  font-weight: 500;
  line-height: 1;
}
.footer1__table * {
  --ls: 0.06em;
}
.footer1__tr-top {
  border-bottom: 1px solid #9d9d9d;
}
.footer1__th-weekday {
  text-align: center;
}
.footer1__left {
  width: 33.1%;
  font-weight: 500;
  padding-left: clamp(0.4375rem, 0.125rem + 1.0416666667vw, 0.625rem);
}
.footer1__top {
  font-weight: 500;
  padding-bottom: 11px;
}
.footer1__holiday {
  width: 17%;
}
.footer1__td {
  color: var(--main);
  text-align: center;
}
.footer1__am {
  padding-top: clamp(0.8125rem, -0.125rem + 3.125vw, 1.375rem);
}
.footer1__pm {
  padding-top: clamp(1.5rem, 0.3541666667rem + 3.8194444444vw, 2.1875rem);
}
.footer1__note {
  color: var(--text2);
  font-size: 1.125rem;
  line-height: 1.5;
  --ls: 0.06em;
  margin-top: clamp(0.4375rem, -0.5rem + 3.125vw, 1rem);
}
.footer1__map {
  margin-top: clamp(5.1875rem, -0.5817307692rem + 19.2307692308vw, 11.4375rem);
}
.footer1__gmap {
  width: 100%;
  height: clamp(23.5rem, 17.3846153846rem + 20.3846153846vw, 30.125rem);
}

@media (hover: hover) and (pointer: fine) {
  .footer1__logo {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .footer1__logo::before {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .footer1__logo:hover {
    color: var(--accent);
  }
  .footer1__logo:hover::before {
    background-color: var(--accent);
  }
  .footer1__tel {
    -webkit-transition: background-color 0.4s, color 0.4s;
    transition: background-color 0.4s, color 0.4s;
  }
  .footer1__tel:hover {
    background-color: var(--main);
    color: var(--base);
  }
  .footer1__inquiry {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .footer1__inquiry:hover {
    background-color: var(--main);
  }
  .footer1__inquiry:hover::after {
    background-color: var(--accent);
  }
  .footer1__inquiry::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
.footer2 {
  position: relative;
}
.footer2 * {
  --ls: 0.06em;
}
.footer2_pos {
  margin-top: clamp(2.375rem, -0.9134615385rem + 10.9615384615vw, 5.9375rem);
}
.footer2__inner {
  max-width: 1532px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 110px;
}
@media (max-width: 768px) {
  .footer2__inner {
    padding: 0 clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) clamp(4rem, 1.3461538462rem + 8.8461538462vw, 6.875rem);
  }
}
.footer2__col {
  max-width: 1517px;
  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) {
  .footer2__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: 34px;
  }
}
.footer2__img {
  max-width: clamp(26.8125rem, -14.6797279793rem + 66.3212435233vw, 50.8125rem);
  width: 100%;
}
@media (max-width: 1000px) {
  .footer2__img {
    max-width: 700px;
  }
}
.footer2__access {
  max-width: 658px;
  width: 100%;
}
.footer2__access-title {
  max-width: clamp(26.5rem, 4rem + 75vw, 40rem);
  height: 54px;
  display: grid;
  place-items: center;
  position: relative;
  background-color: #3b7eb2;
  color: var(--base);
  font-size: 1.125rem;
  --ls: 0.06em;
  margin-inline: auto;
}
.footer2__access-title::after {
  content: "";
  width: 146px;
  height: 100%;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  top: 0;
  right: 0;
  background-color: #5b95c2;
}
.footer2__items {
  max-width: 658px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  margin-top: clamp(2.9375rem, 1.4920454545rem + 4.8181818182vw, 6.25rem);
  margin-inline: auto;
}
@media (max-width: 600px) {
  .footer2__items {
    max-width: 470px;
  }
}
.footer2__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  position: relative;
}
.footer2__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: clamp(6.6875rem, 6.1666666667rem + 1.7361111111vw, 7rem);
  position: absolute;
  bottom: clamp(0.3125rem, 1.9791666667rem - 5.5555555556vw, -0.6875rem);
  right: 0;
  background-color: #9d9d9d;
}
.footer2__icon {
  margin-inline: auto;
}
.footer2__icon_1 {
  width: clamp(2.5625rem, 1.2083333333rem + 4.5138888889vw, 3.375rem);
  aspect-ratio: 54/42;
  -webkit-transform: translateX(-8px);
      -ms-transform: translateX(-8px);
          transform: translateX(-8px);
  background: url(../images/icon-car.svg) no-repeat 0 0/contain;
  margin-top: auto;
}
.footer2__icon_2 {
  width: clamp(2rem, 0.8541666667rem + 3.8194444444vw, 2.6875rem);
  aspect-ratio: 43/58;
  background: url(../images/icon-train.svg) no-repeat 0 0/contain;
}
.footer2__icon_3 {
  width: clamp(2.4375rem, 1.0833333333rem + 4.5138888889vw, 3.25rem);
  aspect-ratio: 1/1;
  background: url(../images/icon-bus.svg) no-repeat 0 0/contain;
  margin-top: auto;
}
.footer2__item-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--text2);
  font-size: clamp(0.9375rem, 0.6133419689rem + 0.518134715vw, 1.125rem);
  line-height: 1.75;
  white-space: pre-line;
  margin-top: clamp(0.625rem, 0.1041666667rem + 1.7361111111vw, 0.9375rem);
}
@media (max-width: 1000px) {
  .footer2__item-text {
    font-size: clamp(1rem, 0.7916666667rem + 0.6944444444vw, 1.125rem);
  }
}
@media (max-width: 479px) {
  .footer2__item-text {
    font-size: clamp(0.875rem, 0.2420886076rem + 2.5316455696vw, 1rem);
  }
}
.footer2__item-text_1 {
  padding-right: 10px;
}
@media (max-width: 600px) {
  .footer2__item-text_1 {
    padding-right: clamp(0.75rem, -1.4651898734rem + 8.8607594937vw, 1.1875rem);
  }
}
.footer2__item-text_2 {
  margin-inline: auto;
}
.footer2__item-text_3 {
  padding-left: clamp(0.6875rem, -1.4735535406rem + 3.4542314335vw, 1.9375rem);
}
@media (max-width: 1000px) {
  .footer2__item-text_3 {
    padding-left: clamp(1.0625rem, -0.3958333333rem + 4.8611111111vw, 1.9375rem);
  }
}
.footer2__br {
  display: none;
}
@media (max-width: 600px) {
  .footer2__br {
    display: block;
  }
}
.footer2__nav {
  margin-top: clamp(4.4375rem, 2.4182692308rem + 6.7307692308vw, 6.625rem);
}

.footer-nav {
  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: 59px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(0.9375rem, 0.3799303944rem + 1.1600928074vw, 1.25rem);
  font-weight: 600;
  line-height: 1;
}
@media (max-width: 768px) {
  .footer-nav {
    font-size: 1.125rem;
  }
}
.footer-nav__items {
  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-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .footer-nav__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 32px;
  }
}
.footer-nav__items_1 {
  max-width: 1134px;
}
@media (max-width: 768px) {
  .footer-nav__items_1 {
    max-width: 420px;
  }
}
.footer-nav__items_1 * {
  --ls: 0.1em;
}
.footer-nav__items_2 {
  /*max-width: 1157px;*/
  max-width: 1000px;
}
@media (max-width: 768px) {
  .footer-nav__items_2 {
    display: none;
  }
}
.footer-nav__items_3 {
  /*max-width: 940px;*/
  max-width: 800px;
}
@media (max-width: 768px) {
  .footer-nav__items_3 {
    display: none;
  }
}
.footer-nav__item {
  position: relative;
}
.footer-nav__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  right: calc(clamp(0.625rem, -1.9398201856rem + 5.3364269142vw, 2.0625rem) * -1);
  background-color: var(--text);
}
@media (max-width: 768px) {
  .footer-nav__item:not(:last-of-type)::after {
    content: none;
  }
}
.footer-nav__item_3:not(:last-of-type)::after {
  right: calc(clamp(1.5rem, 1.4614849524rem + 0.0801353397vw, 2.0625rem) * -1);
}

@media (hover: hover) and (pointer: fine) {
  .footer-nav__link {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .footer-nav__link:hover, .footer-nav__link:focus {
    color: var(--accent);
  }
}
.footer-page-top {
  width: clamp(3.75rem, 2.5597826087rem + 3.9673913043vw, 6.03125rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  position: absolute;
  bottom: 31px;
  right: 20px;
  z-index: 5;
  background-color: var(--accent-l);
  border-radius: 50%;
}
@media (max-width: 768px) {
  .footer-page-top {
    display: none;
  }
}
.footer-page-top img {
  max-width: clamp(2.1875rem, 1.5027173913rem + 2.2826086957vw, 3.5rem);
}

@media (hover: hover) and (pointer: fine) {
  .footer-page-top {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .footer-page-top:hover {
    background-color: var(--accent);
  }
}
.bottom-nav {
  width: 100%;
  position: fixed;
  bottom: 0;
  z-index: 5;
  background-color: var(--base);
}
@media (min-width: 769px) {
  .bottom-nav {
    display: none;
  }
}
.bottom-nav__items {
  width: 100%;
  display: grid;
  grid-template-columns: 40.2083333333% 25.8333333333% 19.5833333333% 1fr;
}
.bottom-nav__item_top {
  display: grid;
  place-items: center;
}
.bottom-nav__link {
  height: 62px;
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  line-height: 1;
}
.bottom-nav__link_tel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-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: 8px;
  background-color: var(--accent-l);
}
.bottom-nav__link_mail {
  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: 6px;
  background-color: var(--accent);
  color: var(--base);
  font-size: clamp(0.84375rem, 0.4988132911rem + 1.3797468354vw, 0.911875rem);
  padding-top: 11px;
}
.bottom-nav__link_mail::before {
  content: "";
  min-width: 25px;
  aspect-ratio: 28/20;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.bottom-nav__link_mail::after {
  content: "";
  width: 0.951875rem;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--main);
}
.bottom-nav__link_map {
  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: 4px;
  background-color: #7bb9de;
  color: var(--base);
  font-size: clamp(0.84375rem, 0.4988132911rem + 1.3797468354vw, 0.911875rem);
  padding-top: 7px;
}
.bottom-nav__link_map::before {
  content: "";
  min-width: 16px;
  aspect-ratio: 22/33;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-map.svg);
          mask-image: url(../images/icon-map.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.bottom-nav__link_map::after {
  content: "";
  width: 0.951875rem;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--accent-d);
}
.bottom-nav__link_top {
  max-width: clamp(3.375rem, 0.6977848101rem + 10.7088607595vw, 3.90375rem);
  width: 100%;
  height: inherit;
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  background-color: var(--accent-l);
  border-radius: 50%;
}
.bottom-nav__link_top img {
  max-width: clamp(1.9375rem, 0.6716772152rem + 5.0632911392vw, 2.1875rem);
}
.bottom-nav__tel-text {
  font-size: clamp(0.8125rem, 0.4960443038rem + 1.2658227848vw, 0.875rem);
}
.bottom-nav__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: clamp(0.25rem, -0.3829113924rem + 2.5316455696vw, 0.375rem);
     -moz-column-gap: clamp(0.25rem, -0.3829113924rem + 2.5316455696vw, 0.375rem);
          column-gap: clamp(0.25rem, -0.3829113924rem + 2.5316455696vw, 0.375rem);
  font-size: clamp(1.0625rem, 0.1131329114rem + 3.7974683544vw, 1.25rem);
}
.bottom-nav__tel-number::before {
  content: "";
  width: clamp(0.9375rem, -0.0118670886rem + 3.7974683544vw, 1.125rem);
  aspect-ratio: 1/1;
  background-color: var(--text);
  -webkit-mask-image: url(../images/icon-tel.svg);
          mask-image: url(../images/icon-tel.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

@media (hover: hover) and (pointer: fine) {
  .bottom-nav__link {
    -webkit-transition: background-color 0.4s, color 0.4s;
    transition: background-color 0.4s, color 0.4s;
  }
  .bottom-nav__link::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .bottom-nav__link_tel:hover {
    color: var(--accent);
  }
  .bottom-nav__link_tel:hover .bottom-nav__tel-number::before {
    background-color: var(--accent);
  }
  .bottom-nav__link_mail:hover {
    background-color: var(--accent-d);
  }
  .bottom-nav__link_mail:hover::after {
    background-color: var(--accent-l);
  }
  .bottom-nav__link_map:hover {
    background-color: var(--accent-d);
  }
  .bottom-nav__link_map:hover::after {
    background-color: #7bb9de;
  }
  .bottom-nav__link_top:hover {
    background-color: var(--accent);
  }
  .bottom-nav__tel-number::before {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
/*###################################################################
  c-title（module）
###################################################################*/
.c-title-1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(1.2rem, 0.8931818182rem + 1.2272727273vw, 1.875rem);
  line-height: 1;
}
.c-title-1 * {
  --ls: 0.06em;
}
.c-title-1__jp {
  color: var(--text2);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(2rem, 1.4886363636rem + 2.0454545455vw, 3.125rem);
  font-weight: 600;
}
.c-title-1__en {
  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.68rem, 0.5061363636rem + 0.6954545455vw, 1.0625rem);
  color: var(--main);
  font-size: clamp(1.2rem, 0.8931818182rem + 1.2272727273vw, 1.875rem);
  font-weight: 500;
}
.c-title-1__en::after {
  content: "／";
  color: var(--text);
  font-size: clamp(1.6rem, 1.1909090909rem + 1.6363636364vw, 2.5rem);
}

.c-title-2 {
  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;
}
.c-title-2::before, .c-title-2::after {
  content: "";
  height: 3px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  position: relative;
  background-color: var(--main);
  margin-top: clamp(1rem, 0.6306818182rem + 1.4772727273vw, 1.8125rem);
}
.c-title-2__title {
  max-width: clamp(20.625rem, 12.4715909091rem + 32.6136363636vw, 38.5625rem);
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(1.1875rem, 0.9886363636rem + 0.7954545455vw, 1.625rem);
  color: var(--main);
  line-height: 1;
}
.c-title-2__jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.875rem, 1.3068181818rem + 2.2727272727vw, 3.125rem);
  font-weight: 600;
}
.c-title-2__en {
  font-size: clamp(1.125rem, 1.0681818182rem + 0.2272727273vw, 1.25rem);
  font-weight: 500;
  --ls: 0.14em;
}

.c-title-3 {
  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.4545454545rem + 0.6818181818vw, 1rem);
  color: var(--text2);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.625rem, 1.2272727273rem + 1.5909090909vw, 2.5rem);
  font-weight: 600;
  line-height: 1.75;
  --ls: 0.06em;
}
.c-title-3::after {
  content: "／";
  color: var(--main);
  font-size: clamp(1.625rem, 1.2272727273rem + 1.5909090909vw, 2.5rem);
  font-weight: 900;
  line-height: 1;
  --ls: 0.06em;
}

.c-title-4 {
  display: grid;
  place-items: center;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  border-top: 2px solid var(--main);
  border-bottom: 2px solid var(--main);
  padding: clamp(1rem, 0.7230113636rem + 1.1079545455vw, 1.609375rem) 0;
}

/*###################################################################
  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: 40px;
  height: 40px;
  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: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  grid-area: 1/3/2/4;
  position: relative;
  z-index: 30;
  background-color: #7bb9de;
  margin-top: 6px;
  margin-left: auto;
  padding-bottom: 5px;
}
@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(-6px) rotate(150deg);
      -ms-transform: translateY(-6px) rotate(150deg);
          transform: translateY(-6px) rotate(150deg);
}
.hamburger[aria-expanded=true] .hamburger__line::after {
  -webkit-transform: translateY(6px) rotate(-150deg);
      -ms-transform: translateY(6px) rotate(-150deg);
          transform: translateY(6px) rotate(-150deg);
}
.hamburger__line {
  width: 16px;
  height: 2px;
  display: inline-block;
  position: absolute;
  top: calc(50% - 5px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  background-color: var(--base);
}
.hamburger__line::before {
  content: "";
  width: 100%;
  height: 2px;
  display: inline-block;
  position: absolute;
  top: 6px;
  left: 0;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  background-color: var(--base);
}
.hamburger__line::after {
  content: "";
  width: 100%;
  height: 2px;
  display: inline-block;
  position: absolute;
  bottom: 6px;
  left: 0;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  background-color: var(--base);
}
.hamburger__menu {
  color: var(--base);
  font-size: 0.5625rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  --ls: -0.02em;
}

@media (hover: hover) and (pointer: fine) {
  .hamburger {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .hamburger:hover {
    background-color: var(--accent);
  }
}
/*###################################################################
  drawer（module）
###################################################################*/
.drawer {
  width: 390px;
  height: 100vh;
  -webkit-transform: translateX(390px);
      -ms-transform: translateX(390px);
          transform: translateX(390px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  background-color: var(--base);
  z-index: 15;
  overflow: auto;
  overscroll-behavior-y: contain;
  visibility: hidden;
}
.drawer[aria-hidden=false] {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  visibility: visible;
}
.drawer_position {
  position: fixed;
  top: 0;
  right: 0;
}
.drawer__inner {
  padding-bottom: 150px;
}
.drawer__top {
  width: 100%;
  height: 80px;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-color: var(--base);
  z-index: 1;
}
.drawer__nav {
  padding: 0 20px;
}
.drawer__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 30px;
}
.drawer__item {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 15px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  line-height: 1;
}
.drawer__link {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.drawer__subitems {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 15px;
}
.drawer__sublink {
  height: 40px;
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: 0.875rem;
}
.drawer__contact {
  max-width: 618px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 20px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  margin-top: 40px;
}
.drawer__tel {
  max-width: 331px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 6px;
  line-height: 1;
}
.drawer__tel-text {
  font-size: 0.875rem;
}
.drawer__tel-link {
  font-size: 1.375rem;
  line-height: 1;
}
.drawer__tel-s {
  font-size: 1.0625rem;
}
.drawer__inquiry {
  max-width: 218px;
  width: 100%;
  height: 46px;
  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: 12px;
     -moz-column-gap: 12px;
          column-gap: 12px;
  position: relative;
  background-color: var(--accent);
  color: var(--base);
  font-size: 1.25rem;
  padding-left: 29px;
}
.drawer__inquiry::before {
  content: "";
  min-width: 20px;
  aspect-ratio: 28/20;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.drawer__inquiry::after {
  content: "";
  width: 27px;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--main);
}

.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(--accent);
  }
  .drawer__sublink {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .drawer__sublink:hover, .drawer__sublink:focus {
    background-color: var(--accent);
  }
  .drawer__tel-link {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .drawer__tel-link:hover, .drawer__tel-link:focus {
    color: var(--accent);
  }
  .drawer__inquiry {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .drawer__inquiry:hover, .drawer__inquiry:focus {
    background-color: var(--main);
  }
  .drawer__inquiry:hover::after, .drawer__inquiry:focus::after {
    background-color: var(--accent);
  }
  .drawer__inquiry::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
.drawer-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  background-color: #000;
  visibility: hidden;
  opacity: 0;
  z-index: 5;
}

.is-drawer-active {
  height: 100%;
  overflow: hidden;
}
.is-drawer-active .drawer-bg {
  visibility: visible;
  opacity: 0.8;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

/*###################################################################
  hover（module）
###################################################################*/
@media (hover: hover) and (pointer: fine) {
  .op {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op:hover, .op:focus {
    opacity: 0.7;
  }
}
@media (hover: hover) and (pointer: fine) {
  .op-fn {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op-fn:hover {
    opacity: 0.7;
  }
}
@media (hover: hover) and (pointer: fine) {
  .op-im {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op-im:hover, .op-im:focus {
    opacity: 0.7 !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .op-fnim {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .op-fnim:hover {
    opacity: 0.7 !important;
  }
}
/*###################################################################
  lower（module）
###################################################################*/
.lower-mv {
  position: relative;
}
.lower-mv__inner {
  max-width: 1844px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .lower-mv__inner {
    padding: 0 clamp(0.75rem, -0.225rem + 3.25vw, 2.375rem);
  }
}
.lower-mv__bg {
  height: clamp(11.25rem, 6.9212962963rem + 17.3148148148vw, 22.9375rem);
  display: grid;
  place-content: 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 {
  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(1.0625rem, 0.7625rem + 1vw, 1.6875rem);
  color: var(--base);
  line-height: 1;
  margin-top: 15px;
}
.lower-mv__jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.875rem, 1.412037037rem + 1.8518518519vw, 3.125rem);
  font-weight: 600;
}
.lower-mv__en {
  font-size: clamp(1.25rem, 1.0185185185rem + 0.9259259259vw, 1.875rem);
  font-weight: 500;
}

/*###################################################################
  WordPressテスト環境用設定
###################################################################*/
/*###################################################################
  top（page）
###################################################################*/
.top-c * {
  --ls: 0.06em;
}
.top-c__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 30px;
  line-height: 1;
}
.top-c__jp {
  color: var(--text2);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 3.125rem;
  font-weight: 600;
}
.top-c__en {
  color: var(--main);
  font-size: 1.875rem;
  font-weight: 500;
}
.top-c__link {
  max-width: 289px;
  height: 79px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 10px;
  position: relative;
  background-color: #7799b4;
  color: var(--base);
  line-height: 1;
}
.top-c__link::after {
  content: "";
  width: 29px;
  aspect-ratio: 29/28;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--accent-d);
}
.top-c__link-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.375rem;
  font-weight: 600;
}
.top-c__link-en {
  font-weight: 500;
}
.top-c__bg {
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-c__bg {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}

.top-mv__inner {
  padding: 0 clamp(0.9375rem, 0.075rem + 2.875vw, 2.375rem);
}
.top-mv__body {
  position: relative;
}
.top-mv__box {
  max-width: clamp(23.0625rem, 14.3352272727rem + 29.0909090909vw, 47.0625rem);
  width: 100%;
  position: absolute;
  top: calc(50% - 6px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 3;
}
@media (max-width: 768px) {
  .top-mv__box {
    top: calc(50% + 2px);
  }
}
@media (max-width: 479px) {
  .top-mv__box {
    max-width: clamp(21.25rem, 12.0727848101rem + 36.7088607595vw, 23.0625rem);
  }
}
.top-mv__box-bg {
  background-color: rgba(0, 0, 0, 0.5);
  color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  padding: 43px 0 51px;
}
@media (max-width: 768px) {
  .top-mv__box-bg {
    padding: 55px 0 58px;
  }
}
.top-mv__box-bg::before, .top-mv__box-bg::after {
  content: "";
  width: 25px;
  aspect-ratio: 1/1;
  position: absolute;
  bottom: 10px;
  z-index: 1;
  border-bottom: 2px solid var(--base);
}
.top-mv__box-bg::before {
  left: 10px;
  border-left: 2px solid var(--base);
}
.top-mv__box-bg::after {
  right: 10px;
  border-right: 2px solid var(--base);
}
.top-mv__title {
  font-size: clamp(2.5rem, 2.0454545455rem + 1.5151515152vw, 3.75rem);
  text-align: center;
  white-space: pre-line;
  line-height: 1.3;
}
@media (max-width: 479px) {
  .top-mv__title {
    font-size: clamp(2.25rem, 0.9841772152rem + 5.0632911392vw, 2.5rem);
  }
}
.top-mv__title::before, .top-mv__title::after {
  content: "";
  width: 25px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 10px;
  z-index: 1;
  border-top: 2px solid var(--base);
}
.top-mv__title::before {
  left: 10px;
  border-left: 2px solid var(--base);
}
.top-mv__title::after {
  right: 10px;
  border-right: 2px solid var(--base);
}
.top-mv__title_wrap {
  white-space: nowrap;
}
.top-mv__text {
  font-size: clamp(1.125rem, 0.8522727273rem + 0.9090909091vw, 1.875rem);
  line-height: 1.75;
  text-align: center;
  white-space: pre-line;
  margin-top: 1px;
}
@media (max-width: 479px) {
  .top-mv__text {
    font-size: clamp(1rem, 0.3670886076rem + 2.5316455696vw, 1.125rem);
  }
}
.top-mv__img {
  height: 100%;
  min-height: 449px;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-mv .swiper-slide-active img,
.top-mv .swiper-slide-duplicate-active img,
.top-mv .swiper-slide-prev img {
  -webkit-animation: zoom 7s linear 0s normal both;
          animation: zoom 7s linear 0s normal both;
}
@media (max-width: 768px) {
  .top-mv .swiper-slide-active img,
  .top-mv .swiper-slide-duplicate-active img,
  .top-mv .swiper-slide-prev img {
    -webkit-animation: zoom-sp 7s linear 0s normal both;
            animation: zoom-sp 7s linear 0s normal both;
  }
}
.top-mv__address {
  display: none;
}
@media (max-width: 768px) {
  .top-mv__address {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 13px;
       -moz-column-gap: 13px;
            column-gap: 13px;
    font-size: 1rem;
    line-height: 1.75;
    --ls: 0.1em;
    margin-top: 15px;
  }
}
.top-mv__address::before {
  content: "";
  min-width: 22px;
  aspect-ratio: 22/33;
  background-color: var(--text2);
  -webkit-mask-image: url(../images/icon-map.svg);
          mask-image: url(../images/icon-map.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.top-group1 {
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-group1 {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}
.top-group1_pos {
  margin-top: calc(clamp(20.3125rem, 17.1534090909rem + 10.5303030303vw, 29rem) * -1);
}
.top-group1__inner {
  max-width: 1560px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 556px 30px 169px;
}
@media (max-width: 1000px) {
  .top-group1__inner {
    padding: clamp(26.3125rem, 23.2443181818rem + 10.2272727273vw, 34.75rem) clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) clamp(5.5rem, 0.8269230769rem + 15.5769230769vw, 10.5625rem);
  }
}
.top-group1__body {
  max-width: 1558px;
  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: 1280px) {
  .top-group1__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: 122px;
  }
}
.top-group1__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 17px;
  font-weight: 500;
  line-height: 1;
}
.top-group1__jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.875rem;
}
.top-group1__en {
  color: var(--main);
  font-size: 1.625rem;
}

.top-news {
  max-width: 756px;
  width: 100%;
}
.top-news__title {
  -webkit-transform: translateX(calc(clamp(0rem, -11.6923076923rem + 14.6153846154vw, 4.75rem) * -1));
      -ms-transform: translateX(calc(clamp(0rem, -11.6923076923rem + 14.6153846154vw, 4.75rem) * -1));
          transform: translateX(calc(clamp(0rem, -11.6923076923rem + 14.6153846154vw, 4.75rem) * -1));
}
.top-news__main-outer {
  margin-top: clamp(2.3125rem, 1.8958333333rem + 1.3888888889vw, 2.5625rem);
}
@media (max-width: 768px) {
  .top-news__main-outer {
    padding-right: clamp(0rem, -2.8481012658rem + 11.3924050633vw, 0.5625rem);
    padding-left: clamp(0rem, -4.746835443rem + 18.9873417722vw, 0.9375rem);
  }
}
.top-news__main {
  max-height: calc(clamp(-35.3125rem, -45.5208333333rem + 34.0277777778vw, -29.1875rem) * -1);
  overflow-y: auto;
  padding-right: clamp(0.5rem, 0.2916666667rem + 0.6944444444vw, 0.625rem);
}
.top-news__main::-webkit-scrollbar {
  width: 6px;
}
.top-news__main::-webkit-scrollbar-track {
  background-color: transparent;
}
.top-news__main::-webkit-scrollbar-thumb {
  background-color: var(--main);
}
.top-news__main:has(.top-news__no-post) {
  height: 100px;
  display: grid;
  place-items: center;
}
.top-news__items {
  max-width: 722px;
  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.4375rem, 0.1875rem + 4.1666666667vw, 2.1875rem);
}
.top-news__post-link {
  font-size: 1.125rem;
}
.top-news__date {
  width: 140px;
  height: 39px;
  display: grid;
  place-items: center;
  position: relative;
  background-color: var(--main);
  color: var(--base);
}
.top-news__box {
  background-color: var(--base);
  margin-top: calc(clamp(1.1875rem, 0.6666666667rem + 1.7361111111vw, 1.5rem) * -1);
  margin-left: clamp(0rem, -3.0208333333rem + 10.0694444444vw, 1.8125rem);
  padding: calc(clamp(-2.3125rem, -3.875rem + 5.2083333333vw, -1.375rem) * -1) 12px clamp(1.25rem, 0.4166666667rem + 2.7777777778vw, 1.75rem);
}
.top-news__box-inner {
  max-width: 624px;
  margin-inline: auto;
}
.top-news__post-title {
  max-width: 522px;
  line-height: 1.7777777778;
  margin-left: auto;
}
.top-news__more {
  width: 280px;
  height: 54px;
  display: grid;
  place-items: center;
  position: relative;
  background-color: var(--accent);
  color: var(--base);
  font-size: 1.125rem;
  margin-inline: auto;
}
.top-news__more::after {
  content: "";
  width: 27px;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--main);
}
.top-news__no-post {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.25rem;
  font-weight: 500;
}

@media (hover: hover) and (pointer: fine) {
  .top-news__more {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .top-news__more:hover, .top-news__more:focus {
    background-color: var(--main);
  }
  .top-news__more:hover::after, .top-news__more:focus::after {
    background-color: var(--accent);
  }
  .top-news__more::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
.top-info {
  max-width: 698px;
  width: 100%;
}
.top-info__title {
  -webkit-transform: translateX(clamp(0rem, -4.1651011561rem + 5.2023121387vw, 1.6875rem));
      -ms-transform: translateX(clamp(0rem, -4.1651011561rem + 5.2023121387vw, 1.6875rem));
          transform: translateX(clamp(0rem, -4.1651011561rem + 5.2023121387vw, 1.6875rem));
}
.top-info__body {
  margin-top: clamp(3rem, 2.1666666667rem + 2.7777777778vw, 3.5rem);
}
.top-info__table-wrapper {
  max-width: 684px;
  background-color: var(--base);
  padding: clamp(0.75rem, 0.0208333333rem + 2.4305555556vw, 1.1875rem) clamp(0.375rem, -0.3541666667rem + 2.4305555556vw, 0.8125rem) clamp(1.0625rem, 0.0208333333rem + 3.4722222222vw, 1.6875rem);
}
@media (max-width: 479px) {
  .top-info__table-wrapper {
    padding: 12px clamp(0.1875rem, -0.7618670886rem + 3.7974683544vw, 0.375rem) 17px;
  }
}
.top-info__table {
  width: 100%;
  color: var(--text2);
  font-size: clamp(1.06875rem, 0.1416666667rem + 3.0902777778vw, 1.625rem);
  font-weight: 500;
  line-height: 1;
}
.top-info__tr-top {
  border-bottom: 1px solid #9d9d9d;
}
.top-info__th-weekday {
  text-align: center;
}
.top-info__left {
  width: 33.1%;
  font-weight: 500;
  padding-left: clamp(0rem, -3.164556962rem + 12.6582278481vw, 0.625rem);
}
.top-info__top {
  font-weight: 500;
  padding-bottom: clamp(0.625rem, 0.1041666667rem + 1.7361111111vw, 0.9375rem);
}
.top-info__holiday {
  width: 17%;
}
.top-info__td {
  color: var(--main);
  text-align: center;
}
.top-info__am {
  padding-top: clamp(1rem, 0.1666666667rem + 2.7777777778vw, 1.5rem);
}
.top-info__pm {
  padding-top: clamp(1.625rem, 0.1666666667rem + 4.8611111111vw, 2.5rem);
}
.top-info__note {
  color: var(--text2);
  font-size: 1.125rem;
  line-height: 1.5;
  margin-top: calc(clamp(-0.9375rem, -1.4583333333rem + 1.7361111111vw, -0.625rem) * -1);
}
.top-info__items {
  max-width: 667px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  margin-left: auto;
  margin-top: calc(clamp(-5rem, -9.0625rem + 13.5416666667vw, -2.5625rem) * -1);
}
@media (max-width: 768px) {
  .top-info__items {
    margin-right: auto;
  }
}
@media (max-width: 630px) {
  .top-info__items {
    max-width: clamp(26.75rem, 18.95rem + 26vw, 29.1875rem);
  }
}
.top-info__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  position: relative;
}
.top-info__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: clamp(6.6875rem, 6.1666666667rem + 1.7361111111vw, 7rem);
  position: absolute;
  bottom: clamp(0.3125rem, 1.9791666667rem - 5.5555555556vw, -0.6875rem);
  right: 0;
  background-color: #9d9d9d;
}
.top-info__icon {
  margin-inline: auto;
}
.top-info__icon_1 {
  width: clamp(2.5625rem, 1.2083333333rem + 4.5138888889vw, 3.375rem);
  aspect-ratio: 54/42;
  -webkit-transform: translateX(-8px);
      -ms-transform: translateX(-8px);
          transform: translateX(-8px);
  background: url(../images/icon-car.svg) no-repeat 0 0/contain;
  margin-top: auto;
}
.top-info__icon_2 {
  width: clamp(2rem, 0.8541666667rem + 3.8194444444vw, 2.6875rem);
  aspect-ratio: 43/58;
  background: url(../images/icon-train.svg) no-repeat 0 0/contain;
}
.top-info__icon_3 {
  width: clamp(2.4375rem, 1.0833333333rem + 4.5138888889vw, 3.25rem);
  aspect-ratio: 1/1;
  background: url(../images/icon-bus.svg) no-repeat 0 0/contain;
  margin-top: auto;
}
.top-info__item-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--text2);
  font-size: clamp(1rem, 0.7916666667rem + 0.6944444444vw, 1.125rem);
  line-height: 1.75;
  white-space: pre-line;
  margin-top: clamp(0.625rem, 0.1041666667rem + 1.7361111111vw, 0.9375rem);
}
@media (max-width: 479px) {
  .top-info__item-text {
    font-size: clamp(0.875rem, 0.2420886076rem + 2.5316455696vw, 1rem);
  }
}
.top-info__item-text_1 {
  padding-right: 10px;
}
@media (max-width: 630px) {
  .top-info__item-text_1 {
    padding-right: clamp(0.75rem, -1.4651898734rem + 8.8607594937vw, 1.1875rem);
  }
}
.top-info__item-text_2 {
  margin-inline: auto;
}
.top-info__item-text_3 {
  padding-left: clamp(1.0625rem, -1.3333333333rem + 7.9861111111vw, 2.5rem);
}
.top-info__br {
  display: none;
}
@media (max-width: 630px) {
  .top-info__br {
    display: block;
  }
}

.top-catch {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.top-catch__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  z-index: -1;
}
.top-catch__bg::before {
  content: "";
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: url(../images/top-catch-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-catch-bg.webp) 1x, url(../images/top-catch-bg@2x.webp) 2x);
  background-image: image-set(url(../images/top-catch-bg.webp) 1x, url(../images/top-catch-bg@2x.webp) 2x);
}
@media (max-width: 768px) {
  .top-catch__bg::before {
    background: url(../images/top-catch-bg_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/top-catch-bg_sp.webp) 1x, url(../images/top-catch-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-catch-bg_sp.webp) 1x, url(../images/top-catch-bg_sp@2x.webp) 2x);
  }
}
.top-catch__content {
  height: clamp(28.0625rem, 17.5325rem + 35.1vw, 50rem);
  display: grid;
  place-items: center;
}
.top-catch__title {
  color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.875rem, 0.975rem + 3vw, 3.75rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  white-space: pre-line;
}
@media (max-width: 479px) {
  .top-catch__title {
    font-size: clamp(1.75rem, 1.1170886076rem + 2.5316455696vw, 1.875rem);
  }
}

@media (max-width: 768px) {
  .top-feature {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}
.top-feature_pos {
  padding-top: clamp(7.25rem, 5.4791666667rem + 5.9027777778vw, 8.3125rem);
}
.top-feature__title {
  margin-inline: auto;
}
.top-feature__body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: clamp(2.0625rem, 1.4375rem + 2.0833333333vw, 2.4375rem);
}
@media (max-width: 1680px) {
  .top-feature__body {
    grid-template-columns: clamp(18.75rem, -30.2680412371rem + 78.3505154639vw, 52rem) 1fr;
  }
}
@media (max-width: 1000px) {
  .top-feature__body {
    grid-template-columns: 1fr;
  }
}
.top-feature__pc-items {
  display: grid;
  /*grid-template-rows: repeat(3, 1fr);*/
  grid-template-rows: repeat(4, 1fr);
}
@media (max-width: 1000px) {
  .top-feature__pc-items {
    display: none;
  }
}
.top-feature__pc-item {
  display: grid;
  place-items: center;
  background-color: #f1f2f8;
  border-bottom: 1px solid var(--main);
}
.top-feature__pc-item:first-of-type {
  border-top: 1px solid var(--main);
}
.top-feature__pc-item.active {
  background-color: var(--accent-l);
}
.top-feature__pc-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: 15px;
  line-height: 1;
}
.top-feature__pc-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.875rem;
  font-weight: 600;
  --ls: 0.08em;
}
.top-feature__pc-en {
  color: var(--accent-d);
  font-size: 1.875rem;
  font-weight: 500;
}
@media (max-width: 768px) {
  .top-feature__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: 58px;
  }
}
.top-feature__item {
  width: 100%;
  min-height: 836px;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
  padding: 90px 15px 50px;
}
@media (max-width: 1000px) {
  .top-feature__item {
    min-height: inherit;
    visibility: visible;
    position: relative;
    opacity: 1;
    padding: 90px 30px 50px;
  }
}
@media (max-width: 768px) {
  .top-feature__item {
    padding: 0;
  }
}
@media (max-width: 768px) {
  .top-feature__item_1 {
    padding-bottom: 8px;
  }
}
.top-feature__item.active {
  opacity: 1;
  visibility: visible;
  position: relative;
}
.top-feature__item-inner {
  max-width: 830px;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .top-feature__title-area {
    background-color: #bde6ff;
    padding: 18px 15px 21px;
  }
}
.top-feature__item-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.375rem, 0.2788461538rem + 3.6538461538vw, 2.5625rem);
  line-height: 1;
}
.top-feature__item-jp {
  font-size: clamp(1.875rem, 1.2980769231rem + 1.9230769231vw, 2.5rem);
  font-weight: 600;
  --ls: 0.08em;
}
@media (max-width: 768px) {
  .top-feature__item-jp {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
  }
}
.top-feature__item-en {
  color: var(--accent-d);
  font-size: 1.875rem;
  font-weight: 500;
}
.top-feature__subtitle {
  font-size: clamp(1.5rem, 0.9471649485rem + 0.88365243vw, 1.875rem);
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  --ls: 0.08em;
  white-space: pre-line;
  margin-top: 12px;
}
@media (max-width: 1000px) {
  .top-feature__subtitle {
    font-size: clamp(1.125rem, 0.7788461538rem + 1.1538461538vw, 1.5rem);
    line-height: 1.75;
  }
}
@media (max-width: 768px) {
  .top-feature__subtitle {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    margin-top: 17px;
  }
}
.top-feature__br {
  display: none;
}
@media (max-width: 479px) {
  .top-feature__br {
    display: block;
  }
}
.top-feature__text {
  font-size: clamp(1rem, 0.8157216495rem + 0.29455081vw, 1.125rem);
  white-space: pre-line;
  margin-top: 14px;
}
@media (max-width: 1000px) {
  .top-feature__text {
    font-size: 1.125rem;
  }
}
@media (max-width: 768px) {
  .top-feature__text {
    max-width: 830px;
    line-height: 2.2777777778;
    margin-inline: auto;
    margin-top: 18px;
    padding: 0 27px;
  }
}
@media (max-width: 768px) {
  .top-feature__text_l {
    margin-top: 33px;
  }
}
.top-feature__img-wrapper {
  position: absolute;
  inset: 0;
  z-index: -1;
}
@media (max-width: 768px) {
  .top-feature__img-wrapper {
    position: static;
  }
}
.top-feature__img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-feature__link {
  margin-top: clamp(1.8125rem, -0.2067307692rem + 6.7307692308vw, 4rem);
  margin-inline: auto;
}
.top-feature__link_2 {
  margin-top: 24px;
}

@media (hover: hover) and (pointer: fine) {
  .top-feature__pc-item {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .top-feature__pc-item:hover {
    background-color: var(--accent-l);
  }
  .top-feature__link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .top-feature__link:hover, .top-feature__link:focus {
    background-color: var(--accent-d);
  }
  .top-feature__link:hover::after, .top-feature__link:focus::after {
    background-color: #7799b4;
  }
  .top-feature__link::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
.top-flow {
  overflow: hidden;
}
.top-flow__inner {
  max-width: 746px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 35px;
  padding-left: 35px;
  padding-top: 125px;
}
@media (max-width: 1280px) {
  .top-flow__inner {
    padding: calc(clamp(-10.8125rem, -12.6125rem + 6vw, -7.8125rem) * -1) clamp(0.9375rem, -5.3916139241rem + 25.3164556962vw, 2.1875rem) 0;
  }
}
.top-flow__text {
  font-size: clamp(1rem, 0.3670886076rem + 2.5316455696vw, 1.125rem);
  font-weight: 500;
  text-align: center;
  white-space: pre-line;
  margin-top: clamp(3.1875rem, 0.0721153846rem + 10.3846153846vw, 6.5625rem);
}
.top-flow__br {
  display: none;
}
@media (max-width: 510px) {
  .top-flow__br {
    display: block;
  }
}
.top-flow__slider {
  max-width: 1706px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 107px;
  padding-left: 107px;
  position: relative;
  margin-top: clamp(2.375rem, -0.9711538462rem + 11.1538461538vw, 6rem);
}
@media (max-width: 1280px) {
  .top-flow__slider {
    padding: 0 clamp(2.03125rem, -0.7625rem + 9.3125vw, 6.6875rem);
  }
}
.top-flow__swiper {
  overflow: visible;
}
.top-flow__slide {
  max-width: clamp(25.9375rem, 23.8375rem + 7vw, 29.4375rem);
  height: auto;
  position: relative;
  background-color: var(--base);
}
.top-flow__slide:not(:last-of-type)::after {
  content: "";
  width: clamp(1.22875rem, 0.8785rem + 1.1675vw, 1.8125rem);
  aspect-ratio: 29/101;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
          clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: 50%;
  left: calc(100% + 35px);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #3b7eb2;
}
@media (max-width: 1000px) {
  .top-flow__slide:not(:last-of-type)::after {
    left: calc(100% + 15px);
  }
}
@media (max-width: 768px) {
  .top-flow__slide:not(:last-of-type)::after {
    left: calc(100% + 6px);
  }
}
.top-flow__number {
  width: clamp(4.24375rem, 3.9025rem + 1.1375vw, 4.8125rem);
  aspect-ratio: 77/73;
  display: grid;
  place-items: center;
  position: absolute;
  top: 0;
  left: 0;
  background: #5b95c2;
}
.top-flow__number::after {
  content: "";
  width: 100%;
  aspect-ratio: 77/73;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
          clip-path: polygon(0 0, 0% 100%, 100% 0);
  position: absolute;
  inset: 0;
  background-color: #3b7eb2;
}
.top-flow__number-text {
  position: relative;
  z-index: 1;
  color: var(--base);
  font-size: clamp(3.306875rem, 3.041rem + 0.88625vw, 3.75rem);
  font-weight: 600;
  line-height: 1;
  margin-top: -8px;
}
.top-flow__box {
  padding: 24px clamp(1.875rem, 1.6875rem + 0.625vw, 2.1875rem) clamp(3.3125rem, 3.05rem + 0.875vw, 3.75rem);
}
@media (max-width: 479px) {
  .top-flow__box {
    padding: 24px clamp(1.25rem, -1.914556962rem + 12.6582278481vw, 1.875rem) 53px;
  }
}
.top-flow__box-inner {
  max-width: 398px;
  margin-inline: auto;
}
.top-flow__box-title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.653125rem, 1.52rem + 0.44375vw, 1.875rem);
  line-height: 1.75;
  text-align: center;
  border-bottom: 1px solid var(--text);
  padding-bottom: clamp(0.8125rem, 0.6625rem + 0.5vw, 1.0625rem);
}
.top-flow__box-text {
  font-size: clamp(1.1025rem, 1.014rem + 0.295vw, 1.25rem);
  line-height: 2;
  --ls: 0.04em;
  margin-top: clamp(0.6875rem, 0.6125rem + 0.25vw, 0.8125rem);
}
@media (max-width: 479px) {
  .top-flow__box-text {
    font-size: clamp(1rem, 0.4810126582rem + 2.0759493671vw, 1.1025rem);
  }
}
.top-flow__pagination {
  position: static;
  margin-top: clamp(1.875rem, -0.4875rem + 7.875vw, 5.8125rem);
}
.top-flow__pagination .swiper-pagination-bullet {
  width: clamp(0.8125rem, 0.7375rem + 0.25vw, 0.9375rem);
  height: clamp(0.8125rem, 0.7375rem + 0.25vw, 0.9375rem);
  opacity: 1;
  background-color: var(--accent-l);
  margin: 0 11px !important;
}
.top-flow__pagination .swiper-pagination-bullet-active {
  background-color: #3b7eb2;
}

.top-greet_pos {
  margin-top: clamp(3.9375rem, -2.7rem + 22.125vw, 15rem);
  padding-bottom: clamp(9.3125rem, 8.7916666667rem + 1.7361111111vw, 9.625rem);
}
.top-greet__title {
  margin-inline: auto;
}
.top-greet__pc-inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(4.75rem, 3.3653846154rem + 4.6153846154vw, 6.25rem);
}
@media (max-width: 1000px) {
  .top-greet__pc-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 99px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
  }
}
.top-greet__sp-inner {
  display: contents;
}
@media (max-width: 1000px) {
  .top-greet__sp-inner {
    max-width: 690px;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    margin-inline: auto;
    padding-right: 30px;
    padding-left: 30px;
    display: block;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  .top-greet__sp-inner {
    padding: 0 clamp(1.6875rem, 1.375rem + 1.0416666667vw, 1.875rem);
  }
}
.top-greet__box {
  max-width: 690px;
  width: 100%;
}
.top-greet__text {
  font-size: 1.125rem;
  font-weight: 500;
}
.top-greet__img-1 {
  max-width: 470px;
  margin-top: clamp(3rem, 1.6730769231rem + 4.4230769231vw, 4.4375rem);
}
@media (max-width: 1000px) {
  .top-greet__img-1 {
    margin-inline: auto;
  }
}
.top-greet__group {
  max-width: 534px;
  width: 100%;
  position: relative;
}
@media (max-width: 1000px) {
  .top-greet__img-2 {
    padding-left: 61px;
  }
}
.top-greet__name-plate {
  width: 361px;
  height: 150px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 10px;
  position: absolute;
  bottom: clamp(-4.4375rem, -10.8967551622rem + 10.3244837758vw, -2.25rem);
  left: calc(clamp(1.1875rem, -35.3534292035rem + 58.407079646vw, 13.5625rem) * -1);
  background-color: rgba(255, 255, 255, 0.8);
  line-height: 1;
  padding-top: 40px;
  padding-left: 13px;
}
@media (max-width: 1000px) {
  .top-greet__name-plate {
    bottom: -77px;
    left: 7px;
  }
}
.top-greet__name-plate::before, .top-greet__name-plate::after {
  content: "";
  width: 293px;
  aspect-ratio: 293/74;
  position: absolute;
}
.top-greet__name-plate::before {
  top: 6px;
  left: 6px;
  border-top: 1px solid var(--text);
  border-left: 1px solid var(--text);
}
.top-greet__name-plate::after {
  bottom: 6px;
  right: 6px;
  border-bottom: 1px solid var(--text);
  border-right: 1px solid var(--text);
}
.top-greet__name-jp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 2.5rem;
  font-weight: 600;
}
.top-greet__job {
  font-size: 1.875rem;
}
.top-greet__name-en {
  color: var(--accent-d);
  font-size: 1.25rem;
  font-weight: 500;
}
.top-greet__link {
  margin-top: clamp(5.0625rem, 1.7740384615rem + 10.9615384615vw, 8.625rem);
  margin-inline: auto;
}

@media (hover: hover) and (pointer: fine) {
  .top-greet__link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .top-greet__link:hover, .top-greet__link:focus {
    background-color: var(--accent-d);
  }
  .top-greet__link:hover::after, .top-greet__link:focus::after {
    background-color: #7799b4;
  }
  .top-greet__link::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
.top-med_pos {
  margin-top: clamp(5.375rem, 1.175rem + 14vw, 12.375rem);
}
.top-med__inner {
  max-width: 1709px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .top-med__inner {
    padding: 0 clamp(1.6875rem, 1.375rem + 1.0416666667vw, 1.875rem);
  }
}
@media (max-width: 479px) {
  .top-med__inner {
    padding: 0 clamp(0.9375rem, -2.8599683544rem + 15.1898734177vw, 1.6875rem);
  }
}
.top-med__main-items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 74px clamp(0.625rem, -0.45640625rem + 2.25vw, 2.03125rem);
  margin-top: 69px;
}
@media (max-width: 768px) {
  .top-med__main-items {
    max-width: 548px;
    grid-template-columns: 1fr;
    margin-inline: auto;
  }
}
.top-med__main-link {
  aspect-ratio: 548/356;
  display: grid;
  place-items: center;
}
.top-med__main-link_1 {
  background: url(../images/top-med-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-med-1.webp) 1x, url(../images/top-med-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-med-1.webp) 1x, url(../images/top-med-1@2x.webp) 2x);
}
.top-med__main-link_2 {
  background: url(../images/top-med-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-med-2.webp) 1x, url(../images/top-med-2@2x.webp) 2x);
  background-image: image-set(url(../images/top-med-2.webp) 1x, url(../images/top-med-2@2x.webp) 2x);
}
.top-med__main-link_3 {
  background: url(../images/top-med-3.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/top-med-3.webp) 1x, url(../images/top-med-3@2x.webp) 2x);
  background-image: image-set(url(../images/top-med-3.webp) 1x, url(../images/top-med-3@2x.webp) 2x);
}
.top-med__main-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(0.8125rem, 0.139625rem + 1.4vw, 1.6875rem);
  color: var(--base);
  line-height: 1;
  margin-top: clamp(0.9375rem, 0.2165625rem + 1.5vw, 1.875rem);
}
@media (max-width: 768px) {
  .top-med__main-title {
    row-gap: clamp(1.3125rem, -0.1875rem + 5vw, 1.6875rem);
    margin-top: clamp(-0.6875rem, -10.9375rem + 34.1666666667vw, 1.875rem);
  }
}
.top-med__main-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.28875rem + 2vw, 2.5rem);
  font-weight: 600;
}
@media (max-width: 768px) {
  .top-med__main-jp {
    font-size: clamp(2.0675rem, 0.3375rem + 5.7666666667vw, 2.5rem);
  }
}
@media (max-width: 479px) {
  .top-med__main-jp {
    font-size: clamp(1.875rem, 0.9003164557rem + 3.8987341772vw, 2.0675rem);
  }
}
.top-med__main-en {
  font-size: clamp(0.75rem, 0.3655rem + 0.8vw, 1.25rem);
  font-weight: 500;
  --ls: 0.14em;
}
@media (max-width: 768px) {
  .top-med__main-en {
    font-size: clamp(1.03375rem, 0.16875rem + 2.8833333333vw, 1.25rem);
  }
}
.top-med__main-subitems {
  max-width: clamp(22.6875rem, 3.9375rem + 62.5vw, 27.375rem);
  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.1875rem, -0.8125rem + 3.3333333333vw, 0.4375rem);
  margin-top: clamp(1.4375rem, 0.9088125rem + 1.1vw, 2.125rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .top-med__main-subitems {
    margin-top: 23px;
  }
}
.top-med__main-subitem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: clamp(0.375rem, 0.0385625rem + 0.7vw, 0.8125rem);
     -moz-column-gap: clamp(0.375rem, 0.0385625rem + 0.7vw, 0.8125rem);
          column-gap: clamp(0.375rem, 0.0385625rem + 0.7vw, 0.8125rem);
  background-image: -webkit-repeating-linear-gradient(left, #9d9d9d, #9d9d9d 4px, transparent 4px, transparent 7px);
  background-image: repeating-linear-gradient(90deg, #9d9d9d, #9d9d9d 4px, transparent 4px, transparent 7px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 2px;
  font-size: clamp(0.8125rem, 0.4760625rem + 0.7vw, 1.25rem);
  line-height: 1.75;
  --ls: 0.14em;
  padding-bottom: clamp(0.4375rem, -0.0625rem + 1.6666666667vw, 0.5625rem);
  padding-left: clamp(0.125rem, -0.06725rem + 0.4vw, 0.375rem);
}
@media (max-width: 768px) {
  .top-med__main-subitem {
    -webkit-column-gap: 13px;
       -moz-column-gap: 13px;
            column-gap: 13px;
    font-size: clamp(1.03375rem, 0.16875rem + 2.8833333333vw, 1.25rem);
    padding-left: 6px;
  }
}
.top-med__main-subitem::before {
  content: "";
  min-width: clamp(1.1875rem, 0.9471875rem + 0.5vw, 1.5rem);
  aspect-ratio: 24/23;
  background: url(../images/icon-check-g.svg) no-repeat 0 0/contain;
  margin-top: clamp(0.1875rem, -0.0528125rem + 0.5vw, 0.5rem);
}
@media (max-width: 768px) {
  .top-med__main-subitem::before {
    min-width: clamp(1.25rem, 0.25rem + 3.3333333333vw, 1.5rem);
    margin-top: clamp(0.375rem, -0.125rem + 1.6666666667vw, 0.5rem);
  }
}
.top-med__items {
  max-width: 1682px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(3.125rem, 2.1471261445rem + 2.0345879959vw, 4.375rem) clamp(0.75rem, 0.0700636943rem + 0.8492569002vw, 1rem);
  margin-top: clamp(4.625rem, 3.125rem + 5vw, 6.25rem);
  margin-inline: auto;
}
@media (max-width: 1280px) {
  .top-med__items {
    max-width: 902px;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px) {
  .top-med__items {
    max-width: 500px;
    grid-template-columns: repeat(2, 1fr);
    gap: 52px clamp(0.75rem, -3.0474683544rem + 15.1898734177vw, 1.5rem);
  }
}
.top-med__item_12 {
  /*grid-area: 3/2/4/3;*/
}
@media (max-width: 1280px) {
  .top-med__item_12 {
    grid-area: initial;
  }
}
.top-med__item_13 {
  grid-area: 3/3/4/4;
}
@media (max-width: 1280px) {
  .top-med__item_13 {
    grid-area: 4/2/5/3;
  }
}
@media (max-width: 768px) {
  .top-med__item_13 {
    grid-area: initial;
  }
}
.top-med__link {
  display: grid;
  grid-template-columns: clamp(6.9375rem, -0.8817675159rem + 9.7664543524vw, 9.8125rem) 1fr;
  position: relative;
  border: 1px solid var(--text);
}
@media (max-width: 1280px) {
  .top-med__link {
    grid-template-columns: clamp(5.3125rem, 2.8718261719rem + 5.078125vw, 6.9375rem) 1fr;
  }
}
@media (max-width: 768px) {
  .top-med__link {
    grid-template-columns: 1fr;
  }
}
.top-med__link::after {
  content: "";
  width: 19px;
  aspect-ratio: 19/18.65;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: -1px;
  background-color: var(--text);
}
.top-med__box {
  display: grid;
  place-items: center;
}
@media (max-width: 768px) {
  .top-med__box {
    height: 74px;
  }
}
.top-med__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;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 11px;
  line-height: 1;
}
.top-med__item-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, -0.4498407643rem + 2.1231422505vw, 1.875rem);
  font-weight: 600;
  --ls: 0.14em;
}
@media (max-width: 1280px) {
  .top-med__item-jp {
    font-size: clamp(1.0625rem, 0.7808837891rem + 0.5859375vw, 1.25rem);
  }
}
@media (max-width: 768px) {
  .top-med__item-jp {
    font-size: clamp(1.25rem, -0.0158227848rem + 5.0632911392vw, 1.5rem);
    --ls: 0.04em;
  }
}
.top-med__item-en {
  color: var(--main);
  font-size: clamp(0.8125rem, -0.0374203822rem + 1.0615711253vw, 1.125rem);
  font-weight: 500;
  --ls: 0.14em;
}
@media (max-width: 1280px) {
  .top-med__item-en {
    font-size: clamp(0.75rem, 0.6561279297rem + 0.1953125vw, 0.8125rem);
  }
}
@media (max-width: 768px) {
  .top-med__item-en {
    font-size: clamp(0.875rem, 0.2420886076rem + 2.5316455696vw, 1rem);
  }
}
.top-med__subitems {
  max-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 16px;
  margin-top: clamp(1rem, 0.375rem + 2.0833333333vw, 1.375rem);
  margin-inline: auto;
}
.top-med__subitem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: clamp(0.4375rem, -0.1257324219rem + 1.171875vw, 0.8125rem);
     -moz-column-gap: clamp(0.4375rem, -0.1257324219rem + 1.171875vw, 0.8125rem);
          column-gap: clamp(0.4375rem, -0.1257324219rem + 1.171875vw, 0.8125rem);
  background-image: -webkit-repeating-linear-gradient(left, #9d9d9d, #9d9d9d 4px, transparent 4px, transparent 7px);
  background-image: repeating-linear-gradient(90deg, #9d9d9d, #9d9d9d 4px, transparent 4px, transparent 7px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 2px;
  font-size: clamp(1.0625rem, 0.8925159236rem + 0.2123142251vw, 1.125rem);
  line-height: 1.3125;
  --ls: 0.14em;
  padding-bottom: clamp(0.5625rem, 0.1870117188rem + 0.78125vw, 0.8125rem);
  padding-left: clamp(0rem, -1.1264648438rem + 2.34375vw, 0.75rem);
}
@media (max-width: 1280px) {
  .top-med__subitem {
    font-size: clamp(0.875rem, 0.5933837891rem + 0.5859375vw, 1.0625rem);
  }
}
@media (max-width: 768px) {
  .top-med__subitem {
    font-size: clamp(0.875rem, 0.2420886076rem + 2.5316455696vw, 1rem);
    --ls: 0.1em;
  }
}
.top-med__subitem::before {
  content: "";
  min-width: clamp(1.125rem, 0.5617675781rem + 1.171875vw, 1.5rem);
  aspect-ratio: 24/23;
  background: url(../images/icon-check-g.svg) no-repeat 0 0/contain;
  margin-top: 2px;
}

@media (hover: hover) and (pointer: fine) {
  .top-med__main-link:hover .top-med__main-title {
    color: var(--accent-l);
  }
  .top-med__main-title {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .top-med__link {
    -webkit-transition: -webkit-transform 0.4s;
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
  }
  .top-med__link:hover, .top-med__link:focus {
    -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
.top-gallery_pos {
  margin-top: clamp(8.1875rem, 5.45rem + 9.125vw, 12.75rem);
}
@media (max-width: 768px) {
  .top-gallery_pos {
    padding-bottom: 85px;
  }
}
.top-gallery__slider {
  overflow: hidden;
}
.top-gallery__wrapper {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.top-gallery__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-animation: infinity-scroll 50s linear infinite both;
          animation: infinity-scroll 50s linear infinite both;
}
.top-gallery__slide {
  max-width: clamp(20.125rem, 15.3522727273rem + 15.9090909091vw, 33.25rem);
  margin-right: clamp(1.125rem, 0.8522727273rem + 0.9090909091vw, 1.875rem);
}
.top-gallery__img {
  height: 100%;
  aspect-ratio: 532/358;
  -o-object-fit: cover;
     object-fit: cover;
}

/*###################################################################
  clinic（page）
###################################################################*/
.clinic-c__bg1 {
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  margin-top: calc(clamp(4.6875rem, 1.8465909091rem + 11.3636363636vw, 10.9375rem) * -1);
  padding-top: clamp(9.0625rem, 3.0208333333rem + 24.1666666667vw, 18.125rem);
  padding-bottom: clamp(7.5rem, 5.0462962963rem + 9.8148148148vw, 14.125rem);
}
@media (max-width: 768px) {
  .clinic-c__bg1 {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}
.clinic-c__bg2 {
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  padding-top: clamp(4.375rem, 0.5324074074rem + 15.3703703704vw, 14.75rem);
  padding-bottom: clamp(7.5rem, 0.0168918919rem + 29.9324324324vw, 35.1875rem);
}
@media (max-width: 768px) {
  .clinic-c__bg2 {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}

.clinic1 * {
  --ls: 0.06em;
}
.clinic1__pc-inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  margin-top: clamp(4.75rem, 4rem + 2.5vw, 5.5625rem);
}
@media (max-width: 1000px) {
  .clinic1__pc-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 99px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
  }
}
.clinic1__box {
  max-width: 673px;
  width: 100%;
}
.clinic1__text {
  font-size: 1.125rem;
  font-weight: 500;
  white-space: pre-line;
}
.clinic1__img-1 {
  max-width: 470px;
  margin-top: 37px;
}
@media (max-width: 1000px) {
  .clinic1__img-1 {
    margin-inline: auto;
  }
}

.clinic2_pos {
  margin-top: clamp(4.375rem, -0.2556818182rem + 18.5227272727vw, 14.5625rem);
}
.clinic2__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .clinic2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.clinic2__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(2.1875rem, 0.4166666667rem + 7.0833333333vw, 4.84375rem);
  margin-top: clamp(2.5rem, -0.0416666667rem + 10.1666666667vw, 6.3125rem);
}
.clinic2__item {
  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: 11px;
}
.clinic2__q {
  display: grid;
  grid-template-columns: clamp(3.25rem, 2.5965909091rem + 2.6136363636vw, 4.6875rem) 1fr;
  border-bottom: 2px solid var(--accent-d);
}
.clinic2__q-icon {
  max-width: clamp(2.5rem, 2.1590909091rem + 1.3636363636vw, 3.25rem);
}
.clinic2__q-title {
  font-size: clamp(1.25rem, 1.1363636364rem + 0.4545454545vw, 1.5rem);
  line-height: 1.75;
  margin-top: 4px;
}
.clinic2__a {
  display: grid;
  grid-template-columns: clamp(3.25rem, 2.5965909091rem + 2.6136363636vw, 4.6875rem) 1fr;
}
.clinic2__a-icon {
  max-width: clamp(2.7875rem, 2.4068181818rem + 1.5227272727vw, 3.625rem);
}
.clinic2__a-text {
  line-height: 2.4;
  white-space: pre-line;
  margin-top: 4px;
}

.clinic3 {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.clinic3__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  z-index: -1;
}
.clinic3__bg::before {
  content: "";
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: url(../images/clinic3-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic3-bg.webp) 1x, url(../images/clinic3-bg@2x.webp) 2x);
  background-image: image-set(url(../images/clinic3-bg.webp) 1x, url(../images/clinic3-bg@2x.webp) 2x);
}
@media (max-width: 768px) {
  .clinic3__bg::before {
    background: url(../images/clinic3-bg_sp.webp) no-repeat center left/cover;
    background-image: -webkit-image-set(url(../images/clinic3-bg_sp.webp) 1x, url(../images/clinic3-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/clinic3-bg_sp.webp) 1x, url(../images/clinic3-bg_sp@2x.webp) 2x);
  }
}
.clinic3__inner {
  padding-top: clamp(6.25rem, 5.09765625rem + 4.609375vw, 9.9375rem);
  padding-bottom: clamp(8.8125rem, 6.76171875rem + 8.203125vw, 15.375rem);
}
.clinic3__jp {
  color: var(--base);
}
.clinic3__en {
  color: var(--base);
}
.clinic3__en::after {
  color: var(--base);
}
.clinic3__text {
  color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.875rem, 1.2890625rem + 2.34375vw, 3.75rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  --ls: 0.06em;
  margin-top: clamp(3.4375rem, 2.109375rem + 5.3125vw, 7.6875rem);
}

.clinic4_pos {
  margin-top: clamp(4.375rem, 0.3009259259rem + 16.2962962963vw, 15.375rem);
}
.clinic4__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.0625rem + 7.75vw, 4.78125rem);
  margin-top: clamp(2.5rem, -0.3409090909rem + 11.3636363636vw, 8.75rem);
}
.clinic4__item {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 1000px) {
  .clinic4__item {
    grid-template-columns: 1fr;
  }
}
.clinic4__box {
  min-height: 836px;
  background-color: var(--accent-l);
  padding: 76px 15px 50px;
}
@media (max-width: 1000px) {
  .clinic4__box {
    min-height: inherit;
    padding: 50px clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem) 60px;
  }
}
.clinic4__box_1 {
  min-height: 823px;
}
@media (max-width: 1000px) {
  .clinic4__box_1 {
    min-height: inherit;
  }
}
.clinic4__box-inner {
  max-width: 830px;
  margin-inline: auto;
}
.clinic4__box-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.625rem, 0.0586340206rem + 2.5036818851vw, 2.6875rem);
  line-height: 1;
}
.clinic4__jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(2rem, 1.2628865979rem + 1.1782032401vw, 2.5rem);
  font-weight: bold;
  --ls: 0.08em;
}
@media (max-width: 1000px) {
  .clinic4__jp {
    font-size: clamp(1.75rem, 1.4782608696rem + 1.0869565217vw, 2rem);
  }
}
.clinic4__en {
  color: var(--accent-d);
  font-size: clamp(1.5rem, 0.9471649485rem + 0.88365243vw, 1.875rem);
  font-weight: 500;
  --ls: 0.06em;
}
@media (max-width: 1000px) {
  .clinic4__en {
    font-size: clamp(1.375rem, 1.2391304348rem + 0.5434782609vw, 1.5rem);
  }
}
.clinic4__subtitle {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.125rem, 0.0193298969rem + 1.7673048601vw, 1.875rem);
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  --ls: 0.08em;
  white-space: pre-line;
  margin-top: 13px;
}
@media (max-width: 1000px) {
  .clinic4__subtitle {
    font-size: clamp(1.125rem, 0.7173913043rem + 1.6304347826vw, 1.5rem);
  }
}
.clinic4__text {
  font-size: clamp(1rem, 0.8157216495rem + 0.29455081vw, 1.125rem);
  font-weight: 500;
  --ls: 0.06em;
  white-space: pre-line;
  margin-top: clamp(1.875rem, 0.652173913rem + 4.8913043478vw, 3rem);
}
.clinic4__text_3 {
  margin-top: 76px;
}
@media (max-width: 1000px) {
  .clinic4__text_3 {
    margin-top: clamp(1.875rem, 0.652173913rem + 4.8913043478vw, 3rem);
  }
}
@media (max-width: 1000px) {
  .clinic4__img {
    aspect-ratio: 969/836;
  }
}
.clinic4__img_1 {
  background: url(../images/clinic4-1.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic4-1.webp) 1x, url(../images/clinic4-1@2x.webp) 2x);
  background-image: image-set(url(../images/clinic4-1.webp) 1x, url(../images/clinic4-1@2x.webp) 2x);
}
@media (max-width: 1000px) {
  .clinic4__img_1 {
    aspect-ratio: 969/823;
  }
}
.clinic4__img_2 {
  grid-area: 1/1/2/2;
  background: url(../images/clinic4-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic4-2.webp) 1x, url(../images/clinic4-2@2x.webp) 2x);
  background-image: image-set(url(../images/clinic4-2.webp) 1x, url(../images/clinic4-2@2x.webp) 2x);
}
@media (max-width: 1000px) {
  .clinic4__img_2 {
    grid-area: initial;
  }
}
.clinic4__img_3 {
  background: url(../images/clinic4-3.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic4-3.webp) 1x, url(../images/clinic4-3@2x.webp) 2x);
  background-image: image-set(url(../images/clinic4-3.webp) 1x, url(../images/clinic4-3@2x.webp) 2x);
}

.clinic4__img_4 {
  grid-area: 1/1/2/2;
  background: url(../images/clinic4-4.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/clinic4-4.webp) 1x, url(../images/clinic4-4@2x.webp) 2x);
  background-image: image-set(url(../images/clinic4-4.webp) 1x, url(../images/clinic4-4@2x.webp) 2x);
}

@media (max-width: 1000px) {
  .clinic4__img_4 {
    grid-area: initial;
  }
}

.clinic5__inner {
  max-width: 1400px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .clinic5__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.clinic5__body {
  margin-top: clamp(2.5rem, 0.625rem + 7.5vw, 5.3125rem);
}
.clinic5__slider {
  position: relative;
  padding: 0 40px;
}
@media (max-width: 768px) {
  .clinic5__slider {
    padding: 0;
  }
}
.clinic5__swiper {
  max-width: 1280px;
  margin-inline: auto;
}
.clinic5__img {
  height: 100%;
  aspect-ratio: 1280/865;
  -o-object-fit: cover;
     object-fit: cover;
}
.clinic5__prev, .clinic5__next {
  width: clamp(1.5rem, 0.8885869565rem + 2.4456521739vw, 2.0625rem);
  height: inherit;
  aspect-ratio: 33/59;
  top: calc(50% + 23px);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}
.clinic5__prev::after, .clinic5__next::after {
  content: "";
  width: 100%;
  aspect-ratio: 33/59;
  background-repeat: no-repeat;
  background-size: contain;
  margin: auto;
}
.clinic5__prev {
  left: 0;
}
.clinic5__prev::after {
  background-image: url(../images/icon-prev.svg);
}
.clinic5__next {
  right: 0;
}
.clinic5__next::after {
  background-image: url(../images/icon-next.svg);
}
.clinic5__bottom {
  margin-top: 18px;
  padding: 0 40px;
}
@media (max-width: 768px) {
  .clinic5__bottom {
    padding: 0;
  }
}
.clinic5__items {
  max-width: 1280px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 7px 1px;
  margin-inline: auto;
}
.clinic5__item {
  opacity: 0.5;
}
.clinic5__item_active {
  opacity: 1;
}
.clinic5__item-img {
  height: 100%;
  aspect-ratio: 319/216;
  -o-object-fit: cover;
     object-fit: cover;
  cursor: pointer;
}

.clinic6_pos {
  margin-top: clamp(4.375rem, 0.2546296296rem + 16.4814814815vw, 15.5rem);
}
.clinic6__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) {
  .clinic6__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
/*.clinic6__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(0.9375rem, -0.4947916667rem + 5.7291666667vw, 4.375rem) clamp(0.5rem, -2.3645833333rem + 8.3333333333vw, 0.8125rem);
  margin-top: clamp(2.5rem, 0.1666666667rem + 9.3333333333vw, 6rem);
}*/
.clinic6__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2カラム */
  gap: 2rem; /* 画像間の余白 */
  justify-content: center;
  margin-top: clamp(2.5rem, 0.1666666667rem + 9.3333333333vw, 6rem);
  justify-items: center;
}
@media (max-width: 768px) {
  .clinic6__items {
    display: block;
	gap: 2rem;
  }
}
.clinic6__item {
  /*max-width: clamp(16.5rem, -2.2708333333rem + 33.3333333333vw, 26.0625rem);*/
  width: 90%;
}
@media (max-width: 900px) {
  .clinic6__item {
    /*max-width: clamp(11.25rem, 1.25rem + 40vw, 16.5rem);*/
	width: 80%;
	margin-bottom: 30px;
	
  }
}
.clinic6__img {
  height: 100%;
  aspect-ratio: 417/358;
  -o-object-fit: cover;
     object-fit: cover;
}
.clinic6__item-title {
  height: clamp(2.75rem, 1.0833333333rem + 6.6666666667vw, 3.625rem);
  display: grid;
  place-items: center;
  background-color: var(--accent-d);
  color: var(--base);
  font-size: clamp(1.0625rem, 0.6944444444rem + 0.6535947712vw, 1.25rem);
  line-height: 1.75;
  padding: 10px;
}
@media (max-width: 900px) {
  .clinic6__item-title {
    font-size: clamp(0.9375rem, 0.6994047619rem + 0.9523809524vw, 1.0625rem);
  }
}

/*###################################################################
  access（page）
###################################################################*/
.access-c__bg1 {
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  margin-top: calc(clamp(4.6875rem, 1.8465909091rem + 11.3636363636vw, 10.9375rem) * -1);
  padding-top: clamp(9.0625rem, 3.0208333333rem + 24.1666666667vw, 18.125rem);
  padding-bottom: clamp(7.5rem, -0.8783783784rem + 33.5135135135vw, 38.5rem);
}
@media (max-width: 768px) {
  .access-c__bg1 {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}

.access1__inner {
  max-width: 785px;
  -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__address {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 13px;
     -moz-column-gap: 13px;
          column-gap: 13px;
  font-size: 1.125rem;
  line-height: 1.75;
  --ls: 0.1em;
  margin-top: clamp(2.5rem, 0.5384615385rem + 6.5384615385vw, 4.625rem);
}
.access1__address::before {
  content: "";
  min-width: 25px;
  aspect-ratio: 22/33;
  background-color: var(--accent-d);
  -webkit-mask-image: url(../images/icon-map.svg);
          mask-image: url(../images/icon-map.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  margin-top: -7px;
}
.access1__contact {
  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: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  margin-top: clamp(2.5rem, 1.277173913rem + 4.8913043478vw, 3.625rem);
}
@media (max-width: 768px) {
  .access1__contact {
    -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: 28px;
  }
}
.access1__tel {
  max-width: 366px;
  width: 100%;
  height: 84px;
  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: 8px;
  background-color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  line-height: 1;
  border: 2px solid var(--main);
  padding-top: 8px;
}
.access1__tel-text {
  font-size: 1.25rem;
  --ls: 0.1em;
}
.access1__tel-number {
  font-size: 2.25rem;
  --ls: 0.1em;
}
.access1__tel-s {
  font-size: 1.625rem;
}
.access1__inquiry {
  max-width: 366px;
  width: 100%;
  height: 82px;
  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: 27px;
     -moz-column-gap: 27px;
          column-gap: 27px;
  position: relative;
  background-color: var(--accent);
  color: var(--base);
  font-size: 1.625rem;
  --ls: 0.1em;
}
/*.access1__inquiry::before {
  content: "";
  min-width: 28px;
  aspect-ratio: 28/20;
  background-color: var(--base);
  -webkit-mask-image: url(../images/icon-mail.svg);
          mask-image: url(../images/icon-mail.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}*/
.access1__inquiry::after {
  content: "";
  width: 27px;
  aspect-ratio: 27/26.27;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--main);
}
.access1__info {
  max-width: 778px;
  width: 100%;
  margin-top: clamp(2.5rem, 0.8333333333rem + 5.5555555556vw, 3.5rem);
  margin-inline: auto;
}
.access1__table-wrapper {
  background-color: var(--base);
  padding: clamp(0.75rem, 0.09375rem + 2.1875vw, 1.1875rem) clamp(0.5rem, -1.09375rem + 5.3125vw, 1.5625rem) clamp(1.125rem, 0.28125rem + 2.8125vw, 1.6875rem);
}
.access1__table {
  width: 100%;
  color: var(--text2);
  font-size: clamp(1rem, 0.0625rem + 3.125vw, 1.625rem);
  font-weight: 500;
  line-height: 1;
}
.access1__table * {
  --ls: 0.06em;
}
.access1__tr-top {
  border-bottom: 1px solid #9d9d9d;
}
.access1__th-weekday {
  text-align: center;
}
.access1__left {
  width: 33.1%;
  font-weight: 500;
  padding-left: clamp(0.4375rem, -2.9375rem + 11.25vw, 2.6875rem);
}
.access1__top {
  font-weight: 500;
  padding-bottom: 15px;
}
.access1__holiday {
  width: 17%;
}
.access1__td {
  color: var(--main);
  text-align: center;
}
.access1__am {
  padding-top: clamp(0.8125rem, -0.21875rem + 3.4375vw, 1.5rem);
}
.access1__pm {
  padding-top: clamp(1.5rem, 0rem + 5vw, 2.5rem);
}
.access1__note {
  color: var(--text2);
  font-size: 1.125rem;
  line-height: 1.5;
  --ls: 0.06em;
  margin-top: clamp(0.4375rem, -0.5rem + 3.125vw, 1rem);
}

.access2_pos {
  margin-top: clamp(4.375rem, 0.0462962963rem + 17.3148148148vw, 16.0625rem);
}
.access2__inner {
  max-width: 1161px;
  -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__map {
  margin-top: clamp(2.5rem, 1.25rem + 5vw, 4.375rem);
}
.access2__gmap {
  width: 100%;
  height: clamp(26.875rem, 21.7329545455rem + 20.5681818182vw, 38.1875rem);
}
.access2__access {
  max-width: 877px;
  width: 100%;
  margin-top: clamp(3.75rem, 2.2083333333rem + 6.1666666667vw, 6.0625rem);
  margin-inline: auto;
}
.access2__access-title {
  height: 49px;
  display: grid;
  place-items: center;
  background-color: #3b7eb2;
  color: var(--base);
  font-size: clamp(1.625rem, 1.4583333333rem + 0.6666666667vw, 1.875rem);
  line-height: 1;
  --ls: 0.06em;
}
.access2__items {
  max-width: 742px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  margin-top: 38px;
  margin-inline: auto;
}
@media (max-width: 600px) {
  .access2__items {
    max-width: 470px;
  }
}
.access2__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  position: relative;
}
.access2__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: clamp(6.6875rem, 6.1666666667rem + 1.7361111111vw, 7rem);
  position: absolute;
  bottom: calc(clamp(-0.3125rem, -1.3994565217rem + 4.347826087vw, 0.6875rem) * -1);
  right: 0;
  background-color: #9d9d9d;
}
.access2__icon {
  margin-inline: auto;
}
.access2__icon_1 {
  width: clamp(2.5625rem, 1.2083333333rem + 4.5138888889vw, 3.375rem);
  aspect-ratio: 54/42;
  -webkit-transform: translateX(-8px);
      -ms-transform: translateX(-8px);
          transform: translateX(-8px);
  background: url(../images/icon-car.svg) no-repeat 0 0/contain;
  margin-top: auto;
}
.access2__icon_2 {
  width: clamp(2rem, 0.8541666667rem + 3.8194444444vw, 2.6875rem);
  aspect-ratio: 43/58;
  background: url(../images/icon-train.svg) no-repeat 0 0/contain;
}
.access2__icon_3 {
  width: clamp(2.4375rem, 1.0833333333rem + 4.5138888889vw, 3.25rem);
  aspect-ratio: 1/1;
  background: url(../images/icon-bus.svg) no-repeat 0 0/contain;
  margin-top: auto;
}
.access2__item-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--text2);
  font-size: clamp(0.9375rem, 0.6133419689rem + 0.518134715vw, 1.125rem);
  line-height: 1.75;
  white-space: pre-line;
  margin-top: clamp(0.625rem, 0.1041666667rem + 1.7361111111vw, 0.9375rem);
}
@media (max-width: 1000px) {
  .access2__item-text {
    font-size: clamp(1rem, 0.7916666667rem + 0.6944444444vw, 1.125rem);
  }
}
@media (max-width: 479px) {
  .access2__item-text {
    font-size: clamp(0.875rem, 0.2420886076rem + 2.5316455696vw, 1rem);
  }
}
.access2__item-text_1 {
  padding-right: 10px;
}
@media (max-width: 600px) {
  .access2__item-text_1 {
    padding-right: clamp(0.75rem, -1.4651898734rem + 8.8607594937vw, 1.1875rem);
  }
}
.access2__item-text_2 {
  margin-inline: auto;
}
.access2__item-text_3 {
  padding-left: clamp(0.6875rem, -1.4735535406rem + 3.4542314335vw, 1.9375rem);
}
@media (max-width: 1000px) {
  .access2__item-text_3 {
    padding-left: clamp(1.0625rem, -0.3958333333rem + 4.8611111111vw, 1.9375rem);
  }
}
.access2__br {
  display: none;
}
@media (max-width: 600px) {
  .access2__br {
    display: block;
  }
}
.access2__img {
  max-width: 660px;
  margin-top: clamp(3.125rem, -0.3333333333rem + 13.8333333333vw, 8.3125rem);
  margin-inline: auto;
}

/*###################################################################
  medical（page）
###################################################################*/
.med-box1 {
  border: 1px solid var(--text);
  padding: 34px 15px 31px;
}
.med-box1 * {
  --ls: 0.06em;
}
.med-box1__inner {
  max-width: 1403px;
  margin-inline: auto;
}
.med-box1__title {
  -webkit-clip-path: polygon(0 0, 97% 0%, 100% 35%, 100% 100%, 3% 100%, 0% 65%);
          clip-path: polygon(0 0, 97% 0%, 100% 35%, 100% 100%, 3% 100%, 0% 65%);
  background-color: var(--main);
  color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 1rem + 1vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  padding: 0.640625rem clamp(0.75rem, 0.425rem + 1.3vw, 1.5625rem);
}
.med-box1__col {
  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: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  margin-top: clamp(1.875rem, 1.535326087rem + 1.3586956522vw, 2.1875rem);
}
@media (max-width: 1000px) {
  .med-box1__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;
  }
}
.med-box1__box {
  max-width: 777px;
  width: 100%;
}
.med-box1__text {
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  white-space: pre-line;
}
.med-box1__img {
  max-width: 556px;
  width: 100%;
}

.med-list1 {
  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, 2.1666666667rem + 1.3333333333vw, 3rem);
}
.med-list1__col {
  max-width: 1438px;
  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: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  margin-top: 8px;
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .med-list1__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;
  }
}
.med-list1__title {
  max-width: 1526px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 11px;
     -moz-column-gap: 11px;
          column-gap: 11px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 6px;
  padding-left: clamp(0rem, -0.3125rem + 1.25vw, 0.6875rem);
}
.med-list1__title::before {
  content: "";
  min-width: clamp(0.625rem, 0.4829545455rem + 0.5681818182vw, 0.9375rem);
  aspect-ratio: 15/45;
  background: url(../images/icon-title-deco-1.svg) no-repeat 0 0/contain;
  margin-top: 3px;
}
.med-list1__text {
  max-width: 834px;
  width: 100%;
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  white-space: pre-line;
  margin-top: clamp(0.625rem, 0.4583333333rem + 0.6666666667vw, 0.875rem);
}
.med-list1__img {
  max-width: 566px;
  width: 100%;
}

.med-list2 {
  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, 2.1666666667rem + 1.3333333333vw, 3rem);
}
.med-list2__col {
  max-width: 1467px;
  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: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  margin-top: 8px;
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .med-list2__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;
  }
}
.med-list2__title {
  max-width: 1526px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 11px;
     -moz-column-gap: 11px;
          column-gap: 11px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 6px;
  padding-left: clamp(0rem, -0.3125rem + 1.25vw, 0.6875rem);
}
.med-list2__title::before {
  content: "";
  min-width: clamp(0.625rem, 0.4829545455rem + 0.5681818182vw, 0.9375rem);
  aspect-ratio: 15/45;
  background: url(../images/icon-title-deco-1.svg) no-repeat 0 0/contain;
  margin-top: 3px;
}
.med-list2__col-left{
  max-width: 834px;
}
.med-list2__text {
  max-width: 834px;
  width: 100%;
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  white-space: pre-line;
  margin-top: clamp(0.625rem, 0.4583333333rem + 0.6666666667vw, 0.875rem);
}
.med-list2__hyou{
	border: 1px solid var(--text);
	width: 100%;
	margin-top: 20px;
}
.med-list2__hyou th{
	font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
	background-color: var(--main);
    color: var(--base);
	padding: 10px 15px;
	border: 1px solid var(--text);
}
.med-list2__hyou td{
	font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
	padding: 10px 15px;
	border: 1px solid var(--text);
}
.med-list2__img {
  max-width: 591px;
  width: 100%;
}

.med-fee {
  max-width: 1280px;
}
.med-fee__dl-box {
  max-width: 1073px;
  margin-top: clamp(2.5rem, 1.6666666667rem + 3.3333333333vw, 4.0625rem);
  margin-inline: auto;
}
.med-fee__dl {
  display: grid;
  grid-template-columns: 1fr clamp(7.8125rem, -5.5541666667rem + 53.4666666667vw, 32.875rem);
  font-size: clamp(1rem, 0.7333333333rem + 1.0666666667vw, 1.5rem);
  line-height: 1.75;
  border: 1px solid var(--main);
}
@media (max-width: 768px) {
	.med-fee__dl {
	  display: block;
	}
}
.med-fee__dt {
  background-color: var(--base2);
  font-weight: 400;
  padding: 14px 0;
  padding-right: 10px;
  padding-left: clamp(0.625rem, -0.9416666667rem + 6.2666666667vw, 3.5625rem);
}
.med-fee__dt:not(:last-of-type) {
  border-bottom: 1px solid var(--main);
}
.med-fee__dd {
  text-align: right;
  padding: 14px 0;
  padding-right: clamp(0.625rem, -3.175rem + 15.2vw, 7.75rem);
}
.med-fee__dd:not(:last-of-type) {
  border-bottom: 1px solid var(--main);
}
.med-fee__dd_left{
  text-align: left;
  padding: 14px 0;
  padding-right: 10px;
  padding-left: clamp(0.625rem, -0.9416666667rem + 6.2666666667vw, 3.5625rem);
}
.med-fee__dd_left:not(:last-of-type) {
  border-bottom: 1px solid var(--main);
}
.med-fee__note {
  font-size: clamp(0.9375rem, 0.8375rem + 0.4vw, 1.125rem);
  line-height: 1;
  margin-top: 15px;
}
.med-fee__note2 {
  font-size: clamp(1rem, 0.8157216495rem + 0.29455081vw, 1.125rem);
  /*line-height: 1;*/
  margin-bottom: 30px;
}
.med-fee__pay-title {
  margin-top: clamp(3.125rem, 1.0916666667rem + 8.1333333333vw, 6.9375rem);
}
.med-fee__items {
  max-width: 1078px;
  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: 20px 12px;
  margin-top: clamp(2.5rem, 0.7916666667rem + 6.8333333333vw, 5.0625rem);
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .med-fee__items {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.med-fee__item {
  max-width: 330px;
  width: 100%;
  background-color: var(--base2);
  padding: 25px 10px 20px;
}
.med-fee__item-inner {
  max-width: 298px;
  margin-inline: auto;
}
.med-fee__icon {
  max-width: 222px;
  margin-inline: auto;
}
.med-fee__item-title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  margin-top: 34px;
}
.med-fee__item-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.75;
  white-space: pre-line;
  margin-top: 25px;
  margin-inline: auto;
}

.med-menu {
  background: url(../images/top-bg-1.webp) repeat-y top center/cover;
  background-image: -webkit-image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
  background-image: image-set(url(../images/top-bg-1.webp) 1x, url(../images/top-bg-1@2x.webp) 2x);
}
@media (max-width: 768px) {
  .med-menu {
    background: url(../images/top-bg-1_sp.webp) repeat-y top center/cover;
    background-image: -webkit-image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
    background-image: image-set(url(../images/top-bg-1_sp.webp) 1x, url(../images/top-bg-1_sp@2x.webp) 2x);
  }
}
.med-menu_pos {
  margin-top: calc(clamp(4.6875rem, 1.8465909091rem + 11.3636363636vw, 10.9375rem) * -1);
}
.med-menu__inner {
  max-width: 1695px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding: 149px 30px 77px;
}
@media (max-width: 1280px) {
  .med-menu__inner {
    padding: clamp(3.125rem, 0.3125rem + 11.25vw, 9.3125rem) clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem) clamp(3.125rem, 2.3579545455rem + 3.0681818182vw, 4.8125rem);
  }
}
.med-menu__items {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(0.8125rem, 0.2010869565rem + 2.4456521739vw, 1.375rem) 13px;
  margin-top: clamp(4.625rem, 3.125rem + 5vw, 6.25rem);
  margin-inline: auto;
}
@media (max-width: 1280px) {
  .med-menu__items {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 935px) {
  .med-menu__items {
    max-width: 600px;
    grid-template-columns: repeat(3, 1fr);
  }
}
.med-menu__item {
  display: grid;
  grid-template-columns: clamp(6.3125rem, 2.0897943038rem + 5.2742616034vw, 7.875rem) 1fr;
  position: relative;
  border: 1px solid var(--text);
  cursor: pointer;
}
@media (max-width: 1280px) {
  .med-menu__item {
    grid-template-columns: clamp(5.0625rem, 0.59375rem + 7.1428571429vw, 6.3125rem) 1fr;
  }
}
@media (max-width: 1000px) {
  .med-menu__item {
    max-width: 222px;
    width: 100%;
    min-width: 204px;
  }
}
@media (max-width: 768px) {
  .med-menu__item {
    min-width: inherit;
    grid-template-columns: 1fr;
  }
}
.med-menu__item::after {
  content: "";
  width: clamp(0.75rem, 0.5278532609rem + 0.8885869565vw, 0.954375rem);
  aspect-ratio: 19/18.65;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: -1px;
  background-color: var(--text);
}
.med-menu__box {
  display: grid;
  place-items: center;
  background-color: var(--base);
}
@media (max-width: 768px) {
  .med-menu__box {
    height: clamp(3.75rem, 2.7989130435rem + 3.8043478261vw, 4.625rem);
  }
}
.med-menu__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;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 2px;
  line-height: 1;
}
.med-menu__item-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(0.9375rem, -0.5923566879rem + 1.9108280255vw, 1.5rem);
  font-weight: 600;
  line-height: 1.3395833333;
  --ls: 0.14em;
}
@media (max-width: 768px) {
  .med-menu__item-jp {
    font-size: clamp(0.875rem, 0.8070652174rem + 0.2717391304vw, 0.9375rem);
    --ls: 0.04em;
  }
}
.med-menu__item-en {
  color: var(--main);
  font-size: clamp(0.6875rem, -0.1624203822rem + 1.0615711253vw, 1rem);
  font-weight: 500;
  --ls: 0.14em;
}
@media (max-width: 768px) {
  .med-menu__item-en {
    --ls: 0.04em;
  }
}

@media (hover: hover) and (pointer: fine) {
  .med-menu__item:hover .med-menu__item-jp {
    color: var(--accent);
  }
  .med-menu__item:hover .med-menu__item-en {
    color: var(--accent);
  }
  .med-menu__item-jp {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .med-menu__item-en {
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
}
.med-section {
  display: none;
}
.med-section.active {
  display: block;
}
.med-section_pos {
  margin-top: clamp(4.375rem, 2.3295454545rem + 8.1818181818vw, 8.875rem);
}

.med-top_pos {
  margin-top: clamp(3.75rem, 2.1666666667rem + 6.3333333333vw, 6.125rem);
}
.med-top__inner {
  max-width: 1608px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med-top__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med-top__col {
  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-top: clamp(2.5rem, 0.7916666667rem + 6.8333333333vw, 5.0625rem);
}
@media (max-width: 1000px) {
  .med-top__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;
  }
}
.med-top__box {
  max-width: 753px;
  width: 100%;
  margin-top: clamp(0rem, -1.9349226804rem + 3.0927835052vw, 1.3125rem);
}
.med-top__box-title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.5rem, 0.4864690722rem + 1.6200294551vw, 2.1875rem);
  font-weight: 600;
  line-height: 1.75;
  --ls: 0.06em;
  white-space: pre-line;
}
@media (max-width: 1000px) {
  .med-top__box-title {
    font-size: clamp(1.25rem, 1rem + 1vw, 1.5rem);
  }
}
.med-top__box-text {
  font-size: clamp(1rem, 0.8157216495rem + 0.29455081vw, 1.125rem);
  --ls: 0.06em;
  white-space: pre-line;
  margin-top: clamp(1.25rem, -2.1591494845rem + 5.4491899853vw, 3.5625rem);
}
.med-top__img {
  max-width: 802px;
  width: 100%;
}
@media (max-width: 1000px) {
  .med-top__img {
    max-width: 753px;
  }
}
.med-top__list {
  max-width: 1280px;
  position: relative;
  background-color: var(--base2);
  margin-top: clamp(3.125rem, 0.2916666667rem + 11.3333333333vw, 7.375rem);
  margin-inline: auto;
  padding: 48px 20px 54px;
}
.med-top__list::before, .med-top__list::after {
  content: "";
  width: 100%;
  height: clamp(10.6875rem, 8.2140957447rem + 9.8936170213vw, 16.5rem);
  position: absolute;
  top: 0;
  z-index: 0;
  background-color: rgba(179, 204, 224, 0.15);
}
.med-top__list::before {
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
          clip-path: polygon(0 0, 0% 100%, 100% 0);
  left: 0;
}
.med-top__list::after {
  -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
          clip-path: polygon(100% 0, 0 0, 100% 100%);
  right: 0;
}
.med-top__list-inner {
  max-width: 746px;
  margin-inline: auto;
}
.med-top__list-inner::before, .med-top__list-inner::after {
  content: "";
  width: clamp(1.25rem, 0.7916666667rem + 1.8333333333vw, 1.9375rem);
  aspect-ratio: 1/1;
  position: absolute;
  top: clamp(0.625rem, 0.4166666667rem + 0.8333333333vw, 0.9375rem);
  border-top: 2px solid var(--text);
}
.med-top__list-inner::before {
  left: clamp(0.625rem, 0.4166666667rem + 0.8333333333vw, 0.9375rem);
  border-left: 2px solid var(--text);
}
.med-top__list-inner::after {
  right: clamp(0.625rem, 0.4166666667rem + 0.8333333333vw, 0.9375rem);
  border-right: 2px solid var(--text);
}
.med-top__list-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: clamp(1.375rem, 0.7635869565rem + 2.4456521739vw, 1.9375rem);
  line-height: 1;
}
.med-top__list-title::before, .med-top__list-title::after {
  content: "";
  width: clamp(1.25rem, 0.7916666667rem + 1.8333333333vw, 1.9375rem);
  aspect-ratio: 1/1;
  position: absolute;
  bottom: clamp(0.625rem, 0.4166666667rem + 0.8333333333vw, 0.9375rem);
  border-bottom: 2px solid var(--text);
}
.med-top__list-title::before {
  left: clamp(0.625rem, 0.4166666667rem + 0.8333333333vw, 0.9375rem);
  border-left: 2px solid var(--text);
}
.med-top__list-title::after {
  right: clamp(0.625rem, 0.4166666667rem + 0.8333333333vw, 0.9375rem);
  border-right: 2px solid var(--text);
}
.med-top__list-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.375rem, 0.8315217391rem + 2.1739130435vw, 1.875rem);
  font-weight: 600;
}
.med-top__list-en {
  color: var(--main);
  font-size: clamp(1.25rem, 0.9782608696rem + 1.0869565217vw, 1.5rem);
  font-weight: 500;
}
.med-top__list-items {
  display: grid;
  grid-template-columns: 1fr 286px;
  row-gap: 23px;
  margin-top: clamp(2.5rem, 1.6168478261rem + 3.5326086957vw, 3.3125rem);
}
@media (max-width: 768px) {
  .med-top__list-items {
    max-width: 400px;
    grid-template-columns: 1fr;
    margin-inline: auto;
  }
}
.med-top__list-items_nowrap {
  grid-template-columns: 1fr calc(clamp(-21.1875rem, -32.2148268398rem + 22.9437229437vw, -17.875rem) * -1);
}
@media (max-width: 768px) {
  .med-top__list-items_nowrap {
    grid-template-columns: 1fr;
  }
}
.med-top__list-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  font-size: 1.125rem;
  line-height: 1.75;
}
.med-top__list-item_nowrap {
  white-space: nowrap;
}
.med-top__list-item::before {
  content: "";
  min-width: 16.5px;
  aspect-ratio: 1/1;
  background: url(../images/icon-check-m.svg) no-repeat 0 0/contain;
  margin-top: 9px;
}
.med-top__preparation {
  height: clamp(6.25rem, 2.0833333333rem + 16.6666666667vw, 12.5rem);
  display: grid;
  place-items: center;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(2.25rem, 1.9782608696rem + 1.0869565217vw, 2.5rem);
  font-weight: 600;
}

.med1__title-jp {
  --ls: 0.06em;
}
.med1__list {
  margin-top: clamp(3.125rem, 2.3097826087rem + 3.2608695652vw, 3.875rem);
}

.med1-2_pos {
  margin-top: clamp(4.375rem, 1.1363636364rem + 12.9545454545vw, 11.5rem);
}
.med1-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med1-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med1-2__box-1 {
  margin-top: 36px;
}
.med1-2__box-2 {
  margin-top: clamp(2.5rem, 1.1666666667rem + 5.3333333333vw, 4.5rem);
}
.med1-2__col-2 {
  max-width: 1374px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}
@media (max-width: 1000px) {
  .med1-2__col-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.med1-2__img-2 {
  max-width: 475px;
}
.med1-2__list {
  max-width: 1280px;
  background-color: var(--base2);
  outline: 2px solid var(--base);
  outline-offset: calc(clamp(0.5rem, -0.0416666667rem + 2.1666666667vw, 1.3125rem) * -1) x;
  margin-top: clamp(3.125rem, -6.4686888454rem + 19.9608610568vw, 9.5rem);
  margin-inline: auto;
  padding: clamp(1.875rem, 1rem + 3.5vw, 3.1875rem) clamp(1.125rem, 0.2083333333rem + 3.6666666667vw, 2.5rem) clamp(3.125rem, 1.4583333333rem + 6.6666666667vw, 5.625rem);
}
.med1-2__list-inner {
  max-width: 1033px;
  margin-inline: auto;
}
.med1-2__list-title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.5rem, 1.3125rem + 0.75vw, 1.875rem);
  font-weight: bold;
  text-align: center;
}
.med1-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: clamp(1.875rem, 1.2916666667rem + 2.3333333333vw, 2.75rem);
  margin-top: clamp(2.5rem, 0.4583333333rem + 8.1666666667vw, 5.5625rem);
}
.med1-2__item {
  font-weight: 500;
}
.med1-2__item-title {
  font-size: clamp(1.21875rem, 1.078125rem + 0.5625vw, 1.5rem);
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}
.med1-2__item-text {
  font-size: clamp(1rem, 0.9375rem + 0.25vw, 1.125rem);
  margin-top: -1;
}

.med1-3_pos {
  margin-top: clamp(4.375rem, 0.9090909091rem + 13.8636363636vw, 12rem);
  padding-bottom: clamp(7.5rem, -3.41796875rem + 43.671875vw, 42.4375rem);
}
.med1-3__inner {
  max-width: 1608px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med1-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med1-3__col {
  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-top: clamp(2.5rem, 1.5833333333rem + 3.6666666667vw, 3.875rem);
}
@media (max-width: 1000px) {
  .med1-3__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;
  }
}
.med1-3__box {
  max-width: 753px;
  width: 100%;
  margin-top: clamp(0rem, -1.9349226804rem + 3.0927835052vw, 1.3125rem);
}
.med1-3__box-title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.5rem, 0.4864690722rem + 1.6200294551vw, 2.1875rem);
  font-weight: 600;
  line-height: 1.75;
  --ls: 0.06em;
  white-space: pre-line;
}
@media (max-width: 1000px) {
  .med1-3__box-title {
    font-size: clamp(1.25rem, 1rem + 1vw, 1.5rem);
  }
}
.med1-3__box-text {
  font-size: clamp(1rem, 0.8157216495rem + 0.29455081vw, 1.125rem);
  --ls: 0.06em;
  white-space: pre-line;
  margin-top: clamp(1.25rem, -2.1591494845rem + 5.4491899853vw, 3.5625rem);
}
.med1-3__img {
  max-width: 802px;
  width: 100%;
}
@media (max-width: 1000px) {
  .med1-3__img {
    max-width: 753px;
  }
}
.med1-3__fee {
  margin-top: clamp(3.125rem, -0.975rem + 16.4vw, 10.8125rem);
  margin-inline: auto;
}

.med2 {
  padding-bottom: 150px;
}

.med3-2_pos {
  margin-top: clamp(4.375rem, 1.25rem + 12.5vw, 12.8125rem);
  padding-bottom: clamp(7.5rem, -1.19140625rem + 34.765625vw, 35.3125rem);
}
.med3-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med3-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med3-2__items {
  max-width: 1165px;
  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.3125rem, 1.4791666667rem + 3.3333333333vw, 3.5625rem);
  margin-top: clamp(3.125rem, 0.7083333333rem + 9.6666666667vw, 6.75rem);
  margin-inline: auto;
}
.med3-2__item {
  font-weight: 500;
}
.med3-2__item-title {
  font-size: clamp(1.25rem, 1.1666666667rem + 0.3333333333vw, 1.375rem);
  line-height: 1;
  border-bottom: 1px solid var(--main);
  padding-bottom: 19px;
}
.med3-2__item-text {
  font-size: clamp(1rem, 0.9166666667rem + 0.3333333333vw, 1.125rem);
  margin-top: 10px;
}

.med4-2_pos {
  margin-top: clamp(4.375rem, 1.1079545455rem + 13.0681818182vw, 11.5625rem);
  padding-bottom: clamp(7.5rem, -2.65625rem + 40.625vw, 40rem);
}
.med4-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med4-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med4-2__box {
  margin-top: clamp(2.5rem, -0.125rem + 10.5vw, 6.4375rem);
}

.med5-2_pos {
  margin-top: clamp(4.375rem, 1.1931818182rem + 12.7272727273vw, 11.375rem);
  padding-bottom: clamp(7.5rem, 0.0231481481rem + 29.9074074074vw, 27.6875rem);
}
.med5-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med5-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med5-2__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.875rem, -2.4943181818rem + 9.0909090909vw, 3.8125rem) clamp(0.9375rem, -3.1038533835rem + 6.4661654135vw, 3.625rem);
  margin-top: 51px;
}
.med5-2__item {
  max-width: clamp(21.125rem, -1.1444281525rem + 46.3343108504vw, 31rem);
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--base2);
}
@media (max-width: 768px) {
  .med5-2__item {
    max-width: 400px;
  }
}
.med5-2__box {
  padding: 19px 15px 42px;
}
.med5-2__item-title {
  max-width: 386px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.625rem, 1.0612170088rem + 1.1730205279vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 5px;
}
@media (max-width: 768px) {
  .med5-2__item-title {
    font-size: clamp(1.375rem, 1.1032608696rem + 1.0869565217vw, 1.625rem);
  }
}
.med5-2__item-text {
  font-size: clamp(1.0625rem, 0.9215542522rem + 0.293255132vw, 1.125rem);
  font-weight: 500;
  max-width: 400px;
  margin-top: clamp(1.25rem, 0.7744565217rem + 1.902173913vw, 1.6875rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .med5-2__item-text {
    font-size: clamp(1rem, 0.9320652174rem + 0.2717391304vw, 1.0625rem);
  }
}

.med6-2_pos {
  margin-top: clamp(4.375rem, 1.25rem + 12.5vw, 11.25rem);
}
.med6-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med6-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med6-2__list {
  margin-top: clamp(2.5rem, 2.1022727273rem + 1.5909090909vw, 3.375rem);
}

.med6-3_pos {
  margin-top: clamp(4.375rem, 0.9943181818rem + 13.5227272727vw, 11.8125rem);
  padding-bottom: clamp(7.5rem, 5.0462962963rem + 9.8148148148vw, 14.125rem);
}
.med6-3__inner {
  max-width: 1305px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med6-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med6-3__subtitle {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  margin-top: clamp(1.875rem, 1.1666666667rem + 2.8333333333vw, 2.9375rem);
}
.med6-3__text {
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  white-space: pre-line;
  margin-top: clamp(1.875rem, 1.1363636364rem + 2.9545454545vw, 3.5rem);
}
.med6-3__img {
  max-width: 1280px;
  margin-top: 32px;
  margin-inline: auto;
}

.med7-2_pos {
  margin-top: clamp(4.375rem, -0.0852272727rem + 17.8409090909vw, 14.1875rem);
  padding-bottom: clamp(7.5rem, -0.462962963rem + 31.8518518519vw, 29rem);
}
.med7-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med7-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med7-2__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.875rem, -2.4943181818rem + 9.0909090909vw, 3.8125rem) clamp(0.9375rem, -3.1038533835rem + 6.4661654135vw, 3.625rem);
  margin-top: 49px;
}
.med7-2__item {
  max-width: clamp(21.125rem, -1.1444281525rem + 46.3343108504vw, 31rem);
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--base2);
}
@media (max-width: 768px) {
  .med7-2__item {
    max-width: 400px;
  }
}
.med7-2__box {
  padding: 19px 15px 42px;
}
.med7-2__item-title {
  max-width: 386px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.625rem, 1.0612170088rem + 1.1730205279vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 5px;
}
@media (max-width: 768px) {
  .med7-2__item-title {
    font-size: clamp(1.375rem, 1.1032608696rem + 1.0869565217vw, 1.625rem);
  }
}
.med7-2__item-text {
  font-size: clamp(1.0625rem, 0.9215542522rem + 0.293255132vw, 1.125rem);
  font-weight: 500;
  max-width: 400px;
  margin-top: clamp(1.25rem, 0.7744565217rem + 1.902173913vw, 1.6875rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .med7-2__item-text {
    font-size: clamp(1rem, 0.9320652174rem + 0.2717391304vw, 1.0625rem);
  }
}

.med8-2_pos {
  margin-top: clamp(4.375rem, 1.1079545455rem + 13.0681818182vw, 11.5625rem);
  padding-bottom: clamp(7.5rem, -0.8984375rem + 33.59375vw, 34.375rem);
}
.med8-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med8-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med8-2__box {
  margin-top: clamp(2.5rem, 2.0833333333rem + 1.6666666667vw, 3.125rem);
}

.med9-2_pos {
  margin-top: clamp(4.375rem, -0.2272727273rem + 18.4090909091vw, 14.5rem);
}
.med9-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med9-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med9-2__list {
  margin-top: clamp(2.5rem, 1.9166666667rem + 2.3333333333vw, 3.375rem);
}

.med9-3_pos {
  margin-top: clamp(4.375rem, 1.8465909091rem + 10.1136363636vw, 9.9375rem);
}
.med9-3__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med9-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med9-3__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;
  position: relative;
  row-gap: clamp(2.5rem, 1.3352272727rem + 4.6590909091vw, 5.0625rem);
  margin-top: clamp(2.5rem, 1.4488636364rem + 4.2045454545vw, 4.8125rem);
}
.med9-3__items::after {
  content: "";
  width: 6px;
  height: 100%;
  background-color: var(--main);
  position: absolute;
  top: 0;
  right: 50%;
  -webkit-transform: translateX(50%);
      -ms-transform: translateX(50%);
          transform: translateX(50%);
  z-index: -1;
}
.med9-3__item {
  background-color: var(--base);
  border: 1px solid var(--main);
  padding: clamp(1.5625rem, 0.7102272727rem + 3.4090909091vw, 3.4375rem) 15px clamp(1.875rem, 1.3352272727rem + 2.1590909091vw, 3.0625rem);
}
.med9-3__item-inner {
  max-width: 1214px;
  margin-inline: auto;
}
.med9-3__title {
  max-width: 1200px;
  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: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: clamp(0.625rem, 0.1136363636rem + 2.0454545455vw, 1.75rem);
     -moz-column-gap: clamp(0.625rem, 0.1136363636rem + 2.0454545455vw, 1.75rem);
          column-gap: clamp(0.625rem, 0.1136363636rem + 2.0454545455vw, 1.75rem);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 10px;
  padding-left: clamp(0rem, -0.6696428571rem + 1.0714285714vw, 0.1875rem);
}
.med9-3__title-text {
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  line-height: 1.75;
}
.med9-3__number {
  min-width: clamp(2.1875rem, 1.7329545455rem + 1.8181818182vw, 3.1875rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1.625rem, 1.2701704545rem + 1.4193181818vw, 2.405625rem);
  line-height: 1;
}
.med9-3__text {
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  margin-top: clamp(1.25rem, 0.7670454545rem + 1.9318181818vw, 2.3125rem);
  padding-left: clamp(2.875rem, 1.7386363636rem + 4.5454545455vw, 5.375rem);
}

.med9-4_pos {
  margin-top: clamp(4.375rem, 1.2215909091rem + 12.6136363636vw, 11.3125rem);
  padding-bottom: clamp(7.5rem, 1.3194444444rem + 24.7222222222vw, 24.1875rem);
}
.med9-4__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med9-4__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}

.med10-2_pos {
  margin-top: clamp(4.375rem, 0.0568181818rem + 17.2727272727vw, 13.875rem);
}
.med10-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med10-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med10-2__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.875rem, -2.4943181818rem + 9.0909090909vw, 3.8125rem) clamp(0.9375rem, -3.1038533835rem + 6.4661654135vw, 3.625rem);
  margin-top: 50px;
}
.med10-2__item {
  max-width: clamp(21.125rem, -1.1444281525rem + 46.3343108504vw, 31rem);
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: var(--base2);
}
@media (max-width: 768px) {
  .med10-2__item {
    max-width: 400px;
  }
}
.med10-2__box {
  padding: 19px 15px 42px;
}
.med10-2__item-title {
  max-width: 386px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.625rem, 1.0612170088rem + 1.1730205279vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 5px;
}
@media (max-width: 768px) {
  .med10-2__item-title {
    font-size: clamp(1.375rem, 1.1032608696rem + 1.0869565217vw, 1.625rem);
  }
}
.med10-2__item-text {
  font-size: clamp(1.0625rem, 0.9215542522rem + 0.293255132vw, 1.125rem);
  font-weight: 500;
  max-width: 400px;
  margin-top: clamp(1.25rem, 0.7744565217rem + 1.902173913vw, 1.6875rem);
  margin-inline: auto;
}
@media (max-width: 768px) {
  .med10-2__item-text {
    font-size: clamp(1rem, 0.9320652174rem + 0.2717391304vw, 1.0625rem);
  }
}

.med10-3_pos {
  margin-top: clamp(4.375rem, -1.3636363636rem + 22.9545454545vw, 17rem);
}
.med10-3__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med10-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}

.med10-4_pos {
  margin-top: clamp(4.375rem, 1.0795454545rem + 13.1818181818vw, 11.625rem);
  padding-bottom: clamp(7.5rem, -1.62109375rem + 36.484375vw, 36.6875rem);
}
.med10-4__inner {
  max-width: 1094px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med10-4__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med10-4__risk {
  background-color: var(--base2);
  margin-top: clamp(2.5rem, 1.3333333333rem + 4.6666666667vw, 4.25rem);
  padding: clamp(1.875rem, 1.5rem + 1.5vw, 2.4375rem) 15px 31px;
}
.med10-4__risk-inner {
  max-width: 986px;
  margin-inline: auto;
}
.med10-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: clamp(1.5625rem, 0.7708333333rem + 3.1666666667vw, 2.75rem);
  font-weight: 500;
}
.med10-4__risk-title {
  font-size: clamp(1.125rem, 1.0416666667rem + 0.3333333333vw, 1.25rem);
  line-height: 1.75;
}
.med10-4__texts {
  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;
  margin-top: 1px;
}
.med10-4__text {
  font-size: clamp(1rem, 0.9166666667rem + 0.3333333333vw, 1.125rem);
  text-indent: -1em;
  padding-left: 1em;
}

.med11-2_pos {
  margin-top: clamp(4.375rem, -0.1420454545rem + 18.0681818182vw, 14.3125rem);
}
.med11-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med11-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med11-2__list {
  margin-top: 54px;
}

.med11-3_pos {
  margin-top: clamp(4.375rem, 2.3863636364rem + 7.9545454545vw, 8.75rem);
}
.med11-3__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) {
  .med11-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med11-3__slider {
  position: relative;
  margin-top: 32px;
  padding: 0 clamp(0rem, -4.9311730506rem + 10.2599179207vw, 4.6875rem);
}
.med11-3__swiper {
  max-width: 1446px;
  margin-inline: auto;
}
.med11-3__slide {
  background-color: #f5f5f5;
  padding: clamp(1.5625rem, 0.4755434783rem + 4.347826087vw, 2.5625rem) 15px clamp(2.5rem, 1.4130434783rem + 4.347826087vw, 3.5rem);
}
.med11-3__slide-inner {
  max-width: 1285px;
  margin-inline: auto;
}
.med11-3__slide-title {
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
  --ls: 0.06em;
}
.med11-3__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: clamp(1.75rem, -0.3182387312rem + 3.67278798vw, 3.125rem);
     -moz-column-gap: clamp(1.75rem, -0.3182387312rem + 3.67278798vw, 3.125rem);
          column-gap: clamp(1.75rem, -0.3182387312rem + 3.67278798vw, 3.125rem);
  position: relative;
  margin-top: clamp(1.5625rem, -0.2038043478rem + 7.0652173913vw, 3.1875rem);
}
@media (max-width: 900px) {
  .med11-3__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: 40px;
  }
}
.med11-3__col::before {
  content: "";
  width: clamp(0.9375rem, -0.5666736227rem + 2.6711185309vw, 1.9375rem);
  aspect-ratio: 31/107;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
          clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: calc(50% + 17px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: var(--main);
}
@media (max-width: 900px) {
  .med11-3__col::before {
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
        -ms-transform: translate(-50%, -50%) rotate(90deg);
            transform: translate(-50%, -50%) rotate(90deg);
  }
}
.med11-3__col-item {
  max-width: 589px;
  width: 100%;
}
.med11-3__col-text {
  height: clamp(3.125rem, 2.5113636364rem + 2.4545454545vw, 4.8125rem);
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1.25rem, 1.0227272727rem + 0.9090909091vw, 1.875rem);
  font-weight: 500;
  --ls: 0.06em;
}
.med11-3__img-wrapper {
  margin-top: 20px;
}
.med11-3__img {
  height: 100%;
  aspect-ratio: 589/389;
  -o-object-fit: cover;
     object-fit: cover;
}
.med11-3__dl {
  display: grid;
  grid-template-columns: clamp(10.5625rem, -16.5126252087rem + 48.0801335559vw, 28.5625rem) 1fr;
  line-height: 1.75;
  margin-top: 51px;
  border: 1px solid var(--text);
}
@media (max-width: 600px) {
  .med11-3__dl {
    grid-template-columns: 1fr;
  }
}
.med11-3__dt {
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1rem, 0.8636363636rem + 0.5454545455vw, 1.375rem);
  font-weight: 400;
  padding: 19px 0;
  padding-left: clamp(0.9375rem, -6.3013355593rem + 12.8547579299vw, 1.75rem);
}
@media (max-width: 600px) {
  .med11-3__dt {
    text-align: center;
    padding: 10px;
  }
}
.med11-3__dt:not(:last-of-type) {
  border-bottom: 1px solid var(--text);
}
@media (max-width: 600px) {
  .med11-3__dt:not(:last-of-type) {
    border-bottom: none;
  }
}
.med11-3__dd {
  background-color: var(--base);
  font-size: clamp(1rem, 0.9545454545rem + 0.1818181818vw, 1.125rem);
  white-space: pre-line;
  padding: 22px clamp(0.625rem, -1.2552170284rem + 3.3388981636vw, 1.875rem);
}
.med11-3__dd:not(:last-of-type) {
  border-bottom: 1px solid var(--text);
}
@media (max-width: 600px) {
  .med11-3__dd:not(:last-of-type) {
    border-bottom: none;
  }
}
.med11-3__note {
  font-size: clamp(1rem, 0.9545454545rem + 0.1818181818vw, 1.125rem);
  line-height: 1;
  margin-top: 6px;
  margin-left: clamp(0rem, -1.786206177rem + 3.1719532554vw, 1.1875rem);
}
.med11-3__prev, .med11-3__next {
  width: clamp(1.875rem, -1.9384404925rem + 7.9343365253vw, 5.5rem);
  height: inherit;
  aspect-ratio: 88/161;
  top: calc(50% + clamp(0rem, -4.3693181818rem + 9.0909090909vw, 1.3125rem));
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.med11-3__prev::after, .med11-3__next::after {
  content: "";
  width: 100%;
  aspect-ratio: 88/161;
  background-repeat: no-repeat;
  background-size: contain;
  margin: auto;
}
.med11-3__prev {
  left: 0;
}
.med11-3__prev::after {
  background-image: url(../images/icon-prev-med.svg);
}
.med11-3__next {
  right: 0;
}
.med11-3__next::after {
  background-image: url(../images/icon-next-med.svg);
}

.med11-4_pos {
  margin-top: clamp(4.375rem, 1.1079545455rem + 13.0681818182vw, 11.5625rem);
}
.med11-4__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med11-4__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}

.med11-5_pos {
  margin-top: clamp(4.375rem, 1.0795454545rem + 13.1818181818vw, 11.625rem);
  padding-bottom: clamp(7.5rem, -0.01953125rem + 30.078125vw, 31.5625rem);
}
.med11-5__inner {
  max-width: 1094px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med11-5__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med11-5__risk {
  background-color: var(--base2);
  margin-top: clamp(2.5rem, 1.3333333333rem + 4.6666666667vw, 4.25rem);
  padding: 30px 15px 31px;
}
.med11-5__risk-inner {
  max-width: 986px;
  margin-inline: auto;
}
.med11-5__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.5625rem, 0.7708333333rem + 3.1666666667vw, 2.75rem);
  font-weight: 500;
}
.med11-5__risk-title {
  font-size: clamp(1.125rem, 1.0416666667rem + 0.3333333333vw, 1.25rem);
  line-height: 1.75;
}
.med11-5__texts {
  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: 5px;
  margin-top: 4px;
}
.med11-5__text {
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  line-height: 1.75;
  text-indent: -1em;
  padding-left: 1em;
}

.med12-2_pos {
  margin-top: clamp(4.375rem, 0.9090909091rem + 13.8636363636vw, 12rem);
}
.med12-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med12-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med12-2__text-1 {
  max-width: 1238px;
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  --ls: 0.06em;
  white-space: pre-line;
  margin-top: clamp(1.875rem, 1.0833333333rem + 3.1666666667vw, 3.0625rem);
  margin-inline: auto;
}
.med12-2__box {
  margin-top: clamp(2.5rem, 1.375rem + 4.5vw, 4.1875rem);
  padding-bottom: clamp(2.5rem, 1.125rem + 5.5vw, 4.5625rem);
}
.med12-2__box-text-2 {
  max-width: 494px;
  -webkit-transform: translateX(calc(clamp(0rem, -21.7948232323rem + 23.2323232323vw, 1.4375rem) * -1));
      -ms-transform: translateX(calc(clamp(0rem, -21.7948232323rem + 23.2323232323vw, 1.4375rem) * -1));
          transform: translateX(calc(clamp(0rem, -21.7948232323rem + 23.2323232323vw, 1.4375rem) * -1));
  border: 1px solid var(--accent-d);
  border-radius: 6px;
  margin-top: 24px;
  padding: 0 10px 11px 22px;
}
@media (max-width: 1000px) {
  .med12-2__box-text-2 {
    margin-inline: auto;
  }
}
.med12-2__box-text-3 {
  margin-top: 25px;
}
.med12-2__feature {
  max-width: 1291px;
  font-weight: 500;
  margin-top: 50px;
  margin-inline: auto;
}
.med12-2__feature-title {
  font-size: clamp(1.25rem, 1.1931818182rem + 0.2272727273vw, 1.375rem);
  line-height: 1;
  --ls: 0.06em;
}
.med12-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;
  margin-top: 8px;
}
.med12-2__item {
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  --ls: 0.06em;
  text-indent: -1.3em;
  padding-left: 1.3em;
}
.med12-2__item_indent {
  text-indent: -1.8em;
  padding-left: 1.8em;
}
.med12-2__link {
  max-width: 289px;
  height: 79px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 10px;
  position: relative;
  background-color: var(--accent-d);
  color: var(--base);
  line-height: 1;
  margin-top: clamp(2.5rem, 1.0416666667rem + 5.8333333333vw, 4.6875rem);
  margin-inline: auto;
  display: none;
}
.med12-2__link::after {
  content: "";
  width: 29px;
  aspect-ratio: 29/28;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
          clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #7799b4;
}
.med12-2__link-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.375rem;
  font-weight: 600;
  --ls: 0.06em;
}
.med12-2__link-en {
  font-size: 1.125rem;
  font-weight: 500;
  --ls: 0.06em;
}

@media (hover: hover) and (pointer: fine) {
  .med12-2__link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .med12-2__link:hover, .med12-2__link:focus {
    background-color: #7799b4;
  }
  .med12-2__link:hover::after, .med12-2__link:focus::after {
    background-color: var(--accent-d);
  }
  .med12-2__link::after {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
}
.med12-3_pos {
  margin-top: clamp(4.375rem, 0.8101851852rem + 14.2592592593vw, 14rem);
  padding-bottom: clamp(7.5rem, -1.9666666667rem + 37.8666666667vw, 43rem);
}
.med12-3__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med12-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}

@media (max-width: 1000px) {
  .med13__br {
    display: none;
  }
}
@media (max-width: 600px) {
  .med13__br {
    display: block;
  }
}

.med13-2_pos {
  margin-top: clamp(4.375rem, 0.7175925926rem + 14.6296296296vw, 14.25rem);
}
.med13-2__inner {
  max-width: 1604px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med13-2__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med13-2__main-title {
  font-size: clamp(1.1875rem, 0.875rem + 1.25vw, 1.875rem);
}
.med13-2__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: clamp(2.5rem, -0.9166666667rem + 13.6666666667vw, 7.625rem);
  margin-top: 52px;
}
.med13-2__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: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  margin-top: 8px;
  margin-inline: auto;
}
@media (max-width: 1000px) {
  .med13-2__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;
  }
}
.med13-2__title {
  max-width: 1526px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 11px;
     -moz-column-gap: 11px;
          column-gap: 11px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 6px;
  padding-left: clamp(0rem, -0.3125rem + 1.25vw, 0.6875rem);
}
.med13-2__title::before {
  content: "";
  min-width: clamp(0.625rem, 0.4829545455rem + 0.5681818182vw, 0.9375rem);
  aspect-ratio: 15/45;
  background: url(../images/icon-title-deco-1.svg) no-repeat 0 0/contain;
  margin-top: 3px;
}
.med13-2__box {
  max-width: 1445px;
  margin-top: 22px;
  margin-inline: auto;
}
.med13-2__text {
  max-width: 1431px;
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  white-space: pre-line;
}

.med13-3_pos {
  margin-top: clamp(4.375rem, 0.4861111111rem + 15.5555555556vw, 14.875rem);
}
.med13-3__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med13-3__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med13-3__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;
  position: relative;
  row-gap: clamp(2.5rem, 1.3352272727rem + 4.6590909091vw, 5.0625rem);
  margin-top: clamp(2.5rem, 1.1931818182rem + 5.2272727273vw, 5.375rem);
}
.med13-3__items::after {
  content: "";
  width: 6px;
  height: 100%;
  background-color: var(--main);
  position: absolute;
  top: 0;
  right: 50%;
  -webkit-transform: translateX(50%);
      -ms-transform: translateX(50%);
          transform: translateX(50%);
  z-index: -1;
}
.med13-3__item {
  background-color: var(--base);
  border: 1px solid var(--main);
  padding: clamp(1.5625rem, 1.0795454545rem + 1.9318181818vw, 2.625rem) 15px clamp(1.875rem, 1.4488636364rem + 1.7045454545vw, 2.8125rem);
}
.med13-3__item-inner {
  max-width: 1214px;
  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: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  margin-inline: auto;
}
@media (max-width: 900px) {
  .med13-3__item-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: 30px;
  }
}
.med13-3__box {
  max-width: 712px;
  width: 100%;
  margin-top: clamp(0rem, -2.3991519174rem + 3.8348082596vw, 0.8125rem);
}
.med13-3__title {
  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: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: clamp(0.625rem, 0.1136363636rem + 2.0454545455vw, 1.75rem);
     -moz-column-gap: clamp(0.625rem, 0.1136363636rem + 2.0454545455vw, 1.75rem);
          column-gap: clamp(0.625rem, 0.1136363636rem + 2.0454545455vw, 1.75rem);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  border-bottom: 1px solid var(--main);
  margin-inline: auto;
  padding-bottom: 10px;
  padding-left: clamp(0rem, -0.6696428571rem + 1.0714285714vw, 0.1875rem);
}
.med13-3__title-text {
  font-size: clamp(1.25rem, 0.9659090909rem + 1.1363636364vw, 1.875rem);
  line-height: 1.75;
}
.med13-3__number {
  min-width: clamp(2.1875rem, 1.7329545455rem + 1.8181818182vw, 3.1875rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: clamp(1.625rem, 1.2701704545rem + 1.4193181818vw, 2.405625rem);
  line-height: 1;
}
.med13-3__text {
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  margin-top: clamp(1.25rem, 0.7670454545rem + 1.9318181818vw, 2.3125rem);
  padding-left: clamp(2.875rem, 1.7386363636rem + 4.5454545455vw, 5.375rem);
}
.med13-3__img {
  max-width: 468px;
  width: 100%;
}

.med13-4_pos {
  margin-top: clamp(4.375rem, 1.25rem + 12.5vw, 11.25rem);
  padding-bottom: clamp(7.5rem, 0.64453125rem + 27.421875vw, 29.4375rem);
}
.med13-4__inner {
  max-width: 1403px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
}
@media (max-width: 768px) {
  .med13-4__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem);
  }
}
.med13-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: clamp(2.5rem, 1.5rem + 4vw, 4rem);
  margin-top: clamp(2.5rem, 0.9166666667rem + 6.3333333333vw, 4.875rem);
}
.med13-4__title {
  -webkit-clip-path: polygon(0 0, 97% 0%, 100% 35%, 100% 100%, 3% 100%, 0% 65%);
          clip-path: polygon(0 0, 97% 0%, 100% 35%, 100% 100%, 3% 100%, 0% 65%);
  background-color: var(--accent-d);
  color: var(--base);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: clamp(1.25rem, 1rem + 1vw, 1.875rem);
  font-weight: 600;
  line-height: 1.75;
  --ls: 0.06em;
  padding: 0.640625rem clamp(0.9375rem, -0.3625rem + 5.2vw, 4.1875rem);
}
.med13-4__text {
  max-width: 1280px;
  font-size: clamp(1rem, 0.9431818182rem + 0.2272727273vw, 1.125rem);
  font-weight: 500;
  --ls: 0.06em;
  margin-top: 22px;
  margin-inline: auto;
}

/*###################################################################
  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;
  padding-bottom: 150px;
}
@media (max-width: 768px) {
  .news-list__inner {
    padding: 0 clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) 150px;
  }
}
@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(--base);
  border: 1px solid #75778d;
}
@media (max-width: 600px) {
  .news-list__post-link {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
}
.news-list__thumbnail {
  max-width: 300px;
  height: 100%;
  overflow: hidden;
}
@media (max-width: 600px) {
  .news-list__thumbnail {
    max-width: 100%;
  }
}
.news-list__thumbnail img {
  height: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.news-list__text-box {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media (max-width: 600px) {
  .news-list__text-box {
    padding-top: 0;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 20px;
  }
}
.news-list__date {
  display: block;
  color: var(--main);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75;
}
.news-list__post-title {
  font-size: clamp(1.125rem, 0.6785714286rem + 1.1904761905vw, 1.25rem);
  line-height: 1.75;
  text-align: start;
  word-break: break-all;
  padding-right: 15px;
}
@media (max-width: 600px) {
  .news-list__post-title {
    padding-right: 0;
  }
}
.news-list__no-post {
  height: 200px;
  display: grid;
  place-items: center;
  background-color: var(--main);
  color: var(--base);
  font-size: 1.25rem;
  font-weight: 500;
}
.news-list__pagination {
  font-size: 1.25rem;
  margin-top: 150px;
}
@media (max-width: 768px) {
  .news-list__pagination {
    margin-top: 80px;
  }
}
.news-list__pagination ul.page-numbers {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.125rem, -0.875rem + 8vw, 2.125rem);
  margin-inline: auto;
}
.news-list__pagination ul.page-numbers li {
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
}
.news-list__pagination ul.page-numbers li .page-numbers {
  --spacing: 0;
}
.news-list__pagination .page-numbers.current {
  color: var(--main);
}

@media (hover: hover) and (pointer: fine) {
  .news-list__post-link {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .news-list__post-link:hover .news-list__thumbnail img, .news-list__post-link:focus .news-list__thumbnail img {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .news-list__post-link:hover .news-list__post-title, .news-list__post-link:focus .news-list__post-title {
    color: var(--main);
    text-decoration: underline;
  }
  .news-list__thumbnail img {
    -webkit-transition: -webkit-transform ease 0.4s;
    transition: -webkit-transform ease 0.4s;
    transition: transform ease 0.4s;
    transition: transform ease 0.4s, -webkit-transform ease 0.4s;
  }
  .news-list__post-title {
    -webkit-transition: color ease 0.4s;
    transition: color ease 0.4s;
    -webkit-text-decoration-color: var(--main);
            text-decoration-color: var(--main);
  }
  .news-list__pagination a {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .news-list__pagination a:hover, .news-list__pagination a:focus {
    opacity: 0.7;
  }
}
.news-post_pos {
  margin-top: clamp(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(--base);
  border: 1px solid #75778d;
  padding: 50px 20px 100px;
}
@media (max-width: 768px) {
  .news-post__bg {
    padding: 50px clamp(0.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) 100px;
  }
}
.news-post__date {
  display: block;
  color: var(--main);
  font-size: 1.25rem;
  font-weight: 500;
}
@media (max-width: 768px) {
  .news-post__date {
    font-size: 1.125rem;
  }
}
.news-post__title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.75;
  word-break: break-all;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .news-post__title {
    font-size: 1.375rem;
    margin-top: 10px;
  }
}
.news-post__thumbnail {
  margin-top: 40px;
}
.news-post__editor {
  margin-top: 40px;
}

.news-post-pager {
  background-color: var(--base);
  border: 1px solid #75778d;
}
.news-post-pager_pos {
  max-width: 840px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin-inline: auto;
  padding-right: 20px;
  padding-left: 20px;
  margin-top: 80px;
}
@media (max-width: 768px) {
  .news-post-pager_pos {
    margin-top: 60px;
  }
}
.news-post-pager__nav {
  height: 70px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--main);
  font-size: clamp(1rem, 0.1071428571rem + 3.8095238095vw, 1.25rem);
  font-weight: 500;
  padding-right: clamp(0rem, -4.4642857143rem + 19.0476190476vw, 1.25rem);
  padding-left: clamp(0rem, -4.4642857143rem + 19.0476190476vw, 1.25rem);
}
.news-post-pager__link {
  --spacing: 0;
}
.news-post-pager__blank {
  min-width: 106px;
  min-width: clamp(5.4375rem, 0.5267857143rem + 20.9523809524vw, 6.8125rem);
}

@media (hover: hover) and (pointer: fine) {
  .news-post-pager__link {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .news-post-pager__link:hover, .news-post-pager__link:focus {
    opacity: 0.7;
  }
}
/*###################################################################
  page-404（page）
###################################################################*/
.page-404_pos {
  margin-top: clamp(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;
  padding-bottom: 100px;
}
@media (max-width: 768px) {
  .page-404__inner {
    padding: 0 clamp(0.9375rem, -0.0815217391rem + 4.0760869565vw, 1.875rem) 100px;
  }
}
.page-404__title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-size: 1.5rem;
  font-weight: 600;
}
.page-404__text {
  white-space: pre-line;
  margin-top: 50px;
}
.page-404__button-wrapper {
  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;
  margin-top: 70px;
}
.page-404__button {
  width: 175px;
  height: 48px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  border: 1px solid var(--text);
  margin-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制御用）
###################################################################*/