@charset "UTF-8";
/* 使い方
・本体
.c-button {
  @include hover-scale(); // 初期値
  @include hover-scale(1.2); // 拡大率を上げる
  }

・子要素のimg
.p-card {
  @include hover-scale-img();
}
*/
/**
 * 背景位置スライドのホバー／フォーカス用（background-size 等の準備スタイル＋:hover / :focus-visible）
 * 使い方: .c-button { @include hover-bg-position-slide; }
 */
/* the_content / ブロックエディタで共通のブロックスタイル（register_block_style 相当） */
/* 見出し: 下線：短い */
/* 見出し: 下線：幅いっぱい */
/* core/list マーカー共通（エディタではドットを小さめにする想定） */
/* core/table 「1列目見出し」セル */
/* .c-arrow-button と同じ見た目（本文・エディタのコアボタンなどで共有） */
:root {
  --base-font-family: "Noto Sans JP", serif;
  --font-weight-regular: 500;
  --line-height-regular: 1.5;
  --letter-spacing-regular: 0.04em;
  --color-black: #333333;
  --color-white: #fff;
  --color-main: #0fc39f;
  --color-sub: #65bf5d;
  --color-orange: #e27911;
  --color-border: #808080;
  --color-gray: #c3c3c3;
  --gradient-main: linear-gradient(135deg, var(--color-sub) 0%, var(--color-main) 100%);
  --gradient-main-hover: linear-gradient(135deg, var(--color-sub), var(--color-main), var(--color-sub));
  --border-line: linear-gradient(
      to right,
      var(--color-main) 20%,
      #f0f0f0 20%
    )
    bottom / 100% 2px no-repeat;
  --header-height: 5.625rem;
}
@media screen and (max-width: 767px) {
  :root {
    --header-height: 3.75rem;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* リキッドレイアウト対応 */
html {
  font-size: 16px;
}
@media screen and (max-width: 1440px) {
  html {
    font-size: 16px;
  }
}
@media screen and (max-width: 1023px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 1250px) {
  html {
    font-size: 1.28vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 16px;
  }
}
@media screen and (max-width: 599px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 390px) {
  html {
    font-size: 4.1025641026vw;
  }
}

html {
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-height);
}

body {
  container-type: inline-size;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  overflow-wrap: anywhere;
  /* 収まらない場合に折り返す */
  word-break: normal;
  /* 単語の分割はデフォルトに依存 */
  line-break: strict;
  /* 禁則処理を厳格に適用 */
  font-size: max(1rem, 10px);
  font-family: var(--base-font-family);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-regular);
  letter-spacing: var(--letter-spacing-regular);
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  body {
    font-size: max(0.875rem, 10px);
  }
}

main {
  flex: 1;
}

html:has(body.is-fixed),
body.is-fixed {
  overflow: hidden;
}

a {
  text-decoration: none;
  color: inherit;
  transition: opacity 0.3s;
}

/* hover指定できるPCを想定したスタイル */
@media (hover: hover) {
  a:hover {
    opacity: 0.7;
  }
}
/* hoverが使えないタッチ端末を想定した装飾 */
@media (hover: none) {
  a:active {
    opacity: 0.7;
  }
}
img {
  overflow-clip-margin: unset;
  height: auto;
}

button {
  color: inherit;
}

address,
em {
  font-style: normal;
}

.l-breadcrumb {
  margin-top: 1.0625rem;
}
@media screen and (max-width: 767px) {
  .l-breadcrumb {
    margin-top: 0.75rem;
  }
}

.l-consultation-flow {
  margin-block-start: 5.125rem;
}
@media screen and (max-width: 767px) {
  .l-consultation-flow {
    margin-block-start: 3.75rem;
  }
}

.l-consultation-reserve {
  margin-block-start: 3.25rem;
}
@media screen and (max-width: 767px) {
  .l-consultation-reserve {
    margin-block-start: 2.5rem;
  }
}

.l-consultation-sign {
  margin-block-start: 5.75rem;
}
@media screen and (max-width: 767px) {
  .l-consultation-sign {
    margin-block-start: 3.75rem;
  }
}

.l-consultation-summary {
  margin-block-start: 0.9375rem;
}

.l-consultation-support {
  margin-block-start: 4.8125rem;
}
@media screen and (max-width: 767px) {
  .l-consultation-support {
    margin-block-start: 3.75rem;
  }
}

.l-consultation-worry {
  margin-block-start: 3.875rem;
}
@media screen and (max-width: 767px) {
  .l-consultation-worry {
    margin-block-start: 2.5rem;
  }
}

.l-info + .l-footer {
  margin-block-start: 2.125rem;
}

.l-info {
  margin-top: 2.375rem;
}

.l-inner {
  margin-inline: auto;
  width: 100%;
  padding-inline: 1.5625rem;
  max-width: 78.125rem;
}
@media screen and (max-width: 767px) {
  .l-inner {
    max-width: 40rem;
    padding-inline: 1.25rem;
  }
}

.l-recruit-cta {
  margin-bottom: 6.25rem;
}
@media screen and (max-width: 767px) {
  .l-recruit-cta {
    margin-bottom: 3.3125rem;
  }
}

.l-reserve-cta {
  position: fixed;
  right: 0;
  top: 13%;
  z-index: 100;
}
@media screen and (max-width: 1023px) {
  .l-reserve-cta {
    right: initial;
    top: initial;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}

.l-sub-content {
  margin-block: 3.75rem 6.25rem;
}
@media screen and (max-width: 767px) {
  .l-sub-content {
    margin-block: 2.5rem;
  }
}

.l-sub-mv {
  margin-top: var(--header-height);
}

.l-top-children {
  margin-top: 5.875rem;
}
@media screen and (max-width: 767px) {
  .l-top-children {
    margin-top: 4.5rem;
  }
}

.l-top-feature {
  margin-top: 5.625rem;
}
@media screen and (max-width: 767px) {
  .l-top-feature {
    margin-top: 3.9375rem;
  }
}

.l-top-greeting {
  margin-top: 3.125rem;
}
@media screen and (max-width: 767px) {
  .l-top-greeting {
    margin-top: 2.25rem;
  }
}

.l-top-guide {
  margin-block: 1.25rem 6.5625rem;
}
@media screen and (max-width: 767px) {
  .l-top-guide {
    margin-block: 1.0625rem 3.4375rem;
  }
}

.l-top-info {
  margin-top: 2.375rem;
}
@media screen and (max-width: 767px) {
  .l-top-info {
    margin-top: 4.0625rem;
  }
}

.c-accordion::details-content {
  content-visibility: unset;
  display: block grid;
}

@media (prefers-reduced-motion: no-preference) {
  .c-accordion::details-content {
    transition: grid-template-rows 0.3s ease-in-out;
  }
}
.c-accordion:not([open])::details-content {
  grid-template-rows: 0fr;
}

.c-accordion[open]::details-content {
  grid-template-rows: 1fr;
}

.c-accordion {
  border: 1px solid var(--color-black);
  border-radius: 0.625rem;
  padding: 1.25rem;
}
@media screen and (max-width: 767px) {
  .c-accordion {
    border-radius: 0.3125rem;
    padding: 0.625rem;
  }
}

.c-accordion__summary {
  list-style: none;
  position: relative;
  cursor: pointer;
}

.c-accordion__summary::before,
.c-accordion__summary::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.25rem;
  width: 1.25rem;
  height: 1px;
  background-color: var(--color-black);
  transition: transform 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .c-accordion__summary::before,
  .c-accordion__summary::after {
    right: 0.625rem;
    width: 0.9375rem;
  }
}

.c-accordion__summary::before {
  transform: translateY(-50%) rotate(90deg);
}

.c-accordion[open] .c-accordion__summary::before {
  transform: translateY(-50%) rotate(0deg);
}

.c-accordion__body {
  overflow: hidden;
}

.c-accordion__wrap {
  padding-top: 1.25rem;
}

