@charset "UTF-8";
*, ::before, ::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
}

main {
  display: block;
}

p, table, blockquote, address, pre, iframe, form, figure, dl {
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
}

ul, ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

dt {
  font-weight: normal;
}

dd {
  margin-left: 0;
}

hr {
  border-top-width: 1px;
  box-sizing: content-box;
  clear: both;
  color: inherit;
  height: 0;
  margin: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: inherit;
}

address {
  font-style: inherit;
}

a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: inherit;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img, embed, object, iframe {
  vertical-align: bottom;
}

button, input, optgroup, select, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background: transparent;
  border-radius: 0;
  color: inherit;
  font: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  text-align: inherit;
  vertical-align: middle;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  cursor: pointer;
}

button[disabled], [type=button][disabled], [type=reset][disabled], [type=submit][disabled] {
  cursor: default;
}

button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring, [type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

select::-ms-expand {
  display: none;
}

option {
  padding: 0;
}

fieldset {
  margin: 0;
  min-width: 0;
  padding: 0;
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

label[for] {
  cursor: pointer;
}

details {
  display: block;
}

summary {
  display: list-item;
}

[contenteditable] {
  outline: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td, th {
  font-weight: normal;
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: normal;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  color: #4D4D4D;
  font-size: 1rem;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 400;
  text-rendering: optimizeLegibility;
  font-kerning: normal;
  font-variant-ligatures: common-ligatures;
  font-feature-settings: "kern", "liga", "clig", "calt";
  -webkit-text-size-adjust: 100%;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

object {
  display: inline-block;
  pointer-events: none;
}

a {
  display: block;
  color: #4D4D4D;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
}
@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media (hover: hover) {
  a:hover {
    opacity: 0.6;
    transition: all 0.3s ease;
  }
}

input[type=submit] {
  transition: all 0.3s ease;
  cursor: pointer;
}
@media (hover: hover) {
  input[type=submit]:hover {
    opacity: 0.6;
    transition: all 0.3s ease;
  }
}

button {
  transition: all 0.3s ease;
  cursor: pointer;
}
@media (hover: hover) {
  button:hover {
    opacity: 0.6;
    transition: all 0.3s ease;
  }
}

:focus {
  outline: none;
}

.u-hide {
  display: none !important;
}

.u-opacity {
  opacity: 0;
}

.u-sp {
  display: block !important;
}
@media (min-width: 768px) {
  .u-sp {
    display: none !important;
  }
}

.u-spTab {
  display: block !important;
}
@media (min-width: 1064px) {
  .u-spTab {
    display: none !important;
  }
}

.u-tab {
  display: none !important;
}
@media (min-width: 768px) {
  .u-tab {
    display: block !important;
  }
}
@media (min-width: 1064px) {
  .u-tab {
    display: none !important;
  }
}

.u-tabPc {
  display: none !important;
}
@media (min-width: 768px) {
  .u-tabPc {
    display: block !important;
  }
}

.u-pc {
  display: none !important;
}
@media (min-width: 1064px) {
  .u-pc {
    display: block !important;
  }
}

.u-spPc {
  display: none !important;
}
@media (max-width: 767px) {
  .u-spPc {
    display: block !important;
  }
}
@media (min-width: 1064px) {
  .u-spPc {
    display: block !important;
  }
}

.u-animation--fadeUp {
  opacity: 0;
}

.u-animation--is .uu-animation--fadeUp {
  -webkit-animation: fadeup 1s 0.5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: fadeup 1s 0.5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

.u-animation--is.u-animation--fadeUp {
  -webkit-animation: fadeup 1s 0.5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: fadeup 1s 0.5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

@-webkit-keyframes fadeup {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeup {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.c-inner {
  position: relative;
  width: min(100%, 1064px);
  padding: 0 clamp(16px, 2.8070175439vw, 32px);
  margin: 0 auto;
  z-index: 1;
}

.c-before::before {
  content: "";
  position: absolute;
  display: block;
}

.c-after::after {
  content: "";
  position: absolute;
  display: block;
}

.c-bf::before, .c-bf::after {
  content: "";
  position: absolute;
  display: block;
}

.c-button {
  position: relative;
  background-color: #ffffff;
  cursor: pointer;
}
.c-button > * {
  position: relative;
  display: block;
  line-height: 1;
  width: 100%;
  transition-property: all;
}

.c-button__type {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 999px;
  margin-right: auto;
  margin-left: auto;
}
.c-button__type > * {
  color: #ffffff;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  font-weight: 700;
  text-align: center;
  border-radius: 999px;
  padding-top: clamp(12.5px, 2.1929824561vw, 25px);
  padding-right: clamp(44px, 7.7192982456vw, 88px);
  padding-bottom: clamp(12.5px, 2.1929824561vw, 25px);
  padding-left: clamp(22px, 3.8596491228vw, 44px);
}
@media (min-width: 768px) {
  .c-button__type > * {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    padding-top: clamp(6.25px, 1.0964912281vw, 12.5px);
    padding-right: clamp(22px, 3.8596491228vw, 44px);
    padding-bottom: clamp(6.25px, 1.0964912281vw, 12.5px);
    padding-left: clamp(11px, 1.9298245614vw, 22px);
  }
}
.c-button__type > *::after {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(20px, 3.5087719298vw, 40px);
  aspect-ratio: 16/17;
  top: 50%;
  right: clamp(16px, 2.8070175439vw, 32px);
  margin-top: calc(clamp(20px, 3.5087719298vw, 40px) / 16 * 17 / -2);
}
@media (min-width: 768px) {
  .c-button__type > *::after {
    width: clamp(10px, 1.7543859649vw, 20px);
    right: clamp(8px, 1.4035087719vw, 16px);
    margin-top: calc(clamp(10px, 1.7543859649vw, 20px) / 16 * 17 / -2);
  }
}

.c-button__type02 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  margin-left: auto;
}
@media (min-width: 768px) {
  .c-button__type02 {
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}
.c-button__type02 > * {
  color: #ffffff;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  padding-top: clamp(7.5px, 1.3157894737vw, 15px);
  padding-right: clamp(28px, 4.9122807018vw, 56px);
  padding-bottom: clamp(7.5px, 1.3157894737vw, 15px);
  padding-left: clamp(12px, 2.1052631579vw, 24px);
}
@media (min-width: 768px) {
  .c-button__type02 > * {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
    padding-top: clamp(3.25px, 0.6578947368vw, 7.5px);
    padding-right: clamp(14px, 2.4561403509vw, 28px);
    padding-bottom: clamp(3.25px, 0.6578947368vw, 7.5px);
    padding-left: clamp(6px, 1.0526315789vw, 12px);
  }
}
.c-button__type02 > *::after {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(16px, 2.8070175439vw, 32px);
  aspect-ratio: 16/17;
  top: 50%;
  right: clamp(8px, 1.4035087719vw, 16px);
  margin-top: calc(clamp(16px, 2.8070175439vw, 32px) / 16 * 17 / -2);
}
@media (min-width: 768px) {
  .c-button__type02 > *::after {
    width: clamp(8px, 1.4035087719vw, 16px);
    right: clamp(4px, 0.701754386vw, 8px);
    margin-top: calc(clamp(8px, 1.4035087719vw, 16px) / 16 * 17 / -2);
  }
}

.c-button__green > * {
  background: #37BFBF;
}
.c-button__green > *::after {
  background-image: url(../img/cmn/icon_arrow_w.svg);
}

.c-form__content {
  display: block;
  margin-bottom: clamp(10px, 1.7543859649vw, 20px);
}
.c-form__content span {
  color: #E34A4A;
}

.c-form__text {
  color: #4D4D4D;
  width: 100%;
  border: 1px solid #999999;
}

.c-form__textarea {
  color: #4D4D4D;
  width: 100%;
  border: 1px solid #999999;
  resize: vertical;
}

.c-form__button {
  position: relative;
}
.c-form__button::after {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(20px, 3.5087719298vw, 40px);
  aspect-ratio: 16/17;
  top: 50%;
  right: clamp(16px, 2.8070175439vw, 32px);
  margin-top: calc(clamp(20px, 3.5087719298vw, 40px) / 16 * 17 / -2);
  background-image: url(../img/cmn/icon_arrow_w.svg);
}
@media (min-width: 768px) {
  .c-form__button::after {
    width: clamp(10px, 1.7543859649vw, 20px);
    right: clamp(8px, 1.4035087719vw, 16px);
    margin-top: calc(clamp(10px, 1.7543859649vw, 20px) / 16 * 17 / -2);
  }
}

/*.c-form__select__box {
  position: relative;
  background-color: $colorGray04;
  width: 52.48%;
  border: none;
  border-radius: 4px;

  @include mqMin($tabMin) {
    width: 50%;
  }

  &::after {
    pointer-events: none;
  }

  &::after {
    width: 0;
    height: 0;
    top: 50%;
    right: margin(23, 46);
    border-style: solid;
    border-right: margin(5, 10) solid transparent;
    border-left: margin(5, 10) solid transparent;
    border-top: margin(5, 10) solid $colorBlack;
    border-bottom: 0;
    margin-top: margin(-2.5, -5);

    @include mqMin($tabMin) {
      border-right: margin(2.5, 5) solid transparent;
      border-left: margin(2.5, 5) solid transparent;
      border-top: margin(2.5, 5) solid $colorBlack;
      margin-top: margin(-1.25, -2.5);
    }
  }
}

.c-form__select {
  background-color: transparent;
  border: none;
  width: 100%;
  height: auto;
  padding: {
    top: margin(12.5, 25)!important;
    right: margin(16, 32)!important;
    bottom: margin(12.5, 25)!important;
    left: margin(16, 32)!important;
  }
  cursor: pointer;

  @include mqMin($tabMin) {
    padding: {
      top: margin(5.25, 10.5)!important;
      right: margin(8, 16)!important;
      bottom: margin(5.25, 10.5)!important;
      left: margin(8, 16)!important;
    }
  }
}

.mw_wp_form_confirm {

  .c-form__select__box {
    background-color: transparent;

    &::after {
      content: none;
    }
  }
}

//---------------------------------------
// radio
//---------------------------------------
.mwform-radio-field {

  @include mqMax($spMax) {
    display: block;
    margin-left: 0!important;
  }
}

.mwform-radio-field-text {
  position: relative;
  display: inline-block;
  padding-left: margin(32, 64);
  cursor: pointer;

  @include mqMin($tabMin) {
    padding-left: margin(16, 32);
  }

  &:nth-last-of-type(n+2) {

    @include mqMax($spMax) {
      margin-bottom: margin(11, 22);
    }

    @include mqMin($tabMin) {
      padding-right: margin(16, 32);
    }
  }

  &::before,
  &::after {
    content: '';
    position: absolute;
    display: block;
  }

  &::before {
    width: margin(20, 40)!important;
    height: margin(20, 40)!important;
    top: 50%;
    left: 0;
    border: 2px solid $colorGray!important;
    border-radius: 50%;
    margin-top: margin(-10, -20)!important;

    @include mqMin($tabMin) {
      width: margin(10, 20)!important;
      height: margin(10, 20)!important;
      margin-top: margin(-5, -10)!important;
    }
  }

  &::after {
    background-color: $colorBlack!important;
    width: margin(12, 24)!important;
    height: margin(12, 24)!important;
    border-radius: 50%;
    top: 50%;
    left: margin(4, 8)!important;
    opacity: 0;
    transition: .3s;
    margin-top: margin(-6, -12)!important;

    @include mqMin($tabMin) {
      width: margin(6, 12)!important;
      height: margin(6, 12)!important;
      left: margin(2, 4)!important;
      margin-top: margin(-3, -6)!important;
    }
  }
}

.c-form__radio {
  display: none;

  &:checked + .mwform-radio-field-text {
    color: $colorBlack;

    &::before {
      border: 2px solid $colorBlack!important;
    }

    &::after {
      opacity: 1;
    }
  }
}

//---------------------------------------
// checkbox
//---------------------------------------
.smf-checkbox-control {
  display: inline!important;
}

.smf-checkbox-control__control {
  width: 21px!important;
  height: 21px!important;
  border-radius: 0!important;
  border-width: 2px!important;
  border-color: $colorGray06!important;
  margin-top: 0!important;
}

.smf-form .smf-checkbox-control__control:checked {
  background-color: $colorGold;
}

/*.mwform-checkbox-field {

  @include mqMax($spMax) {
    display: block;
    margin-left: 0!important;
  }
}

.mwform-checkbox-field-text {
  position: relative;
  display: inline-block;
  padding-left: margin(36, 72)!important;
  cursor: pointer;

  @include mqMin($tabMin) {
    padding-left: margin(18, 36)!important;
  }

  &:nth-last-of-type(n+2) {
    padding-right: margin(18, 36);

    @include mqMax($spMax) {
      margin-bottom: margin(12, 24)!important;
    }
  }

  &::before,
  &::after {
    content: '';
    position: absolute;
    display: block;
  }

  &::before {
    background-color: transparent!important;
    width: margin(21, 42)!important;
    height: margin(21, 42)!important;
    top: 50%;
    left: 0;
    border: 2px solid $colorGray!important;
    border-radius: margin(1.5, 3);
    margin-top: margin(-10.5, -21)!important;

    @include mqMin($tabMin) {
      width: margin(10.5, 21)!important;
      height: margin(10.5, 21)!important;
      margin-top: margin(-5.25, -10.5)!important;
    }
  }

  &::after {
    background-color: $colorBlack;
    width: margin(13, 26)!important;
    height: margin(13, 26)!important;
    border-radius: margin(1.5, 3);
    top: 50%;
    left: margin(4, 8)!important;
    opacity: 0;
    transition: .3s;
    border: none!important;
    border-radius: margin(1.5, 3);
    margin-top: margin(-6.5, -13)!important;
    transform: rotate(-90deg)!important;

    @include mqMin($tabMin) {
      width: margin(6.5, 13)!important;
      height: margin(6.5, 13)!important;
      left: margin(2, 4)!important;
      margin-top: margin(-3.25, -6.5)!important;
    }
  }
}

.c-form__check {
  display: none;
  position: absolute;

  &:checked + .mwform-checkbox-field-text {

    &::before {
      border: 2px solid $colorBlack!important;
    }

    &::after {
      opacity: 1;
    }
  }
}*/
/* 全ページで非表示 */
.grecaptcha-badge {
  visibility: hidden;
}

.c-title {
  position: relative;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(2.4rem, 0.2723404255rem + 4.2553191489vw, 4.8rem) !important;
  font-weight: 700;
  text-align: center;
}
@media (min-width: 768px) {
  .c-title {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem) !important;
  }
}
.c-title::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: clamp(4px, 0.701754386vw, 8px);
  top: 50%;
  left: 0;
  border-top: clamp(4px, 0.701754386vw, 8px) dotted #84CCCC;
  margin-top: clamp(-4px, -0.350877193vw, -2px);
}
@media (min-width: 768px) {
  .c-title::before {
    height: clamp(2px, 0.350877193vw, 4px);
    border-top: clamp(2px, 0.350877193vw, 4px) dotted #84CCCC;
    margin-top: clamp(-2px, -0.1754385965vw, -1px);
  }
}
.c-title span {
  position: relative;
  background-color: #ffffff;
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .c-title span {
    padding-right: clamp(24px, 4.2105263158vw, 48px);
    padding-left: clamp(24px, 4.2105263158vw, 48px);
  }
}

.c-pageTitle,
.c-postTitle {
  border-bottom: none !important;
  padding-top: clamp(80px, 14.0350877193vw, 160px);
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-bottom: clamp(80px, 14.0350877193vw, 160px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .c-pageTitle,
.c-postTitle {
    padding-top: clamp(30px, 5.2631578947vw, 60px);
    padding-bottom: clamp(30px, 5.2631578947vw, 60px);
  }
}

.c-postTitle {
  padding-left: 0;
}

.c-pageTitle__inner,
.c-postTitle__ttl {
  float: none !important;
  color: #178888;
  font-size: clamp(3.2rem, 0.3631205674rem + 5.6737588652vw, 6.4rem);
  font-weight: 700;
  width: min(100%, 700px);
  border-bottom: none !important;
  padding: 0 !important;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .c-pageTitle__inner,
.c-postTitle__ttl {
    font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  }
}

.l-article {
  max-width: 100%;
}

.l-mainContent__inner > .post_content {
  padding: 0;
}

.post_content h2 {
  margin: 0;
}

.post_content h2:where(:not([class^=swell-block-]):not(.faq_q):not(.p-postList__title)) {
  border-left: 0;
}

.post_content h3:where(:not([class^=swell-block-]):not(.faq_q):not(.p-postList__title)) {
  padding: 0;
}

.post_content h3:where(:not([class^=swell-block-]):not(.faq_q):not(.p-postList__title))::before {
  content: none;
}

.post_content h3 {
  margin: 0;
}

.post_content h4 {
  margin: 0;
}

.post_content h4:where(:not([class^=swell-block-]):not(.faq_q):not(.p-postList__title)) {
  border-left: 0;
}

.post_content ol, .post_content ul {
  padding-left: 0;
}

.post_content :where(ul:not([type])) {
  list-style: none;
}

.post_content h2:where(:not([class^=swell-block-]):not(.faq_q):not(.p-postList__title)) {
  padding: 0;
}

.post_content .l-info__schedule-table td,
.post_content .l-info__schedule-table th,
.post_content .l-info__hours-table td,
.post_content .l-info__hours-table th {
  background-color: transparent;
  border-right: 0;
  border-left: 0;
}

.post_content .l-info__hours-table td,
.post_content .l-info__hours-table th {
  border-top: 0;
}

/*.post_content td, .post_content th {
  border: {
    top: 0;
    right: 0;
    left: 0;
  }
  padding: {
    right: 0;
    left: 0;
  }
}*/
.l-header__logo {
  order: 1;
  padding: 0;
}

.l-container {
  padding-left: 0;
  padding-right: 0;
  max-width: none;
}

.top #content {
  padding: 0;
  margin: 0;
  max-width: none;
}

.l-container {
  position: relative;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  line-height: 1.429;
  overflow: hidden;
  padding-top: calc(clamp(75px, 13.1578947368vw, 150px) / 75 * 60);
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .l-container {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-header {
  position: fixed;
  background-color: #ffffff;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 80;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.l-header .c-inner {
  width: 100%;
  padding: 0;
}

.l-header__content {
  display: flex;
  justify-content: flex-start;
}
@media (max-width: 1063px) {
  .l-header__content {
    justify-content: space-between;
  }
}

.l-header__left {
  flex: 1 1;
}
@media (max-width: 1063px) {
  .l-header__left {
    padding-right: clamp(60px, 10.5263157895vw, 120px);
  }
}
@media (min-width: 1064px) {
  .l-header__left {
    flex: 1 1 573px;
    max-width: 533px;
  }
}
@media (min-width: 1440px) {
  .l-header__left {
    flex: 1 1 533px;
  }
}
.l-header__left a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.l-header__logo {
  flex: 0 1 clamp(75px, 13.1578947368vw, 150px);
  background-color: #ffffff;
  aspect-ratio: 75/60;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #37BFBF;
  height: 100%;
}
.l-header__logo img {
  width: 72%;
}

.l-header__name {
  flex: 1 1;
  color: #37BFBF;
  font-size: clamp(1.4rem, 0.8680851064rem + 1.0638297872vw, 2rem);
  font-weight: 700;
  text-align: center;
  order: 2;
}
@media (max-width: 375px) {
  .l-header__name {
    font-size: clamp(1.2rem, 0.0363636364rem + 3.6363636364vw, 1.4rem);
  }
}
@media (min-width: 1064px) {
  .l-header__name {
    font-size: clamp(1.6rem, -1.5294117647rem + 2.9411764706vw, 2rem);
    letter-spacing: 0.15em;
  }
}

.l-header__menu {
  position: fixed;
  width: clamp(60px, 10.5263157895vw, 120px);
  background-color: #E2F3F3;
  height: clamp(60px, 10.5263157895vw, 120px);
  top: 0;
  right: 0;
  padding-top: clamp(19px, 3.3333333333vw, 38px);
  padding-bottom: clamp(19px, 3.3333333333vw, 38px);
  z-index: 90;
}
.l-header__menu span {
  position: absolute;
  background-color: #37BFBF;
  width: clamp(32px, 5.6140350877vw, 64px);
  height: 2px;
  left: 50%;
  margin-left: clamp(-32px, -2.8070175439vw, -16px);
  transition: all 0.4s;
}
.l-header__menu span:nth-of-type(1) {
  top: 0;
}
.l-header__menu span:nth-of-type(2) {
  top: 50%;
  margin-top: -1px;
}
.l-header__menu span:nth-of-type(1) {
  top: calc(100% - 2px - clamp(19px, 3.3333333333vw, 38px));
}

@media (min-width: 1064px) {
  .l-header__right {
    flex: 1 1 867px;
    padding-top: clamp(10px, 1.7543859649vw, 20px);
    padding-right: clamp(10px, 1.7543859649vw, 20px);
    padding-bottom: clamp(9px, 1.5789473684vw, 18px);
  }
}
@media (min-width: 1440px) {
  .l-header__right {
    flex: 1 1 907px;
    padding-right: clamp(30px, 5.2631578947vw, 60px);
  }
}

@media (max-width: 1063px) {
  .l-header__top {
    display: none;
  }
}
@media (min-width: 1064px) {
  .l-header__top {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    -moz-column-gap: clamp(2px, 0.350877193vw, 4px);
         column-gap: clamp(2px, 0.350877193vw, 4px);
    margin-bottom: clamp(10px, 1.7543859649vw, 20px);
  }
}

.l-header__tel {
  padding-right: clamp(6px, 1.0526315789vw, 12px);
}
.l-header__tel a {
  position: relative;
  color: #37BFBF;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  font-weight: 900;
  padding-left: clamp(14px, 2.4561403509vw, 28px);
}
.l-header__tel a::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_phone_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(12px, 2.1052631579vw, 24px);
  aspect-ratio: 1/1;
  top: 50%;
  left: 0;
  margin-top: clamp(-12px, -1.0526315789vw, -6px);
}

.l-header__button {
  background-color: #ffffff;
  border-radius: clamp(4px, 0.701754386vw, 8px);
}
.l-header__button a {
  color: #ffffff;
  font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  font-weight: 700;
  border-radius: clamp(4px, 0.701754386vw, 8px);
  padding-top: clamp(4.25px, 0.7456140351vw, 8.5px);
  padding-right: clamp(8px, 1.4035087719vw, 16px);
  padding-bottom: clamp(4.25px, 0.7456140351vw, 8.5px);
  padding-left: clamp(8px, 1.4035087719vw, 16px);
}

.l-header__button--first a {
  background-color: #7C6B61;
}

.l-header__button--repeat a {
  background-color: #65D2D2;
}

@media (max-width: 1063px) {
  .l-header__nav-box {
    position: fixed;
    background-color: #37BFBF;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    top: 0;
    left: 100%;
    z-index: 85;
    overflow-y: auto;
    overscroll-behavior: contain;
    transition-property: left;
    transition-duration: 0.4s;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .l-header__nav-box::-webkit-scrollbar {
    display: none;
  }
}

@media (max-width: 1063px) {
  .l-header__nav {
    height: calc(100vh + 0.5px);
    height: calc(100dvh + 0.5px);
    padding-top: clamp(89px, 15.6140350877vw, 178px);
    padding-right: clamp(40px, 7.0175438596vw, 80px);
    padding-left: clamp(40px, 7.0175438596vw, 80px);
  }
}

@media (max-width: 1063px) {
  .l-header__nav-list {
    margin-bottom: clamp(37px, 6.4912280702vw, 74px);
  }
}
@media (min-width: 1064px) {
  .l-header__nav-list {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    -moz-column-gap: clamp(16px, 2.8070175439vw, 32px);
         column-gap: clamp(16px, 2.8070175439vw, 32px);
  }
}

@media (max-width: 1063px) {
  .l-header__nav-item:nth-last-of-type(n+2) {
    margin-bottom: clamp(30px, 5.2631578947vw, 60px);
  }
}
.l-header__nav-item a {
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
}
@media (max-width: 1063px) {
  .l-header__nav-item a {
    color: #ffffff;
  }
}
@media (min-width: 1064px) {
  .l-header__nav-item a {
    font-size: clamp(1.3rem, 0.5176470588rem + 0.7352941176vw, 1.4rem);
    font-weight: 500;
  }
}

.l-header__nav-item--active {
  position: relative;
}
.l-header__nav-item--active::after {
  content: "";
  position: absolute;
  display: block;
  background-color: #37BFBF;
  width: 100%;
  height: 2px;
  bottom: clamp(-8px, -0.701754386vw, -4px);
  left: 0;
}

.l-header__sns {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  -moz-column-gap: clamp(24px, 4.2105263158vw, 48px);
       column-gap: clamp(24px, 4.2105263158vw, 48px);
  padding-bottom: clamp(98px, 17.1929824561vw, 196px);
}
@media (min-width: 1064px) {
  .l-header__sns {
    display: none;
  }
}

.l-header__sns-item {
  width: clamp(24px, 4.2105263158vw, 48px);
}

.l-header__nav--active .l-header__menu span:nth-of-type(1) {
  transform: rotate(45deg);
  top: 50%;
}
.l-header__nav--active .l-header__menu span:nth-of-type(2) {
  opacity: 0;
}
.l-header__nav--active .l-header__menu span:nth-of-type(3) {
  transform: rotate(-45deg);
  top: 50%;
}
.l-header__nav--active .l-header__nav-box {
  left: 0;
}

.p-breadcrumb {
  background-color: #E2F3F3 !important;
  color: #999999;
  box-shadow: none !important;
  padding-top: clamp(4px, 0.701754386vw, 8px);
  padding-bottom: clamp(4px, 0.701754386vw, 8px);
}
@media (min-width: 768px) {
  .p-breadcrumb {
    padding-top: clamp(2px, 0.350877193vw, 4px);
    padding-bottom: clamp(2px, 0.350877193vw, 4px);
  }
}

.p-breadcrumb__list {
  width: min(100%, 1064px);
  padding-top: 0;
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
  margin-right: auto;
  margin-left: auto;
}

.p-breadcrumb__item::after {
  background-color: #37BFBF;
}
.p-breadcrumb__item a {
  color: #37BFBF;
}

.p-breadcrumb__text {
  font-size: clamp(1.1rem, 0.124822695rem + 1.9503546099vw, 2.2rem);
  font-weight: 700;
}
@media (min-width: 768px) {
  .p-breadcrumb__text {
    font-size: clamp(0.55rem, 0.0624113475rem + 0.975177305vw, 1.1rem);
  }
}

.icon-home::before {
  content: none;
}

#content.l-container {
  padding-top: 0;
}

.l-mv__list {
  position: absolute;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: clamp(8px, 1.4035087719vw, 16px);
       column-gap: clamp(8px, 1.4035087719vw, 16px);
  row-gap: clamp(8px, 1.4035087719vw, 16px);
  width: min(100% - clamp(32px, 5.6140350877vw, 64px), 944px);
  bottom: -44.2666666667vw;
  left: 50%;
  margin-left: calc(min(100% - clamp(32px, 5.6140350877vw, 64px), 944px) / -2);
}
@media (min-width: 768px) {
  .l-mv__list {
    grid-template-columns: repeat(6, 1fr);
    bottom: max(-4.0972222222vw, -59px);
  }
}

.l-mv__item {
  background-color: #ffffff;
  border: 2px solid #E2F3F3;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  padding-top: 5.8666666667vw;
  padding-bottom: 3.7333333333vw;
}
@media (min-width: 768px) {
  .l-mv__item {
    border-radius: clamp(8px, 1.4035087719vw, 16px);
    padding-top: min(1.5277777778vw, 22px);
    padding-bottom: min(1.25vw, 18px);
  }
}

.l-mv__item-image {
  width: 31.58%;
  margin-right: auto;
  margin-bottom: 2.1333333333vw;
  margin-left: auto;
}
@media (min-width: 768px) {
  .l-mv__item-image {
    width: 25%;
    margin-bottom: min(0.5555555556vw, 8px);
  }
}

.l-mv__item-text {
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}
@media (min-width: 768px) {
  .l-mv__item-text {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

#body_wrap:not(.top) #main_content {
  border-bottom: 10px solid #F2F2F2;
}

#body_wrap:not(.top):not(.post-type-archive) .post_content {
  width: min(100%, 764px);
  padding-right: clamp(16px, 2.8070175439vw, 32px) !important;
  padding-bottom: clamp(80px, 14.0350877193vw, 160px);
  padding-left: clamp(16px, 2.8070175439vw, 32px) !important;
  margin: 0;
  margin-right: auto !important;
  margin-left: auto !important;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content {
    padding-bottom: clamp(40px, 7.0175438596vw, 80px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content > * {
  margin-bottom: clamp(20px, 3.5087719298vw, 40px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content > * {
    margin-bottom: clamp(10px, 1.7543859649vw, 20px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content p {
  font-weight: 500;
  line-height: 1.6;
}
#body_wrap:not(.top):not(.post-type-archive) .post_content img {
  border-radius: 8px;
}
#body_wrap:not(.top):not(.post-type-archive) .post_content h2 {
  font-size: clamp(2.4rem, 0.2723404255rem + 4.2553191489vw, 4.8rem);
  font-weight: 700;
  border-top: 4px dotted #37BFBF;
  border-bottom: 4px dotted #37BFBF;
  padding-top: clamp(10px, 1.7543859649vw, 20px) !important;
  padding-bottom: clamp(10px, 1.7543859649vw, 20px) !important;
  margin-top: clamp(80px, 14.0350877193vw, 160px) !important;
  margin-bottom: clamp(40px, 7.0175438596vw, 80px) !important;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content h2 {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
    padding-top: clamp(5px, 0.8771929825vw, 10px) !important;
    padding-bottom: clamp(5px, 0.8771929825vw, 10px) !important;
    margin-top: clamp(40px, 7.0175438596vw, 80px) !important;
    margin-bottom: clamp(20px, 3.5087719298vw, 40px) !important;
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content h3 {
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  font-weight: 700;
  line-height: 1.25;
  border-bottom: 2px dotted #84CCCC;
  padding-top: clamp(8px, 1.4035087719vw, 16px) !important;
  padding-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
  margin-top: clamp(48px, 8.4210526316vw, 96px) !important;
  margin-bottom: clamp(24px, 4.2105263158vw, 48px) !important;
}
@media (max-width: 767px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content h3 {
    color: #37BFBF;
  }
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content h3 {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    padding-top: clamp(4px, 0.701754386vw, 8px) !important;
    padding-bottom: clamp(4px, 0.701754386vw, 8px) !important;
    margin-top: clamp(24px, 4.2105263158vw, 48px) !important;
    margin-bottom: clamp(12px, 2.1052631579vw, 24px) !important;
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content h4 {
  font-size: clamp(1.8rem, 0.2042553191rem + 3.1914893617vw, 3.6rem);
  font-weight: 700;
  line-height: 1.25;
  border-left: 1px solid #37BFBF;
  padding-top: clamp(4px, 0.701754386vw, 8px);
  padding-bottom: clamp(4px, 0.701754386vw, 8px);
  padding-left: clamp(12px, 2.1052631579vw, 24px);
  margin-top: clamp(48px, 8.4210526316vw, 96px);
  margin-bottom: clamp(24px, 4.2105263158vw, 48px);
}
@media (max-width: 767px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content h4 {
    color: #37BFBF;
  }
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content h4 {
    font-size: clamp(0.9rem, 0.1021276596rem + 1.5957446809vw, 1.8rem);
    padding-top: clamp(2px, 0.350877193vw, 4px);
    padding-bottom: clamp(2px, 0.350877193vw, 4px);
    padding-left: clamp(6px, 1.0526315789vw, 12px);
    margin-top: clamp(24px, 4.2105263158vw, 48px);
    margin-bottom: clamp(12px, 2.1052631579vw, 24px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__item {
  border-color: #E2F3F3;
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__link {
  padding: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__link {
    padding: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__figure {
  width: clamp(100px, 13.1578947368vw, 150px);
  margin-right: clamp(40px, 7.0175438596vw, 80px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__figure {
    margin-right: clamp(20px, 3.5087719298vw, 40px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__figure img {
  width: 100%;
  height: auto;
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__text {
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 500;
  line-height: 1.25;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__text {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__text mark {
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  font-weight: 700;
  margin-top: clamp(16px, 2.8070175439vw, 32px);
  margin-bottom: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-box-menu__text mark {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    margin-top: clamp(8px, 1.4035087719vw, 16px);
    margin-bottom: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .wp-block-list li {
  position: relative;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 500;
  line-height: 1.6;
  padding-top: clamp(8px, 1.4035087719vw, 16px);
  padding-bottom: clamp(8px, 1.4035087719vw, 16px);
  padding-left: clamp(20px, 3.5087719298vw, 40px);
  margin: 0;
  margin-left: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .wp-block-list li {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-top: clamp(4px, 0.701754386vw, 8px);
    padding-bottom: clamp(4px, 0.701754386vw, 8px);
    padding-left: clamp(10px, 1.7543859649vw, 20px);
    margin-left: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .wp-block-list li::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #37BFBF;
  width: clamp(12px, 2.1052631579vw, 24px);
  height: clamp(12px, 2.1052631579vw, 24px);
  top: calc((clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem) * 1.6 - clamp(12px, 2.1052631579vw, 24px)) / 2 + clamp(8px, 1.4035087719vw, 16px));
  left: 0;
  border-radius: 50%;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .wp-block-list li::before {
    width: clamp(6px, 1.0526315789vw, 12px);
    height: clamp(6px, 1.0526315789vw, 12px);
    top: calc((clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem) * 1.6 - clamp(6px, 1.0526315789vw, 12px)) / 2 + clamp(4px, 0.701754386vw, 8px));
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content a {
  display: inline;
  color: #37BFBF;
  text-decoration: underline;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content a {
    color: #178888;
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content strong {
  font-weight: 700;
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step {
  margin-bottom: clamp(80px, 14.0350877193vw, 160px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step {
    margin-bottom: clamp(40px, 7.0175438596vw, 80px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__item {
  padding-left: clamp(66px, 11.5789473684vw, 132px);
  padding-bottom: clamp(16px, 2.8070175439vw, 32px);
  margin-bottom: clamp(24px, 4.2105263158vw, 48px) !important;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__item {
    padding-left: clamp(33px, 5.7894736842vw, 66px);
    padding-bottom: clamp(8px, 1.4035087719vw, 16px);
    margin-bottom: clamp(12px, 2.1052631579vw, 24px) !important;
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__item::before {
  content: "";
  display: block;
  border-left: 1px dotted #37BFBF;
  left: clamp(24.5px, 4.298245614vw, 49px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__item::before {
    left: clamp(12.25px, 2.149122807vw, 24.5px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__number {
  width: clamp(50px, 8.7719298246vw, 100px);
  height: clamp(50px, 8.7719298246vw, 100px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__number {
    width: clamp(25px, 4.3859649123vw, 50px);
    height: clamp(25px, 4.3859649123vw, 50px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__number::after {
  font-size: clamp(1.8rem, 0.2042553191rem + 3.1914893617vw, 3.6rem);
  font-weight: 700;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__number::after {
    font-size: clamp(0.9rem, 0.1021276596rem + 1.5957446809vw, 1.8rem);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__number .__label {
  font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
  font-weight: 700;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__number .__label {
    font-size: clamp(0.5rem, 0.0567375887rem + 0.8865248227vw, 1rem);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__title {
  color: #37BFBF;
  font-size: clamp(1.8rem, 0.2042553191rem + 3.1914893617vw, 3.6rem);
  line-height: 1.25;
  min-height: 100%;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__title {
    font-size: clamp(0.9rem, 0.1021276596rem + 1.5957446809vw, 1.8rem);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__body {
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  line-height: 1.25;
  font-weight: 500;
  margin-top: clamp(16px, 2.8070175439vw, 32px);
  margin-left: 0;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-step__body {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    margin-bottom: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-faq {
  padding-bottom: clamp(64px, 11.2280701754vw, 128px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-faq {
    padding-bottom: clamp(32px, 5.6140350877vw, 64px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_q {
  background-color: #E2F3F3;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  padding-top: clamp(18px, 3.1578947368vw, 36px);
  padding-right: clamp(56px, 9.8245614035vw, 112px);
  padding-bottom: clamp(18px, 3.1578947368vw, 36px);
  padding-left: clamp(63px, 11.0526315789vw, 126px);
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_q {
    border-radius: clamp(8px, 1.4035087719vw, 16px);
    padding-top: clamp(15px, 2.6315789474vw, 30px);
    padding-right: clamp(36px, 6.3157894737vw, 72px);
    padding-bottom: clamp(15px, 2.6315789474vw, 30px);
    padding-left: clamp(35.5px, 6.2280701754vw, 71px);
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_q::before {
  border: none;
  color: #37BFBF;
  font-size: clamp(4rem, 0.4539007092rem + 7.0921985816vw, 8rem);
  font-family: "Onest", sans-serif;
  font-weight: 700;
  top: 50%;
  left: clamp(16px, 2.8070175439vw, 32px);
  margin-top: clamp(-2rem, -0.2269503546rem + -3.5460992908vw, -4rem);
  box-shadow: none;
  bottom: auto;
  width: auto;
  line-height: 1;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_q::before {
    font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
    left: clamp(12px, 2.1052631579vw, 24px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_q::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(20px, 3.5087719298vw, 40px);
  aspect-ratio: 20/11;
  top: 50%;
  right: clamp(18px, 3.1578947368vw, 36px);
  margin-top: calc(clamp(20px, 3.5087719298vw, 40px) / 20 * 11 / -2);
  transform: rotate(180deg);
  transition-property: transform;
  transition-duration: 0.4s;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_q::after {
    width: clamp(13.5px, 2.3684210526vw, 27px);
    right: clamp(13.5px, 2.3684210526vw, 27px);
    margin-top: calc(clamp(13.5px, 2.3684210526vw, 27px) / 20 * 11 / -2);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a {
  display: none;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  font-weight: 500;
  padding-top: clamp(24px, 4.2105263158vw, 48px);
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-bottom: clamp(24px, 4.2105263158vw, 48px);
  padding-left: clamp(61px, 10.701754386vw, 122px);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-top: clamp(12px, 2.1052631579vw, 24px);
    padding-right: clamp(12px, 2.1052631579vw, 24px);
    padding-bottom: clamp(12px, 2.1052631579vw, 24px);
    padding-left: clamp(34.5px, 6.0526315789vw, 69px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a::before {
  border: none;
  color: #37BFBF;
  font-size: clamp(4rem, 0.4539007092rem + 7.0921985816vw, 8rem);
  font-family: "Onest", sans-serif;
  font-weight: 700;
  top: clamp(24px, 4.2105263158vw, 48px);
  left: clamp(16px, 2.8070175439vw, 32px);
  box-shadow: none;
  bottom: auto;
  width: auto;
  line-height: 1;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a::before {
    font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
    left: clamp(12px, 2.1052631579vw, 24px);
    top: clamp(12px, 2.1052631579vw, 24px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a a {
  position: relative;
  background-color: #37BFBF;
  color: #ffffff;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  margin-left: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-top: clamp(4px, 0.701754386vw, 8px);
  padding-right: clamp(28px, 4.9122807018vw, 56px);
  padding-bottom: clamp(4px, 0.701754386vw, 8px);
  padding-left: clamp(12px, 2.1052631579vw, 24px);
  text-decoration: none;
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a a {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
    padding-top: clamp(2px, 0.350877193vw, 4px);
    padding-right: clamp(14px, 2.4561403509vw, 28px);
    padding-bottom: clamp(2px, 0.350877193vw, 4px);
    padding-left: clamp(6px, 1.0526315789vw, 12px);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a a::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_w.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(16px, 2.8070175439vw, 32px);
  aspect-ratio: 16/17;
  top: 50%;
  right: clamp(8px, 1.4035087719vw, 16px);
  margin-top: calc(clamp(16px, 2.8070175439vw, 32px) / 16 * 17 / -2);
}
@media (min-width: 768px) {
  #body_wrap:not(.top):not(.post-type-archive) .post_content .faq_a a::after {
    width: clamp(8px, 1.4035087719vw, 16px);
    right: clamp(4px, 0.701754386vw, 8px);
    margin-top: calc(clamp(8px, 1.4035087719vw, 16px) / 16 * 17 / -2);
  }
}
#body_wrap:not(.top):not(.post-type-archive) .post_content [data-a=fill-main] .faq_a:before, #body_wrap:not(.top):not(.post-type-archive) .post_content [data-q=fill-main] .faq_q:before {
  background-color: transparent;
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .l-faq__item--open .faq_q::after {
  transform: rotate(0deg);
}
#body_wrap:not(.top):not(.post-type-archive) .post_content .swell-block-button__link {
  color: #ffffff;
  text-decoration: none;
}

.l-mdmenu {
  padding-top: clamp(58px, 7.7192982456vw, 88px);
  padding-bottom: clamp(28px, 6.8421052632vw, 78px);
}

.l-mdmenu_content {
  display: flex;
  flex-direction: column;
  gap: clamp(34px, 5.9649122807vw, 68px);
}
@media (min-width: 768px) {
  .l-mdmenu_content {
    gap: clamp(21px, 3.6842105263vw, 42px);
  }
}

.l-mdmenu__list {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-mdmenu__list {
    gap: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-mdmenu__item {
  background-color: #ffffff;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-mdmenu__item {
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-mdmenu__item-header {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(16px, 2.8070175439vw, 32px);
  padding-top: clamp(24px, 4.2105263158vw, 48px);
  padding-right: clamp(45px, 7.8947368421vw, 90px);
  padding-bottom: clamp(24px, 4.2105263158vw, 48px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
  cursor: pointer;
}
@media (min-width: 768px) {
  .l-mdmenu__item-header {
    gap: clamp(8px, 1.4035087719vw, 16px);
    padding: clamp(12px, 2.1052631579vw, 24px);
  }
}
.l-mdmenu__item-header::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(20px, 2.3684210526vw, 27px);
  aspect-ratio: 27/15;
  top: 50%;
  right: clamp(18px, 2.1052631579vw, 24px);
  margin-top: calc(clamp(20px, 2.3684210526vw, 27px) / 27 * 15 / -2);
  transform: rotate(180deg);
  transition: all 0.3s ease;
}

.l-mdmenu__item-icon {
  width: clamp(36px, 6.3157894737vw, 72px);
  height: clamp(36px, 6.3157894737vw, 72px);
}
@media (min-width: 768px) {
  .l-mdmenu__item-icon {
    width: clamp(18px, 3.1578947368vw, 36px);
    height: clamp(18px, 3.1578947368vw, 36px);
  }
}
.l-mdmenu__item-icon img {
  vertical-align: top;
}

.l-mdmenu__item-title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem) !important;
  margin-bottom: clamp(4px, 0.701754386vw, 8px) !important;
}
@media (min-width: 768px) {
  .l-mdmenu__item-title {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem) !important;
    margin-bottom: clamp(2px, 0.350877193vw, 4px) !important;
  }
}

.l-mdmenu__item-subtitle {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
}
@media (min-width: 768px) {
  .l-mdmenu__item-subtitle {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-mdmenu__item-content {
  display: none;
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-bottom: clamp(24px, 4.2105263158vw, 48px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-mdmenu__item-content {
    padding-right: clamp(12px, 2.1052631579vw, 24px);
    padding-bottom: clamp(12px, 2.1052631579vw, 24px);
    padding-left: clamp(12px, 2.1052631579vw, 24px);
  }
}

.l-mdmenu__item-group {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(24px, 4.2105263158vw, 48px);
}
@media (min-width: 768px) {
  .l-mdmenu__item-group {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(20px, 3.5087719298vw, 40px);
  }
}

.l-mdmenu__subitem-title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem) !important;
  padding-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
  margin-bottom: clamp(16px, 2.8070175439vw, 32px) !important;
  border-bottom: 2px solid #4D4D4D;
  padding-left: 0 !important;
}
@media (min-width: 768px) {
  .l-mdmenu__subitem-title {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem) !important;
    padding-bottom: clamp(4px, 0.701754386vw, 8px) !important;
    margin-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
  }
}
.l-mdmenu__subitem-title:has(a) {
  border-bottom: 2px solid #37BFBF;
}
.l-mdmenu__subitem-title a {
  position: relative;
  color: #37BFBF;
}
.l-mdmenu__subitem-title a::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr_02.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(24px, 4.2105263158vw, 48px);
  aspect-ratio: 1/1;
  top: 50%;
  right: 0;
  margin-top: calc(clamp(-24px, -2.1052631579vw, -12px) - clamp(4px, 0.701754386vw, 8px));
}
@media (min-width: 768px) {
  .l-mdmenu__subitem-title a::after {
    width: clamp(12px, 2.1052631579vw, 24px);
    margin-top: calc(clamp(-12px, -1.0526315789vw, -6px) - clamp(2px, 0.350877193vw, 4px));
  }
}

.l-mdmenu__subitem-list li {
  position: relative;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
}
@media (min-width: 768px) {
  .l-mdmenu__subitem-list li {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}
.l-mdmenu__subitem-list li:nth-last-of-type(n+2) {
  margin-bottom: clamp(6px, 1.0526315789vw, 12px);
}
@media (min-width: 768px) {
  .l-mdmenu__subitem-list li:nth-last-of-type(n+2) {
    margin-bottom: clamp(3px, 0.5263157895vw, 6px);
  }
}
.l-mdmenu__subitem-list li a {
  position: relative;
  color: #37BFBF;
  display: inline;
  padding-right: clamp(19px, 3.3333333333vw, 38px);
}
@media (min-width: 768px) {
  .l-mdmenu__subitem-list li a {
    padding-right: clamp(9.5px, 1.6666666667vw, 19px);
  }
}
.l-mdmenu__subitem-list li a::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr_03.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(8px, 1.4035087719vw, 16px);
  aspect-ratio: 8/13;
  top: 50%;
  right: 0;
  margin-top: calc(clamp(8px, 1.4035087719vw, 16px) / 8 * 13 / -2);
}
@media (min-width: 768px) {
  .l-mdmenu__subitem-list li a::after {
    width: clamp(4px, 0.701754386vw, 8px);
    margin-top: calc(clamp(4px, 0.701754386vw, 8px) / 8 * 13 / -2);
  }
}

.l-mdmenu__item--open .l-mdmenu__item-header::after {
  transform: rotate(0deg);
}

.l-mdmenu--article .l-mdmenu__item {
  border: 1px solid #84CCCC;
}

.l-reason {
  padding-top: clamp(64px, 11.2280701754vw, 128px);
  overflow-x: hidden;
}
@media (min-width: 768px) {
  .l-reason {
    padding-top: clamp(32px, 5.6140350877vw, 64px);
  }
}

.l-reason_content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(48px, 8.4210526316vw, 96px);
}
@media (min-width: 768px) {
  .l-reason_content {
    gap: clamp(24px, 4.2105263158vw, 48px);
  }
}
.l-reason_content::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_teeth_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 72.3%;
  aspect-ratio: 248/383;
  top: clamp(-98px, -8.5964912281vw, -49px);
  right: -17.78%;
}
@media (min-width: 768px) {
  .l-reason_content::before {
    width: 32.6%;
    top: clamp(-20px, -1.7543859649vw, -10px);
    right: 6.9%;
  }
}

.l-reason__title {
  position: relative;
  font-weight: 700;
  font-size: clamp(2.2rem, -0.104964539rem + 4.609929078vw, 4.8rem);
}
@media (max-width: 375px) {
  .l-reason__title {
    font-size: clamp(1.9rem, 0.1545454545rem + 5.4545454545vw, 2.2rem);
  }
}
@media (min-width: 768px) {
  .l-reason__title {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  }
}

.l-reason__title-number {
  color: #37BFBF;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(4.8rem, 0.5446808511rem + 8.5106382979vw, 9.6rem);
  font-weight: 700;
  padding-right: clamp(8px, 1.4035087719vw, 16px);
  vertical-align: sub;
}
@media (min-width: 768px) {
  .l-reason__title-number {
    font-size: clamp(2.4rem, 0.2723404255rem + 4.2553191489vw, 4.8rem);
    padding-right: clamp(4px, 0.701754386vw, 8px);
    padding-left: clamp(4px, 0.701754386vw, 8px);
  }
}

.l-reason__list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(48px, 8.4210526316vw, 96px);
}
@media (min-width: 768px) {
  .l-reason__list {
    gap: clamp(12px, 2.1052631579vw, 24px);
  }
}

.l-reason__item-content {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-reason__item-content {
    flex-direction: row;
  }
}

@media (max-width: 767px) {
  .l-reason__item-image {
    width: 81.63%;
  }
}
@media (min-width: 768px) {
  .l-reason__item-image {
    flex: 0 0 23.9%;
    order: 2;
  }
}
.l-reason__item-image img {
  border-radius: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .l-reason__item-image img {
    border-radius: clamp(4px, 0.701754386vw, 8px);
  }
}

.l-reason__item-text {
  flex: 1;
  display: flex;
  gap: clamp(24px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-reason__item-text {
    order: 1;
  }
}

.l-reason__item-number {
  flex: 0 0 clamp(40px, 7.0175438596vw, 80px);
}
@media (min-width: 768px) {
  .l-reason__item-number {
    flex: 0 0 clamp(20px, 3.5087719298vw, 40px);
  }
}

.l-reason__item-number-large {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: clamp(10rem, 1.134751773rem + 17.7304964539vw, 20rem);
  color: #C9F1F1;
  line-height: 1;
}
@media (min-width: 768px) {
  .l-reason__item-number-large {
    font-size: clamp(5rem, 0.5673758865rem + 8.865248227vw, 10rem);
  }
}

.l-reason__item-box {
  flex: 1;
}

.l-reason__item-title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  margin-bottom: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-reason__item-title {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
    margin-bottom: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-reason__item-description {
  font-weight: 500;
  margin-bottom: clamp(8px, 1.4035087719vw, 16px);
}

.page-id-54 .l-reason {
  padding-bottom: clamp(32px, 5.6140350877vw, 64px);
}
@media (max-width: 767px) {
  .page-id-54 .l-reason {
    overflow-y: hidden;
    margin-right: clamp(-32px, -2.8070175439vw, -16px);
    margin-left: clamp(-32px, -2.8070175439vw, -16px);
  }
}
@media (min-width: 768px) {
  .page-id-54 .l-reason {
    overflow-x: visible;
  }
}
@media (min-width: 768px) {
  .page-id-54 .l-reason .c-inner {
    padding: 0;
  }
}
@media (min-width: 768px) {
  .page-id-54 .l-reason .l-reason_content::before {
    width: 51.86%;
    right: -15.71%;
  }
}
.page-id-54 .l-reason .l-reason__item-description {
  line-height: 1.429;
}
@media (min-width: 768px) {
  .page-id-54 .l-reason .l-reason__item-description {
    font-size: clamp(1.2rem, 1.0226950355rem + 0.3546099291vw, 1.4rem);
  }
}
.page-id-54 .l-reason .l-reason__item-number-large {
  /*font-family: $fontZenMincho;
  font-size: fontSize(10, 20);
  font-weight: 700;
  line-height: 1;*/
}
.page-id-54 .l-reason .l-reason__item-link a {
  display: block !important;
  color: #ffffff !important;
  text-decoration: none !important;
}
@media (min-width: 768px) {
  .page-id-54 .l-reason .l-reason__item-image {
    flex: 0 0 28.57%;
  }
}
@media (min-width: 768px) {
  .page-id-54 .l-reason .l-reason__item-text {
    flex: 0 0 66.86%;
  }
}

#body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content h2.l-reason__title {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border: none;
}
#body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content h3.l-reason__item-title {
  color: #4D4D4D;
  line-height: 1.429;
  border: none;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: clamp(16px, 2.8070175439vw, 32px) !important;
}
@media (min-width: 768px) {
  #body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content h3.l-reason__item-title {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
    margin-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
  }
}

.l-doctor {
  padding-top: clamp(106px, 18.5964912281vw, 212px);
}
@media (min-width: 768px) {
  .l-doctor {
    padding-top: clamp(69px, 12.1052631579vw, 138px);
  }
}
.l-doctor .c-inner {
  width: 100%;
}

.l-doctor__title {
  margin-bottom: clamp(58px, 10.1754385965vw, 116px);
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .l-doctor__title {
    margin-bottom: clamp(26px, 5.0877192982vw, 58px);
  }
}

.l-doctor__slider {
  margin-right: clamp(-32px, -2.8070175439vw, -16px);
  margin-bottom: clamp(48px, 8.4210526316vw, 96px);
  margin-left: clamp(-32px, -2.8070175439vw, -16px);
}
@media (min-width: 768px) {
  .l-doctor__slider {
    margin-bottom: clamp(24px, 4.2105263158vw, 48px);
  }
}

.l-doctor__slide {
  padding-right: clamp(8px, 1.4035087719vw, 16px);
  padding-left: clamp(8px, 1.4035087719vw, 16px);
}

.l-doctor__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(9px, 1.5789473684vw, 18px);
}
@media (min-width: 768px) {
  .l-doctor__card {
    gap: clamp(4.5px, 0.7894736842vw, 9px);
  }
}

.l-doctor__image {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.l-doctor__image img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.l-doctor__info {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: clamp(9px, 1.5789473684vw, 18px);
}
@media (min-width: 768px) {
  .l-doctor__info {
    gap: clamp(4.5px, 0.7894736842vw, 9px);
  }
}

.l-doctor__name a {
  position: relative;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  color: #37BFBF;
  position: relative;
  padding-right: clamp(20px, 3.5087719298vw, 40px);
}
@media (min-width: 768px) {
  .l-doctor__name a {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    padding-right: clamp(10px, 1.7543859649vw, 20px);
  }
}
.l-doctor__name a::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr_02.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(16px, 2.8070175439vw, 32px);
  aspect-ratio: 1/1;
  top: 50%;
  right: 0;
  margin-top: clamp(-16px, -1.4035087719vw, -8px);
}
@media (min-width: 768px) {
  .l-doctor__name a::after {
    width: clamp(8px, 1.4035087719vw, 16px);
    margin-top: clamp(-8px, -0.701754386vw, -4px);
  }
}

.l-doctor__role {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
}
@media (min-width: 768px) {
  .l-doctor__role {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-dotoer__operation {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(24px, 4.2105263158vw, 48px);
  padding-right: clamp(6.5px, 1.1403508772vw, 13px);
  padding-left: clamp(6.5px, 1.1403508772vw, 13px);
}
@media (min-width: 768px) {
  .l-dotoer__operation {
    gap: clamp(12px, 2.1052631579vw, 24px);
    padding-right: clamp(3.25px, 0.5701754386vw, 6.5px);
    padding-left: clamp(3.25px, 0.5701754386vw, 6.5px);
  }
}

.l-doctor__arrow {
  position: relative;
  cursor: pointer;
  transition: all 0.3s ease;
  cursor: pointer;
  width: clamp(40px, 7.0175438596vw, 80px);
  height: clamp(40px, 7.0175438596vw, 80px);
}
@media (hover: hover) {
  .l-doctor__arrow:hover {
    opacity: 0.6;
    transition: all 0.3s ease;
  }
}
@media (min-width: 768px) {
  .l-doctor__arrow {
    width: clamp(12px, 2.1052631579vw, 24px);
    height: clamp(12px, 2.1052631579vw, 24px);
  }
}
.l-doctor__arrow::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr_02.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 100%;
  aspect-ratio: 1/1;
  top: 50%;
  left: 0;
  margin-top: clamp(-40px, -3.5087719298vw, -20px);
}
@media (min-width: 768px) {
  .l-doctor__arrow::before {
    margin-top: clamp(-12px, -1.0526315789vw, -6px);
  }
}

.l-doctor__arrow-prev {
  transform: rotateY(180deg);
}

.l-doctor__arrow-next {
  order: 3;
}

.l-doctor__dot {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: clamp(16px, 2.8070175439vw, 32px);
       column-gap: clamp(16px, 2.8070175439vw, 32px);
  row-gap: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .l-doctor__dot {
    -moz-column-gap: clamp(8px, 1.4035087719vw, 16px);
         column-gap: clamp(8px, 1.4035087719vw, 16px);
    row-gap: clamp(4px, 0.701754386vw, 8px);
  }
}
.l-doctor__dot li {
  position: relative;
  width: clamp(8px, 1.4035087719vw, 16px);
  height: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .l-doctor__dot li {
    width: clamp(4px, 0.701754386vw, 8px);
    height: clamp(4px, 0.701754386vw, 8px);
  }
}
.l-doctor__dot li::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #CCCCCC;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 50%;
}
.l-doctor__dot li.slick-active::before {
  background-color: #37BFBF;
}
.l-doctor__dot li button {
  display: none;
}

.l-info {
  padding-top: clamp(106px, 12.1052631579vw, 138px);
}
.l-info .c-inner {
  width: 100%;
}
.l-info .l-info__news {
  display: none;
}

.l-info_content {
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}

.l-info__title {
  margin-bottom: clamp(58px, 10.1754385965vw, 116px);
}
@media (min-width: 768px) {
  .l-info__title {
    margin-bottom: clamp(29px, 5.0877192982vw, 58px);
  }
}

.l-info__clinic-header {
  display: flex;
  gap: clamp(16px, 2.8070175439vw, 32px);
  margin-bottom: clamp(48px, 8.4210526316vw, 96px);
}
@media (max-width: 767px) {
  .l-info__clinic-header {
    flex-direction: column;
    margin-bottom: clamp(24px, 4.2105263158vw, 48px);
  }
}
@media (min-width: 768px) {
  .l-info__clinic-header {
    align-items: center;
    gap: clamp(24px, 4.2105263158vw, 48px);
  }
}

.l-info__clinic-box {
  display: flex;
  gap: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-info__clinic-box {
    gap: clamp(24px, 4.2105263158vw, 48px);
    flex: 0 0 53.8%;
    align-items: center;
  }
}

.l-info__logo {
  flex: 0 0 34.99%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #37BFBF;
  border-radius: clamp(8px, 1.4035087719vw, 16px);
  aspect-ratio: 120/96;
}
@media (min-width: 768px) {
  .l-info__logo {
    border-radius: clamp(4px, 0.701754386vw, 8px);
    flex: 0 0 27.88%;
  }
}
.l-info__logo img {
  width: 72.5%;
}

.l-info__description {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
}
@media (min-width: 768px) {
  .l-info__description {
    font-size: clamp(0.9rem, -0.075177305rem + 1.9503546099vw, 2rem);
  }
}

.l-info__text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
}
@media (max-width: 767px) {
  .l-info__text {
    text-align: center;
  }
}
@media (max-width: 375px) {
  .l-info__text {
    font-size: clamp(1.2rem, 0.0363636364rem + 3.6363636364vw, 1.4rem);
  }
}
@media (min-width: 768px) {
  .l-info__text {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
    flex: 0 0 41.4%;
  }
}

.l-info__subtext {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 400;
  font-size: clamp(1.2rem, 0.8453900709rem + 0.7092198582vw, 1.6rem);
  line-height: 1.6;
  color: #4D4D4D;
  margin: 0;
}
@media (min-width: 768px) {
  .l-info__subtext {
    font-size: clamp(1.4rem, 1.0453900709rem + 0.7092198582vw, 1.8rem);
    line-height: 1.5;
  }
}

.l-info__detail {
  display: flex;
  gap: clamp(48px, 8.4210526316vw, 96px);
  padding-bottom: clamp(56px, 9.8245614035vw, 112px);
}
@media (max-width: 767px) {
  .l-info__detail {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .l-info__detail {
    justify-content: space-between;
    gap: clamp(24px, 4.2105263158vw, 48px);
    padding-bottom: clamp(32px, 5.6140350877vw, 64px);
  }
}

@media (min-width: 768px) {
  .l-info__left {
    flex: 0 0 41.2%;
  }
}

.l-info__hours {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.8070175439vw, 32px);
  margin-bottom: clamp(32px, 5.6140350877vw, 64px);
}
@media (min-width: 768px) {
  .l-info__hours {
    gap: clamp(8px, 1.4035087719vw, 16px);
    margin-bottom: clamp(16px, 2.8070175439vw, 32px);
  }
}

.l-info__hours-title {
  position: relative;
  color: #37BFBF;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700 !important;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem) !important;
  padding-left: clamp(32px, 5.6140350877vw, 64px) !important;
}
@media (min-width: 768px) {
  .l-info__hours-title {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem) !important;
    padding-left: clamp(16px, 2.8070175439vw, 32px) !important;
  }
}
.l-info__hours-title::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_clock_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(24px, 4.2105263158vw, 48px);
  aspect-ratio: 24/25;
  top: 50%;
  left: 0;
  margin-top: clamp(-24px, -2.1052631579vw, -12px);
}
@media (min-width: 768px) {
  .l-info__hours-title::before {
    width: clamp(12px, 2.1052631579vw, 24px);
    margin-top: clamp(-12px, -1.0526315789vw, -6px);
  }
}

.l-info__hours-table table {
  background-color: #F2F2F2;
  border-radius: clamp(8px, 1.4035087719vw, 16px);
  width: 100%;
  border-collapse: collapse;
}
@media (min-width: 768px) {
  .l-info__hours-table table {
    border-radius: clamp(4px, 0.701754386vw, 8px);
  }
}
.l-info__hours-table th,
.l-info__hours-table td {
  padding: clamp(10px, 1.7543859649vw, 20px) clamp(13.5px, 2.3684210526vw, 27px);
  text-align: center;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(1.8rem, 0.2042553191rem + 3.1914893617vw, 3.6rem);
  border-bottom: 2px solid #ffffff;
  font-weight: 700;
}
@media (max-width: 375px) {
  .l-info__hours-table th,
.l-info__hours-table td {
    font-size: clamp(1.4rem, 0.2363636364rem + 3.6363636364vw, 1.6rem);
  }
}
@media (min-width: 768px) {
  .l-info__hours-table th,
.l-info__hours-table td {
    padding: clamp(5px, 0.8771929825vw, 10px) clamp(6.75px, 1.1842105263vw, 13.5px);
    font-size: clamp(0.9rem, 0.1021276596rem + 1.5957446809vw, 1.8rem);
  }
}
.l-info__hours-table th {
  color: #37BFBF;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
}
@media (min-width: 768px) {
  .l-info__hours-table th {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}
.l-info__hours-table td {
  font-family: "Onest", sans-serif;
}
.l-info__hours-table tbody tr:last-child td {
  border-bottom: none;
}

.l-info__hours-label {
  color: #37BFBF;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
}
@media (min-width: 768px) {
  .l-info__hours-label {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-info__news-title {
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
  line-height: 1.25;
  border-bottom: 2px dotted #37BFBF;
  padding-bottom: clamp(8px, 1.4035087719vw, 16px);
  margin-bottom: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .l-info__news-title {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-bottom: clamp(4px, 0.701754386vw, 8px);
    margin-bottom: clamp(4px, 0.701754386vw, 8px);
  }
}

.l-info__news-text {
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  font-weight: 500;
}
@media (min-width: 768px) {
  .l-info__news-text {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}
.l-info__news-text ul li {
  position: relative;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  line-height: 1.6;
  margin: 0;
  padding-left: clamp(20px, 3.5087719298vw, 40px);
  margin-bottom: clamp(5px, 0.8771929825vw, 10px);
}
@media (min-width: 768px) {
  .l-info__news-text ul li {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-left: clamp(10px, 1.7543859649vw, 20px);
    margin-bottom: clamp(2.5px, 0.4385964912vw, 5px);
  }
}
.l-info__news-text ul li::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #37BFBF;
  width: clamp(12px, 2.1052631579vw, 24px);
  height: clamp(12px, 2.1052631579vw, 24px);
  top: calc((clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem) * 1.6 - clamp(12px, 2.1052631579vw, 24px)) / 2);
  left: 0;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .l-info__news-text ul li::before {
    width: clamp(6px, 1.0526315789vw, 12px);
    height: clamp(6px, 1.0526315789vw, 12px);
    top: calc((clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem) * 1.6 - clamp(6px, 1.0526315789vw, 12px)) / 2);
  }
}
.l-info__news-text ul br {
  display: none;
}
.l-info__news-text a {
  position: relative;
  color: #7C6B61 !important;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-right: clamp(24px, 4.2105263158vw, 48px);
  padding-left: clamp(24px, 4.2105263158vw, 48px);
}
@media (min-width: 768px) {
  .l-info__news-text a {
    padding-right: clamp(12px, 2.1052631579vw, 24px);
    padding-left: clamp(12px, 2.1052631579vw, 24px);
  }
}
.l-info__news-text a::before, .l-info__news-text a::after {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(16px, 2.8070175439vw, 32px);
  aspect-ratio: 16/17;
  top: 50%;
  margin-top: calc(clamp(16px, 2.8070175439vw, 32px) / 16 * 17 / -2);
}
@media (min-width: 768px) {
  .l-info__news-text a::before, .l-info__news-text a::after {
    width: clamp(8px, 1.4035087719vw, 16px);
    margin-top: calc(clamp(8px, 1.4035087719vw, 16px) / 16 * 17 / -2);
  }
}
.l-info__news-text a::before {
  background-image: url(../img/cmn/icon_info_o.svg);
  left: 0;
}
.l-info__news-text a::after {
  background-image: url(../img/cmn/icon_arrow_o.svg);
  right: 0;
}

.l-info__contact {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-info__contact {
    gap: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-info__phone {
  font-family: "Zen Old Mincho", serif;
  font-weight: 900;
  font-size: clamp(3.2rem, 0.3631205674rem + 5.6737588652vw, 6.4rem);
  color: #37BFBF;
}
@media (max-width: 767px) {
  .l-info__phone {
    text-align: center;
  }
}
@media (min-width: 768px) {
  .l-info__phone {
    justify-content: flex-start;
    font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  }
}
.l-info__phone span {
  position: relative;
  padding-left: clamp(40px, 7.0175438596vw, 80px);
}
@media (min-width: 768px) {
  .l-info__phone span {
    padding-left: clamp(20px, 3.5087719298vw, 40px);
  }
}
.l-info__phone span::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_phone_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(32px, 5.6140350877vw, 64px);
  aspect-ratio: 1/1;
  top: 50%;
  left: 0;
  margin-top: clamp(-32px, -2.8070175439vw, -16px);
}
@media (min-width: 768px) {
  .l-info__phone span::before {
    width: clamp(16px, 2.8070175439vw, 32px);
    margin-top: clamp(-16px, -1.4035087719vw, -8px);
  }
}

.l-info__buttons {
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .l-info__buttons {
    flex-direction: row;
  }
}

.l-info__button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(8px, 1.4035087719vw, 16px) 0;
  border-radius: clamp(8px, 1.4035087719vw, 16px);
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .l-info__button {
    padding: clamp(4px, 0.701754386vw, 8px) 0;
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    border-radius: clamp(4px, 0.701754386vw, 8px);
  }
}

.l-info__button--primary {
  background-color: #7C6B61;
  color: #ffffff;
}
@media (min-width: 768px) {
  .l-info__button--primary {
    flex: 0 0 65.05%;
  }
}

.l-info__button--secondary {
  background-color: #65D2D2;
  color: #ffffff;
}
@media (min-width: 768px) {
  .l-info__button--secondary {
    flex: 0 0 31.07%;
  }
}

.l-info__mail {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  color: #37BFBF;
}
@media (max-width: 767px) {
  .l-info__mail {
    text-align: center;
  }
}
@media (min-width: 768px) {
  .l-info__mail {
    justify-content: flex-start;
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}
.l-info__mail span {
  position: relative;
  padding-right: clamp(24px, 4.2105263158vw, 48px);
}
@media (min-width: 768px) {
  .l-info__mail span {
    padding-right: clamp(12px, 2.1052631579vw, 24px);
  }
}
.l-info__mail span::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr_02.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(16px, 2.8070175439vw, 32px);
  aspect-ratio: 16/17;
  top: 50%;
  right: 0;
  margin-top: calc(clamp(16px, 2.8070175439vw, 32px) / 16 * 17 / -2);
}
@media (min-width: 768px) {
  .l-info__mail span::before {
    width: clamp(8px, 1.4035087719vw, 16px);
    margin-top: calc(clamp(8px, 1.4035087719vw, 16px) / 16 * 17 / -2);
  }
}

@media (min-width: 768px) {
  .l-info__right {
    flex: 0 0 54%;
  }
}

.l-info__schedule-title {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(8px, 1.4035087719vw, 16px);
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700 !important;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem) !important;
  color: #37BFBF;
  padding-left: clamp(32px, 5.6140350877vw, 64px) !important;
  margin-bottom: clamp(16px, 2.8070175439vw, 32px) !important;
}
@media (min-width: 768px) {
  .l-info__schedule-title {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem) !important;
    gap: clamp(4px, 0.701754386vw, 8px);
    padding-left: clamp(16px, 2.8070175439vw, 32px) !important;
    margin-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
  }
}
.l-info__schedule-title::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_calendar_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(24px, 4.2105263158vw, 48px);
  aspect-ratio: 1/1;
  top: 50%;
  left: 0;
  margin-top: clamp(-24px, -2.1052631579vw, -12px);
}
@media (min-width: 768px) {
  .l-info__schedule-title::before {
    width: clamp(12px, 2.1052631579vw, 24px);
    margin-top: clamp(-12px, -1.0526315789vw, -6px);
  }
}

.l-info__schedule-date {
  font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  font-weight: 500;
  color: #4D4D4D;
}
@media (min-width: 768px) {
  .l-info__schedule-date {
    font-size: clamp(0.6rem, 0.0680851064rem + 1.0638297872vw, 1.2rem);
  }
}

.l-info__schedule-tabs {
  margin-bottom: clamp(10px, 1.7543859649vw, 20px);
}
@media (min-width: 768px) {
  .l-info__schedule-tabs {
    margin-bottom: clamp(5px, 0.8771929825vw, 10px);
  }
}

.l-info__schedule-tab {
  background-color: #C9F1F1;
  width: calc((100% - clamp(4px, 0.701754386vw, 8px)) / 2);
  border-top-left-radius: clamp(8px, 1.4035087719vw, 16px);
  border-top-right-radius: clamp(8px, 1.4035087719vw, 16px);
  font-family: "Onest", sans-serif;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
  text-align: center;
  color: #37BFBF;
  display: block;
  float: left;
  transition: all 0.2s ease;
  padding-top: clamp(12px, 2.1052631579vw, 24px);
  padding-bottom: clamp(8px, 1.4035087719vw, 16px);
}
@media (max-width: 375px) {
  .l-info__schedule-tab {
    font-size: clamp(1.4rem, 0.2363636364rem + 3.6363636364vw, 1.6rem);
  }
}
@media (min-width: 768px) {
  .l-info__schedule-tab {
    border-top-left-radius: clamp(4px, 0.701754386vw, 8px);
    border-top-right-radius: clamp(4px, 0.701754386vw, 8px);
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-top: clamp(6px, 1.0526315789vw, 12px);
    padding-bottom: clamp(4px, 0.701754386vw, 8px);
    width: calc((100% - clamp(2px, 0.350877193vw, 4px)) / 2);
  }
}
.l-info__schedule-tab[for=treatment], .l-info__schedule-tab[for=treatment2] {
  margin-right: clamp(4px, 0.701754386vw, 8px);
}
@media (min-width: 768px) {
  .l-info__schedule-tab[for=treatment], .l-info__schedule-tab[for=treatment2] {
    margin-right: clamp(2px, 0.350877193vw, 4px);
  }
}
.l-info__schedule-tab:hover {
  opacity: 0.6;
}

input[name=schedule],
input[name=schedule2] {
  display: none;
}

.l-info__schedule-content {
  display: none;
  clear: both;
  overflow: hidden;
  border-top: 4px solid #37BFBF;
}

#treatment:checked ~ #treatment_content,
#examination:checked ~ #examination_content,
#treatment2:checked ~ #treatment_content2,
#examination2:checked ~ #examination_content2 {
  display: block;
}

.l-info__schedule-tabs input:checked + .l-info__schedule-tab {
  background-color: #37BFBF;
  color: #ffffff;
}

.l-info__schedule-table {
  background-color: #F2F2F2;
  border-bottom-right-radius: clamp(8px, 1.4035087719vw, 16px);
  border-bottom-left-radius: clamp(8px, 1.4035087719vw, 16px);
  width: 100%;
  border-collapse: collapse;
}
@media (min-width: 768px) {
  .l-info__schedule-table {
    border-bottom-right-radius: clamp(4px, 0.701754386vw, 8px);
    border-bottom-left-radius: clamp(4px, 0.701754386vw, 8px);
  }
}
.l-info__schedule-table th,
.l-info__schedule-table td {
  text-align: center;
  font-family: "Onest", sans-serif;
  border-top: 2px solid #ffffff;
  margin-right: clamp(4px, 0.6578947368vw, 7.5px);
  margin-left: clamp(4px, 0.6578947368vw, 7.5px);
  font-weight: 700;
  vertical-align: middle;
  padding-right: 0;
  padding-left: 0;
}
.l-info__schedule-table th {
  color: #37BFBF !important;
  padding-top: clamp(8.5px, 1.4912280702vw, 17px);
  padding-bottom: clamp(10.5px, 1.8421052632vw, 21px);
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  line-height: 1;
}
@media (min-width: 768px) {
  .l-info__schedule-table th {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-top: clamp(3px, 0.5263157895vw, 6px);
    padding-bottom: clamp(4px, 0.701754386vw, 8px);
  }
}
.l-info__schedule-table th span {
  display: block;
  color: #4D4D4D;
  font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  padding-top: 4px;
}
@media (min-width: 768px) {
  .l-info__schedule-table th span {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}
.l-info__schedule-table th span.sat {
  color: #498CF1;
}
.l-info__schedule-table th span.sun {
  color: #E34A4A;
}
.l-info__schedule-table td {
  padding-top: clamp(13px, 2.2807017544vw, 26px);
  padding-bottom: clamp(13px, 2.2807017544vw, 26px);
}
@media (min-width: 768px) {
  .l-info__schedule-table td {
    width: calc((100% - 60px) / 7);
    padding-top: clamp(6px, 1.0526315789vw, 12px);
    padding-bottom: clamp(6px, 1.0526315789vw, 12px);
  }
}
.l-info__schedule-table tr:last-of-type th, .l-info__schedule-table tr:last-of-type td {
  border-bottom: 0;
}

.l-info__schedule-time {
  font-size: clamp(1.3rem, 0.1475177305rem + 2.304964539vw, 2.6rem);
}
@media (min-width: 768px) {
  .l-info__schedule-time {
    width: 60px !important;
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-info__status {
  font-size: clamp(1.8rem, 0.2042553191rem + 3.1914893617vw, 3.6rem);
}
@media (min-width: 768px) {
  .l-info__status {
    font-size: clamp(0.9rem, 0.1021276596rem + 1.5957446809vw, 1.8rem);
  }
}

.l-info__status--available {
  color: #37BFBF;
}

.l-info__status--cleaning {
  color: #37BFBF;
}

.l-info__status--unavailable {
  color: #4D4D4D;
}

@media (min-width: 768px) {
  .l-info__schedule-footer {
    text-align: center;
  }
}

.l-info__schedule-legend-item {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  vertical-align: middle;
  font-weight: 500;
}
@media (min-width: 768px) {
  .l-info__schedule-legend-item {
    font-size: clamp(0.6rem, 0.0680851064rem + 1.0638297872vw, 1.2rem);
  }
}

.l-info__parkcity {
  background-color: #F2F2F2;
  padding-top: clamp(40px, 7.0175438596vw, 80px);
  padding-bottom: clamp(40px, 7.0175438596vw, 80px);
  margin-right: clamp(-32px, -2.8070175439vw, -16px);
  margin-left: clamp(-32px, -2.8070175439vw, -16px);
}
@media (min-width: 768px) {
  .l-info__parkcity {
    padding-top: clamp(12px, 2.1052631579vw, 24px);
    padding-bottom: clamp(12px, 2.1052631579vw, 24px);
  }
}

.l-info__parkcity-title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  color: #37BFBF;
  text-align: center;
  margin-bottom: clamp(32px, 5.6140350877vw, 64px);
}
@media (min-width: 768px) {
  .l-info__parkcity-title {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    margin-bottom: clamp(12px, 2.1052631579vw, 24px);
  }
}

.l-info__parkcity-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(32px, 5.6140350877vw, 64px);
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .l-info__parkcity-cards {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(48px, 8.4210526316vw, 96px);
  }
}

.l-info__parkcity-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-info__parkcity-card {
    gap: clamp(8px, 1.4035087719vw, 16px);
  }
}
.l-info__parkcity-card:nth-last-of-type(n+2) {
  position: relative;
}
.l-info__parkcity-card:nth-last-of-type(n+2)::after {
  content: "";
  position: absolute;
  display: block;
  background-color: #84CCCC;
  width: clamp(100px, 17.5438596491vw, 200px);
  height: 1px;
  bottom: clamp(-32px, -2.8070175439vw, -16px);
  right: 50%;
}
@media (max-width: 767px) {
  .l-info__parkcity-card:nth-last-of-type(n+2)::after {
    margin-right: clamp(-100px, -8.7719298246vw, -50px);
  }
}
@media (min-width: 768px) {
  .l-info__parkcity-card:nth-last-of-type(n+2)::after {
    width: 1px;
    height: 100%;
    bottom: 0;
    right: clamp(-48px, -4.2105263158vw, -24px);
  }
}

.l-info__parkcity-text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
}
@media (min-width: 768px) {
  .l-info__parkcity-text {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-info__parkcity-button {
  margin-right: auto;
}

.l-info__map {
  margin-right: clamp(-32px, -2.8070175439vw, -16px);
  margin-left: clamp(-32px, -2.8070175439vw, -16px);
}

.l-info__map-container {
  position: relative;
  width: 100%;
  height: 408px;
}

.l-info__map-container iframe {
  width: 100%;
  height: 100%;
}

.l-info--green .l-info__hours-title {
  color: #ffffff;
}
.l-info--green .l-info__hours-title::before {
  background-image: url(../img/cmn/icon_clock_w.svg);
}
.l-info--green .l-info__hours-table table {
  background-color: #C9F1F1;
}
.l-info--green .l-info__hours-table th,
.l-info--green .l-info__hours-table td {
  border-bottom-color: #37BFBF;
}
.l-info--green .l-info__hours-table td:not(.l-info__hours-label) {
  color: #4D4D4D;
}
.l-info--green .l-info__phone {
  color: #ffffff;
}
.l-info--green .l-info__phone span::before {
  background-image: url(../img/cmn/icon_phone_w.svg);
}
.l-info--green .l-info__mail {
  color: #ffffff;
}
.l-info--green .l-info__mail span::before {
  background-image: url(../img/cmn/icon_arrow_w.svg);
}
.l-info--green .l-info__button--secondary {
  background-color: #178888;
}

.l-about {
  padding-top: clamp(64px, 11.2280701754vw, 128px);
  padding-bottom: clamp(64px, 11.2280701754vw, 128px);
}
@media (min-width: 768px) {
  .l-about {
    padding-top: clamp(24px, 4.2105263158vw, 48px);
    padding-bottom: clamp(92.5px, 16.2280701754vw, 185px);
  }
}
.l-about .l-info__contact {
  display: none;
}
.l-about .l-info__hours-table th {
  color: #37BFBF;
}

.l-about_content {
  display: flex;
  gap: clamp(32px, 5.6140350877vw, 64px);
}
@media (max-width: 767px) {
  .l-about_content {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .l-about_content {
    gap: clamp(24px, 4.2105263158vw, 48px);
  }
}

@media (min-width: 768px) {
  .l-about__left {
    flex: 0 0 41.2%;
  }
}

@media (min-width: 768px) {
  .l-about__right {
    flex: 0 0 54%;
  }
}

#body_wrap.single-mdmenu .l-mv__list {
  bottom: -48.5333333333vw;
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .l-mv__list {
    bottom: max(-4.0972222222vw, -59px);
  }
}
#body_wrap.single-mdmenu .l-about {
  background-color: #E2F3F3;
  padding-top: 59.2vw;
  padding-bottom: clamp(48px, 8.4210526316vw, 96px);
  margin-bottom: clamp(40px, 7.0175438596vw, 80px);
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .l-about {
    padding-top: min(6.3194444444vw, 91px);
    padding-bottom: clamp(18px, 3.1578947368vw, 36px);
    margin-bottom: clamp(40px, 7.0175438596vw, 80px);
  }
}
#body_wrap.single-mdmenu .l-about .l-info__hours-table table {
  background-color: #ffffff;
}
#body_wrap.single-mdmenu .l-about .l-info__hours-table th,
#body_wrap.single-mdmenu .l-about .l-info__hours-table td {
  border-bottom-color: #E2F3F3;
}
#body_wrap.single-mdmenu .l-about .l-info__schedule-tab {
  background-color: #ffffff;
}
#body_wrap.single-mdmenu .l-about .l-info__schedule-table {
  background-color: #ffffff;
}
#body_wrap.single-mdmenu .l-about .l-info__schedule-table th,
#body_wrap.single-mdmenu .l-about .l-info__schedule-table td {
  border-top-color: #E2F3F3;
}
#body_wrap.single-mdmenu .l-about .l-info__schedule-tabs input:checked + .l-info__schedule-tab {
  background-color: #37BFBF;
}

.page-id-54 .l-info__hours {
  margin-bottom: clamp(32px, 5.6140350877vw, 64px) !important;
}
.page-id-54 .l-info__hours-table th,
.page-id-54 .l-info__hours-table td {
  line-height: 1.429;
}
.page-id-54 .l-info__hours-table thead th {
  color: #37BFBF;
}
.page-id-54 .l-info__hours-table tbody th,
.page-id-54 .l-info__hours-table tbody td {
  line-height: 1.429;
}
.page-id-54 .l-info__news {
  display: none;
}
.page-id-54 .l-info__buttons a {
  color: #ffffff !important;
  text-align: center;
}

#body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content h4.l-info__hours-title {
  margin-bottom: 0;
  line-height: 1.429;
  border: none;
  padding-top: 0;
  padding-bottom: 0;
}
#body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content a.l-info__mail,
#body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content a.l-info__phone {
  color: #37BFBF !important;
  text-decoration: none !important;
}
#body_wrap.page-id-54:not(.top):not(.post-type-archive) .post_content a.l-info__button {
  text-decoration: none !important;
}

.l-faq {
  padding-top: clamp(58px, 12.1052631579vw, 138px);
}

.l-faq__title {
  margin-bottom: clamp(58px, 10.1754385965vw, 116px);
}
@media (min-width: 768px) {
  .l-faq__title {
    margin-bottom: clamp(26px, 5.0877192982vw, 58px);
  }
}

.l-faq__list {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.8070175439vw, 32px);
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .l-faq__list {
    gap: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-faq__question {
  background-color: #E2F3F3;
  padding-top: clamp(18.5px, 3.2456140351vw, 37px);
  padding-right: clamp(56px, 9.8245614035vw, 112px);
  padding-bottom: clamp(18.5px, 3.2456140351vw, 37px);
  padding-left: clamp(63px, 11.0526315789vw, 126px);
  cursor: pointer;
  position: relative;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-faq__question {
    padding-top: clamp(15px, 2.6315789474vw, 30px);
    padding-right: clamp(36px, 6.3157894737vw, 72px);
    padding-bottom: clamp(15px, 2.6315789474vw, 30px);
    padding-left: clamp(35.5px, 6.2280701754vw, 71px);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}
.l-faq__question::before {
  content: "";
  position: absolute;
  display: block;
  content: "Q";
  color: #37BFBF;
  font-family: "Onest", sans-serif;
  font-size: clamp(4rem, 0.4539007092rem + 7.0921985816vw, 8rem);
  font-weight: 700;
  line-height: 1;
  top: 50%;
  left: clamp(16px, 2.8070175439vw, 32px);
  margin-top: calc(clamp(4rem, 0.4539007092rem + 7.0921985816vw, 8rem) / -2);
}
@media (min-width: 768px) {
  .l-faq__question::before {
    font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
    left: clamp(12px, 2.1052631579vw, 24px);
    margin-top: calc(clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem) / -2);
  }
}
.l-faq__question::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(20px, 3.5087719298vw, 40px);
  aspect-ratio: 20/11;
  top: 50%;
  right: clamp(18px, 3.1578947368vw, 36px);
  margin-top: calc(clamp(20px, 3.5087719298vw, 40px) / 20 * 11 / -2);
  transform: rotate(180deg);
  transition-property: transform;
  transition-duration: 0.4s;
}
@media (min-width: 768px) {
  .l-faq__question::after {
    width: clamp(13.5px, 2.3684210526vw, 27px);
    right: clamp(13.5px, 2.3684210526vw, 27px);
    margin-top: calc(clamp(13.5px, 2.3684210526vw, 27px) / 20 * 11 / -2);
  }
}

.l-faq__question-text {
  flex: 1;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
}
@media (min-width: 768px) {
  .l-faq__question-text {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}

.l-faq__answer {
  display: none;
  position: relative;
  padding-top: clamp(24px, 4.2105263158vw, 48px);
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-bottom: clamp(24px, 4.2105263158vw, 48px);
  padding-left: clamp(61px, 10.701754386vw, 122px);
}
@media (min-width: 768px) {
  .l-faq__answer {
    padding-top: clamp(12px, 2.1052631579vw, 24px);
    padding-right: clamp(12px, 2.1052631579vw, 24px);
    padding-bottom: clamp(12px, 2.1052631579vw, 24px);
    padding-left: clamp(34.5px, 6.0526315789vw, 69px);
  }
}
.l-faq__answer::before {
  content: "";
  position: absolute;
  display: block;
  content: "A";
  color: #37BFBF;
  font-family: "Onest", sans-serif;
  font-size: clamp(4rem, 0.4539007092rem + 7.0921985816vw, 8rem);
  font-weight: 700;
  line-height: 1;
  top: clamp(29px, 5.0877192982vw, 58px);
  left: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-faq__answer::before {
    font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
    top: clamp(16px, 2.8070175439vw, 32px);
    left: clamp(12px, 2.1052631579vw, 24px);
  }
}

.l-faq__answer-text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
}
@media (min-width: 768px) {
  .l-faq__answer-text {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}

.l-faq__answer-button {
  margin-top: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-faq__answer-button {
    margin-top: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-faq__item--open .l-faq__question::after {
  transform: rotate(0deg);
}

.l-column {
  padding-top: clamp(106px, 12.1052631579vw, 138px);
  padding-bottom: clamp(168px, 29.4736842105vw, 336px);
}
@media (min-width: 768px) {
  .l-column {
    padding-bottom: clamp(59px, 10.350877193vw, 118px);
  }
}

.l-column__title {
  margin-bottom: clamp(58px, 10.1754385965vw, 116px);
}
@media (min-width: 768px) {
  .l-column__title {
    margin-bottom: clamp(29px, 5.0877192982vw, 58px);
  }
}
@media (max-width: 767px) {
  .l-column__title span {
    padding-right: clamp(48px, 8.4210526316vw, 96px);
    padding-left: clamp(48px, 8.4210526316vw, 96px);
  }
}

.l-column__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(16px, 2.8070175439vw, 32px) clamp(32px, 5.6140350877vw, 64px);
  margin-bottom: clamp(32px, 5.6140350877vw, 64px);
  max-width: 964px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .l-column__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(16px, 2.8070175439vw, 32px);
    margin-bottom: clamp(16px, 2.8070175439vw, 32px);
  }
}

.l-column__link {
  display: flex;
  flex-direction: column;
}

.l-column__image {
  position: relative;
  width: 100%;
  aspect-ratio: 3/2;
  overflow: hidden;
  margin-bottom: clamp(8px, 1.4035087719vw, 16px);
}
.l-column__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: transform 0.3s ease;
  border-radius: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .l-column__image img {
    border-radius: clamp(4px, 0.701754386vw, 8px);
  }
}

.l-column__content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.l-column__category {
  display: inline-block;
  background-color: #37BFBF;
  color: #ffffff;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1rem, 0.8226950355rem + 0.3546099291vw, 1.2rem);
  padding: clamp(2px, 0.350877193vw, 4px) clamp(8px, 1.4035087719vw, 16px);
  border-radius: clamp(2px, 0.350877193vw, 4px);
  margin-bottom: clamp(4px, 0.701754386vw, 8px);
  align-self: flex-start;
}
@media (min-width: 768px) {
  .l-column__category {
    padding: clamp(1px, 0.1754385965vw, 2px) clamp(4px, 0.701754386vw, 8px);
  }
}

.l-column__item-title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1.2rem, 0.8453900709rem + 0.7092198582vw, 1.6rem);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.l-footer {
  position: relative;
  background-color: #37BFBF;
  color: #ffffff;
  z-index: 100;
}
.l-footer .l-info__news {
  display: none;
}

.l-footer_content {
  position: relative;
  padding-top: clamp(80px, 14.0350877193vw, 160px);
}
@media (min-width: 768px) {
  .l-footer_content {
    padding-top: clamp(15.5px, 2.7192982456vw, 31px);
  }
}

/* header */
.l-footer__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(24px, 4.2105263158vw, 48px);
  margin-bottom: clamp(32px, 5.6140350877vw, 64px);
}
@media (min-width: 768px) {
  .l-footer__header {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    width: 69.4%;
    margin-top: clamp(-88px, -7.7192982456vw, -44px);
  }
}

/* logo */
.l-footer__logo {
  background-color: #ffffff;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
}
@media (max-width: 767px) {
  .l-footer__logo {
    position: absolute;
    top: clamp(-96px, -8.4210526316vw, -48px);
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
  }
}
@media (min-width: 768px) {
  .l-footer__logo {
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}

.l-footer__logo-link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #84CCCC;
  width: clamp(120px, 21.0526315789vw, 240px);
  height: clamp(96px, 16.8421052632vw, 192px);
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
@media (min-width: 768px) {
  .l-footer__logo-link {
    width: clamp(75px, 13.1578947368vw, 150px);
    height: clamp(60px, 10.5263157895vw, 120px);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}
.l-footer__logo-link img {
  width: 80%;
}

/* title */
.l-footer__title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(2.2rem, 2.0226950355rem + 0.3546099291vw, 2.4rem);
  color: #ffffff;
  margin: 0;
  text-align: center;
}
@media (max-width: 375px) {
  .l-footer__title {
    font-size: clamp(2rem, 0.8363636364rem + 3.6363636364vw, 2.2rem);
  }
}
@media (min-width: 768px) {
  .l-footer__title {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
    text-align: left;
    line-height: 1;
  }
}

/* sns */
.l-footer__social {
  display: flex;
  gap: clamp(24px, 4.2105263158vw, 48px);
}
@media (min-width: 768px) {
  .l-footer__social {
    gap: clamp(12px, 2.1052631579vw, 24px);
  }
}

.l-footer__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(24px, 4.2105263158vw, 48px);
  height: clamp(24px, 4.2105263158vw, 48px);
}
@media (min-width: 768px) {
  .l-footer__social-link {
    width: clamp(12px, 2.1052631579vw, 24px);
    height: clamp(12px, 2.1052631579vw, 24px);
  }
}

/* main */
.l-footer__main {
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 7.0175438596vw, 80px);
  margin-bottom: clamp(40px, 6.9298245614vw, 79px);
}
@media (min-width: 768px) {
  .l-footer__main {
    flex-direction: row;
    justify-content: space-between;
    gap: clamp(20.5px, 3.5964912281vw, 41px);
  }
}

.l-footer__info {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .l-footer__info {
    flex: 0 0 41.2%;
  }
}

@media (min-width: 768px) {
  .l-footer__map {
    flex: 0 0 54.7%;
  }
}

.l-footer__map-container {
  position: relative;
  width: 100%;
  height: clamp(213px, 29.7368421053vw, 339px);
  border-radius: 8px;
  overflow: hidden;
}
.l-footer__map-container iframe {
  width: 100%;
  height: 100%;
}

/* nav */
.l-footer__nav-child {
  display: flex;
  gap: clamp(48px, 8.4210526316vw, 96px);
  margin-bottom: clamp(64px, 7.0175438596vw, 80px);
}
@media (max-width: 767px) {
  .l-footer__nav-child {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .l-footer__nav-child {
    gap: clamp(90px, 15.7894736842vw, 180px);
  }
}

.l-footer__nav-group {
  display: flex;
  flex: 1;
}
@media (min-width: 768px) {
  .l-footer__nav-group {
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(1) {
    flex: 0 0 26.3%;
  }
}
.l-footer__nav-group:nth-of-type(1) .l-footer__nav-column:nth-of-type(1) {
  flex: 0 0 55.98%;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(1) .l-footer__nav-column:nth-of-type(1) {
    flex: 0 0 37.97%;
  }
}
.l-footer__nav-group:nth-of-type(1) .l-footer__nav-column:nth-of-type(2) {
  flex: 0 0 44.02%;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(1) .l-footer__nav-column:nth-of-type(2) {
    flex: 0 0 33.02%;
  }
}
.l-footer__nav-group:nth-of-type(2) {
  position: relative;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(2) {
    flex: 0 0 53.1%;
  }
}
.l-footer__nav-group:nth-of-type(2)::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #E2F3F3;
  width: 100%;
  height: 1px;
  top: clamp(-50px, -4.3859649123vw, -25px);
  left: 0;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(2)::before {
    width: 1px;
    height: 100%;
    top: 0;
    left: clamp(-108px, -9.4736842105vw, -54px);
  }
}
.l-footer__nav-group:nth-of-type(2) .l-footer__nav-column:nth-of-type(1) {
  flex: 0 0 35.57%;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(2) .l-footer__nav-column:nth-of-type(1) {
    flex: 0 0 24.7%;
  }
}
.l-footer__nav-group:nth-of-type(2) .l-footer__nav-column:nth-of-type(2) {
  flex: 0 0 35.57%;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(2) .l-footer__nav-column:nth-of-type(2) {
    flex: 0 0 22.7%;
  }
}
.l-footer__nav-group:nth-of-type(2) .l-footer__nav-column:nth-of-type(3) {
  flex: 0 0 28.57%;
}
@media (min-width: 768px) {
  .l-footer__nav-group:nth-of-type(2) .l-footer__nav-column:nth-of-type(3) {
    flex: 0 0 21.6%;
  }
}
@media (max-width: 767px) {
  .l-footer__nav-group:nth-of-type(2) .l-footer__nav-column a {
    font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  }
}
@media (max-width: 375px) {
  .l-footer__nav-group:nth-of-type(2) .l-footer__nav-column a {
    font-size: clamp(1.1rem, -0.0636363636rem + 3.6363636364vw, 1.3rem);
  }
}

.l-footer__nav-list {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 4.2105263158vw, 48px);
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 768px) {
  .l-footer__nav-list {
    gap: clamp(12px, 2.1052631579vw, 24px);
  }
}
.l-footer__nav-list a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
}
@media (min-width: 768px) {
  .l-footer__nav-list a {
    font-size: clamp(0.6rem, -0.1092198582rem + 1.4184397163vw, 1.4rem);
  }
}

/* bottom */
.l-footer__bottom {
  position: relative;
  padding-top: clamp(19px, 3.3333333333vw, 38px);
  padding-bottom: clamp(163px, 28.5964912281vw, 326px);
}
@media (min-width: 768px) {
  .l-footer__bottom {
    padding-top: clamp(9.5px, 1.6666666667vw, 19px);
    padding-bottom: clamp(5.5px, 0.9649122807vw, 11px);
  }
}
.l-footer__bottom::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #178888;
  width: 100vw;
  height: 100%;
  top: 0;
  left: clamp(-32px, -2.8070175439vw, -16px);
  z-index: -1;
}
@media (min-width: 1064px) {
  .l-footer__bottom::before {
    left: calc((100vw - 1064px) / -2 + clamp(-32px, -2.8070175439vw, -16px));
  }
}

.l-footer__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(16px, 2.8070175439vw, 32px);
  margin-bottom: clamp(24px, 4.2105263158vw, 48px);
}
@media (min-width: 768px) {
  .l-footer__links {
    gap: clamp(12px, 2.1052631579vw, 24px);
    margin-bottom: clamp(12px, 2.1052631579vw, 24px);
  }
}
.l-footer__links a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
}
@media (max-width: 375px) {
  .l-footer__links a {
    font-size: clamp(1.1rem, -0.6454545455rem + 5.4545454545vw, 1.4rem);
  }
}
@media (min-width: 768px) {
  .l-footer__links a {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
  }
}

.l-footer__copyright {
  text-align: center;
}
.l-footer__copyright p {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 400;
  font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
  color: #ffffff;
  margin: 0;
}
@media (min-width: 768px) {
  .l-footer__copyright p {
    font-size: clamp(0.5rem, 0.0567375887rem + 0.8865248227vw, 1rem);
  }
}

/* pagetop */
.l-footer__pagetop {
  position: fixed;
  bottom: clamp(120px, 21.0526315789vw, 240px);
  right: clamp(16px, 2.8070175439vw, 32px);
  width: clamp(64px, 11.2280701754vw, 128px);
  height: clamp(64px, 11.2280701754vw, 128px);
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  background-color: #E2F3F3;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 90;
}
@media (min-width: 768px) {
  .l-footer__pagetop {
    bottom: clamp(15px, 2.6315789474vw, 30px);
    right: clamp(20px, 3.5087719298vw, 40px);
    width: clamp(32px, 5.6140350877vw, 64px);
    height: clamp(32px, 5.6140350877vw, 64px);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}
.l-footer__pagetop.is-show {
  opacity: 1;
  visibility: visible;
}
.l-footer__pagetop::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(27px, 4.7368421053vw, 54px);
  aspect-ratio: 27/15;
  top: 50%;
  left: 50%;
  margin-top: calc(clamp(27px, 4.7368421053vw, 54px) / 27 * 15 / -2);
  margin-left: clamp(-27px, -2.3684210526vw, -13.5px);
}
@media (min-width: 768px) {
  .l-footer__pagetop::after {
    width: clamp(13.5px, 2.3684210526vw, 27px);
    margin-top: calc(clamp(13.5px, 2.3684210526vw, 27px) / 27 * 14 / -2);
    margin-left: clamp(-13.5px, -1.1842105263vw, -6.75px);
  }
}

/* bottombar */
.l-footer__bottombar {
  position: fixed;
  width: 100%;
  bottom: clamp(32px, 5.6140350877vw, 64px);
  left: 0;
  right: 0;
  display: flex;
  z-index: 100;
  gap: clamp(4px, 0.701754386vw, 8px);
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .l-footer__bottombar {
    display: none;
  }
}
.l-footer__bottombar > a {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  border-radius: clamp(8px, 1.4035087719vw, 16px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(14px, 4.2105263158vw, 48px) 0;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  color: #ffffff;
  text-decoration: none;
}
@media (max-width: 375px) {
  .l-footer__bottombar > a {
    font-size: clamp(1.3rem, 0.7181818182rem + 1.8181818182vw, 1.4rem);
  }
}

.l-footer__bottombar-tel {
  flex: 0 0 16.33%;
  background-color: #65D2D2;
  position: relative;
}
.l-footer__bottombar-tel::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_phone_w.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(24px, 4.2105263158vw, 48px);
  aspect-ratio: 1/1;
  top: 50%;
  left: 50%;
  margin-top: calc(clamp(24px, 4.2105263158vw, 48px) / -2);
  margin-left: clamp(-24px, -2.1052631579vw, -12px);
}

.l-footer__bottombar-first {
  flex: 0 0 55.69%;
  background-color: #7C6B61;
}

.l-footer__bottombar-reserve {
  flex: 0 0 25.66%;
  background-color: #65D2D2;
}

.p-article {
  padding-top: clamp(58px, 10.1754385965vw, 116px);
  padding-bottom: clamp(120px, 21.0526315789vw, 240px);
}
@media (min-width: 768px) {
  .p-article {
    padding-top: clamp(37px, 6.4912280702vw, 74px);
    padding-bottom: clamp(60px, 10.5263157895vw, 120px);
  }
}

.p-article__title {
  margin-bottom: clamp(58px, 10.1754385965vw, 116px);
}
@media (min-width: 768px) {
  .p-article__title {
    margin-bottom: clamp(29px, 5.0877192982vw, 58px);
  }
}

.p-postList {
  margin-left: clamp(-16px, -1.4035087719vw, -8px) !important;
  margin-right: clamp(-16px, -1.4035087719vw, -8px) !important;
}

.p-postList__item {
  padding-left: clamp(8px, 1.4035087719vw, 16px) !important;
  padding-right: clamp(8px, 1.4035087719vw, 16px) !important;
  margin-bottom: clamp(32px, 5.6140350877vw, 64px) !important;
}
@media (min-width: 768px) {
  .p-postList__item {
    width: 33.3333333333% !important;
    margin-bottom: clamp(16px, 2.8070175439vw, 32px) !important;
  }
}

.p-postList__thumb {
  box-shadow: none;
}
.p-postList__thumb img {
  border-radius: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .p-postList__thumb img {
    border-radius: clamp(4px, 0.701754386vw, 8px);
  }
}

.p-postList__body {
  display: flex;
  flex-direction: column;
  padding-top: clamp(8px, 1.4035087719vw, 16px);
}

.p-postList__title {
  order: 2;
  font-size: clamp(1.2rem, 0.8453900709rem + 0.7092198582vw, 1.6rem);
}

.p-postList__meta {
  order: 1;
  margin-top: 0 !important;
}

.p-postList__cat {
  background-color: #37BFBF;
  color: #ffffff;
  font-size: clamp(1rem, 0.8226950355rem + 0.3546099291vw, 1.2rem);
  font-weight: 700;
  border-radius: clamp(2px, 0.350877193vw, 4px);
  padding-top: clamp(2px, 0.350877193vw, 4px);
  padding-right: clamp(8px, 1.4035087719vw, 16px);
  padding-bottom: clamp(2px, 0.350877193vw, 4px);
  padding-left: clamp(8px, 1.4035087719vw, 16px);
  margin-right: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .p-postList__cat {
    border-radius: clamp(1px, 0.1754385965vw, 2px);
    padding-top: clamp(1px, 0.1754385965vw, 2px);
    padding-right: clamp(4px, 0.701754386vw, 8px);
    padding-bottom: clamp(1px, 0.1754385965vw, 2px);
    padding-left: clamp(4px, 0.701754386vw, 8px);
    margin-right: clamp(4px, 0.701754386vw, 8px);
  }
}
.p-postList__cat::before {
  content: none;
}

.post_content div > :last-child .p-postList__meta {
  margin-bottom: clamp(4px, 0.701754386vw, 8px) !important;
}

.c-pagination {
  flex-wrap: nowrap;
  margin-top: clamp(80px, 14.0350877193vw, 160px);
}
@media (min-width: 768px) {
  .c-pagination {
    margin-top: clamp(48px, 8.4210526316vw, 96px);
  }
}

.page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Onest", sans-serif;
  font-size: clamp(2.4rem, 0.2723404255rem + 4.2553191489vw, 4.8rem);
  font-weight: 700;
  line-height: 1;
  background-color: #E2F3F3;
  color: #37BFBF;
  width: clamp(48px, 8.4210526316vw, 96px);
  height: clamp(48px, 8.4210526316vw, 96px);
  aspect-ratio: 1/1;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  margin: 0;
  margin-right: clamp(4px, 0.701754386vw, 8px);
  margin-left: clamp(4px, 0.701754386vw, 8px);
  box-shadow: none;
}
@media (min-width: 768px) {
  .page-numbers {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
    width: clamp(24px, 4.2105263158vw, 48px);
    height: clamp(24px, 4.2105263158vw, 48px);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
    margin-right: clamp(2px, 0.350877193vw, 4px);
    margin-left: clamp(2px, 0.350877193vw, 4px);
  }
}
.page-numbers:hover {
  opacity: 1;
}

.current {
  background-color: #37BFBF;
  color: #ffffff;
}

.page-numbers.-prev,
.page-numbers.-next {
  position: relative;
}
.page-numbers.-prev::before,
.page-numbers.-next::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(21px, 3.6842105263vw, 42px);
  aspect-ratio: 21/10.5;
  top: 50%;
  left: 50%;
  margin-top: calc(clamp(21px, 3.6842105263vw, 42px) / 21 * 10.5 / -2);
  margin-left: clamp(-25px, -2.1929824561vw, -12.5px);
}
@media (min-width: 768px) {
  .page-numbers.-prev::before,
.page-numbers.-next::before {
    width: clamp(10.5px, 1.8421052632vw, 21px);
    margin-top: calc(clamp(10.5px, 1.8421052632vw, 21px) / 21 * 10.5 / -2);
    margin-left: clamp(-12.5px, -1.0964912281vw, -6.25px);
  }
}
.page-numbers.-prev:hover::before,
.page-numbers.-next:hover::before {
  background-image: url(../img/cmn/icon_arrow_w_02.svg);
}

@media (min-width: 768px) {
  .page-numbers.-prev {
    margin-right: clamp(8px, 1.4035087719vw, 16px);
  }
}
.page-numbers.-prev::before {
  transform: rotate(-90deg);
}

@media (min-width: 768px) {
  .page-numbers.-next {
    margin-left: clamp(8px, 1.4035087719vw, 16px);
  }
}
.page-numbers.-next::before {
  transform: rotate(90deg);
  margin-left: clamp(-15px, -1.3157894737vw, -7.5px);
}
@media (min-width: 768px) {
  .page-numbers.-next::before {
    margin-left: clamp(-7.5px, -0.6578947368vw, -3.75px);
  }
}

.c-pagination__dot {
  color: #999999;
  font-family: "Onest", sans-serif;
  font-size: clamp(2.4rem, 0.2723404255rem + 4.2553191489vw, 4.8rem);
  font-weight: 700;
}
@media (min-width: 768px) {
  .c-pagination__dot {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  }
}

.single .p-breadcrumb__item:last-child > span.p-breadcrumb__text {
  display: inline;
}
.single .p-toc {
  background-color: #E2F3F3;
  border: none;
  border-radius: clamp(16px, 2.8070175439vw, 32px) !important;
  padding-top: clamp(24px, 4.2105263158vw, 48px);
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-bottom: clamp(24px, 4.2105263158vw, 48px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .single .p-toc {
    border-radius: clamp(8px, 1.4035087719vw, 16px) !important;
    padding-top: clamp(12px, 2.1052631579vw, 24px);
    padding-right: clamp(20px, 3.5087719298vw, 40px);
    padding-bottom: clamp(12px, 2.1052631579vw, 24px);
    padding-left: clamp(20px, 3.5087719298vw, 40px);
  }
}
.single .p-toc::before, .single .p-toc::after {
  content: none !important;
}
.single .p-toc__ttl {
  color: #37BFBF;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  font-weight: 700;
  line-height: 1.25;
  text-align: center !important;
  border-bottom: 2px dotted #37BFBF !important;
  padding-bottom: clamp(12px, 2.1052631579vw, 24px) !important;
  margin-bottom: clamp(16px, 2.8070175439vw, 32px) !important;
}
@media (min-width: 768px) {
  .single .p-toc__ttl {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    padding-bottom: clamp(6px, 1.0526315789vw, 12px) !important;
    margin-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
  }
}
.single .p-toc__ttl::before {
  content: none;
}
.single .p-toc__list li {
  margin-left: 0;
}
.single .p-toc__list li::before {
  content: none;
}
.single .p-toc__list li a {
  position: relative;
  color: #4D4D4D !important;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 500;
  padding-left: clamp(20px, 3.5087719298vw, 40px);
  text-decoration: none !important;
  margin-top: clamp(8px, 1.4035087719vw, 16px);
  margin-bottom: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  .single .p-toc__list li a {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-left: clamp(10px, 1.7543859649vw, 20px);
    margin-top: clamp(4px, 0.701754386vw, 8px);
    margin-bottom: clamp(8px, 1.4035087719vw, 16px);
  }
}
.single .p-toc__list li a::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #37BFBF;
  width: clamp(12px, 2.1052631579vw, 24px);
  height: clamp(12px, 2.1052631579vw, 24px);
  top: 50%;
  left: 0;
  border-radius: 50%;
  margin-top: clamp(-12px, -1.0526315789vw, -6px);
}
@media (min-width: 768px) {
  .single .p-toc__list li a::before {
    width: clamp(6px, 1.0526315789vw, 12px);
    height: clamp(6px, 1.0526315789vw, 12px);
    margin-top: clamp(-6px, -0.5263157895vw, -3px);
  }
}
.single .p-toc__childList {
  padding-left: clamp(32px, 5.6140350877vw, 64px);
}
@media (min-width: 768px) {
  .single .p-toc__childList {
    padding-left: clamp(16px, 2.8070175439vw, 32px);
  }
}
.single .p-toc__childList li:nth-last-of-type(n+2) a {
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem);
  margin-top: 0;
  margin-bottom: clamp(8px, 1.4035087719vw, 16px);
}
@media (min-width: 768px) {
  .single .p-toc__childList li:nth-last-of-type(n+2) a {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem);
    margin-bottom: clamp(4px, 0.701754386vw, 8px);
  }
}
.single .p-toc__childList a::before {
  background-color: transparent !important;
  border: 1px solid #37BFBF;
}

#body_wrap.single-mdmenu .post_content {
  padding-bottom: clamp(40px, 7.0175438596vw, 80px) !important;
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .post_content {
    padding-bottom: clamp(20px, 3.5087719298vw, 40px) !important;
  }
}
#body_wrap.single-mdmenu .p-single__first {
  position: relative;
  display: flex;
  -moz-column-gap: clamp(20px, 3.5087719298vw, 40px);
       column-gap: clamp(20px, 3.5087719298vw, 40px);
  max-width: 1000px;
  padding-bottom: clamp(86px, 15.0877192982vw, 172px);
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 767px) {
  #body_wrap.single-mdmenu .p-single__first {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-single__first {
    align-items: center;
    padding-top: clamp(20px, 3.5087719298vw, 40px);
    padding-bottom: clamp(49.5px, 8.6842105263vw, 99px);
  }
}
@media (max-width: 767px) {
  #body_wrap.single-mdmenu .p-single__first-text {
    order: 2;
    padding-right: clamp(16px, 2.8070175439vw, 32px);
    padding-left: clamp(16px, 2.8070175439vw, 32px);
  }
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-single__first-text {
    flex: 1 1;
  }
}
#body_wrap.single-mdmenu .c-postTitle {
  padding-bottom: clamp(32px, 5.6140350877vw, 64px);
}
@media (max-width: 767px) {
  #body_wrap.single-mdmenu .c-postTitle {
    padding-top: clamp(40px, 7.0175438596vw, 80px);
  }
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .c-postTitle {
    padding-bottom: clamp(20px, 3.5087719298vw, 40px);
  }
}
#body_wrap.single-mdmenu .c-postTitle__ttl {
  margin-left: 0;
}
#body_wrap.single-mdmenu .p-articleMetas {
  display: none;
}
#body_wrap.single-mdmenu .p-single__catch {
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem);
  font-weight: 700;
  line-height: 2;
  margin-bottom: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-single__catch {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem);
    margin-bottom: clamp(12px, 2.1052631579vw, 24px);
  }
}
#body_wrap.single-mdmenu .p-single__result {
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-single__result {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}
#body_wrap.single-mdmenu .p-single__result-num {
  font-family: "Onest", sans-serif;
  font-size: clamp(2.4rem, 0.2723404255rem + 4.2553191489vw, 4.8rem);
  padding-right: clamp(4px, 0.701754386vw, 8px);
  padding-left: clamp(4px, 0.701754386vw, 8px);
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-single__result-num {
    font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
    padding-right: clamp(2px, 0.350877193vw, 4px);
    padding-left: clamp(2px, 0.350877193vw, 4px);
  }
}
#body_wrap.single-mdmenu .p-single__result-date {
  font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  font-weight: 500;
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-single__result-date {
    font-size: clamp(0.6rem, 0.0680851064rem + 1.0638297872vw, 1.2rem);
    padding-left: clamp(2px, 0.350877193vw, 4px);
  }
}
#body_wrap.single-mdmenu .p-articleThumb {
  margin: 0;
}
@media (max-width: 767px) {
  #body_wrap.single-mdmenu .p-articleThumb {
    order: 1;
  }
}
@media (min-width: 768px) {
  #body_wrap.single-mdmenu .p-articleThumb {
    flex: 0 1 clamp(200px, 35.0877192982vw, 400px);
  }
}
#body_wrap.single-mdmenu .p-articleThumb__img {
  box-shadow: none;
}
#body_wrap.single-mdmenu .p-toc {
  display: none;
}
#body_wrap.single-mdmenu .l-faq__list {
  max-width: 764px;
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
  margin-right: auto;
  margin-left: auto;
}

#body_wrap.single-post .p-single__first {
  padding-top: clamp(40px, 7.0175438596vw, 80px);
  padding-bottom: clamp(64px, 11.2280701754vw, 128px);
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-single__first {
    display: flex;
    -moz-column-gap: clamp(12px, 2.1052631579vw, 24px);
         column-gap: clamp(12px, 2.1052631579vw, 24px);
    padding-top: clamp(20px, 3.5087719298vw, 40px);
    padding-bottom: clamp(32px, 5.6140350877vw, 64px);
  }
}
#body_wrap.single-post .p-single__first-text {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-single__first-text {
    flex: 1 1 277px;
  }
}
#body_wrap.single-post .c-postTitle {
  order: 2;
  padding: 0;
}
#body_wrap.single-post .c-postTitle__ttl {
  color: #4D4D4D;
  font-size: clamp(2rem, 1.6453900709rem + 0.7092198582vw, 2.4rem) !important;
  line-height: 1.5;
}
#body_wrap.single-post .p-articleMetas {
  order: 1;
  margin-top: 0;
  margin-bottom: clamp(8px, 1.4035087719vw, 16px) !important;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-articleMetas {
    margin-bottom: clamp(4px, 0.701754386vw, 8px) !important;
  }
}
#body_wrap.single-post .c-categoryList:before {
  content: none;
}
#body_wrap.single-post .c-categoryList__link {
  font-size: clamp(1.2rem, 0.1361702128rem + 2.1276595745vw, 2.4rem);
  font-weight: 700;
  border-radius: clamp(2px, 0.350877193vw, 4px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .c-categoryList__link {
    font-size: clamp(0.6rem, 0.0680851064rem + 1.0638297872vw, 1.2rem);
    border-radius: clamp(1px, 0.1754385965vw, 2px);
  }
}
#body_wrap.single-post .icon-modified:before {
  content: none;
}
#body_wrap.single-post .p-articleThumb {
  margin-top: clamp(40px, 7.0175438596vw, 80px) !important;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-articleThumb {
    flex: 1 1 400px;
    margin-top: 0 !important;
  }
}
#body_wrap.single-post .p-articleThumb__img {
  box-shadow: none;
}
#body_wrap.single-post .p-toc__expandBtn {
  position: relative;
  background-color: #ffffff !important;
  color: #37BFBF !important;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem) !important;
  font-weight: 700;
  border: none !important;
  box-shadow: none !important;
  padding-top: clamp(4px, 0.701754386vw, 8px) !important;
  padding-right: clamp(32px, 5.6140350877vw, 64px) !important;
  padding-bottom: clamp(4px, 0.701754386vw, 8px) !important;
  padding-left: clamp(12px, 2.1052631579vw, 24px) !important;
  margin-top: clamp(24px, 4.2105263158vw, 48px) !important;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-toc__expandBtn {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem) !important;
    padding-top: clamp(2px, 0.350877193vw, 4px) !important;
    padding-right: clamp(16px, 2.8070175439vw, 32px) !important;
    padding-bottom: clamp(2px, 0.350877193vw, 4px) !important;
    padding-left: clamp(6px, 1.0526315789vw, 12px) !important;
    margin-top: clamp(12px, 2.1052631579vw, 24px) !important;
  }
}
#body_wrap.single-post .p-toc__expandBtn::before {
  content: none !important;
}
#body_wrap.single-post .p-toc__expandBtn::after {
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(12px, 2.1052631579vw, 24px);
  height: auto;
  aspect-ratio: 30/18;
  top: 50%;
  right: clamp(13px, 2.2807017544vw, 26px);
  left: auto;
  box-shadow: none !important;
  border-top: none;
  margin-top: calc(clamp(12px, 2.1052631579vw, 24px) / 30 * 18 / -2);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-toc__expandBtn::after {
    width: clamp(6px, 1.0526315789vw, 12px);
    right: clamp(6.5px, 1.1403508772vw, 13px);
    margin-top: calc(clamp(6px, 1.0526315789vw, 12px) / 30 * 18 / -2);
  }
}
#body_wrap.single-post .p-articleFoot {
  display: none;
}
#body_wrap.single-post .l-articleBottom {
  position: relative;
  max-width: 764px;
  padding-top: clamp(64px, 11.2280701754vw, 128px);
  padding-right: clamp(16px, 2.8070175439vw, 32px);
  padding-left: clamp(16px, 2.8070175439vw, 32px);
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  #body_wrap.single-post .l-articleBottom {
    padding-top: clamp(32px, 5.6140350877vw, 64px);
  }
}
#body_wrap.single-post .l-articleBottom::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #F2F2F2;
  width: calc(100% - clamp(32px, 5.6140350877vw, 64px));
  height: 2px;
  top: 0;
  left: clamp(16px, 2.8070175439vw, 32px);
}
#body_wrap.single-post .p-pnLinks {
  margin: 0;
  -moz-column-gap: clamp(40px, 7.0175438596vw, 80px);
       column-gap: clamp(40px, 7.0175438596vw, 80px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks {
    -moz-column-gap: clamp(20px, 3.5087719298vw, 40px);
         column-gap: clamp(20px, 3.5087719298vw, 40px);
  }
}
#body_wrap.single-post .p-pnLinks__item::before {
  border: none;
  background-color: #E2F3F3;
  width: clamp(40px, 7.0175438596vw, 80px);
  height: clamp(48px, 8.4210526316vw, 96px);
  top: 50%;
  margin-top: clamp(-48px, -4.2105263158vw, -24px);
  transform: none;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__item::before {
    width: clamp(20px, 3.5087719298vw, 40px);
    height: clamp(24px, 4.2105263158vw, 48px);
    margin-top: clamp(-24px, -2.1052631579vw, -12px);
    border-radius: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap.single-post .p-pnLinks__item::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(14px, 2.4561403509vw, 28px);
  aspect-ratio: 30/18;
  top: 50%;
  margin-top: calc(clamp(14px, 2.4561403509vw, 28px) / 30 * 18 / -2);
  z-index: 1;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__item::after {
    width: clamp(7px, 1.2280701754vw, 14px);
    margin-top: calc(clamp(7px, 1.2280701754vw, 14px) / 30 * 18 / -2);
  }
}
#body_wrap.single-post .p-pnLinks__link {
  display: block !important;
  color: #37BFBF;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 500;
  line-height: 1.25;
  padding: 0;
  border: none;
  min-height: 100%;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__link {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
  }
}
#body_wrap.single-post .p-pnLinks__link:hover {
  box-shadow: none;
}
#body_wrap.single-post .p-pnLinks__item.-prev {
  padding-left: clamp(53px, 9.298245614vw, 106px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__item.-prev {
    padding-left: clamp(26.5px, 4.649122807vw, 53px);
  }
}
#body_wrap.single-post .p-pnLinks__item.-prev::before {
  left: 0;
}
#body_wrap.single-post .p-pnLinks__item.-prev::after {
  transform: rotate(-90deg);
  left: clamp(13px, 2.2807017544vw, 26px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__item.-prev::after {
    left: clamp(6.5px, 1.1403508772vw, 13px);
  }
}
#body_wrap.single-post .p-pnLinks__item.-next {
  padding-right: clamp(53px, 9.298245614vw, 106px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__item.-next {
    padding-right: clamp(26.5px, 4.649122807vw, 53px);
  }
}
#body_wrap.single-post .p-pnLinks__item.-next::before {
  right: 0;
}
#body_wrap.single-post .p-pnLinks__item.-next::after {
  transform: rotate(90deg);
  right: clamp(13px, 2.2807017544vw, 26px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-pnLinks__item.-next::after {
    right: clamp(6.5px, 1.1403508772vw, 13px);
  }
}
#body_wrap.single-post .l-articleBottom__section {
  text-align: center;
  margin-top: clamp(42px, 7.3684210526vw, 84px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .l-articleBottom__section {
    margin-top: clamp(21px, 3.6842105263vw, 42px);
  }
}
#body_wrap.single-post .l-articleBottom__title {
  color: #37BFBF;
  font-size: clamp(1.6rem, 0.1815602837rem + 2.8368794326vw, 3.2rem);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  padding-left: clamp(30px, 5.2631578947vw, 60px);
  display: inline-block;
  margin-bottom: clamp(10px, 1.7543859649vw, 20px);
  position: relative;
  padding-right: 0;
  border-left: none;
}
@media (min-width: 768px) {
  #body_wrap.single-post .l-articleBottom__title {
    font-size: clamp(0.8rem, 0.0907801418rem + 1.4184397163vw, 1.6rem);
    padding-left: clamp(15px, 2.6315789474vw, 30px);
    margin-bottom: clamp(5px, 0.8771929825vw, 10px);
  }
}
#body_wrap.single-post .l-articleBottom__title::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_pen_gr.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(18px, 3.1578947368vw, 36px);
  height: auto;
  aspect-ratio: 1/1;
  top: 50%;
  left: 0;
  margin-top: clamp(-18px, -1.5789473684vw, -9px);
  border-left: none;
}
@media (min-width: 768px) {
  #body_wrap.single-post .l-articleBottom__title::before {
    width: clamp(9px, 1.5789473684vw, 18px);
    margin-top: clamp(-9px, -0.7894736842vw, -4.5px);
  }
}
#body_wrap.single-post .p-authorBox {
  display: flex;
  border: none;
  background-color: #E2F3F3;
  border-radius: clamp(16px, 2.8070175439vw, 32px);
  padding: clamp(16px, 2.8070175439vw, 32px);
  -moz-column-gap: clamp(16px, 2.8070175439vw, 32px);
       column-gap: clamp(16px, 2.8070175439vw, 32px);
  align-items: center;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-authorBox {
    border-radius: clamp(8px, 1.4035087719vw, 16px);
    padding: clamp(8px, 1.4035087719vw, 16px);
    -moz-column-gap: clamp(8px, 1.4035087719vw, 16px);
         column-gap: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap.single-post .p-authorBox__l {
  width: 100px;
  margin-bottom: 0 !important;
}
#body_wrap.single-post .avatar {
  border: none;
}
#body_wrap.single-post .p-authorBox__r {
  flex: 1 1;
  width: auto;
  border-left: none;
  padding-left: 0;
  text-align: left;
  -moz-column-gap: clamp(16px, 2.8070175439vw, 32px);
       column-gap: clamp(16px, 2.8070175439vw, 32px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-authorBox__r {
    width: calc(100% - 100px - clamp(8px, 1.4035087719vw, 16px));
    -moz-column-gap: clamp(8px, 1.4035087719vw, 16px);
         column-gap: clamp(8px, 1.4035087719vw, 16px);
  }
}
#body_wrap.single-post .p-authorBox__r img {
  box-shadow: none;
}
#body_wrap.single-post .p-authorBox__name {
  color: #37BFBF;
  font-size: clamp(2rem, 0.2269503546rem + 3.5460992908vw, 4rem) !important;
  font-weight: 700;
  position: relative;
  display: inline;
  padding: 0 !important;
  padding-right: clamp(20px, 3.5087719298vw, 40px) !important;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-authorBox__name {
    font-size: clamp(1rem, 0.1134751773rem + 1.7730496454vw, 2rem) !important;
    padding-right: clamp(10px, 1.7543859649vw, 20px) !important;
  }
}
#body_wrap.single-post .p-authorBox__name::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/cmn/icon_arrow_gr_02.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: clamp(16px, 2.8070175439vw, 32px);
  aspect-ratio: 16/16;
  top: 50%;
  right: 0;
  margin-top: calc(clamp(16px, 2.8070175439vw, 32px) / -2);
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-authorBox__name::after {
    width: clamp(8px, 1.4035087719vw, 16px);
    margin-top: calc(clamp(8px, 1.4035087719vw, 16px) / -2);
  }
}
#body_wrap.single-post .p-authorBox__position {
  margin-top: clamp(8px, 1.4035087719vw, 16px);
  font-size: clamp(1.4rem, 0.1588652482rem + 2.4822695035vw, 2.8rem) !important;
  font-weight: 500;
  line-height: 1.25;
  font-style: normal;
  opacity: 1;
}
@media (min-width: 768px) {
  #body_wrap.single-post .p-authorBox__position {
    font-size: clamp(0.7rem, 0.0794326241rem + 1.2411347518vw, 1.4rem) !important;
    margin-top: clamp(4px, 0.701754386vw, 8px);
  }
}
#body_wrap.single-post .l-faq {
  padding-bottom: clamp(168px, 29.4736842105vw, 336px);
}
@media (min-width: 768px) {
  #body_wrap.single-post .l-faq {
    padding-bottom: clamp(59px, 10.350877193vw, 118px);
  }
}

#body_wrap:not(.single-mdmenu):not(.single-post) .p-articleMetas,
#body_wrap:not(.single-mdmenu):not(.single-post) .p-toc {
  display: none;
}