/* サイズの調整は、親ブロックで対応 */
.c-arrow-button {
  width: 100%;
  min-height: 3.125rem;
  padding-block: 0.5rem;
  padding-inline: 1.25rem 0.9375rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-white);
  background: var(--gradient-main-hover);
  text-align: left;
  border-radius: 2.5625rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  background-size: 201% 201%;
  transition: background-position 0.3s ease-in-out;
}
@media (any-hover: hover) {
  .c-arrow-button:hover {
    opacity: 1;
    background-position: 99% 0;
  }
}
@media screen and (max-width: 767px) {
  .c-arrow-button {
    max-width: 20.625rem;
    padding-block: 0.75rem;
    padding-inline: 1.875rem 1.25rem;
    justify-content: space-between;
  }
}
.c-arrow-button::after {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  background-image: url(../images/common/icon-arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: translate 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .c-arrow-button::after {
    width: 0.875rem;
    height: 0.875rem;
  }
}
@media (any-hover: hover) {
  .c-arrow-button:hover::after {
    translate: 0.25rem 0;
  }
}

.c-bg-gradation {
  border-radius: 3.75rem 3.75rem 0 0;
  background: url(../images/common/section-bg.webp) no-repeat center/100% 100%;
  padding-block: 4.875rem 6.25rem;
}
@media screen and (max-width: 767px) {
  .c-bg-gradation {
    padding-block: 5rem 1.25rem;
  }
}

.c-button {
  width: 100%;
  padding: 0.5rem 1.25rem;
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: var(--color-black);
  background-color: var(--color-white);
  border: 1px solid var(--color-main);
  text-align: center;
  border-radius: 2rem;
  transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .c-button {
    max-width: 20.625rem;
    font-size: max(0.875rem, 10px);
    padding: 1.375rem;
  }
}

.c-button[data-icon=phone]::before {
  content: "";
  width: 1rem;
  height: 1rem;
  background-image: url(../images/common/icon-phone.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.c-button[data-icon=map]::before {
  content: "";
  width: 0.875rem;
  height: 1.0625rem;
  background-image: url(../images/common/icon-map.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.c-button[data-icon=calendar]::before {
  content: "";
  width: 1rem;
  height: 1rem;
  background-image: url(../images/common/icon-calendar.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.c-button[data-icon=arrow]::after {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  -webkit-mask-image: url(../images/common/icon-arrow.svg);
          mask-image: url(../images/common/icon-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: var(--color-main);
}

@media (any-hover: hover) {
  .c-button:hover {
    opacity: 1;
    color: var(--color-main);
    background-color: var(--color-white);
  }
}
.c-info-heading {
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  color: var(--color-black);
  padding-left: 0.75rem;
  position: relative;
  line-height: 1;
}

.c-info-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1.25rem;
  width: 0.625rem;
  height: 1.25rem;
  background-image: url(../images/common/icon-title.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.c-no-post {
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-no-post {
    font-size: max(1.125rem, 10px);
  }
}

.c-pagenavi {
  margin-top: 3.125rem;
  text-align: center;
}

.c-pagenavi .nav-links {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-pagenavi .nav-links {
    gap: 0.3125rem;
  }
}

.c-pagenavi a.page-numbers,
.c-pagenavi .page-numbers.current {
  width: 3.125rem;
  height: auto;
  aspect-ratio: 1/1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: max(1rem, 10px);
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .c-pagenavi a.page-numbers,
  .c-pagenavi .page-numbers.current {
    width: 1.875rem;
    font-size: max(0.875rem, 10px);
  }
}

.c-pagenavi .page-numbers.current {
  background-color: var(--color-main);
  color: var(--color-white);
  border-radius: 50%;
}

.c-pagenavi .page-numbers.next,
.c-pagenavi .page-numbers.prev {
  position: absolute;
  top: 0;
}

.c-pagenavi .page-numbers.next {
  right: -2.8125rem;
}
@media screen and (max-width: 767px) {
  .c-pagenavi .page-numbers.next {
    right: -2.1875rem;
  }
}

.c-pagenavi .page-numbers.prev {
  left: -2.8125rem;
}
@media screen and (max-width: 767px) {
  .c-pagenavi .page-numbers.prev {
    left: -2.1875rem;
  }
}

.c-pagenavi a {
  transition: color 0.3s ease-in-out;
}

@media (any-hover: hover) {
  .c-pagenavi a:hover {
    color: var(--color-main);
    opacity: 1;
  }
}
.c-section-title-sub {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.125rem;
  font-size: max(1.375rem, 10px);
  font-weight: 500;
}
.c-section-title-sub.has-text-align-center {
  align-items: center;
}
@media screen and (max-width: 767px) {
  .c-section-title-sub {
    gap: 0.75rem;
    font-size: max(1.25rem, 10px);
  }
}
.c-section-title-sub::after {
  height: 0.25rem;
  width: 3.75rem;
  content: "";
  border-radius: 100vh;
  background: linear-gradient(90deg, #56ccff 0%, #7fbe26 100%);
}
.c-section-title-sub {
  align-items: center;
}

.c-section-title {
  text-align: center;
}

.c-section-title__en {
  font-size: max(5rem, 10px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 20%;
  color: transparent;
  text-transform: uppercase;
  -webkit-text-stroke: 1px var(--color-white);
  text-stroke: 1px var(--color-white);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-section-title__en {
    font-size: max(3rem, 10px);
  }
}

.c-section-title__en[data-color=main] {
  -webkit-text-stroke: 1px var(--color-main);
  text-stroke: 1px var(--color-main);
}

.c-section-title__ja {
  margin-top: -3.125rem;
  font-size: max(1.375rem, 10px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 4%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-section-title__ja {
    margin-top: -0.5rem;
  }
}

.c-section-title[data-position=low] .c-section-title__en {
  font-size: max(3.75rem, 10px);
}

.c-section-title[data-position=low] .c-section-title__ja {
  margin-top: -0.0625rem;
  text-align: left;
  padding-left: 0.375rem;
  font-size: max(1.5rem, 10px);
  font-weight: 700;
  letter-spacing: 0;
}

.c-section-title__en:has(img) {
  font-size: 0;
  height: 4rem;
  width: auto;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .c-section-title__en:has(img) {
    height: 2.4375rem;
  }
}

.c-section-title__en img {
  -o-object-fit: contain;
     object-fit: contain;
  height: inherit;
  width: 100%;
}

.c-section-title[data-position=low] .c-section-title__en:has(img) {
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .c-section-title[data-position=low] .c-section-title__en:has(img) {
    height: 2.1875rem;
  }
}

.c-slider-autoscroll {
  width: 500px;
}
@media screen and (max-width: 767px) {
  .c-slider-autoscroll {
    width: 100%;
  }
}

.c-slider-autoscroll__img {
  width: 100%;
  height: auto;
}

.c-slider-autoscroll__img img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
  height: auto;
  width: 100%;
}

/* スプライド矢印 */
.splide__arrows {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.splide__arrow {
  width: 2.8125rem;
  height: 2.8125rem;
  background-color: var(--color-gray);
  position: relative;
  transition: opacity 0.3s ease-in-out;
}

.splide__arrow.splide__arrow--prev {
  left: -0.625rem;
}

.splide__arrow.splide__arrow--next {
  right: -0.625rem;
}

.splide__arrow svg {
  display: none;
}

.splide__arrow--next::after,
.splide__arrow--prev::after {
  z-index: 10;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.9375rem;
  height: 0.9375rem;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: transform 0.3s ease-in-out;
}

.splide__arrow--prev::after {
  transform: translate(-50%, -50%) rotate(-135deg);
}

@media (any-hover: hover) {
  .splide__arrow:hover {
    opacity: 0.7;
  }
}
/* ページネーションのスタイル */
.splide__pagination {
  flex-direction: column;
  align-items: flex-end;
  top: 77%;
  transform: translateY(-50%);
  gap: 0.9375rem;
  padding-inline: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .splide__pagination {
    flex-direction: row;
    justify-content: flex-end;
    top: initial;
    transform: none;
    bottom: 1.5rem;
    gap: 0.625rem;
    padding-inline: 1.25rem;
  }
}

.splide__pagination li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}

.splide__pagination__number {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1;
  color: #BEBEBE;
  transition: opacity 0.3s ease-in-out, color 0.3s ease-in-out;
}

.splide__pagination__page.is-active + .splide__pagination__number {
  opacity: 1;
  color: var(--color-main);
}

.splide__pagination__page {
  background-color: #BEBEBE;
  border-radius: 0;
  transition: background-color 0.3s ease-in-out;
  width: 0.8125rem;
  height: 0.125rem;
  display: block;
  padding: 0;
}

.splide__pagination__page.is-active {
  background-color: var(--color-main);
  transform: scale(1);
}

.p-404__content {
  min-height: 25rem;
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-404__content {
    min-height: 18.75rem;
    text-align: left;
    gap: 1.875rem;
  }
}

.p-404__title {
  font-size: max(1.875rem, 10px);
}

.p-404__text {
  font-size: max(1.25rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-404__text {
    font-size: max(1rem, 10px);
  }
}

.p-404__button {
  margin-top: 5rem;
  width: 15.625rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-404__button {
    margin-top: 3.125rem;
  }
}

.p-access-cta {
  margin-top: 4.5rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta {
    margin-top: 3rem;
  }
}

.p-access-cta__header {
  border-top: 1px solid var(--color-main);
  padding-block-start: 4.0625rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta__header {
    padding-block-start: 3.125rem;
  }
}

.p-access-cta__body {
  margin-top: 1.25rem;
  padding-left: 1.25rem;
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta__body {
    flex-direction: column;
    gap: 1.5rem;
    padding-left: 0;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}

.p-access-cta__info {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta__info {
    gap: 1.25rem;
  }
}

.p-access-cta__address {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1.7;
  color: var(--color-black);
}

.p-access-cta__tel {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.p-access-cta__tel-icon {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

.p-access-cta__tel-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-access-cta__tel-number {
  font-size: max(1.25rem, 10px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: var(--color-black);
}

.p-access-cta__tel-hours {
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: var(--color-black);
}

.p-access-cta__button {
  flex-shrink: 0;
  width: 13rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta__button {
    margin-inline: auto;
  }
}

.p-access-cta__button .c-button {
  padding: 0.75rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta__button .c-button {
    padding: 0.875rem 1.25rem;
  }
}

.p-access-cta__transit {
  margin-top: 1.25rem;
}

.p-access-cta__transit-item + .p-access-cta__transit-item {
  margin-top: 0.625rem;
}

.p-access-cta__transit-term {
  font-size: max(1rem, 10px);
  font-weight: 700;
}

.p-access-cta__transit-desc {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
}

.p-access-cta__map {
  margin-top: 3.4375rem;
}
@media screen and (max-width: 767px) {
  .p-access-cta__map {
    margin-inline: calc(50% - 50cqi);
    margin-top: 2.8125rem;
  }
}

.p-access-cta__map iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 1200/313;
  -o-object-fit: cover;
     object-fit: cover;
  border: none;
}
@media screen and (max-width: 767px) {
  .p-access-cta__map iframe {
    aspect-ratio: 390/210;
  }
}

.p-access .p-access-cta {
  margin-top: revert;
}

.p-access .p-access-cta__header {
  border-top: revert;
  padding-top: revert;
}

.p-access .p-access-cta__body {
  align-items: center;
  flex-direction: column;
}

.p-access-schedule .p-info-schedule {
  padding-right: 0;
  max-width: 46.875rem;
  margin-inline: auto;
}

.p-breadcrumb {
  text-align: right;
}

.p-breadcrumb span {
  padding-inline: 0.3125rem;
  font-size: max(1rem, 10px);
  text-transform: uppercase;
  font-weight: 500;
  line-height: 1;
  color: var(--color-main);
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-breadcrumb span {
    font-size: max(0.875rem, 10px);
  }
}

.p-breadcrumb span.current-item {
  color: var(--color-black);
}

.p-consultation-flow__inner {
  max-width: 65.625rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__inner {
    max-width: 40rem;
  }
}

.p-consultation-flow__content {
  margin-block-start: 2.5rem;
}

.p-consultation-flow__item + .p-consultation-flow__item::before {
  margin-block: 1.875rem 2.0625rem;
  margin-inline: auto;
  display: block;
  width: 2.3125rem;
  aspect-ratio: 37/12;
  background: url(../images/common/arrow_bottom.svg) no-repeat center/cover;
  content: "";
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item + .p-consultation-flow__item::before {
    margin-block: 1rem;
    width: 1.5rem;
  }
}

.p-consultation-flow__item-bg {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  -moz-column-gap: 2.75rem;
       column-gap: 2.75rem;
  padding-block: 1.8125rem 2.0625rem;
  padding-inline: 6.25rem 2.5rem;
  background-color: #effdf8;
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item-bg {
    grid-template-columns: 1fr;
    justify-content: center;
    row-gap: 1.25rem;
    padding-block: 1.8125rem 2.0625rem;
    padding-inline: 1.25rem;
  }
}

.p-consultation-flow__item-no {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 4.9375rem;
  aspect-ratio: 1;
  background: url(../images/common/item-no-bg.svg.svg) no-repeat center/contain;
  color: var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item-no {
    margin-inline: auto;
    width: 4rem;
  }
}

.p-consultation-flow__item-no-label {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item-no-label {
    font-size: max(0.75rem, 10px);
  }
}

.p-consultation-flow__item-no-value {
  margin-block-start: -0.625rem;
  margin-inline-start: 0.5rem;
  font-size: max(1.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0.0257142857em;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item-no-value {
    font-size: max(1.375rem, 10px);
  }
}

.p-consultation-flow__item-heading {
  font-size: max(1.375rem, 10px);
  font-weight: 500;
  letter-spacing: 0.0327272727em;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item-heading {
    font-size: max(1.125rem, 10px);
    text-align: center;
  }
}

.p-consultation-flow__item-desc {
  margin-block-start: 0.75rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__item-desc {
    font-size: max(0.875rem, 10px);
  }
}

.p-consultation-flow__item-desc em {
  font-weight: 700;
}

/***************************************************
  以下追記
***************************************************/
.p-consultation-flow__btn {
  margin-top: 2.5rem;
  width: 15.625rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-consultation-flow__btn {
    margin-top: 1.875rem;
  }
}

.p-consultation-reserve__banner {
  text-align: center;
}

.p-consultation-reserve__images {
  margin-block-start: 4.625rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 767px) {
  .p-consultation-reserve__images {
    grid-template-columns: 1fr;
  }
}

.p-consultation-sign__content {
  margin-block-start: 2.5rem;
  position: relative;
  padding-block: 5.3125rem 6.0625rem;
  padding-inline: 2.9375rem;
  border-radius: 0.625rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-consultation-sign__content {
    --content-padding-inline: 0.9375rem;
    margin-block-start: 2.8125rem;
    padding-block: 3.5625rem 0;
    padding-inline: var(--content-padding-inline);
    background-color: #7e7e7e;
  }
}

.p-consultation-sign__content::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background: url(../images/consultation/consultation-sign_bg.webp) no-repeat center/cover;
}
@media screen and (max-width: 767px) {
  .p-consultation-sign__content::after {
    margin-block-start: 2rem;
    margin-inline: calc(var(--content-padding-inline) * -1);
    position: static;
    display: block;
    aspect-ratio: 350/304;
    background: linear-gradient(#7e7e7e, transparent 2.5rem), url(../images/consultation/consultation-sign_bg_sp.webp) no-repeat bottom/100% auto;
  }
}

.p-consultation-sign__list {
  margin-inline-start: auto;
  display: grid;
  gap: 2.1875rem;
  max-width: 37.6875rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-sign__list {
    margin-inline-end: auto;
    max-width: 25rem;
  }
}

.p-consultation-sign__item {
  display: grid;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  grid-template-columns: auto 1fr;
  align-items: center;
  padding-block: 2rem;
  padding-inline: 2.375rem 1.5rem;
  background-color: var(--color-white);
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-sign__item {
    grid-template-columns: 1fr;
    row-gap: 1rem;
    padding-block: 2rem;
    padding-inline: 0.5rem;
    text-align: center;
  }
}

.p-consultation-sign__item-icon {
  width: 4.625rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-consultation-sign__item-icon {
    width: auto;
    width: 4.0625rem;
  }
}

.p-consultation-sign__item-icon img {
  --icon-width: 100%;
  margin-inline: auto;
  width: var(--icon-width);
}

.p-consultation-sign__item-icon img[src*=icon-sleep] {
  --icon-width: calc(68 / 74 * 100%);
}

.p-consultation-sign__item-icon img[src*=icon-emotion] {
  --icon-width: calc(57 / 74 * 100%);
}

.p-consultation-sign__item-texts {
  display: grid;
  row-gap: 1.1875rem;
}

.p-consultation-sign__item-heading {
  font-size: max(1.25rem, 10px);
  font-weight: 700;
}

.p-consultation-sign__item-desc {
  font-size: max(1rem, 10px);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .p-consultation-sign__item-desc {
    margin-inline: auto;
    max-width: 22.5rem;
    font-size: max(0.875rem, 10px);
    text-align: left;
  }
}

.p-consultation-summary__heading {
  font-size: max(1.375rem, 10px);
  font-weight: 500;
  text-align: center;
}

.p-consultation-summary__desc {
  margin-block-start: 2.5rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-consultation-summary__desc {
    text-align: left;
  }
}

.p-consultation-support__inner {
  max-width: 74.625rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__inner {
    max-width: 40rem;
  }
}

.p-consultation-support__list {
  margin-block-start: 4.875rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__list {
    grid-template-columns: 1fr;
    gap: 3.375rem;
  }
}

.p-consultation-support__item {
  border: 1px solid var(--color-main);
  padding-inline: 2.3125rem 1.8125rem;
  padding-block-end: 3.25rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__item {
    padding-inline: 1rem;
    padding-block-end: 2rem;
  }
}

.p-consultation-support__item-no {
  margin-top: -1.8125rem;
  width: 6.25rem;
  min-width: 80px;
  margin-inline: auto;
  background-color: var(--color-white);
  padding-inline: 0.5rem;
  padding-block: 1.375rem 1.25rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__item-no {
    padding-block-end: 0;
  }
}

.p-consultation-support__item-no::after {
  content: "";
  position: absolute;
  top: -0.375rem;
  left: 58%;
  width: 1px;
  height: 3.125rem;
  background-color: var(--color-main);
  transform: rotate(45deg) translateX(-50%);
}

.p-consultation-support__item-no-label {
  position: relative;
  top: -2.0625rem;
  left: 0;
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-black);
  line-height: 1;
}

.p-consultation-support__item-no-value {
  font-size: max(1.625rem, 10px);
  font-weight: 500;
  color: var(--color-main);
  line-height: 1;
  letter-spacing: 0;
}

.p-consultation-support__item-content {
  margin-block-start: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__item-content {
    margin-block-start: 0.5rem;
  }
}

.p-consultation-support__item-heading {
  font-size: max(1.25rem, 10px);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__item-heading {
    font-size: max(1.125rem, 10px);
  }
}

.p-consultation-support__item-desc {
  margin-block-start: 1.625rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.625;
}
@media screen and (max-width: 767px) {
  .p-consultation-support__item-desc {
    margin-block-start: 0.5rem;
    font-size: max(0.875rem, 10px);
  }
}

.p-consultation-worry__inner {
  max-width: 65.625rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-worry__inner {
    max-width: 40rem;
  }
}

.p-consultation-worry__box {
  padding-block: 1.875rem 4.5rem;
  padding-inline: 1.875rem;
  background-color: #f8f8f8;
  border-radius: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-consultation-worry__box {
    padding-block: 1.25rem 2rem;
    padding-inline: 1rem;
  }
}

.p-consultation-worry__list {
  margin-block-start: 2.75rem;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-consultation-worry__list {
    margin-block-start: 2rem;
  }
}

.p-consultation-worry__desc {
  margin-block-start: 2rem;
  text-align: center;
  font-size: max(1.125rem, 10px);
}

/***************************************************
  以下追記
***************************************************/
.p-consultation-worry__img-wrap {
  margin-block-start: 2.5rem;
  max-width: 33.9375rem;
  margin-inline: auto;
}

.p-consultation-worry__img-wrap img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 0.625rem;
}

.p-contact__tel-wrap {
  margin-top: 3.125rem;
}

.p-contact__tel-wrap {
  max-width: 50rem;
  margin-inline: auto;
  background-color: #EFFDF8;
  padding: 1.875rem;
  border-radius: 0.625rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-contact__tel-wrap {
    padding: 1.25rem;
  }
}

.p-contact__desc {
  margin-top: 3.125rem;
  text-align: center;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.8;
}

.p-contact .p-info__tel {
  margin-top: 1.25rem;
  justify-content: center;
}

.p-contact__attention {
  max-width: 50rem;
  margin-inline: auto;
  margin-top: 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-contact__attention {
    margin-top: 1.875rem;
  }
}

.p-contact__attention-heading {
  font-size: max(1.25rem, 10px);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-contact__attention-heading {
    font-size: max(1.125rem, 10px);
  }
}

.p-contact__attention-item {
  padding-left: 1em;
  position: relative;
}

.p-contact__attention-item::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.p-contact__form {
  margin-top: 3.125rem;
}

/* （the_content()で出力したものへのスタイル） */
/* Gutenberg core/columns: 782/781px とテーマ768pxのズレ調整 */
@media screen and (min-width: 768px) {
  .p-content .wp-block-columns {
    flex-wrap: nowrap !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not([style*=flex-basis]) {
    flex-basis: 0 !important;
    flex-grow: 1 !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 781px) {
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:1%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 1%"] {
    flex-basis: 1% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:2%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 2%"] {
    flex-basis: 2% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:3%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 3%"] {
    flex-basis: 3% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:4%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 4%"] {
    flex-basis: 4% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:5%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 5%"] {
    flex-basis: 5% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:6%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 6%"] {
    flex-basis: 6% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:7%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 7%"] {
    flex-basis: 7% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:8%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 8%"] {
    flex-basis: 8% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:9%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 9%"] {
    flex-basis: 9% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:10%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 10%"] {
    flex-basis: 10% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:11%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 11%"] {
    flex-basis: 11% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:12%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 12%"] {
    flex-basis: 12% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:13%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 13%"] {
    flex-basis: 13% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:14%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 14%"] {
    flex-basis: 14% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:15%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 15%"] {
    flex-basis: 15% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:16%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 16%"] {
    flex-basis: 16% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:17%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 17%"] {
    flex-basis: 17% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:18%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 18%"] {
    flex-basis: 18% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:19%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 19%"] {
    flex-basis: 19% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:20%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 20%"] {
    flex-basis: 20% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:21%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 21%"] {
    flex-basis: 21% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:22%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 22%"] {
    flex-basis: 22% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:23%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 23%"] {
    flex-basis: 23% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:24%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 24%"] {
    flex-basis: 24% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:25%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 25%"] {
    flex-basis: 25% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:26%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 26%"] {
    flex-basis: 26% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:27%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 27%"] {
    flex-basis: 27% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:28%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 28%"] {
    flex-basis: 28% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:29%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 29%"] {
    flex-basis: 29% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:30%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 30%"] {
    flex-basis: 30% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:31%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 31%"] {
    flex-basis: 31% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:32%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 32%"] {
    flex-basis: 32% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:33%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 33%"] {
    flex-basis: 33% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:34%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 34%"] {
    flex-basis: 34% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:35%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 35%"] {
    flex-basis: 35% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:36%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 36%"] {
    flex-basis: 36% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:37%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 37%"] {
    flex-basis: 37% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:38%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 38%"] {
    flex-basis: 38% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:39%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 39%"] {
    flex-basis: 39% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:40%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 40%"] {
    flex-basis: 40% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:41%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 41%"] {
    flex-basis: 41% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:42%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 42%"] {
    flex-basis: 42% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:43%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 43%"] {
    flex-basis: 43% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:44%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 44%"] {
    flex-basis: 44% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:45%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 45%"] {
    flex-basis: 45% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:46%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 46%"] {
    flex-basis: 46% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:47%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 47%"] {
    flex-basis: 47% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:48%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 48%"] {
    flex-basis: 48% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:49%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 49%"] {
    flex-basis: 49% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:50%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 50%"] {
    flex-basis: 50% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:51%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 51%"] {
    flex-basis: 51% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:52%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 52%"] {
    flex-basis: 52% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:53%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 53%"] {
    flex-basis: 53% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:54%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 54%"] {
    flex-basis: 54% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:55%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 55%"] {
    flex-basis: 55% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:56%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 56%"] {
    flex-basis: 56% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:57%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 57%"] {
    flex-basis: 57% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:58%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 58%"] {
    flex-basis: 58% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:59%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 59%"] {
    flex-basis: 59% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:60%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 60%"] {
    flex-basis: 60% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:61%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 61%"] {
    flex-basis: 61% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:62%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 62%"] {
    flex-basis: 62% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:63%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 63%"] {
    flex-basis: 63% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:64%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 64%"] {
    flex-basis: 64% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:65%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 65%"] {
    flex-basis: 65% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:66%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 66%"] {
    flex-basis: 66% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:67%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 67%"] {
    flex-basis: 67% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:68%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 68%"] {
    flex-basis: 68% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:69%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 69%"] {
    flex-basis: 69% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:70%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 70%"] {
    flex-basis: 70% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:71%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 71%"] {
    flex-basis: 71% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:72%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 72%"] {
    flex-basis: 72% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:73%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 73%"] {
    flex-basis: 73% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:74%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 74%"] {
    flex-basis: 74% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:75%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 75%"] {
    flex-basis: 75% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:76%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 76%"] {
    flex-basis: 76% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:77%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 77%"] {
    flex-basis: 77% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:78%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 78%"] {
    flex-basis: 78% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:79%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 79%"] {
    flex-basis: 79% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:80%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 80%"] {
    flex-basis: 80% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:81%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 81%"] {
    flex-basis: 81% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:82%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 82%"] {
    flex-basis: 82% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:83%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 83%"] {
    flex-basis: 83% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:84%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 84%"] {
    flex-basis: 84% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:85%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 85%"] {
    flex-basis: 85% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:86%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 86%"] {
    flex-basis: 86% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:87%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 87%"] {
    flex-basis: 87% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:88%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 88%"] {
    flex-basis: 88% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:89%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 89%"] {
    flex-basis: 89% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:90%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 90%"] {
    flex-basis: 90% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:91%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 91%"] {
    flex-basis: 91% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:92%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 92%"] {
    flex-basis: 92% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:93%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 93%"] {
    flex-basis: 93% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:94%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 94%"] {
    flex-basis: 94% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:95%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 95%"] {
    flex-basis: 95% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:96%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 96%"] {
    flex-basis: 96% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:97%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 97%"] {
    flex-basis: 97% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:98%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 98%"] {
    flex-basis: 98% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:99%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 99%"] {
    flex-basis: 99% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis:100%"],
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis: 100%"] {
    flex-basis: 100% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="33.33"] {
    flex-basis: 33.33% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="66.66"] {
    flex-basis: 66.66% !important;
    flex-grow: 0 !important;
  }
  .p-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="66.67"] {
    flex-basis: 66.67% !important;
    flex-grow: 0 !important;
  }
}
/* Gutenberg core/columns: 782/781px とテーマ768pxのズレ調整（ここまで） */
/* 要素間の余白 */
.p-content .wp-block-columns {
  margin-block: 1.75rem;
}

.p-content h2 {
  margin-block: 5rem 3.25rem;
}
@media screen and (max-width: 767px) {
  .p-content h2 {
    margin-block: 3rem 1.25rem;
  }
}

.p-content h3 {
  margin-block: 3.75rem 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-content h3 {
    margin-block: 1.875rem 1.25rem;
  }
}

.p-content h4 {
  margin-block: 1.875rem 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-content h4 {
    margin-block: 1.25rem 0.625rem;
  }
}

.p-content h5 {
  margin-block: 1.25rem 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-content h5 {
    margin-block: 0.9375rem 0.625rem;
  }
}

.p-content p {
  margin-block: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-content p {
    margin-block: 0.625rem;
  }
}

.p-content :is(ul, ol) {
  margin-block: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-content :is(ul, ol) {
    margin-block: 0.625rem;
  }
}

.p-content *:first-child {
  margin-block-start: 0;
}

.p-content *:last-child {
  margin-block-end: 0;
}

/* :is() 内の先頭 > は Sass 2.0 で廃止予定のため、子 ul/ol は .p-content > :is(...) に分離 */
.p-content :where(figure, .wp-block-table),
.p-content > :where(ul, ol) {
  margin-block: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-content :where(figure, .wp-block-table),
  .p-content > :where(ul, ol) {
    margin-block: 1.25rem;
  }
}

/* flex-itemの場合の余白は親のgapに委ねる */
.wp-block-column > figure {
  margin-block: 0;
}

.p-content .wp-block-buttons {
  margin-block: 2.375rem 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-buttons {
    margin-block: 1.25rem 2rem;
  }
}

/* 余白以外のスタイル */
.p-content :is(p, ul, ol, th, td) {
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-content :is(p, ul, ol, th, td) {
    font-size: max(0.875rem, 10px);
  }
}

.p-content h2:is(.is-style-default, :not([class*=is-style-])) {
  padding-block-end: 0.75rem;
  background: var(--border-line);
  font-size: max(1.25rem, 10px);
  font-weight: 700;
}

.p-content h3:is(.is-style-default, :not([class*=is-style-])) {
  position: relative;
  display: flex;
  gap: 0.75rem;
  font-size: max(1.125rem, 10px);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-content h3:is(.is-style-default, :not([class*=is-style-])) {
    font-size: max(1rem, 10px);
  }
}

.p-content h3:is(.is-style-default, :not([class*=is-style-]))::before {
  content: "";
  width: 0.3125rem;
  height: 1lh;
  border-radius: 0.625rem;
  background-color: var(--color-main);
}

.p-content h4 {
  font-size: max(1rem, 10px);
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-content h4 {
    font-size: max(0.875rem, 10px);
  }
}

.p-content h5 {
  font-size: max(1.0625rem, 10px);
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-content h5 {
    font-size: max(1rem, 10px);
  }
}

.p-content a:not(.wp-block-button *) {
  color: var(--color-main);
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}

.p-content a[href^="tel:"] {
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-content a[href^="tel:"] {
    text-decoration: underline;
  }
}

.p-content .wp-block-button__link {
  width: 100%;
  min-height: 3.125rem;
  padding-block: 0.5rem;
  padding-inline: 1.25rem 0.9375rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-white);
  background: var(--gradient-main-hover);
  text-align: left;
  border-radius: 2.5625rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  background-size: 201% 201%;
  transition: background-position 0.3s ease-in-out;
}
@media (any-hover: hover) {
  .p-content .wp-block-button__link:hover {
    opacity: 1;
    background-position: 99% 0;
  }
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-button__link {
    max-width: 20.625rem;
    padding-block: 0.75rem;
    padding-inline: 1.875rem 1.25rem;
    justify-content: space-between;
  }
}
.p-content .wp-block-button__link::after {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  background-image: url(../images/common/icon-arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: translate 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-button__link::after {
    width: 0.875rem;
    height: 0.875rem;
  }
}
@media (any-hover: hover) {
  .p-content .wp-block-button__link:hover::after {
    translate: 0.25rem 0;
  }
}
.p-content .wp-block-button__link {
  min-height: 4.0625rem;
  min-width: 18.9375rem;
}

.p-content .wp-block-button__link::after {
  width: 1rem;
  height: 1rem;
}

.p-content img {
  width: auto;
  border-radius: 1.25rem;
}

.p-content :is(figure, img).aligncenter {
  margin-right: auto;
  margin-left: auto;
}

.p-content :is(figure, img).alignright {
  margin-left: auto;
}

.p-content :is(ol, ul) {
  list-style: revert;
  padding-left: 1.5em;
}

/* table */
.p-content .wp-block-table {
  border: none;
}

.p-content .wp-block-table table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  border: 1px solid var(--color-border);
}

.p-content .wp-block-table :is(th, td) {
  border: 1px solid var(--color-border);
  font-size: max(1.125rem, 10px);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-table :is(th, td) {
    font-size: max(0.9375rem, 10px);
  }
}

.p-content .wp-block-table th {
  width: 30%;
  background-color: rgba(255, 136, 0, 0.07);
  color: #ff8800;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-table th {
    width: 20%;
  }
}

.p-content .wp-block-table thead {
  border-bottom-width: 0;
}

.p-content .wp-block-table tr > * {
  padding: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-table tr > * {
    padding: 0.375rem;
  }
}

.p-content em {
  font-style: italic;
}

/* グループ：グラデ背景 */
.p-content .wp-block-group.is-style-group-bg-gradation {
  border-radius: 3.75rem 3.75rem 0 0;
  background: url(../images/common/section-bg.webp) no-repeat center/100% 100%;
  margin-block: 5.625rem 2.5rem;
  margin-inline: calc(50% - 50vw);
  margin-inline: calc(50% - 50cqi);
  padding-inline: calc(50vw - 50%);
  padding-inline: calc(50cqi - 50%);
  padding-block: 4rem;
}

.p-content .wp-block-group.is-style-group-bg-gradation > .wp-block-group__inner-container > *:not(.wp-block-group) {
  padding-inline: 1.6875rem;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-group.is-style-group-bg-gradation > .wp-block-group__inner-container > *:not(.wp-block-group) {
    padding-inline: 0;
  }
}

/* 管理画面で変更可能にしたスタイル */
/* グループ：白背景 */
.p-content .wp-block-group.is-style-group-box-white {
  background-color: var(--color-white);
  border-radius: 2.5rem;
  margin-block: 2.5rem;
  padding-block: 2.625rem;
  padding-inline: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-group.is-style-group-box-white {
    padding-block: 1.875rem;
    padding-inline: 1.25rem;
  }
}

/* グループ：枠線：緑 */
.p-content .wp-block-group.is-style-group-border-green {
  border: 1px solid var(--color-main);
  background-color: unset;
  margin-inline: auto;
  margin-block: 1.25rem;
  max-width: 43.75rem;
  padding-block: 2.5rem;
  padding-inline: 4.625rem;
}

/* グループ：枠線：オレンジ */
.p-content .wp-block-group.is-style-group-border-orange {
  border: 1px solid #e27911;
  background-color: unset;
  margin-block: 1.25rem;
  margin-inline: auto;
  max-width: 43.75rem;
  padding-block: 2.5rem;
  padding-inline: 4.625rem;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-group.is-style-group-border-orange {
    padding-block: 1.875rem;
    padding-inline: 1.25rem;
  }
}

/* 見出し: 下線：短い */
.p-content .wp-block-heading.is-style-underline-short {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.125rem;
  font-size: max(1.375rem, 10px);
  font-weight: 500;
}
.p-content .wp-block-heading.is-style-underline-short.has-text-align-center {
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-heading.is-style-underline-short {
    gap: 0.75rem;
    font-size: max(1.25rem, 10px);
  }
}
.p-content .wp-block-heading.is-style-underline-short::after {
  height: 0.25rem;
  width: 3.75rem;
  content: "";
  border-radius: 100vh;
  background: linear-gradient(90deg, #56ccff 0%, #7fbe26 100%);
}

/* 見出し: 下線：幅いっぱい */
.p-content .wp-block-heading.is-style-underline-full {
  display: flex;
  flex-direction: column;
  font-size: max(1.25rem, 10px);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-heading.is-style-underline-full {
    font-size: max(1.125rem, 10px);
  }
}
.p-content .wp-block-heading.is-style-underline-full::before, .p-content .wp-block-heading.is-style-underline-full::after {
  position: static;
  display: block;
  height: 1px;
  background: var(--02, linear-gradient(131deg, #9ee597 8.19%, #56ccff 48.39%));
  content: "";
}
.p-content .wp-block-heading.is-style-underline-full::before {
  order: 2;
  margin-block-start: 0.25rem;
}
.p-content .wp-block-heading.is-style-underline-full::after {
  margin-block-start: 1.625rem;
}

/* リスト */
.p-content .wp-block-list {
  /* 管理画面ではアイコンサイズを小さめに */
  --list-marker-size: 1.875rem;
  --list-column-gap: 0.625rem;
  --list-row-gap: 0.5rem;
  --list-icon-content: "";
  --list-marker-size: 0.5rem;
  --list-marker-color: currentColor;
  --border-radius: 50%;
  padding-inline-start: unset;
  list-style-type: "";
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-list {
    --list-marker-size: 0.25rem;
    --list-row-gap: 0.5rem;
  }
}
.p-content .wp-block-list li {
  position: relative;
  padding-inline-start: calc(var(--list-marker-size) + var(--list-column-gap));
}
.p-content .wp-block-list li::before {
  position: absolute;
  inset-block-start: calc((1lh - var(--list-marker-size)) / 2);
  inset-inline-start: 0;
  block-size: var(--list-marker-size);
  aspect-ratio: 1;
  background-color: var(--list-marker-color);
  border-radius: var(--border-radius);
  -webkit-mask: var(--mask, unset);
          mask: var(--mask, unset);
  content: var(--list-icon-content);
}

/* リスト：チェック：緑 */
.p-content .wp-block-list.is-style-list-check-green {
  --list-marker-size: 1.875rem;
  --mask: url(../images/common/icon-check.svg) no-repeat center / contain;
  --list-marker-color: #7fbe26;
  --border-radius: unset;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-list.is-style-list-check-green {
    --list-marker-size: 1.25rem;
  }
}
.p-content .wp-block-list.is-style-list-check-green li + li {
  margin-block-start: var(--list-row-gap);
}

/* リスト：チェック：橙（オレンジ） */
.p-content .wp-block-list.is-style-list-check-orange {
  --list-marker-size: 1.875rem;
  --mask: url(../images/common/icon-check.svg) no-repeat center / contain;
  --list-marker-color: #e27911;
  --border-radius: unset;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-list.is-style-list-check-orange {
    --list-marker-size: 1.25rem;
  }
}
.p-content .wp-block-list.is-style-list-check-orange li + li {
  margin-block-start: var(--list-row-gap);
}

/* テーブル：1列目を見出し */
.p-content .wp-block-table.is-style-table-first-col-heading table :is(th, td):first-child {
  width: 30%;
  background-color: rgba(255, 136, 0, 0.07);
  color: #ff8800;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-table.is-style-table-first-col-heading table :is(th, td):first-child {
    width: 20%;
  }
}
.p-content .wp-block-table.is-style-table-first-col-heading table :is(th, td):first-child {
  font-size: max(1.125rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-content .wp-block-table.is-style-table-first-col-heading table :is(th, td):first-child {
    font-size: max(0.9375rem, 10px);
  }
}

.p-content ul:is(.is-style-list-check-green, .is-style-list-check-orange) {
  font-size: max(1.125rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-content ul:is(.is-style-list-check-green, .is-style-list-check-orange) {
    font-size: max(1rem, 10px);
  }
}

html #wpadminbar {
  display: none;
}

.p-doctor-card {
  position: relative;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-doctor-card {
    max-width: 25rem;
    margin-inline: auto;
  }
}

.p-doctor-card__img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 496/614;
}
@media screen and (max-width: 767px) {
  .p-doctor-card__img {
    aspect-ratio: 315/390;
  }
}

.p-doctor-card__caption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 52%;
  background-color: #fafafa;
  padding: 0.625rem 1.25rem;
  border-radius: 0 1.875rem 0 0;
  text-align: center;
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 4%;
}
@media screen and (max-width: 767px) {
  .p-doctor-card__caption {
    width: 61%;
    padding-block: 0.625rem;
    padding-inline: 0.625rem 1.25rem;
    font-size: max(1.375rem, 10px);
  }
}

.p-doctor-card__caption:not(:has(.p-doctor-card__caption-label)) {
  font-size: max(1.25rem, 10px);
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-doctor-card__caption:not(:has(.p-doctor-card__caption-label)) {
    font-size: max(1.125rem, 10px);
  }
}

.p-doctor-card__caption-label {
  margin-right: 1.25rem;
  display: inline-block;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
}

.p-doctor-card__caption-en {
  margin-top: 0.4375rem;
  padding-top: 0.5rem;
  display: block;
  border-top: 1px solid var(--color-black);
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 10%;
  text-transform: uppercase;
  color: var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-doctor-card__caption-en {
    margin-top: 0.125rem;
    padding-top: 0.125rem;
  }
}

.p-doctor-introduction__item {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__item {
    font-size: max(0.75rem, 10px);
    line-height: 1.5;
  }
}

.p-doctor-introduction__item--bold {
  font-size: max(1rem, 10px);
  font-weight: 700;
}

.p-doctor-introduction__content {
  margin-top: 2.5rem;
  display: flex;
  align-items: flex-start;
  gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content {
    flex-direction: column;
  }
}

.p-doctor-introduction__content:has(.p-doctor-introduction__text) .p-doctor-card {
  width: 35%;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content:has(.p-doctor-introduction__text) .p-doctor-card {
    width: 100%;
  }
}

.p-doctor-introduction__text {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 2;
}

.p-doctor-introduction__list.p-list[data-icon=check-orange] {
  margin-top: 1.875rem;
  width: -moz-fit-content;
  width: fit-content;
  background-color: var(--color-white);
  padding: 3.75rem;
  border-radius: 2.5rem;
  --list-column-gap: 1.25rem;
  --list-row-gap: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__list.p-list[data-icon=check-orange] {
    padding: 1.875rem 1.25rem;
    border-radius: 1.25rem;
  }
}

.p-doctor-introduction__list:not(.p-list) {
  padding-top: 10px;
}

.p-doctor-introduction__content-items {
  display: grid;
  gap: 2.5rem;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content-items {
    grid-template-columns: repeat(1, 1fr);
  }
}

.p-doctor-introduction__content-items:not(:has(.p-doctor-introduction__list)) {
  width: 70%;
  margin-inline: auto;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content-items:not(:has(.p-doctor-introduction__list)) {
    width: 100%;
    max-width: 31.25rem;
    gap: 14px;
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-doctor-introduction__content-items + .p-doctor-introduction__content-items {
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content-items + .p-doctor-introduction__content-items {
    margin-top: 1.25rem;
  }
}

.p-doctor-introduction__content-item {
  background-color: #EFFDF8;
  padding: 1.25rem 0.9375rem;
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content-item {
    padding: 0.625rem;
  }
}

.p-doctor-introduction__content-item:has(.p-doctor-introduction__list) {
  display: grid;
  gap: 0.9375rem;
  grid-template-columns: 0.7fr 1fr;
  align-items: flex-start;
  padding: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-doctor-introduction__content-item:has(.p-doctor-introduction__list) {
    padding: 0.625rem;
    gap: 0.9375rem;
  }
}

.p-doctor-introduction__item span {
  color: var(--color-orange);
}

.p-doctor-attendance__content {
  margin-top: 2.5rem;
  max-width: 46.875rem;
  margin-inline: auto;
}

@media screen and (max-width: 767px) {
  .p-doctor-attendance__table-wrap {
    overflow-x: auto;
    padding-bottom: 0.625rem;
    -webkit-overflow-scrolling: touch;
  }
}

@media screen and (max-width: 767px) {
  .p-doctor-attendance__table.p-info-schedule__table {
    min-width: 25rem;
    width: -moz-max-content;
    width: max-content;
    margin-inline: auto;
  }
}

.p-doctor-attendance__text {
  margin-top: 0.9375rem;
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  line-height: 1.5833333333;
  letter-spacing: 4%;
  color: var(--color-black);
}

.p-footer {
  position: relative;
}

/* コピーライト */
.p-footer__copyright-area {
  padding-block: 2.0625rem;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .p-footer__copyright-area {
    padding-bottom: 5rem;
  }
}

.p-footer__copyright {
  display: block;
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  color: var(--color-black);
  line-height: 1;
  letter-spacing: 0;
}

/* 下部CTA */
.p-footer__bottom-cta-tel-label {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1;
}

.p-footer__bottom-cta-tel-label img {
  width: 1.25rem;
  height: 1.25rem;
}

.p-footer__bottom-cta-tel-number {
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}

.p-footer__bottom-cta-tel-hours {
  font-size: max(0.625rem, 10px);
  font-weight: 500;
  display: block;
  line-height: 1;
  letter-spacing: 0;
  margin-top: 0.25rem;
  text-align: left;
}

@media (any-hover: hover) {
  .p-footer__bottom-cta-button a.c-button:hover {
    opacity: 0.7;
  }
}
.p-footer-page-top {
  position: absolute;
  bottom: 1.25rem;
  right: 1.125rem;
  width: 1.875rem;
  height: auto;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-footer-page-top {
    bottom: 8.4375rem;
  }
}

.p-footer-page-top a {
  display: block;
  width: 100%;
  height: 100%;
}

.p-footer-page-top img {
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  height: auto;
  width: 100%;
}

.p-form__message {
  text-align: center;
}

.p-form__contents {
  margin-top: 1.875rem;
}

.p-form__wrap {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  max-width: 50rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-form__wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.625rem;
  }
}

.p-form__wrap + .p-form__wrap {
  margin-top: 1.875rem;
}

.p-form__label {
  max-width: 15.625rem;
  width: 100%;
  font-size: max(0.9375rem, 10px);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-form__label {
    max-width: 100%;
    justify-content: flex-start;
    gap: 0.625rem;
  }
}

.p-form__wrap.p-form__wrap--textarea {
  align-items: flex-start;
}

.p-form:not(.p-form--confirm) .p-form__wrap.p-form__wrap--textarea .p-form__label {
  margin-top: 0.625rem;
}

.u-required {
  flex-shrink: 0;
  display: inline-block;
  color: #FF003D;
  margin-left: 0.625rem;
  padding: 0.3125rem;
  border: 1px solid #FF003D;
  font-size: max(0.75rem, 10px);
  line-height: 1;
}

.p-form__input,
.p-form__textarea {
  flex-grow: 1;
  width: 100%;
}

.p-form__submit-wrap {
  display: flex;
  justify-content: center;
  gap: 1.25rem;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-form__submit-wrap {
    flex-direction: column;
  }
}

.p-form__submit {
  margin-top: 3.75rem;
  text-align: center;
}

.p-form__submit-wrap > .p-form__submit {
  margin: 0;
}

.p-form__input input {
  padding: 0.5rem 0.9375rem;
  width: 100%;
  font-size: max(1rem, 16px);
  line-height: 1;
  border-radius: 0;
  border: 1px solid var(--color-gray);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  background-image: none;
}

.p-form__input input:focus {
  border: 1px solid var(--color-gray);
  box-shadow: none;
  outline: none;
}

.p-form__textarea textarea {
  padding: 0.5rem 0.9375rem;
  width: 100%;
  height: 9.375rem;
  font-size: max(0.9375rem, 10px);
  border-radius: 0;
  border: 1px solid var(--color-gray);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  background-image: none;
  field-sizing: content;
}

.p-form__textarea textarea:focus {
  border: 1px solid var(--color-gray);
  box-shadow: none;
  outline: none;
}

.p-form__select {
  position: relative;
  width: 100%;
}

.p-form:not(.p-form--confirm) .p-form__select::after {
  content: "";
  position: absolute;
  right: 0.9375rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 0.3125rem solid transparent;
  border-right: 0.3125rem solid transparent;
  border-top: 0.375rem solid var(--color-black);
  pointer-events: none;
}

.p-form__select select {
  padding: 0.71875rem 3.125rem 0.71875rem 0.9375rem;
  width: 100%;
  font-size: max(0.9375rem, 10px);
  line-height: 1;
  border-radius: 0;
  border: 1px solid var(--color-gray);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}

.p-form__select select::-ms-expand {
  display: none;
}

.p-form__select select:focus {
  border: 1px solid var(--color-gray);
  box-shadow: none;
  outline: none;
}

.p-form__radio label {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-form__radio label {
    display: block;
  }
}

.p-form__radio label:not(:first-of-type) {
  margin-left: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-form__radio label:not(:first-of-type) {
    margin-top: 0.625rem;
    margin-left: 0;
  }
}

.p-form__radio input {
  display: none;
}

.p-form__radio input + span {
  padding: 0 0 0 1.5625rem;
  position: relative;
  display: block;
  font-size: max(0.9375rem, 10px);
  line-height: 1;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-form__radio input + span {
    display: inline-block;
  }
}

.p-form__radio input + span::before {
  content: "";
  width: 0.9375rem;
  height: 0.9375rem;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: var(--color-white);
  border: 1px solid var(--color-gray);
  border-radius: 50%;
}

.p-form__radio input + span::after {
  content: "";
  padding: 0.125rem;
  width: 0.4375rem;
  height: 0.4375rem;
  position: absolute;
  top: 50%;
  left: 0.25rem;
  transform: translateY(-50%);
  border: 1px solid transparent;
  border-radius: 50%;
  background: #000;
  opacity: 0;
  transition: 0.3s;
}

.p-form__radio input:checked + span::after {
  opacity: 1;
}

.p-form__checkbox label {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-form__checkbox label {
    display: block;
  }
}

.p-form__checkbox label:not(:first-of-type) {
  margin-left: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-form__checkbox label:not(:first-of-type) {
    margin-top: 0.625rem;
    margin-left: 0;
  }
}

.p-form__checkbox input {
  display: none;
}

.p-form__checkbox input + span {
  cursor: pointer;
  display: inline-block;
  padding: 0 0 0 1.5625rem;
  position: relative;
  font-size: max(0.9375rem, 10px);
  line-height: 1;
}

.p-form__checkbox input + span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: var(--color-white);
  border: 1px solid var(--color-gray);
  display: block;
  width: 0.9375rem;
  height: 0.9375rem;
}

.p-form__checkbox input + span::after {
  content: "";
  margin-top: -0.125rem;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%) rotate(-45deg);
  display: block;
  width: 0.9375rem;
  height: 0.5rem;
  border-bottom: 0.1875rem solid #000;
  border-left: 0.1875rem solid #000;
  transition: 0.3s;
  opacity: 0;
}

.p-form__checkbox input:checked + span::after {
  opacity: 1;
}

.p-contact__form-privacy {
  margin-top: 1.25rem;
  text-align: center;
}

.p-contact__form-checkbox-text.c-text {
  font-size: max(0.9375rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-contact__form-checkbox-text.c-text {
    max-width: 25.625rem;
    margin-inline: auto;
    font-size: max(0.75rem, 10px);
  }
}

.p-contact__form-checkbox-text.c-text a {
  text-decoration: underline;
  text-decoration-color: var(--color-black);
  text-underline-offset: 1px;
  text-decoration-thickness: 1px;
}

.p-contact__form-privacy label {
  margin-top: 1.25rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .p-contact__form-privacy label {
    margin-top: 0.625rem;
  }
}

.p-contact__form-privacy input + span {
  position: relative;
  padding-left: 1.875rem;
  margin-left: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-contact__form-privacy input + span {
    font-size: max(0.8125rem, 10px);
    padding-left: 1.5625rem;
    margin-left: 0.625rem;
  }
}

.p-contact__form-privacy input + span::before {
  content: "";
  position: absolute;
  top: 60%;
  left: 0;
  transform: translateY(-50%);
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  background-color: var(--color-white);
  border: 1px solid var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-contact__form-privacy input + span::before {
    top: 55%;
  }
}

.p-contact__form-privacy input + span::after {
  content: "";
  margin-top: -0.125rem;
  position: absolute;
  top: 60%;
  left: 0.25rem;
  transform: translateY(-50%) rotate(-45deg);
  display: block;
  width: 0.8125rem;
  height: 0.4375rem;
  border-bottom: 2px solid var(--color-black);
  border-left: 2px solid var(--color-black);
  transition: 0.3s;
  opacity: 0;
}

.p-contact__form-privacy input:checked + span::after {
  opacity: 1;
}

.p-contact__form-submit {
  margin-top: 6.25rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-contact__form-submit {
    margin-top: 3.125rem;
  }
}

.p-form__submit input,
.p-form__submit a {
  width: 21.875rem;
  padding-block: 1.4375rem;
  padding-inline: 2.6875rem;
  gap: 1.25rem;
  font-size: max(1.375rem, 10px);
  font-weight: 500;
  background: linear-gradient(to right, #3193E9 0%, #70C15B 100%);
  color: var(--color-white);
  border-radius: 2.5625rem;
  border: none;
  cursor: pointer;
  transition: opacity 0.3s ease-in-out;
}

@media (any-hover: hover) {
  .p-form__submit input:hover,
  .p-form__submit a:hover {
    opacity: 0.7;
    color: var(--color-white);
  }
}
.wpcf7 form .wpcf7-response-output {
  border-color: transparent;
}

.wpcf7 form.invalid .wpcf7-response-output {
  border-color: #FF003D;
  border-radius: 0.625rem;
}

.wpcf7 form .wpcf7-response-output {
  padding: 1.875rem;
  text-align: center;
  font-size: max(1.25rem, 10px);
  color: #FF003D;
  line-height: 1;
  margin: 3.75rem 0 0;
}

.wpcf7-list-item {
  margin: 0;
}

.wpcf7-list-item + .wpcf7-list-item {
  margin-left: 1.25rem;
}

.wpcf7-spinner {
  display: none;
}

.p-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 1001;
  width: 100%;
  height: var(--header-height);
  color: var(--color-black);
}

.p-header__inner.l-inner {
  height: inherit;
}
@media screen and (max-width: 767px) {
  .p-header__inner.l-inner {
    padding: 0;
    max-width: none;
  }
}

.p-header__contents {
  height: inherit;
  display: flex;
  justify-content: space-between;
  transition: background-color 0.3s ease-in-out;
  position: relative;
  background-color: var(--color-white);
  padding-left: 1.3125rem;
}
@media screen and (max-width: 767px) {
  .p-header__contents {
    padding-inline: 1.25rem 0.9375rem;
  }
}

body.home .p-header__contents {
  background-color: rgba(125, 125, 125, 0.16);
}
@media screen and (max-width: 767px) {
  body.home .p-header__contents {
    background-color: var(--color-white);
  }
}

.p-header__contents::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--color-main);
  transition: background-color 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .p-header__contents::after {
    content: none;
  }
}

body.home .p-header.is-scrolled .p-header__contents {
  background-color: var(--color-white);
}

body.home .p-header__contents::after {
  background-color: var(--color-white);
}

body.home .p-header.is-scrolled .p-header__contents::after {
  background-color: var(--color-main);
}

.p-header__logo {
  max-width: 15.625rem;
  width: 100%;
  height: inherit;
}
@media screen and (max-width: 767px) {
  .p-header__logo {
    max-width: 12.625rem;
  }
}

.p-header__logo a {
  height: inherit;
  display: flex;
  align-items: center;
}

.p-header__logo-white {
  display: none;
}

body.home .p-header__logo-white {
  display: block;
}

body.home .p-header__logo-color {
  display: none;
}

body.home .p-header.is-scrolled .p-header__logo-white {
  display: none;
}

body.home .p-header.is-scrolled .p-header__logo-color {
  display: block;
}

body.home .p-header.is-scrolled .p-header__nav-item a {
  color: var(--color-black);
}

@media screen and (max-width: 767px) {
  body.home .p-header__logo-white {
    display: none;
  }
  body.home .p-header__logo-color {
    display: block;
  }
}
.p-header__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-header__right {
  height: inherit;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-header__right {
    gap: 0.8125rem;
  }
}

@media screen and (max-width: 767px) {
  .p-header__nav-wrap {
    display: none;
  }
}

.p-header__button-wrap {
  display: flex;
  height: calc(var(--header-height) / 2);
  align-items: flex-end;
  justify-content: flex-end;
  gap: 0.625rem;
}

.p-header__button a.c-button[data-icon=phone] {
  font-size: max(1rem, 10px);
  font-weight: 700;
  padding-inline: 1.25rem;
}

.p-header__button a.c-button[data-icon=phone] span {
  font-size: max(0.625rem, 10px);
  font-weight: 500;
}

.p-header__nav {
  display: block;
  height: calc(var(--header-height) / 2);
}

.p-header__nav-list {
  display: flex;
  height: inherit;
}

.p-header__nav-item {
  height: inherit;
}

.p-header__nav-item:last-child a {
  padding-right: 0;
}

.p-header__nav-item a {
  padding-inline: 0.9375rem;
  padding-bottom: 0.1875rem;
  height: inherit;
  display: flex;
  align-items: center;
  font-size: max(1rem, 10px);
  font-weight: 700;
  line-height: 1;
  transition: color 0.3s ease-in-out;
}

body.home .p-header__nav-item a {
  color: var(--color-white);
}

body.home .p-header__nav-item.is-current > a {
  color: var(--color-main);
}

body.home .p-header.is-scrolled .p-header__nav-item.is-current > a {
  color: var(--color-main);
}

.p-header__nav-item--mega {
  position: relative;
}

.p-header__mega {
  position: absolute;
  left: 50%;
  top: 100%;
  z-index: 1002;
  min-width: 37.5rem;
  padding: 1.875rem;
  background-color: var(--color-white);
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
  transform: translateX(-50%);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  border-radius: 0 0 0.625rem 0.625rem;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .p-header__mega {
    display: none;
  }
}

.p-header__nav-item--mega:hover .p-header__mega,
.p-header__nav-item--mega:focus-within .p-header__mega {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.p-header__mega-inner {
  display: grid;
  gap: 1.875rem;
  grid-template-columns: 2fr 1fr;
}

.p-header__mega-heading {
  font-size: max(1rem, 10px);
  font-weight: 700;
  color: var(--color-main);
}

.p-header__mega-lists {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
}

.p-header__mega-lists .p-header__mega-list {
  flex: 1;
  min-width: 0;
}

.p-header__mega-list {
  margin-top: 0.625rem;
  padding: 0;
  list-style: none;
}

.p-header__mega-item a {
  display: block;
  height: auto;
  padding: 0;
  font-size: max(1rem, 10px);
  font-weight: 500;
  padding-block: 0.625rem;
}

body.home .p-header__mega-item a {
  color: var(--color-black);
}

.p-header__nav-contact {
  height: inherit;
}

.p-header__nav-contact a {
  display: inline-flex;
  gap: 0.4375rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: inherit;
  width: 8rem;
  background: linear-gradient(135deg, var(--color-sub) 0%, var(--color-main) 100%);
  color: var(--color-white);
  font-size: max(1.125rem, 10px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  transition: filter 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .p-header__nav-contact a {
    font-size: max(0.75rem, 10px);
    width: 3.75rem;
  }
}

.p-header__nav-contact a::before {
  content: "";
  width: 1.875rem;
  height: 1.875rem;
  background-image: url(../images/common/icon-calendar.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 767px) {
  .p-header__nav-contact a::before {
    width: 1rem;
    height: 1rem;
  }
}

@media (any-hover: hover) {
  .p-header__nav-item a:hover,
  body.home .p-header__nav-item a:hover {
    color: var(--color-main);
    opacity: 1;
  }
  body.home .p-header__mega-item a:hover {
    color: var(--color-main);
    opacity: 1;
  }
  .p-header__nav-contact a:hover {
    opacity: 1;
    filter: brightness(1.2);
  }
}
.p-header__nav-item.is-current > a {
  color: var(--color-main);
}

.p-header__hamburger {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-header__hamburger {
    position: relative;
    z-index: 999;
    display: block;
    padding: 0;
    width: 44px;
  }
}

.p-header__hamburger span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 44px;
  height: 21px;
  border-radius: 19px;
  border: 1px solid var(--color-main);
}

.p-header__hamburger span::before,
.p-header__hamburger span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 14px;
  height: 1px;
  background-color: var(--color-main);
  content: "";
  transition: transform 0.3s ease-out;
}

.p-header__hamburger span::before {
  transform: translate(-50%, calc(-3px - 50%));
}

.p-header__hamburger span::after {
  transform: translate(-50%, calc(3px - 50%));
}

.p-header__hamburger.is-open span::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.p-header__hamburger.is-open span::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.p-header__drawer {
  display: none;
}
@media screen and (max-width: 1023px) {
  .p-header__drawer {
    position: fixed;
    z-index: 900;
    inset: 0;
    display: block;
    width: 100%;
    height: 100vh;
    background: var(--color-white);
    overflow-y: scroll;
    scrollbar-width: none;
    transform: translateY(-100%);
    transition: transform 0.3s ease-out;
    padding-top: var(--header-height);
  }
}

.p-header__drawer.is-open {
  transform: translateY(0%);
}

.p-header__drawer::-webkit-scrollbar {
  display: none;
}

.p-info-cta__bg {
  width: 100%;
  height: auto;
}

.p-info-cta__bg img {
  aspect-ratio: 1440/347;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-info-cta__bg img {
    aspect-ratio: 390/233;
  }
}

.p-info-cta__grid {
  margin-top: 5rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 767px) {
  .p-info-cta__grid {
    margin-top: 4.8125rem;
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}

.p-info-cta__left {
  padding-left: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .p-info-cta__left {
    padding-left: 0;
  }
}

.p-info-cta__right {
  padding-left: 1.5625rem;
  padding-right: 2.5rem;
  border-left: 1px solid var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-info-cta__right {
    padding-top: 3.125rem;
    padding-left: 0;
    padding-right: 0;
    border-left: none;
    border-top: 1px solid var(--color-main);
  }
}

.p-info-news[data-layout=vertical] {
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-info-news[data-layout=vertical] {
    gap: 0.9375rem;
  }
}

.p-info-news[data-layout=vertical] .p-info-news__heading-wrap {
  display: contents;
}

.p-info-news[data-layout=vertical] .p-info-news__heading {
  order: 1;
}

.p-info-news[data-layout=vertical] .p-news-list,
.p-info-news:has(.c-no-post)[data-layout=vertical] .c-no-post {
  order: 2;
}

.p-info-news[data-layout=vertical] .p-info-news__btn {
  order: 3;
  width: 7.75rem;
  margin-left: auto;
}

.p-info-news {
  grid-template-columns: 22.7106227106% 1fr;
  display: grid;
  gap: clamp(10px, 10px + 0.037202381 * (100cqi - 768px), 35px);
}
@media screen and (max-width: 767px) {
  .p-info-news {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
}

.p-info-news__heading-wrap {
  padding-top: 2.3125rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-info-news__heading-wrap {
    display: contents;
  }
}

.p-info-news__heading.c-info-heading {
  padding-left: 1rem;
}

.p-info-news__btn a.c-button[data-icon=arrow] {
  padding-inline: 0.3125rem;
  padding-block: 0.75rem;
}

.p-info-news__list {
  padding-bottom: 0.625rem;
}

@media screen and (max-width: 767px) {
  .p-news-list__item:nth-child(4) {
    display: none;
  }
}

.p-info-schedule {
  padding-right: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule {
    padding-right: 0;
  }
}

.p-info-schedule__table-wrap {
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table-wrap {
    margin-top: 0.8125rem;
  }
}

.p-info-schedule__table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  border-top: 1px solid var(--color-main);
  border-bottom: 1px solid var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table {
    font-size: max(0.875rem, 10px);
    letter-spacing: 0;
    max-width: 25rem;
    margin-inline: auto;
  }
}

.p-info-schedule__table thead th {
  font-weight: 500;
  color: var(--color-black);
  line-height: 1;
}

.p-info-schedule__table thead tr {
  border-bottom: 1px solid var(--color-main);
}

.p-info-schedule__table thead tr > * {
  padding-block: 1.125rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table thead tr > * {
    padding-block: 1.1875rem;
  }
}

.p-info-schedule__table tbody tr > * {
  padding-block: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table tbody tr > * {
    padding-block: 0.625rem;
  }
}

.p-info-schedule__table tbody tr:first-child > td {
  padding-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table tbody tr:first-child > td {
    padding-top: 1.25rem;
  }
}

.p-info-schedule__table tbody tr:last-child > td {
  padding-bottom: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table tbody tr:last-child > td {
    padding-bottom: 1.25rem;
  }
}

.p-info-schedule__table tbody td {
  color: var(--color-black);
  line-height: 1;
}

.p-info-schedule__table tbody td.is-open {
  color: var(--color-main);
}

.p-info-schedule__time-label,
.p-doctor-attendance__table td span {
  font-size: max(1.125rem, 10px);
  font-weight: 700;
  letter-spacing: 4%;
  color: var(--color-main) !important;
  width: 3.875rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__time-label,
  .p-doctor-attendance__table td span {
    font-size: max(0.875rem, 10px);
    letter-spacing: 0;
    width: 2.1875rem;
  }
}

.p-info-schedule__table thead th:last-child {
  width: 5rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__table thead th:last-child {
    width: 2.8125rem;
  }
}

.p-info-schedule__time-range {
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  width: 9.0625rem;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__time-range {
    font-size: max(0.875rem, 10px);
    line-height: 1.1428571429;
    width: 3.75rem;
    padding-left: 0.3125rem;
  }
}

.p-info-schedule__notes {
  margin-top: 0.9375rem;
  padding-left: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__notes {
    margin-top: 1.1875rem;
    padding-left: 0;
  }
}

.p-info-schedule__notes-item {
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  line-height: 1.5833333333;
  letter-spacing: 4%;
  color: var(--color-black);
}

.p-info-schedule__btn {
  margin-top: 2.5rem;
  width: 15.625rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-info-schedule__btn {
    margin-top: 1.875rem;
  }
}

.p-info__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-top: 1.25rem;
  border-top: 1px solid var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-info__grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    padding-top: 2.5rem;
  }
}

body.home .p-info__grid {
  border-top: none;
  padding-top: 0;
}

.p-info__left {
  padding-top: 1.75rem;
  padding-left: 1.75rem;
}
@media screen and (max-width: 767px) {
  .p-info__left {
    padding: 0;
  }
}

.p-info__right {
  padding-top: 1rem;
  padding-left: 1.5625rem;
  border-left: 1px solid var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-info__right {
    padding-top: 3.125rem;
    padding-left: 0;
    border-left: none;
    border-top: 1px solid var(--color-main);
  }
}

@media screen and (max-width: 767px) {
  .p-info__access {
    display: flex;
    flex-direction: column;
    gap: 1.5625rem;
  }
}

.p-info__access-wrap {
  display: grid;
  gap: 0.3125rem;
  grid-template-columns: 1fr 44.425087108%;
}
@media screen and (max-width: 767px) {
  .p-info__access-wrap {
    display: contents;
    gap: 0.625rem;
  }
}

.p-info__access-content {
  padding-top: 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-info__access-content {
    padding-top: 0;
  }
}

.p-info__heading.c-info-heading {
  padding-left: 1rem;
}

.p-info__address {
  margin-top: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .p-info__address {
    margin-top: 1.125rem;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}

.p-info__address p {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-info__address p {
    line-height: 1.7142857143;
  }
}

.p-info__tel {
  margin-top: 0.625rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-info__tel {
    margin-top: 1.125rem;
    justify-content: center;
  }
}

.p-info__tel-icon {
  width: 1.5rem;
  height: 1.5rem;
}

.p-info__tel-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-info__tel-number {
  font-size: max(1.25rem, 10px);
  font-weight: 700;
  color: var(--color-black);
  line-height: 1;
}

.p-info__tel-hours {
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  color: var(--color-black);
  line-height: 1;
}

.p-info__map {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-info__map {
    order: 3;
    width: 72.8571428571%;
    margin-inline: auto;
  }
}

.p-info__map img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 255/170;
}

.p-info__access-btn {
  margin-top: 1.3125rem;
  max-width: clamp(160px, 160px + 0.0714285714 * (100vw - 768px), 208px);
  max-width: clamp(160px, 160px + 0.0714285714 * (100cqi - 768px), 208px);
}
@media screen and (max-width: 767px) {
  .p-info__access-btn {
    margin-top: 0;
    margin-inline: auto;
    max-width: 13rem;
  }
}

.p-info__access-btn a.c-button[data-icon=map] {
  padding-block: 0.6875rem;
}

.p-info__access-btn a.c-button[data-icon=map]::before {
  width: 1rem;
  height: 1.3125rem;
}

.p-info__news {
  margin-top: 2.1875rem;
  padding-top: 0.6875rem;
  margin-right: 1.75rem;
  border-top: 1px solid var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-info__news {
    margin-top: 3.4375rem;
    padding-top: 3.125rem;
    margin-right: 0;
  }
}

.p-info-news__btn {
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-info-news__btn {
    margin-top: 0;
    order: 3;
    width: 7.75rem;
    margin-left: auto;
  }
}

.p-info-news:has(.c-no-post) {
  align-items: center;
}

.p-info__google-map {
  margin-block-start: 2.5rem;
  padding-block-end: 2.375rem;
}

.p-info__google-map iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 574/196;
  -o-object-fit: cover;
     object-fit: cover;
  border: none;
}
@media screen and (max-width: 767px) {
  .p-info__google-map iframe {
    height: 15rem;
  }
}

.p-list[data-icon=check-orange] {
  /* 管理画面ではアイコンサイズを小さめに */
  --list-marker-size: 1.875rem;
  --list-column-gap: 0.625rem;
  --list-row-gap: 0.5rem;
  --list-icon-content: "";
  --list-marker-size: 0.5rem;
  --list-marker-color: currentColor;
  --border-radius: 50%;
  padding-inline-start: unset;
  list-style-type: "";
}
@media screen and (max-width: 767px) {
  .p-list[data-icon=check-orange] {
    --list-marker-size: 0.25rem;
    --list-row-gap: 0.5rem;
  }
}
.p-list[data-icon=check-orange] li {
  position: relative;
  padding-inline-start: calc(var(--list-marker-size) + var(--list-column-gap));
}
.p-list[data-icon=check-orange] li::before {
  position: absolute;
  inset-block-start: calc((1lh - var(--list-marker-size)) / 2);
  inset-inline-start: 0;
  block-size: var(--list-marker-size);
  aspect-ratio: 1;
  background-color: var(--list-marker-color);
  border-radius: var(--border-radius);
  -webkit-mask: var(--mask, unset);
          mask: var(--mask, unset);
  content: var(--list-icon-content);
}
.p-list[data-icon=check-orange] {
  --list-marker-size: 1.875rem;
  --mask: url(../images/common/icon-check.svg) no-repeat center / contain;
  --list-marker-color: #e27911;
  --border-radius: unset;
}
@media screen and (max-width: 767px) {
  .p-list[data-icon=check-orange] {
    --list-marker-size: 1.25rem;
  }
}
.p-list[data-icon=check-orange] li + li {
  margin-block-start: var(--list-row-gap);
}
.p-list[data-icon=check-orange] {
  --list-column-gap: 1.25rem;
  --list-row-gap: 1.625rem;
  font-size: max(1.125rem, 10px);
  font-weight: 700;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-list[data-icon=check-orange] {
    --list-row-gap: 0.5rem;
    font-size: max(0.9375rem, 10px);
  }
}

/***************************************************
  以下追記
***************************************************/
.p-list[data-icon=check-orange] .p-list__item-heading {
  font-size: max(1.125rem, 10px);
  font-weight: 700;
  line-height: 2;
}

.p-list[data-icon=check-orange] .p-list__item-desc {
  margin-top: 0.5rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-mv {
    margin-top: var(--header-height);
  }
}

.p-mv__main {
  position: relative;
}

.p-mv__slider-item {
  width: 100%;
  height: auto;
  position: relative;
}

.p-mv__slider-item img {
  width: 100%;
  height: auto;
  aspect-ratio: 1440/660;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0 0 0 7.5rem;
}
@media screen and (max-width: 767px) {
  .p-mv__slider-item img {
    aspect-ratio: 390/490;
    border-radius: 0 0 0 3.75rem;
  }
}

.p-mv__slider-item::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 0 0 0 7.5rem;
  background: linear-gradient(270deg, rgba(128, 128, 128, 0) 46%, rgba(128, 128, 128, 0.3) 86%);
}
@media screen and (max-width: 767px) {
  .p-mv__slider-item::after {
    border-radius: 0 0 0 3.75rem;
    background: linear-gradient(to bottom, rgba(128, 128, 128, 0) 61%, rgba(128, 128, 128, 0.52) 95%);
  }
}

.p-mv__copy {
  position: absolute;
  inset: 69% 0 auto;
  z-index: 100;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-mv__copy {
    inset: auto 0 3.125rem;
    transform: none;
  }
}

.p-mv__main-copy {
  font-size: max(1.75rem, 10px);
  font-weight: 700;
  letter-spacing: 4%;
  line-height: 1.7;
  color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-mv__main-copy {
    font-size: max(1.25rem, 10px);
    line-height: 1.6;
    letter-spacing: 4%;
  }
}

.p-mv__main-copy span {
  background-color: var(--color-white);
  color: var(--color-main);
  padding: 0.3125rem 0.75rem;
  border-radius: 0.375rem;
  font-weight: 500;
  margin-right: 0.875rem;
  line-height: 1;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-mv__main-copy span {
    padding: 0.3125rem 0.625rem;
    margin-right: 0.3125rem;
  }
}

.p-mv__sub-copy {
  margin-top: 1.125rem;
  font-size: max(1.125rem, 10px);
  font-weight: 500;
  line-height: 1.5555555556;
  letter-spacing: 4%;
  color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-mv__sub-copy {
    margin-top: 0.625rem;
    font-size: max(0.875rem, 10px);
    line-height: 1.7142857143;
    letter-spacing: 0;
  }
}

.p-mv__list-wrap {
  position: relative;
  z-index: 100;
  margin-top: -5rem;
}
@media screen and (max-width: 767px) {
  .p-mv__list-wrap {
    margin-top: 1.125rem;
  }
}

@media screen and (max-width: 767px) {
  .p-mv__list-inner.l-inner {
    padding-inline: 1.6875rem 1.625rem;
  }
}

.p-mv__list {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-mv__list {
    flex-direction: column;
    max-width: 21.875rem;
    margin-inline: auto;
  }
}

.p-mv__list-item:not(:last-child) {
  background-color: var(--color-white);
  border: 1px solid var(--color-main);
  aspect-ratio: 337/150;
  width: 28.0833333333%;
  display: grid;
  grid-template-columns: 54.5994065282% 1fr;
}
@media screen and (max-width: 767px) {
  .p-mv__list-item:not(:last-child) {
    aspect-ratio: 337/150;
    width: 100%;
  }
}

.p-mv__list-item:last-child {
  width: 12.5%;
}
@media screen and (max-width: 767px) {
  .p-mv__list-item:last-child {
    margin-top: 1.0625rem;
    width: 74.4807121662%;
  }
}

.p-mv__list-item-img {
  width: 100%;
  height: auto;
  position: relative;
}

.p-mv__list-item-img img {
  aspect-ratio: 184/150;
  -o-object-fit: cover;
     object-fit: cover;
  height: auto;
  width: 100%;
  color: black;
}

.p-mv__list-item-img::after {
  content: "";
  position: absolute;
  width: 20%;
  height: 100%;
  top: 0;
  right: -1px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), white);
}

.p-mv__list-item-content {
  padding: 0.9375rem 0.3125rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.p-mv__list-item-title {
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 4%;
  color: var(--color-main);
}

.p-mv__list-item-title span {
  font-size: max(1.4375rem, 10px);
  font-weight: 700;
}

.p-mv__list-item-title[data-size=small] {
  font-size: max(1rem, 10px);
  line-height: 1.75;
}

.p-mv__list-item-title[data-size=small] span {
  font-size: max(1.1875rem, 10px);
  font-weight: 700;
}

.p-mv__list-item-text {
  margin-top: 0.625rem;
  background-color: #19AF5D;
  color: var(--color-white);
  padding: 0.1875rem 0.625rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 4%;
  color: var(--color-white);
}

.p-mv__list-item:nth-child(2) .p-mv__list-item-text {
  padding: 0.1875rem 0.3125rem;
}

.p-news-list {
  padding-bottom: 0.625rem;
}

.p-news-list__item {
  background-image: repeating-linear-gradient(90deg, #cdcdcd, #cdcdcd 4px, transparent 4px, transparent 8px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
}

.p-news-list__item a {
  display: block;
  padding-block: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .p-news-list__item a {
    padding-block: 1rem;
  }
}

.p-news-list__cat {
  min-width: 5.3125rem;
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  color: var(--color-main);
  background-color: #f0f0f0;
  border-radius: 1.5rem;
  padding: 0.1875rem 0.75rem;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}

.p-news-list__item-content {
  margin-top: 0.3125rem;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: auto 1fr;
  align-items: center;
}

.p-news-list__date {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--color-main);
  line-height: 1;
  white-space: nowrap;
}

.p-news-list__title {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--color-black);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

.p-news-list__pagenavi {
  margin-top: 3.125rem;
}

.p-post-list__tabs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .p-post-list__tabs {
    margin-top: 2.1875rem;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 0.625rem;
    -webkit-overflow-scrolling: touch;
  }
}

.p-post-list__tab-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 9.375rem;
  padding: 0.5rem 0.9375rem;
  background-color: var(--color-white);
  border: 1px solid var(--color-main);
  border-radius: 1.375rem;
  cursor: pointer;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.78125;
  color: var(--color-main);
  letter-spacing: 0.04em;
}

.p-post-list__tab-btn.is-active {
  background-color: var(--color-main);
  color: var(--color-white);
}

@media (any-hover: hover) {
  .p-post-list__tab-btn:hover {
    opacity: 1;
    background-color: var(--color-main);
    color: var(--color-white);
  }
}
.p-post-list__contents {
  margin-top: 5rem;
  max-width: 62.5rem;
  margin-inline: auto;
}

.p-privacy__list {
  max-width: 62.5rem;
  margin-inline: auto;
}

.p-privacy__item + .p-privacy__item {
  margin-top: 2.8125rem;
}
@media screen and (max-width: 767px) {
  .p-privacy__item + .p-privacy__item {
    margin-top: 2.5625rem;
  }
}

.p-privacy__heading {
  font-size: max(1.25rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-privacy__heading {
    font-size: max(1.125rem, 10px);
  }
}

.p-privacy__text {
  margin-top: 0.625rem;
}

.p-privacy__link {
  margin-top: 5rem;
  width: 15.625rem;
  margin-inline: auto;
}

.p-recruit-cta {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-block: 4.875rem 2rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta {
    padding-block: 5rem 1.25rem;
  }
}

.p-recruit-cta::before {
  content: "";
  position: absolute;
  z-index: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 61.3888888889%;
  max-width: 55.25rem;
  height: auto;
  aspect-ratio: 884/440;
  background-image: url(../images/top/recruit-bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 0 0 1.875rem 0;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta::before {
    background-image: url(../images/top/recruit-bg_sp.webp);
    width: 100cqi;
    bottom: initial;
    top: 14.6875rem;
    aspect-ratio: 390/238;
  }
}

.p-recruit-cta__inner {
  position: relative;
  z-index: 1;
}

.p-recruit-cta__body {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__body {
    flex-direction: column;
  }
}

.p-recruit-cta__content {
  padding-top: 1.625rem;
  padding-left: 0.4375rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__content {
    padding-left: 0;
    display: contents;
  }
}

.p-recruit-cta__text-wrap {
  margin-top: 2.5625rem;
  padding-left: 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__text-wrap {
    display: contents;
    padding-left: 0;
  }
}

.p-recruit-cta__catch {
  font-size: max(1.375rem, 10px);
  font-weight: 700;
  letter-spacing: 4%;
  line-height: 1.8181818182;
  color: #3695d8;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__catch {
    margin-top: 1.875rem;
    font-size: max(1.25rem, 10px);
    line-height: 1.6;
  }
}

.p-recruit-cta__sub {
  margin-top: 1.8125rem;
  font-size: max(1.125rem, 10px);
  font-weight: 700;
  letter-spacing: 4%;
  line-height: 2.2222222222;
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__sub {
    margin-top: 1.25rem;
    line-height: 1.5;
  }
}

.p-recruit-cta__text {
  margin-top: 0.625rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0;
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__text {
    margin-top: 1.25rem;
    font-size: max(0.875rem, 10px);
    line-height: 2.1428571429;
  }
}

.p-recruit-cta__btn {
  margin-top: 3.3125rem;
  max-width: 14.5625rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__btn {
    order: 3;
    margin-top: 1.75rem;
    margin-inline: auto;
  }
}

.p-recruit-cta__btn a.c-arrow-button {
  gap: 2.9375rem;
  background: linear-gradient(to right, #3193E9 0%, #70C15B 100%);
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__btn a.c-arrow-button {
    gap: 2.5rem;
  }
}

.p-recruit-cta__image {
  margin-right: calc(50% - 50cqi);
  width: 40.2777777778cqi;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__image {
    margin-top: 1.75rem;
    margin-left: auto;
    order: 2;
    width: 90.7692307692cqi;
    position: relative;
  }
}

.p-recruit-cta__image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 3.75rem 0 0 3.75rem;
  aspect-ratio: 580/536;
  max-width: 36.25rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__image img {
    aspect-ratio: 354/327;
  }
}

.p-recruit-cta__loop {
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__loop {
    bottom: 0.9375rem;
  }
}

.p-recruit-cta__loop-text {
  font-size: max(3.75rem, 10px);
  font-weight: 500;
  color: #daf1ff;
  white-space: nowrap;
  line-height: 1;
  letter-spacing: 0;
  flex-shrink: 0;
  animation: recruit-loop-scroll 50s linear infinite;
}
@media screen and (max-width: 767px) {
  .p-recruit-cta__loop-text {
    font-size: max(1.875rem, 10px);
  }
}

@keyframes recruit-loop-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.p-recruit-message__inner {
  display: flex;
  gap: 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-message__inner {
    flex-direction: column;
    gap: 1.25rem;
  }
}

.p-recruit-message__content {
  padding-left: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-message__content {
    padding-left: 0;
  }
}

.p-recruit-message__heading {
  font-size: max(1.375rem, 10px);
  font-weight: 500;
  line-height: 2;
  color: var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-recruit-message__heading {
    text-align: center;
  }
}

.p-recruit-message__desc {
  margin-block-start: 2.5rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-recruit-message__desc {
    margin-block-start: 1.25rem;
  }
}

.p-recruit-message__image {
  flex-shrink: 0;
  width: 40%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-recruit-message__image {
    width: 100%;
  }
}

.p-recruit-message__image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.625rem;
}

.p-recruit-message[data-position=reverse] .p-recruit-message__inner {
  flex-direction: row-reverse;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-recruit-message[data-position=reverse] .p-recruit-message__inner {
    flex-direction: column;
  }
}

.p-recruit-message[data-position=reverse] .p-recruit-message__content {
  padding-inline: 0 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-message[data-position=reverse] .p-recruit-message__content {
    padding-inline: 0;
  }
}

.p-requirements__content {
  margin-top: 2.5rem;
  background-color: var(--color-white);
  padding: 3.75rem 2.5rem;
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-requirements__content {
    margin-top: 1.25rem;
    padding: 1.875rem 1.25rem;
  }
}

.p-requirements__sub-heading {
  text-align: center;
  display: flex;
  flex-direction: column;
  font-size: max(1.25rem, 10px);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .p-requirements__sub-heading {
    font-size: max(1.125rem, 10px);
  }
}
.p-requirements__sub-heading::before, .p-requirements__sub-heading::after {
  position: static;
  display: block;
  height: 1px;
  background: var(--02, linear-gradient(131deg, #9ee597 8.19%, #56ccff 48.39%));
  content: "";
}
.p-requirements__sub-heading::before {
  order: 2;
  margin-block-start: 0.25rem;
}
.p-requirements__sub-heading::after {
  margin-block-start: 1.625rem;
}

.p-requirements__spec {
  margin-block-start: 3.125rem;
  max-width: 62.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-requirements__spec {
    margin-block-start: 1.875rem;
  }
}

.p-requirements__spec-item {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 25% 1fr;
  border-bottom: 1px solid var(--color-main);
  padding-block: 1.25rem;
  padding-inline: 1.25rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .p-requirements__spec-item {
    grid-template-columns: 1fr;
    gap: 0.625rem;
    padding-block: 0.9375rem;
    padding-inline: 0.625rem;
  }
}

.p-requirements__spec-term {
  font-weight: 700;
}

.p-requirements__btn {
  margin-top: 3.125rem;
  width: 15.625rem;
  margin-inline: auto;
}

.p-requirements__empty {
  margin-top: 3.75rem;
  text-align: center;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.8;
}

.p-requirements__empty a {
  color: var(--color-main);
}

@media screen and (max-width: 1023px) {
  .p-reserve-cta {
    width: 100%;
  }
}

.p-reserve-cta__list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
@media screen and (max-width: 1023px) {
  .p-reserve-cta__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.875rem;
    max-width: 46.4375rem;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .p-reserve-cta__list {
    width: 90%;
    gap: 0.625rem;
  }
}

.p-reserve-cta__item a {
  width: 3.4375rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3125rem;
  background-color: var(--color-white);
  border: 1px solid var(--color-main);
  border-right: none;
  color: var(--color-black);
  padding-block: 1.25rem 1.5625rem;
  padding-inline: 0.625rem;
  border-radius: 0.625rem 0 0 0.625rem;
  font-size: max(0.875rem, 10px);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .p-reserve-cta__item a {
    flex-direction: row;
    width: 100%;
    gap: 0.9375rem;
    height: 3.75rem;
    padding-block: 1.125rem;
    padding-inline: 1.25rem;
    font-size: max(1.25rem, 10px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    border-radius: 0.625rem 0.625rem 0 0;
    border-bottom: none;
    border-right: 1px solid var(--color-main);
  }
}
@media screen and (max-width: 767px) {
  .p-reserve-cta__item a {
    height: 3.125rem;
    font-size: max(1rem, 10px);
  }
}

.p-reserve-cta__item a[data-icon=calendar] {
  background: var(--gradient-main);
  color: var(--color-white);
  border-color: transparent;
  gap: 0.625rem;
  padding-block: 1.25rem 1.5625rem;
  transition: filter 0.3s ease-in-out;
}

.p-reserve-cta__item a[data-icon=calendar]::before {
  content: "";
  width: 1.625rem;
  height: 1.625rem;
  background-image: url(../images/common/icon-calendar.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 1023px) {
  .p-reserve-cta__item a[data-icon=calendar]::before {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.p-reserve-cta__item a[data-icon=phone] {
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  line-height: 1.2;
  transition: color 0.3s ease-in-out;
}

.p-reserve-cta__item a[data-icon=phone]::before {
  content: "";
  width: 1.3125rem;
  height: 1.3125rem;
  background-image: url(../images/common/icon-phone.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 1023px) {
  .p-reserve-cta__item a[data-icon=phone]::before {
    width: 1.5rem;
    height: 1.5rem;
  }
}

@media screen and (max-width: 1023px) {
  .p-reserve-cta__item a[data-icon=phone] {
    margin-top: 0;
    font-size: max(1rem, 10px);
    font-weight: 500;
  }
}

.p-reserve-cta__tel-info {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-reserve-cta__tel-info {
    display: none;
  }
}

@media screen and (max-width: 1023px) {
  .p-reserve-cta__tel-info br {
    display: none;
  }
}

.p-reserve-cta__tel-hours {
  display: none;
}
@media screen and (max-width: 1023px) {
  .p-reserve-cta__tel-hours {
    display: block;
    font-size: max(0.625rem, 10px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    margin-top: 0.25rem;
    text-align: left;
  }
}

@media (any-hover: hover) {
  .p-reserve-cta__item a:hover {
    opacity: 1;
  }
  .p-reserve-cta__item a[data-icon=calendar]:hover {
    filter: brightness(1.2);
  }
  .p-reserve-cta__item a[data-icon=phone]:hover {
    color: var(--color-main);
  }
}
.p-reserve {
  --banner-width: 37.5625rem;
  --banner-background-color: #fafffd;
  --banner-heading-icon: none;
  --bannder-gap: 0.625rem;
  --bannder-title-font-size: max(1.375rem, 10px);
  display: inline-grid;
  grid-template-columns: 9.6875rem 1fr;
  gap: var(--bannder-gap);
  max-width: var(--banner-width);
  width: 100%;
  padding: 0.5rem;
  border: 1px solid var(--color-main);
  border-radius: 0.375rem;
  background-color: var(--banner-background-color);
}
@media screen and (max-width: 767px) {
  .p-reserve {
    --banner-width: 26.25rem;
    --bannder-title-font-size: max(1.25rem, 10px);
    grid-template-columns: 6.5rem 1fr;
    grid-template-areas: "image title" "text text";
    padding-block-end: 1.25rem;
  }
}

.p-reserve[data-variant=top] {
  --banner-width: max(32.625rem, 378px);
  --banner-background-color: var(--color-white);
  --banner-heading-icon: "";
  --bannder-title-font-size: max(1.75rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-reserve[data-variant=top] {
    --banner-width: 21.875rem;
    --bannder-gap: 0.625rem 2rem;
    --bannder-title-font-size: max(1.375rem, 10px);
  }
}

@media screen and (max-width: 767px) {
  .p-reserve__image {
    grid-area: image;
  }
}

.p-reserve__image img {
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.625rem;
}

.p-reserve__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-reserve__content {
    display: contents;
  }
}

.p-reserve__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  font-size: var(--bannder-title-font-size);
  font-weight: 700;
  letter-spacing: 0;
  color: var(--color-main);
  word-break: keep-all;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 767px) {
  .p-reserve__title {
    grid-area: title;
    justify-content: flex-start;
    font-size: max(1.5rem, 10px);
    gap: 1.375rem;
    text-align: center;
  }
}

.p-reserve__title::before {
  content: var(--banner-heading-icon);
  flex-shrink: 0;
  display: block;
  width: 2.5625rem;
  aspect-ratio: 1;
  -webkit-mask-image: url(../images/common/icon-calendar.svg);
          mask-image: url(../images/common/icon-calendar.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-reserve__title::before {
    width: 2rem;
  }
}

.p-reserve__title img {
  width: 1.75rem;
  height: auto;
}

.p-reserve__text {
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-reserve__text {
    grid-area: text;
    text-align: center;
  }
}

.p-single__head {
  padding-bottom: 1.875rem;
  padding-inline: 1.25rem;
  border-bottom: 1px solid var(--color-border);
}

.p-single__meta {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

.p-single__date {
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}

.p-single__cat-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem;
}

.p-single__cat {
  font-size: max(0.875rem, 10px);
  line-height: 1;
  color: var(--color-white);
  background-color: var(--color-main);
  padding: 0.625rem;
}

.p-single__title {
  margin-top: 1.375rem;
  font-size: max(1.375rem, 10px);
  font-weight: 700;
  color: var(--color-main);
}

.p-single__thumb {
  margin-top: 1.25rem;
  width: 100%;
  height: auto;
}

.p-single__thumb img {
  width: auto;
  height: auto;
}

.p-single__content {
  margin-top: 3.125rem;
  padding-inline: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-single__content {
    margin-top: 1.875rem;
  }
}

.p-single__nav {
  margin-top: 5rem;
  padding-top: 1.875rem;
  border-top: 1px solid var(--color-border);
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-single__nav {
    margin-top: 3.125rem;
  }
}

.p-single__nav-prev a,
.p-single__nav-next a,
.p-single__nav-center a {
  display: inline-block;
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  transition: color 0.3s ease-in-out;
  padding: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-single__nav-prev a,
  .p-single__nav-next a,
  .p-single__nav-center a {
    font-size: max(0.875rem, 10px);
  }
}

.p-single__nav-prev {
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-single__nav-next {
  position: absolute;
  right: 0;
  bottom: 0;
}

@media (any-hover: hover) {
  .p-single__nav-prev a:hover,
  .p-single__nav-next a:hover,
  .p-single__nav-center a:hover {
    color: var(--color-main);
    opacity: 1;
  }
}
.p-site-menu {
  display: flex;
  flex-direction: column;
}

.p-header__drawer .p-site-menu__nav-area {
  order: 1;
}

.p-header__drawer .p-site-menu__treatment {
  order: 2;
}

.p-header__drawer .p-site-menu__upper-inner {
  order: 3;
  padding-bottom: 5rem;
}

.p-site-menu__upper {
  padding-top: 3.125rem;
  border-top: 1px solid var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-site-menu__upper {
    padding-top: 0.75rem;
  }
}

.p-site-menu__upper-grid {
  display: flex;
  justify-content: center;
  gap: 3.875rem;
  max-width: 62.5rem;
  padding-left: clamp(5px, 5px + 0.1056547619 * (100cqi - 768px), 76px);
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-site-menu__upper-grid {
    flex-direction: column;
    gap: 2.125rem;
    padding-top: 1.875rem;
    padding-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-site-menu__info {
    text-align: center;
  }
}

.p-site-menu__logo {
  max-width: 23.1875rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-site-menu__logo {
    max-width: 20.9375rem;
    margin-inline: auto;
  }
}

.p-site-menu__logo img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

@media screen and (max-width: 767px) {
  .p-site-menu__clinic-name-wrap {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    text-align: left;
  }
}

.p-site-menu__clinic-name {
  margin-top: 1rem;
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 2.1428571429;
  letter-spacing: 0;
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-site-menu__clinic-name {
    margin-top: 1.1875rem;
    line-height: 1.7142857143;
  }
}

.p-site-menu__address {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  font-style: normal;
  line-height: 2.1428571429;
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-site-menu__address {
    line-height: 1.7142857143;
  }
}

.p-site-menu__access-btn {
  margin-top: 1.125rem;
  max-width: clamp(140px, 140px + 0.0669642857 * (100vw - 768px), 185px);
  max-width: clamp(140px, 140px + 0.0669642857 * (100cqi - 768px), 185px);
}
@media screen and (max-width: 1023px) {
  .p-site-menu__access-btn {
    max-width: 185px;
    margin-inline: auto;
  }
}

.p-site-menu__access-btn a.c-button[data-icon=map] {
  padding-block: 0.5625rem;
  padding-inline: 0.625rem;
}

.p-site-menu__reserve-btn {
  max-width: 21.875rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__reserve-btn {
    margin-inline: auto;
  }
}

.p-site-menu__reserve-btn a.c-button[data-icon=calendar] {
  padding-block: 1.4375rem;
  padding-inline: 2.6875rem;
  gap: 1.25rem;
  font-size: max(1.375rem, 10px);
  font-weight: 700;
  color: var(--color-white);
  border-radius: 2.5625rem;
  border-color: transparent;
  justify-content: flex-start;
  position: relative;
  background: linear-gradient(to right, #3193E9 0%, #70C15B 50%, #3193E9 100%);
  max-width: initial;
  background-size: 201% 201%;
  transition: background-position 0.3s ease-in-out;
}
@media (any-hover: hover) {
  .p-site-menu__reserve-btn a.c-button[data-icon=calendar]:hover {
    opacity: 1;
    background-position: 99% 0;
  }
}

.p-site-menu__reserve-btn a.c-button[data-icon=calendar]::before {
  width: 1.875rem;
  height: 1.875rem;
}

.p-site-menu__reserve-btn a.c-button[data-icon=calendar]::after {
  content: "";
  width: 1.375rem;
  height: 1.25rem;
  -webkit-mask-image: url(../images/common/icon-arrow.svg);
          mask-image: url(../images/common/icon-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: var(--color-white);
  position: absolute;
  right: 1.5625rem;
  top: 50%;
  translate: 0 -50%;
  transition: translate 0.3s ease-in-out;
}

.p-site-menu__reserve-btn a.c-button[data-icon=calendar]:hover::after {
  translate: 0.25rem -50%;
}

.p-site-menu__reserve-note {
  margin-top: 0.625rem;
  font-size: max(0.625rem, 10px);
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0;
  color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-site-menu__reserve-note {
    max-width: 20rem;
    margin-inline: auto;
  }
}

.p-site-menu__tel {
  margin-top: 1rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__tel {
    margin-top: 1.875rem;
  }
}

.p-site-menu__tel-btn {
  width: 21.875rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__tel-btn {
    margin-inline: auto;
  }
}

.p-site-menu__tel-btn a.c-button[data-icon=phone] {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
  font-size: max(1.25rem, 10px);
  font-weight: 700;
  border-radius: 2rem;
  padding: 1rem 1.5rem;
  max-width: initial;
}

.p-site-menu__tel-btn a.c-button[data-icon=phone]::before {
  width: 1.5rem;
  height: 1.5rem;
}

.p-site-menu__tel-hours {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
}

.p-site-menu__nav-area {
  padding-block: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__nav-area {
    padding-block: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-site-menu__nav-inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-site-menu__nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0;
}
@media screen and (max-width: 767px) {
  .p-site-menu__nav-list {
    flex-direction: column;
    justify-content: flex-start;
  }
}

.p-site-menu__nav-list + .p-site-menu__nav-list {
  margin-top: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__nav-list + .p-site-menu__nav-list {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-site-menu__nav-item + .p-site-menu__nav-item {
    margin-top: 0.875rem;
  }
}

.p-site-menu__nav-item a {
  display: flex;
  align-items: center;
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  color: var(--color-black);
  line-height: 2.4285714286;
  padding-inline: 0.75rem;
  transition: color 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .p-site-menu__nav-item a {
    padding-inline: 0.625rem;
  }
}

.p-site-menu__nav-item a::before {
  content: "-";
  color: var(--color-main);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  margin-right: 0.25rem;
}

@media (any-hover: hover) {
  .p-site-menu__nav-item a:hover {
    color: var(--color-main);
    opacity: 1;
  }
}
.p-site-menu__treatment {
  background-color: var(--color-main);
  border-radius: 1.25rem 1.25rem 0 0;
  padding-block: 1.625rem 2.6875rem;
}

.p-site-menu__treatment-inner {
  display: flex;
  max-width: 47.9375rem;
  margin-inline: auto;
}
@media screen and (max-width: 1023px) {
  .p-site-menu__treatment-inner {
    max-width: 62.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-site-menu__treatment-inner {
    flex-direction: column;
  }
}

.p-site-menu__treatment-title {
  flex-shrink: 0;
  width: 12.5%;
  font-size: max(1rem, 10px);
  font-weight: 700;
  color: var(--color-white);
  line-height: 2.375;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-site-menu__treatment-title {
    width: 100%;
  }
}

.p-site-menu__treatment-wrap {
  border-left: 1px solid var(--color-white);
  padding-left: 1.875rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__treatment-wrap {
    border-left: none;
    padding-left: 0;
    margin-top: 0.9375rem;
    padding-top: 0.9375rem;
    border-top: 1px solid var(--color-white);
    gap: 1.125rem;
  }
}

.p-site-menu__treatment-heading {
  font-size: max(1rem, 10px);
  font-weight: 700;
  color: var(--color-white);
  line-height: 2.125;
  letter-spacing: 0;
}

.p-site-menu__treatment-heading + .p-site-menu__treatment-list {
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-site-menu__treatment-heading + .p-site-menu__treatment-list {
    margin-top: 0.3125rem;
  }
}

.p-site-menu__treatment-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.75rem;
}
.p-site-menu__treatment-list li a {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  color: var(--color-white);
  line-height: 2.2857142857;
  letter-spacing: 0;
  transition: opacity 0.3s ease-in-out;
}

@media (any-hover: hover) {
  .p-site-menu__treatment-list li a:hover {
    opacity: 0.7;
  }
}
.p-sub-mv {
  width: 100%;
  height: 11rem;
  overflow: clip;
}
@media screen and (max-width: 767px) {
  .p-sub-mv {
    height: 8.75rem;
  }
}

.p-sub-mv__inner.l-inner {
  height: inherit;
}

.p-sub-mv__title-wrap {
  border-radius: 0 0 3.75rem 3.75rem;
  background-image: url(../images/common/sub-mv-bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.p-sub-mv__title {
  font-size: max(1.625rem, 10px);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .p-sub-mv__title {
    font-size: max(1.375rem, 10px);
  }
}

.p-sub-mv__subtitle {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -0.625rem;
  font-size: max(3.75rem, 10px);
  font-weight: 500;
  letter-spacing: 20%;
  color: transparent;
  text-transform: uppercase;
  -webkit-text-stroke: 1px var(--color-white);
}
@media screen and (max-width: 767px) {
  .p-sub-mv__subtitle {
    width: 100%;
    text-align: center;
    font-size: max(2.5rem, 10px);
  }
}

.p-template__inner {
  box-sizing: content-box;
  max-width: 71.625rem;
}
@media screen and (max-width: 767px) {
  .p-template__inner {
    box-sizing: border-box;
    max-width: 40rem;
  }
}

.p-template__reserve {
  margin-block-start: 5.625rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-template__reserve {
    margin-block-start: 3.75rem;
  }
}

.p-top-children {
  position: relative;
  padding-block: 4.5625rem 5rem;
}
@media screen and (max-width: 767px) {
  .p-top-children {
    padding-block: 3.0625rem 5.375rem;
  }
}

.p-top-children__bg {
  position: absolute;
  inset: 0;
  border-radius: 3.75rem 3.75rem 0 0;
  background-image: url(../images/top/children-bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0.5;
  z-index: 0;
}

.p-top-children__bg::after {
  content: "";
  position: absolute;
  bottom: -3.75rem;
  left: 0;
  right: 0;
  width: 100%;
  aspect-ratio: 1440/230;
  height: auto;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 32%, #FFF 78%, rgba(255, 255, 255, 0) 100%);
}
@media screen and (max-width: 767px) {
  .p-top-children__bg::after {
    bottom: -6.25rem;
    aspect-ratio: 390/167;
  }
}

.p-top-children__inner {
  position: relative;
  z-index: 1;
}

.p-top-children__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-top-children__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.25rem;
  }
}

.p-top-children__heading-wrap {
  text-align: left;
}

@media screen and (max-width: 767px) {
  .p-top-children__heading-wrap.c-section-title[data-position=low] .c-section-title__en {
    font-size: max(2.625rem, 10px);
  }
}

@media screen and (max-width: 767px) {
  .p-top-children__heading-wrap.c-section-title[data-position=low] .c-section-title__ja {
    padding-left: 0;
    margin-top: 1.375rem;
  }
}

.p-top-children__link {
  flex-shrink: 0;
  width: 8.1875rem;
  margin-top: 0.875rem;
  margin-right: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__link {
    margin-left: auto;
    margin-right: 0;
    margin-top: -3.125rem;
  }
}

.p-top-children__link a.c-button[data-icon=arrow] {
  padding-block: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__link a.c-button[data-icon=arrow] {
    padding-inline: 0.625rem;
  }
}

.p-top-children__container {
  border-top: 2px solid #9AEED3;
  margin-top: 2.0625rem;
  padding-top: 3.75rem;
  display: flex;
  justify-content: space-between;
  gap: 2.6875rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__container {
    margin-top: 1.125rem;
    padding-top: 0.75rem;
    flex-direction: column;
  }
}

.p-top-children__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 1.375rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__cards {
    grid-template-columns: 1fr;
  }
}

.p-top-children__card a {
  display: grid;
  grid-template-columns: 0.375rem 5.625rem 1fr;
  -moz-column-gap: clamp(5px, 5px + 0.0282738095 * (100cqi - 768px), 24px);
       column-gap: clamp(5px, 5px + 0.0282738095 * (100cqi - 768px), 24px);
  padding-left: 0.625rem;
  align-items: center;
  padding-block: 1.75rem;
  border-bottom: 1px solid #9AEED3;
}
@media screen and (max-width: 767px) {
  .p-top-children__card a {
    padding-block: 1.875rem;
  }
}

@media (any-hover: hover) {
  .p-top-children__card a:hover {
    opacity: 1;
  }
  .p-top-children__card a:hover .p-top-children__card-title {
    color: var(--color-main);
  }
}
.p-top-children__card-bar {
  grid-row: 1/-1;
  align-self: stretch;
  border-radius: 1.375rem;
  background: linear-gradient(180deg, #95DE67 0%, #F0B83E 100%);
}

.p-top-children__card-title {
  grid-column: 2;
  grid-row: 1/-1;
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  transition: color 0.3s ease-in-out;
}

.p-top-children__card-list {
  grid-column: 3;
  grid-row: 1/-1;
  display: flex;
  flex-direction: column;
  gap: 1.1875rem;
}

.p-top-children__card-item {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.p-top-children__card-item::before {
  content: "";
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  -webkit-mask-image: url(../images/common/icon-check.svg);
          mask-image: url(../images/common/icon-check.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: var(--color-orange);
}

.p-top-children__note {
  margin-top: 3.125rem;
  padding-left: 0.9375rem;
  font-size: max(1.125rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-top-children__note {
    margin-top: 1.25rem;
    padding-left: 0;
  }
}

.p-top-children__note + .p-top-children__note {
  margin-top: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__note + .p-top-children__note {
    margin-top: 0.625rem;
  }
}

.p-top-children__note span {
  display: inline;
  padding: 0.5rem 0.3125rem;
  margin-inline: 0.3125rem;
  background-color: var(--color-white);
  border-radius: 0.375rem;
  color: var(--color-main);
  font-weight: 700;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
@media screen and (max-width: 767px) {
  .p-top-children__note span {
    display: block;
    padding: 0.8125rem 0.4375rem;
    margin-block: 0.75rem;
    margin-inline: 0;
    line-height: 1.5555555556;
    letter-spacing: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-top-children__note span.p-top-children__note--inline {
    display: inline;
    padding: 0.5rem 0.3125rem;
    margin-inline: 0.3125rem;
  }
}

.p-top-children__image {
  margin-right: calc(50% - 50cqi);
  width: 37.2222222222cqi;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-top-children__image {
    display: none;
  }
}

.p-top-children__image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 3.75rem 0 0 3.75rem;
  aspect-ratio: 536/598;
  max-width: 33.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__image img {
    border-radius: 1.875rem;
  }
}

.p-top-children__reserve {
  margin-block-start: 1.75rem;
  margin-left: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .p-top-children__reserve {
    margin-block-start: 2.8125rem;
    margin-left: 0;
    text-align: center;
  }
}

.p-top-feature {
  position: relative;
  padding-block: 3rem 5.625rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature {
    padding-block-start: 2.1875rem;
  }
}

.p-top-feature::before {
  content: "";
  position: absolute;
  top: 2.9375rem;
  right: 2.8125rem;
  width: 16.125rem;
  height: auto;
  aspect-ratio: 258/376;
  background-image: url(../images/top/feature-logo.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 1023px) {
  .p-top-feature::before {
    content: none;
  }
}

.p-top-feature__inner.l-inner {
  max-width: 61.5625rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__inner.l-inner {
    max-width: 40rem;
  }
}

.p-top-feature__list {
  margin-top: 5.8125rem;
  display: flex;
  flex-direction: column;
  gap: 4.0625rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__list {
    margin-top: 3.625rem;
    gap: 4.6875rem;
  }
}

.p-top-feature__item {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__item {
    flex-direction: column;
    gap: 0.4375rem;
  }
}

.p-top-feature__item.p-top-feature__item--01 {
  padding-inline-start: 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__item.p-top-feature__item--01 {
    padding-inline-start: 0;
  }
}

.p-top-feature__item.p-top-feature__item--02 {
  padding-inline-start: 23%;
}
@media screen and (max-width: 767px) {
  .p-top-feature__item.p-top-feature__item--02 {
    padding-inline-start: 0;
  }
}

.p-top-feature__number {
  flex-shrink: 0;
  position: relative;
  padding-left: 2.5rem;
}

.p-top-feature__number-label {
  position: absolute;
  top: -0.5rem;
  left: 0;
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-black);
}

.p-top-feature__number-label::before {
  content: "";
  position: absolute;
  top: 1.25rem;
  left: 1.875rem;
  width: 3.125rem;
  height: 1px;
  transform: rotate(135deg);
  background-color: var(--color-main);
}

.p-top-feature__number-value {
  width: 3.75rem;
  height: 3.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(15, 195, 159, 0.5);
  border-radius: 50%;
  color: var(--color-white);
  font-size: max(1.625rem, 10px);
  font-weight: 500;
  line-height: 1;
}
.p-top-feature__title {
  margin-top: 0.3125rem;
  width: -moz-fit-content;
  width: fit-content;
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-main);
  background-color: var(--color-white);
  padding: 0.3125rem 1.25rem;
  border-radius: 0.375rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__title {
    line-height: 1.55;
  }
}

.p-top-feature__text {
  margin-top: 0.8125rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-top-feature__text {
    margin-top: 1.125rem;
    font-size: max(0.875rem, 10px);
    line-height: 2.1428571429;
  }
}

.p-top-feature__slider {
  margin-block-start: 5.125rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__slider {
    margin-block-start: 2.875rem;
  }
}

.p-top-feature__image {
  width: 37.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__image {
    width: 19.375rem;
  }
}

.p-top-feature__image.p-top-feature__image--grid {
  width: 22.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .p-top-feature__image.p-top-feature__image--grid {
    width: 11.5625rem;
    gap: 0.5rem;
  }
}

.p-top-feature__image img {
  aspect-ratio: 600/455;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.625rem;
}

.p-top-feature__image-grid img {
  aspect-ratio: 360/220;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.625rem;
}

.p-top-greeting {
  position: relative;
  padding-bottom: 8.5625rem;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-top-greeting {
    padding-bottom: 7.6875rem;
  }
}

.p-top-greeting::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 2.1875rem;
  left: 0;
  width: 52.9166666667cqi;
  height: auto;
  aspect-ratio: 762/269;
  background-image: url(../images/top/greeting-deco01.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .p-top-greeting::before {
    width: 18rem;
    z-index: 0;
  }
}

.p-top-greeting::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 52.9166666667cqi;
  height: auto;
  aspect-ratio: 762/269;
  background-image: url(../images/top/greeting-deco02.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .p-top-greeting::after {
    width: 20.1875rem;
  }
}

.p-top-greeting__bg {
  position: relative;
}

.p-top-greeting__bg::after {
  content: "";
  position: absolute;
  top: -9.7222222222vw;
  left: 0;
  right: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1440/230;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 32%, #FFF 78%, rgba(255, 255, 255, 0) 100%);
}
@media screen and (max-width: 767px) {
  .p-top-greeting__bg::after {
    top: -25.641025641vw;
    aspect-ratio: 390/167;
  }
}

.p-top-greeting__inner.l-inner {
  max-width: 71.5625rem;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 767px) {
  .p-top-greeting__inner.l-inner {
    max-width: 40rem;
  }
}

.p-top-greeting__container {
  margin-top: 3.125rem;
  display: flex;
}
@media screen and (max-width: 767px) {
  .p-top-greeting__container {
    margin-top: 4.375rem;
    flex-direction: column-reverse;
    gap: 2.3125rem;
  }
}

.p-top-greeting__content {
  width: 100%;
  max-width: 42.5rem;
  padding-top: 2.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-greeting__content {
    padding-top: 0;
  }
}

.p-top-greeting__catch {
  flex-shrink: 0;
  font-size: max(1.375rem, 10px);
  font-weight: 700;
  line-height: 2.0454545455;
  letter-spacing: 4%;
  color: var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-top-greeting__catch {
    font-size: max(1.125rem, 10px);
  }
}

.p-top-greeting__text {
  margin-top: 1.875rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-top-greeting__text {
    margin-top: 1.25rem;
    font-size: max(0.875rem, 10px);
    line-height: 2.1428571429;
  }
}

.p-top-greeting__text span {
  font-weight: 700;
  font-size: max(1.125rem, 10px);
  line-height: 2;
}

.p-top-greeting__expand {
  margin-block-start: 0.625rem;
  padding: 0.625rem 0;
}

/* 開閉アニメーション（下方向に展開）: 0fr → 1fr */
.p-top-greeting__more-shell {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s ease-in-out;
}

.p-top-greeting__expand.is-open .p-top-greeting__more-shell {
  grid-template-rows: 1fr;
}

@media (prefers-reduced-motion: reduce) {
  .p-top-greeting__more-shell {
    transition: none;
  }
}
.p-top-greeting__readmore-btn,
.p-top-greeting__close-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: max(1rem, 10px);
  font-weight: 500;
  color: var(--color-main);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

/* 「続きを読む」は display:none にしない（トランジション不可のため）。opacity + max-height で畳む */
.p-top-greeting__readmore-btn {
  max-height: 3.5rem;
  opacity: 1;
  overflow: hidden;
  transition: opacity 0.3s ease-in-out, max-height 0.35s ease-in-out, margin-block 0.35s ease-in-out;
}

.p-top-greeting__expand.is-open .p-top-greeting__readmore-btn {
  opacity: 0;
  max-height: 0;
  margin-block: 0;
  padding: 0;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .p-top-greeting__readmore-btn {
    transition: none;
  }
}
.p-top-greeting__readmore-btn::after {
  content: "";
  display: block;
  width: 0.9375rem;
  height: 0.9375rem;
  background-color: var(--color-main);
  -webkit-mask-image: url(../images/common/icon-arrow.svg);
          mask-image: url(../images/common/icon-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  transform: rotate(90deg);
  transition: transform 0.3s ease-in-out;
}

.p-top-greeting__close-btn {
  margin-block-start: 1.5rem;
  align-self: flex-start;
  transition: opacity 0.3s ease-in-out;
}

.p-top-greeting__close-btn::after {
  content: "";
  display: block;
  width: 0.9375rem;
  height: 0.9375rem;
  background-color: var(--color-main);
  -webkit-mask-image: url(../images/common/icon-arrow.svg);
          mask-image: url(../images/common/icon-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  transform: rotate(-90deg);
  transition: transform 0.3s ease-in-out;
}

.p-top-greeting__more-inner {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

@media (any-hover: hover) {
  .p-top-greeting__readmore-btn:hover {
    opacity: 0.7;
  }
  .p-top-greeting__close-btn:hover {
    opacity: 0.7;
  }
}
.p-top-greeting__text--more {
  margin-block-start: 0;
}

.p-top-greeting__button {
  margin-block-start: 2.1875rem;
  max-width: 16.75rem;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .p-top-greeting__button {
    margin-block-start: 2.5rem;
    margin-inline: auto;
  }
}

.p-top-greeting__button a.c-arrow-button {
  min-height: 4.0625rem;
  gap: 4.375rem;
}

.p-top-greeting__button a.c-arrow-button::after {
  width: 0.9375rem;
  height: 0.9375rem;
}

.p-top-greeting__image {
  margin-right: calc(50% - 50cqi);
  margin-left: auto;
  width: 34.4444444444cqi;
}
@media screen and (max-width: 767px) {
  .p-top-greeting__image {
    margin-inline: auto;
    width: 19.6875rem;
  }
}

.p-top-greeting__image .p-doctor-card__img {
  max-width: 31rem;
}

.p-top-guide__grid {
  display: grid;
  grid-template-columns: repeat(2, 29.1875rem);
  gap: 3.5rem;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .p-top-guide__grid {
    grid-template-columns: 1fr;
    gap: 3.4375rem;
  }
}

.p-top-guide__card {
  position: relative;
  border: 1px solid var(--color-main);
  border-radius: 0.625rem;
  background-color: var(--color-white);
}

.p-top-guide__card a {
  height: 100%;
  display: block;
  position: relative;
  padding-block: 1.25rem 3.4375rem;
  padding-inline: 2rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-guide__card a {
    padding-block: 0.875rem 2.9375rem;
    padding-inline: 0.875rem 0.875rem;
  }
}

@media (any-hover: hover) {
  .p-top-guide__card a:hover {
    opacity: 1;
  }
  .p-top-guide__card a:hover .p-top-guide__card-image img {
    transform: scale(1.05);
  }
  .p-top-guide__card a:hover::after {
    transform: scale(1.5);
  }
}
.p-top-guide__card-head {
  display: flex;
  justify-content: space-between;
  gap: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-top-guide__card-head {
    gap: 1.75rem;
  }
}

.p-top-guide__card-en {
  margin-top: 2.5rem;
  writing-mode: vertical-rl;
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--color-black);
  padding-left: 0.625rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-top-guide__card-en {
    margin-top: 1.875rem;
  }
}

.p-top-guide__card-en::before {
  content: "";
  position: absolute;
  top: -5.375rem;
  left: 64%;
  transform: translateX(-50%);
  display: block;
  width: 1px;
  height: 4.4375rem;
  background-color: var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-top-guide__card-en::before {
    top: -3.75rem;
    height: 3.3125rem;
  }
}

.p-top-guide__card-image {
  max-width: 21.75rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-top-guide__card-image {
    max-width: initial;
  }
}

.p-top-guide__card-image img {
  aspect-ratio: 348/219;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease-in-out;
}

.p-top-guide__card-title {
  margin-block-start: 1.25rem;
  font-size: max(1.5rem, 10px);
  font-weight: 700;
  letter-spacing: 0;
  color: var(--color-main);
}
@media screen and (max-width: 767px) {
  .p-top-guide__card-title {
    margin-block-start: 0.9375rem;
  }
}

.p-top-guide__card-text {
  margin-block-start: 1.375rem;
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .p-top-guide__card-text {
    margin-block-start: 1.25rem;
    padding-inline: 0.625rem;
  }
}

.p-top-guide__card a::after {
  content: "";
  display: block;
  position: absolute;
  right: 1.25rem;
  bottom: 1.25rem;
  width: 1.25rem;
  height: 1.25rem;
  -webkit-mask-image: url(../images/common/icon-arrow.svg);
          mask-image: url(../images/common/icon-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: var(--color-main);
  transition: transform 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .p-top-guide__card a::after {
    width: 1.75rem;
    height: 1.75rem;
  }
}

.p-top-treatment {
  position: relative;
}

.p-top-treatment__bg {
  width: 100%;
  height: auto;
}

.p-top-treatment__bg img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1440/316;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__bg img {
    aspect-ratio: 390/206;
  }
}

.p-top-treatment__heading-wrap {
  margin-top: -3.4375rem;
  background-color: var(--color-white);
  position: relative;
  z-index: 1;
  max-width: 52.8125rem;
  margin-inline: auto;
  padding: 2rem;
  border-radius: 1.875rem 1.875rem 0 0;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__heading-wrap {
    margin-top: -5rem;
    padding: 1.875rem 0.625rem;
  }
}

@media screen and (max-width: 767px) {
  .p-top-treatment__heading-wrap .c-section-title__en:has(img) {
    height: 2rem;
  }
}

.p-top-treatment__category-title {
  margin-top: 3.3125rem;
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  letter-spacing: 4%;
  text-align: center;
  display: flex;
  align-items: center;
  gap: 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__category-title {
    margin-top: 1.25rem;
  }
}

.p-top-treatment__category-title::before,
.p-top-treatment__category-title::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--color-main) 0%, #56CCFF 100%);
}

@media screen and (max-width: 767px) {
  .p-top-treatment__category-title::before {
    margin-left: calc(50% - 50vw);
  }
}

.p-top-treatment__category-title::after {
  background: linear-gradient(90deg, #56CCFF 0%, var(--color-main) 100%);
}
@media screen and (max-width: 767px) {
  .p-top-treatment__category-title::after {
    margin-right: calc(50% - 50vw);
  }
}

.p-top-treatment__grid {
  margin-block-start: 4.3125rem;
  display: grid;
  grid-template-columns: repeat(4, 15.625rem);
  grid-template-rows: repeat(3, 1fr);
  -moz-column-gap: 1.375rem;
       column-gap: 1.375rem;
  row-gap: 4.4375rem;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__grid {
    margin-block-start: 4.125rem;
    grid-template-columns: repeat(1, 1fr);
    gap: 3.5625rem;
  }
}

.p-top-treatment__card:not(:has(a)),
.p-top-treatment__card a {
  display: block;
  height: 100%;
  border: 1px solid var(--color-main);
  padding-bottom: 1.0625rem;
  padding-inline: clamp(5px, 5px + 0.0223214286 * (100cqi - 768px), 20px) clamp(5px, 5px + 0.0074404762 * (100cqi - 768px), 10px);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__card:not(:has(a)),
  .p-top-treatment__card a {
    padding-inline: 2.5rem;
    padding-bottom: 2.1875rem;
  }
}

@media (any-hover: hover) {
  .p-top-treatment__card a:hover {
    opacity: 1;
  }
  .p-top-treatment__card a:hover .p-top-treatment__card-icon img {
    transform: scale(1.05);
  }
  .p-top-treatment__card a:hover .p-top-treatment__card-title {
    color: var(--color-main);
  }
}
.p-top-treatment__card-header {
  margin-top: -1.8125rem;
  width: 8.125rem;
  margin-inline: auto;
  background-color: var(--color-white);
  padding-inline: 0.5rem;
  padding-block: 1.375rem 1.25rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__card-header {
    padding-block: 1.375rem 0;
  }
}

.p-top-treatment__card-label {
  position: relative;
  top: -2.0625rem;
  left: 0;
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-black);
  line-height: 1;
}

.p-top-treatment__card-header::after {
  content: "";
  position: absolute;
  top: -0.375rem;
  left: 58%;
  width: 1px;
  height: 3.125rem;
  background-color: var(--color-main);
  transform: rotate(45deg) translateX(-50%);
}

.p-top-treatment__card-number {
  font-size: max(1.625rem, 10px);
  font-weight: 500;
  color: var(--color-main);
  line-height: 1;
  letter-spacing: 0;
}

.p-top-treatment__card-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0.5625rem;
  gap: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__card-body {
    flex-direction: row;
    gap: 0.625rem;
    margin-top: 0.3125rem;
  }
}

.p-top-treatment__card-icon {
  width: 4.6875rem;
  height: auto;
  overflow: hidden;
}

.p-top-treatment__card-icon img {
  aspect-ratio: 75/75;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: transform 0.3s ease-in-out;
}

.p-top-treatment__card-title {
  font-size: max(1.125rem, 10px);
  font-weight: 700;
  letter-spacing: 4%;
  line-height: 1.2222222222;
  transition: color 0.3s ease-in-out;
}

.p-top-treatment__card-list {
  margin-top: 1.375rem;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__card-list {
    margin-top: 1rem;
  }
}

.p-top-treatment__card-item {
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0;
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__card-item {
    gap: 0.625rem;
  }
}

.p-top-treatment__card-item + .p-top-treatment__card-item {
  margin-top: 0.3125rem;
}

.p-top-treatment__card-item::before {
  content: "";
  flex-shrink: 0;
  width: 1.25rem;
  height: auto;
  aspect-ratio: 20/20;
  -webkit-mask-image: url(../images/common/icon-check.svg);
          mask-image: url(../images/common/icon-check.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: #E27911;
}

.p-top-treatment__note {
  margin-block-start: 3.3125rem;
  font-size: max(1.25rem, 10px);
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .p-top-treatment__note {
    margin-block-start: 3.5rem;
    font-size: max(1.125rem, 10px);
  }
}

.js-fadein {
  opacity: 0;
  transform: translateY(2.5rem);
  transition: opacity 2s cubic-bezier(0.2, 0.6, 0.2, 1), transform 1s cubic-bezier(0.2, 0.6, 0.2, 1);
}

.js-fadein.is-scrolled {
  opacity: 1;
  transform: translateY(0);
}

.u-em-orange {
  color: var(--color-orange);
}

.u-em {
  color: var(--color-main);
}

.u-no-image {
  background-color: var(--color-gray);
  padding: 2% 20%;
  -o-object-fit: contain;
     object-fit: contain;
}

.u-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .u-sp {
    display: block;
  }
}

.u-lg {
  display: block;
}
@media screen and (max-width: 1023px) {
  .u-lg {
    display: none;
  }
}

.p-header__nav-item--mega .p-header__mega {
  display: none;
}

.p-site-menu__treatment {
  display: none;
}

.p-top-treatment__card a,
.p-top-children__card a {
  pointer-events: none;
}