@charset "UTF-8";
/* ========================================================================== Foundation ========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap");
*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

body { margin: 0; line-height: 1.6; }

h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd { margin: 0; }

ul, ol { margin: 0; padding: 0; list-style: none; }

img, picture, video, svg { max-width: 100%; height: auto; display: block; }

a { color: inherit; text-decoration: none; }

button { background: none; border: 0; padding: 0; cursor: pointer; font: inherit; color: inherit; }

input, textarea, select { font: inherit; }

:root { --size-p: max(1.8rem, 14px); --size-p-18: max(1.8rem, 14px); --size-small: max(1.4rem, 12px); --size-h1: max(2.8rem, 24px); --size-h2: max(2.4rem, 22px); --size-h3: max(2.2rem, 20px); --size-h4: max(2rem, 18px); --font-size-html: 0.521105vw; --space-xs: 1.5rem; --space-sm: 2rem; --space-md: 2.5rem; --space-lg: 6rem; --space-xl: 8.5rem; --space-2xl: 12rem; }
@media screen and (max-width: 960px) { :root { --size-p: max(1.5rem, 11.8px); --size-p-18: max(1.5rem, 14px); --size-h1: max(2rem, 18px); --size-h2: max(1.8rem, 17px); --size-h3: max(1.7rem, 16px); --size-h4: max(1.6rem, 15px); --font-size-html: 10px; --space-xs: 1rem; --space-sm: 1.2rem; --space-md: 2rem; --space-lg: 4rem; --space-xl: 6rem; --space-2xl: 8rem; } }
@media (max-width: 1440px) and (min-width: 961px) { :root { --font-size-html: 0.694444vw; } }
@media (max-width: 370px) { :root { --font-size-html: 2.703vw; } }

html { font-size: var(--font-size-html); }

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { font-family: "Zen Old Mincho", serif; font-size: var(--size-p); color: #333333; background-color: #ffffff; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

p { font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; }
@media (max-width: 960px) { p { line-height: 185%; letter-spacing: 0em; text-align: justify; } }

/* ========================================================================== Layout ========================================================================== */
.p-seo-h1 { color: #ffffff; font-size: 1.6rem; font-weight: 500; line-height: 120%; letter-spacing: 0.1em; background: #c4a97d; text-align: center; padding: 1rem; margin: 0; }
@media screen and (max-width: 767px) { .p-seo-h1 { font-size: 1.3rem; padding: 0.75rem 1rem; line-height: 140%; } }

.home .site-header { height: auto; position: relative; }
@media screen and (max-width: 960px) { .home .site-header { position: sticky; height: 6rem; } }
.home .site-header .p-header__list { display: flex; }
.home .p-header.vz-01 { opacity: 1; pointer-events: auto; display: flex !important; }
@media screen and (max-width: 960px) { .home .p-header.vz-01 { display: none !important; } }
.home .p-header.vz-02 { opacity: 0; pointer-events: none; }
@media screen and (max-width: 960px) { .home .p-header.vz-02 { pointer-events: auto; opacity: 1; } }
.home .c-nav-fix { opacity: 0; pointer-events: none; transition: all 0.35s ease; }
.home .c-nav-fix.active { opacity: 1; pointer-events: auto; }

.site-header { height: 9.403rem; position: sticky; top: 0; z-index: 120; }
@media screen and (max-width: 960px) { .site-header { height: 6rem; } }
.site-header__phone { display: flex; flex-direction: column; width: 26.8rem; background-color: #b29465; padding: 1rem 2rem 0.8rem; transition: all 0.35s ease; }
.site-header__phone:hover { background-color: #796444; }
.site-header.is-active { position: fixed; width: 100%; height: 6rem; top: 0; }
.site-header .item { position: relative; color: #fff; font-size: 1.8rem; font-weight: 400; line-height: 185%; letter-spacing: 0; }
.site-header .item:nth-child(1) { z-index: 1; color: #535353; background-color: #f1efe8; }
.site-header .item:nth-child(2) { font-size: 2.8rem; line-height: 130%; padding-left: 3.7rem; margin-top: 0.1rem; }
.site-header .item:nth-child(2)::before { content: ""; position: absolute; width: 2.5rem; height: 2.5rem; background: #ffffff; mask: url("assets/img/tel-icon01.svg") left/contain no-repeat; left: 0.5rem; top: calc(50% + 0.4rem); transform: translateY(-50%); }

.site-header .p-header { position: absolute; top: 0; z-index: 100; width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 1rem 3rem; background: #ffffff; }
@media screen and (max-width: 1024px) { .site-header .p-header { padding-inline: 1.5rem; } }
@media screen and (max-width: 960px) { .site-header .p-header { padding: 0 0 0 1.5rem; } }

.site-header .p-header__menu > li { position: relative; }
.site-header .p-header__menu li { position: relative; padding: 1rem 3rem; }
@media (min-width: 960px) and (max-width: 1440px) { .site-header .p-header__menu li { padding: 1rem 2rem; } }
.site-header .p-header__menu li:hover a { opacity: 0.8; }
.site-header .p-header__menu li:hover a::after { opacity: 1; }
.site-header .p-header__menu li:hover a span { opacity: 0.8; }
.site-header .p-header__menu a { position: relative; display: flex; justify-content: center; align-items: center; text-align: center; flex-direction: column; color: #535353; font-size: var(--size-p); font-weight: 400; line-height: 150%; letter-spacing: 0; transition: all 0.35s ease; }
.site-header .p-header__menu a::after { content: ""; position: absolute; width: 0.717rem; height: 0.717rem; background: #535353; clip-path: polygon(100% 0, 0 100%, 100% 100%); bottom: -1rem; left: 50%; transform: translateX(-50%) rotate(45deg); transition: all 0.35s ease; opacity: 0; }
.site-header .p-header__menu span { color: #535353; }
@media screen and (max-width: 960px) { .site-header .p-header__menu { display: none !important; } }

.site-header .p-header__left .site-branding { flex-shrink: 0; }
.site-header .p-header__left .site-branding a { transition: all 0.35s ease; }
.site-header .p-header__left .site-branding a:hover { opacity: 0.8; }
.site-header .p-header__left .site-branding img { width: auto; height: 6rem; display: block; }
@media (min-width: 960px) and (max-width: 1440px) { .site-header .p-header__left .site-branding img { height: 7.2rem; } }
@media screen and (max-width: 960px) { .site-header .p-header__left .site-branding img { height: 4.2rem; } }

.site-header .p-header__right { display: flex; flex-direction: column; align-items: flex-end; }

.site-header .p-header__list { display: none; align-items: center; text-align: center; }
@media screen and (max-width: 960px) { .site-header .p-header__list { display: none; } }

.site-header .head_local { margin-left: auto; margin-right: 2.2rem; }
.site-header .head_local p { color: #535353; font-size: 1.8rem; line-height: 166.67%; font-weight: 400; position: relative; }
.site-header .head_local p::before { content: ""; position: absolute; mask: url("assets/img/local-icon01.svg") left/contain no-repeat; background: #535353; width: 1.6rem; height: 2rem; left: -3.2rem; top: 50%; transform: translateY(-50%); }

.site-header .head_tel { display: flex; justify-content: center; align-items: center; text-align: center; flex-direction: column; background-color: #b29465; }

.p-header__right .menu-item-has-children:has(li:nth-child(7)) { position: initial; }
.p-header__right .menu-item-has-children:has(li:nth-child(7)) .sub-menu { display: flex; flex-wrap: wrap; width: 100%; left: 0; top: calc(100% - 1rem); padding: 3rem 10rem 5rem !important; }
.p-header__right .menu-item-has-children:has(li:nth-child(7)) .sub-menu li { width: calc((100% - 9.001rem) / 3); margin-right: 3rem; }
.p-header__right .menu-item-has-children:has(li:nth-child(7)) .sub-menu li:last-child { border-bottom: 1px solid #ffffff; }
.p-header__right .menu-item-has-children:hover .sub-menu { opacity: 1; pointer-events: auto; padding: 1rem 0 0; }

.p-header__right .current-menu-item::after { content: ""; position: absolute; width: 0.717rem; height: 0.717rem; background: #535353; clip-path: polygon(100% 0, 0 100%, 100% 100%); opacity: 1; bottom: 0; left: 50%; transform: translateX(-50%) rotate(45deg); }

.p-header__right .sub-menu { position: absolute; top: 100%; left: -2rem; right: 0; pointer-events: none; padding: 1.5rem; transition: all 0.35s ease; width: 30rem; opacity: 0; z-index: 0; }
.p-header__right .sub-menu::after { content: ""; position: absolute; width: 100%; height: calc(100% - 1rem); background: #b29465; left: 0; bottom: 0; z-index: -1; }
.p-header__right .sub-menu li { margin-left: 0; padding: 0; border-bottom: 1px solid #ffffff; border-right: 0; }
.p-header__right .sub-menu li:last-child { border: none; }
.p-header__right .sub-menu a { position: relative; display: block; width: 100%; padding: 1.5rem 1.5rem 1.5rem 3rem; color: #ffffff !important; font-size: var(--size-p); font-weight: 400; line-height: 130%; letter-spacing: 0; border-right: 0; transition: all 0.35s ease; text-align: left; }
.p-header__right .sub-menu a:hover { opacity: 0.8; }
.p-header__right .sub-menu a::after { opacity: 0 !important; }
.p-header__right .sub-menu a::before { content: ""; position: absolute; width: 1rem; height: 1rem; top: 2.2rem; left: 1rem; -webkit-mask: url(assets/img/icon_arrow-02.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow-02.svg) center/100% no-repeat; background: #fff; transform: initial; }

.sub-menu .current-menu-item::after { display: none; }

.p-header.vz-01 { display: none !important; background-color: transparent; }
.p-header.vz-01 .head_local p { color: #ffffff; }
.p-header.vz-01 .head_local p::before { background: #ffffff; }
.p-header.vz-01 .site-header__phone .item:nth-child(1) { color: #535353; }
.p-header.vz-01 .site-header__phone .item:nth-child(1)::after { background: #f1efe8 center / contain no-repeat; }
.p-header.vz-01 .site-header__phone .item:nth-child(2) { color: #ffffff; }
.p-header.vz-01 .site-header__phone .item:nth-child(2)::before { background: #ffffff; }

.p-header.vz-02 { opacity: 1; transition: all 0.35s ease; }
@media screen and (max-width: 960px) { .p-header.vz-02 { opacity: 1; } }
.p-header.vz-02.active { pointer-events: auto; opacity: 1; position: fixed; }
@media screen and (max-width: 960px) { .p-header.vz-02.active { position: static; } }
.p-header.vz-02.active .p-header__list { display: none; }
.p-header.vz-02 .head_tel a { gap: 0.4rem; width: 21rem; padding: 1rem; background-color: #f1efe8; }
.p-header.vz-02 .item:nth-child(1) { color: #ffffff; font-size: 1.4rem; line-height: 160%; background-color: #b29465; }
.p-header.vz-02 .item:nth-child(2) { color: #535353; font-size: 2.2rem; line-height: 110%; padding-left: 3.2rem; }
.p-header.vz-02 .item:nth-child(2)::before { background: #535353; left: 0.5rem; width: 2rem; }

.p-footer__info { background: url(./assets/img/top-footer-bg.png) no-repeat center/cover; position: relative; height: auto; padding: 9.2rem 0 1.2rem; color: #fff; }
.p-footer__inner { width: 100%; max-width: 75rem; padding-left: 21.6rem; display: flex; flex-direction: column; align-items: center; }
.p-footer__logo { margin-bottom: 1.7rem; display: block; cursor: pointer; transition: all 0.35s ease; }
.p-footer__logo:hover { opacity: 0.8; }
.p-footer__logo img { width: 39.2rem; height: auto; }
.p-footer__tel { margin-bottom: 0.5rem; }
.p-footer__tel a { padding-left: 3.2rem; color: #fff; font-size: 4rem; font-weight: 400; line-height: 150%; letter-spacing: 0; background: url(assets/img/phone.svg) no-repeat center left; background-size: 2.2rem; }
.p-footer__address { margin: 0 0 5rem; font-size: var(--size-p-18); line-height: 3rem; display: flex; align-items: center; gap: 1.5rem; }
.p-footer__address img { width: 1.6rem; height: 2rem; }
.p-footer__schedule { width: 55rem; border-collapse: collapse; margin-bottom: 2.4rem; font-size: var(--size-p-18); line-height: 3rem; align-items: flex-start; }
.p-footer__schedule th, .p-footer__schedule td { padding: 3.2rem 0; border-bottom: 1px solid #ffffff; font-weight: 400; text-align: center; }
.p-footer__schedule td { width: 6rem; }
.p-footer__schedule th { width: 16rem; text-align: left; padding-left: 1rem; }
.p-footer__schedule tr:first-child { background-color: #f1efe8; }
.p-footer__schedule tr:first-child th, .p-footer__schedule tr:first-child td { padding: 0.7rem; color: #535353; border-bottom: none; }
.p-footer__note { max-width: 80rem; padding-left: 21.6rem; display: flex; gap: 4rem; margin-bottom: 6rem; font-size: var(--size-p-18); line-height: 3rem; }
.p-footer__car { font-size: var(--size-p-18); }
.p-footer__bus { display: flex; align-items: center; gap: 1rem; position: relative; }
.p-footer__bus::before { content: ""; display: inline-block; width: 5.4rem; height: 5.4rem; background: url("./assets/img/card.svg") no-repeat center/contain; }
.p-footer__nav { display: grid; grid-template-columns: 29rem 53rem; gap: 7.4rem; width: auto; max-width: 90rem; padding-left: 21.6rem; line-height: 3rem; }
.p-footer__nav--title { border-bottom: #fff solid 0.5px; padding-bottom: 1rem; margin-bottom: 2rem; display: flex; align-items: center; }
.p-footer__nav--title span { color: #fff; font-size: 3.5rem; font-weight: 400; line-height: 150%; letter-spacing: 0; }
.p-footer__nav--title span:nth-child(2) { font-size: 2rem; line-height: 175%; border-left: #fff solid 0.5px; margin-left: 2rem; padding-left: 2.3rem; }
.p-footer__nav--list { gap: 1.1rem 0; }
.p-footer__nav--list li a { color: #fff; font-size: var(--size-p-18); font-weight: 400; line-height: 150%; letter-spacing: 0; position: relative; padding-left: 1.2rem; transition: all 0.35s ease; }
.p-footer__nav--list li a::before { content: ""; position: absolute; width: 0.5rem; height: 0.5rem; top: 1.2rem; left: 0; background: #fff; border-radius: 100%; }
.p-footer__nav--list li a:hover { opacity: 0.8; }
.p-footer__nav--list.vz-02 { grid-template-columns: 1.1fr 1fr; }
.p-footer__floatCard { position: absolute; right: 8.5rem; bottom: 10.5rem; z-index: 10; cursor: pointer; transition: all 0.35s ease; }
.p-footer__floatCard img { display: block; width: 55.6rem; height: auto; transition: all 0.35s ease; }
.p-footer__floatCard img:hover { opacity: 0.8; }
.p-footer__credit img { width: 19rem; }
.p-footer__bottom { border-top: 0.5px solid #ffff; padding: 1.3rem 0 0rem; margin-top: 3.3rem; }
.p-footer__credit img { width: 19rem; }
.p-footer__copy { color: #fff; font-size: var(--size-p-18); font-weight: 400; line-height: 175%; letter-spacing: 0; }
.p-footer__copyright { gap: 2rem; }

.p-map { width: 100%; height: 38.5rem; position: relative; margin-bottom: 1.2rem; }
.p-map iframe { width: 100%; height: 100%; display: block; }
@media screen and (max-width: 960px) { .p-map { height: 30rem; } }
@media screen and (max-width: 960px) and (max-width: 767px) { .p-map { height: 28rem; } }

.c-pagetop { position: fixed; bottom: 0.93rem; right: 2rem; cursor: pointer; transition: all 0.35s ease; z-index: 50; opacity: 0; width: 5.8rem; height: 5.8rem; border-radius: 50%; background: transparent; }
.c-pagetop::before { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; background: url(assets/img/page-top-icon.svg) no-repeat center; background-size: contain; }
.c-pagetop.show { opacity: 1; }
.c-pagetop.show:hover { opacity: 0.8; }
.c-pagetop.fixed { background: #b29465; }
@media (min-width: 960px) and (max-width: 1200px) { .c-pagetop { bottom: 0.5rem; } }
@media (max-width: 960px) { .c-pagetop { right: 0; bottom: 0; width: 6.1rem; height: 6rem; padding: 0; opacity: 1; z-index: 120; position: fixed; border-radius: 0%; background: #b29465; }
  .c-pagetop::before { height: 100%; bottom: 1.5rem; left: 0; background-image: url(assets/img/page-top-icon-02.png); background-size: 0.7rem; }
  .c-pagetop.fixed { bottom: 60; }
  .c-pagetop.show:hover { opacity: 1; } }
@media (max-width: 767px) { .c-pagetop { bottom: 0rem; right: 0rem; width: 6rem; height: 6rem; } }

@media (min-width: 960.5px) { .c-nav-fix { position: fixed; right: 0; top: 50%; z-index: 10; background: #c4a97d; transform: translateY(-50%); transition: all 0.35s ease; }
  .c-nav-fix__item { width: 8rem; height: 8rem; position: relative; }
  .c-nav-fix__item:hover { opacity: 0.8; }
  .c-nav-fix__item::before, .c-nav-fix__item::after { pointer-events: none; }
  .c-nav-fix__item:nth-child(1) { background-color: #2f7ec1; }
  .c-nav-fix__item:nth-child(1)::before { content: ""; position: absolute; width: 2.5rem; height: 2.5rem; background: #ffffff; mask: url("assets/img/tel-icon02.svg") center/contain no-repeat; left: 50%; top: 36%; transform: translate(-50%, -50%); }
  .c-nav-fix__item:nth-child(1)::after { content: "お電話"; position: absolute; width: 100%; height: auto; bottom: 0; left: 50%; transform: translateX(-50%); font-size: 1.6rem; color: #ffffff; text-align: center; padding-bottom: 0.5rem; }
  .c-nav-fix__item:nth-child(2) { display: none; }
  .c-nav-fix__item:nth-child(3) { background-color: #c79e49; }
  .c-nav-fix__item:nth-child(3)::before { content: ""; position: absolute; width: 2rem; height: 2.4rem; background: #ffffff; mask: url("assets/img/local-icon02.svg") center/contain no-repeat; left: 50%; top: 36%; transform: translate(-50%, -50%); }
  .c-nav-fix__item--link { color: #ffffff; font-size: 1.6rem; display: flex; justify-content: center; align-items: center; text-align: center; align-items: flex-end; text-align: center; width: 100%; height: 100%; padding: 0.5rem; }
  .c-nav-fix__item--link.c-acf_tel { font-size: 0; } }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-footer__schedule--table dl dt { width: 14.5rem; } }
@media (min-width: 960px) and (max-width: 1200px) { .p-footer__nav { padding-left: 5rem; }
  .p-footer__inner { padding-left: 5rem; align-items: flex-start; }
  .p-footer__info { height: auto; padding: 4rem 0 0; }
  .p-footer__note { margin-bottom: 4rem; padding-left: 5rem; }
  .p-footer__floatCard { right: 4rem; bottom: 20rem; }
  .p-footer__floatCard img { width: 40rem; } }
@media (max-width: 960px) { .p-footer { padding: 0rem 0 3rem; }
  .p-footer__info { height: 84rem; padding: 5rem 0 6rem; }
  .p-footer__inner { max-width: 100%; padding-left: 1.5rem; align-items: flex-start; }
  .p-footer__note { padding-left: 3rem; padding-right: 3rem; flex-wrap: wrap; gap: 2rem; }
  .p-footer__nav { display: none; }
  .p-footer__logo img { width: 30rem; }
  .p-footer__tel a { font-size: 3rem; }
  .p-footer__floatCard { position: relative; right: auto; bottom: auto; text-align: center; margin-top: 4rem; padding-left: 1rem; padding-right: 1rem; }
  .p-footer__floatCard img { width: 100%; max-width: 55.6rem; }
  .p-footer__credit img { width: 14rem; }
  .p-footer .p-footer__schedule th, .p-footer .p-footer__schedule td { padding: 1rem 0; }
  .p-footer .p-footer__schedule th { padding-left: 1rem; }
  .c-nav-fix { opacity: 1 !important; position: fixed; bottom: 0; left: 0; display: flex; z-index: 110; width: 100%; border-top: #fff solid 1px; }
  .c-nav-fix li { width: calc((100% - 6rem) / 3); border-right: #fff solid 1px; }
  .c-nav-fix li:last-child { border-right: 0; }
  .c-nav-fix li a { background: #c4a97d; display: flex; justify-content: center; align-items: flex-end; width: 100%; height: 6rem; padding: 0.7rem 0; color: #fff; font-size: 1.5rem; font-weight: 400; line-height: 150%; letter-spacing: 0; position: relative; }
  .c-nav-fix li a::before { content: ""; position: absolute; width: 1.8rem; height: 1.8rem; top: 0.8rem; left: 50%; transform: translateX(-50%); -webkit-mask: url(assets/img/tel-icon01.svg) center/100% no-repeat; mask: url(assets/img/tel-icon01.svg) center/100% no-repeat; background: #fff; }
  .c-nav-fix li a.c-acf_ins::before { -webkit-mask-image: url(assets/img/ins-icon01.svg); mask-image: url(assets/img/ins-icon01.svg); }
  .c-nav-fix li a.c-acf_access::before { width: 1.4rem; -webkit-mask-image: url(assets/img/local-icon01.svg); mask-image: url(assets/img/local-icon01.svg); } }
@media (max-width: 767px) { .p-footer__info { height: auto; padding: 6rem 0 3rem; }
  .p-footer__inner { padding-left: 1.5rem; padding-right: 1.5rem; align-items: flex-start; }
  .p-footer__logo { display: flex; justify-content: center; width: 100%; }
  .p-footer__logo img { width: 30rem; }
  .p-footer__tel { text-align: center; width: 100%; }
  .p-footer__tel a { font-size: 2.8rem; }
  .p-footer__address { width: 100%; display: flex; justify-content: center; line-height: 2.6rem; gap: 1rem; margin: 0 0 3rem; }
  .p-footer__address img { width: 1.4rem; }
  .p-footer__schedule { width: 100%; }
  .p-footer__schedule th, .p-footer__schedule td { padding: 1.6rem 0; }
  .p-footer__schedule th { width: 11rem; padding-left: 0.5rem; }
  .p-footer__schedule td { width: calc((100% - 11rem) / 7); }
  .p-footer__note { padding-left: 1.5rem; flex-direction: column; gap: 1rem; line-height: 2.6rem; margin-bottom: 0; }
  .p-footer__bus::before { width: 4rem; height: 4rem; }
  .p-footer__floatCard { position: relative; right: auto; bottom: auto; display: flex; justify-content: center; text-align: center; margin-top: 3rem; }
  .p-footer__copyright { flex-direction: column; text-align: center; gap: 1rem; }
  .p-footer__bottom { padding: 1rem 0; }
  .p-footer__credit { margin-right: 0; }
  .c-nav-fix li { width: calc((100% - 6rem) / 3); }
  .c-nav-fix li a { font-size: 1.5rem; } }
[class^="grid-"], [class*="grid-"] { margin-left: auto; margin-right: auto; width: 100%; padding-left: 1.5rem; padding-right: 1.5rem; }

.l-grid-1770 { max-width: 180rem; }
.l-grid-1540 { max-width: 157rem; }
.l-grid-1500 { max-width: 153rem; }
.l-grid-1330 { max-width: 136rem; }
.l-grid-1360 { max-width: 139rem; }
.l-grid-1280 { max-width: 131rem; }
.l-grid-1200 { max-width: 123rem; }

.wow_custom { opacity: 0; -webkit-transform: translate(0, 35px); transform: translate(0, 35px); transition: all 0.5s ease; }
.wow_custom.show { opacity: 1; -webkit-transform: none; transform: none; }
.wow_custom.show.wow_vz_02 { animation: fade_in_0 500ms 500ms linear; animation-fill-mode: forwards; }
.wow_custom.show.wow_vz_03 { animation: fade_in_0 500ms 1000ms linear; animation-fill-mode: forwards; }
.wow_custom.show.wow_vz_04 { animation: fade_in_0 500ms 1500ms linear; animation-fill-mode: forwards; }
.wow_custom.show.wow_vz_05 { animation: fade_in_0 500ms 2000ms linear; animation-fill-mode: forwards; }

.anchor_fixtop, .u-anchor-offset { display: block; position: relative; top: -17.5rem; width: 100%; visibility: hidden; }

@media (max-width: 960px) { .anchor_fixtop, .u-anchor-offset { top: -8rem; } }
.l-container { width: 100%; max-width: 128rem; margin-inline: auto; }
@media screen and (max-width: 960px) { .l-container { padding-inline: 3rem; } }
@media screen and (max-width: 767px) { .l-container { padding-inline: 1.5rem; } }

.l-content { display: flex; gap: 0; margin-block: 4rem 8rem; }
@media screen and (max-width: 960px) { .l-content { flex-direction: column; gap: 0; margin-block: 2rem 4rem; } }
.l-content__main { width: calc(100% - 30rem); min-width: 0; }
@media screen and (max-width: 960px) { .l-content__main { width: 100%; margin-bottom: 6rem; } }
.l-content__sidebar { width: 30rem; padding-left: 5rem; min-width: 0; }
@media screen and (max-width: 960px) { .l-content__sidebar { width: 100%; padding-left: 0; } }

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }

.slick-list:focus { outline: none; }

.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); height: 100%; }

.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }

.slick-track:before, .slick-track:after { display: table; content: ""; }

.slick-track:after { clear: both; }

.slick-loading .slick-track { visibility: hidden; }

.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }

[dir="rtl"] .slick-slide { float: right; }

.slick-slide img { display: block; }

.slick-slide.slick-loading img { display: none; }

.slick-slide.dragging img { pointer-events: none; }

.slick-initialized .slick-slide { display: block; }

.slick-loading .slick-slide { visibility: hidden; }

.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

.slick-slide { transition: transform 0.4s linear; }

.slick-list { overflow: hidden; }

.slick-track { display: flex; }

/* ========================================================================== Object - Component (c-) ========================================================================== */
.c-hamburger { position: relative; z-index: 110; display: inline-flex; flex-direction: column; justify-content: center; align-items: center; gap: 0.7rem; width: 6rem; height: 6rem; padding: 0; background: #b29465; border: 0; border-radius: 0rem; cursor: pointer; transition: background-color 0.3s ease; }
@media (hover: hover) { .c-hamburger:hover { opacity: 0.9; } }
.c-hamburger__line { display: block; width: 2.4rem; height: 0.2rem; background-color: #fff; transition: transform 0.35s ease, opacity 0.25s ease; transform-origin: center; }
.c-hamburger.is-active .c-hamburger__line:nth-child(1) { transform: translateY(0.9rem) rotate(45deg); }
.c-hamburger.is-active .c-hamburger__line:nth-child(2) { opacity: 0; }
.c-hamburger.is-active .c-hamburger__line:nth-child(3) { transform: translateY(-0.9rem) rotate(-45deg); }

@media (min-width: 960.5px) { .c-hamburger { display: none; } }
.c-heading { font-weight: 700; line-height: 150%; letter-spacing: 0.08rem; color: #b29465; }
@media screen and (max-width: 960px) { .c-heading { letter-spacing: 0.02rem; } }
.c-heading--frame { position: relative; padding: 2rem 3rem; text-align: center; }
.c-heading--frame::before, .c-heading--frame::after { content: ""; position: absolute; width: 2.4rem; height: 2.4rem; border: 0.2rem solid #b29465; }
.c-heading--frame::before { top: 0; left: 0; border-right: 0; border-bottom: 0; }
.c-heading--frame::after { bottom: 0; right: 0; border-left: 0; border-top: 0; }
.c-heading--diamond { position: relative; padding-left: 3rem; }
.c-heading--diamond::before { content: ""; position: absolute; left: 0.2rem; top: 2rem; width: 1.2rem; height: 1.2rem; background-color: #b29465; transform: translateY(-50%) rotate(45deg); }
@media screen and (max-width: 960px) { .c-heading--diamond::before { top: 1.5rem; } }
.c-heading--diamond::after { content: ""; position: absolute; left: 1.8rem; top: 2rem; width: 0.6rem; height: 0.6rem; background-color: #b29465; opacity: 0.4; transform: translateY(-50%) rotate(45deg); }
@media screen and (max-width: 960px) { .c-heading--diamond::after { top: 1.5rem; } }
.c-heading--tab { display: inline-block; position: relative; padding: 1rem 2.4rem 1rem 3.6rem; background-color: #b29465; color: #fff; border-radius: 0.5rem; clip-path: polygon(1.6rem 0, 100% 0, 100% 100%, 0 100%); }
.c-heading--center-diamond { display: flex; align-items: center; justify-content: center; gap: 1.6rem; text-align: center; }
.c-heading--center-diamond::before, .c-heading--center-diamond::after { content: ""; display: inline-block; width: 0.8rem; height: 0.8rem; background-color: #b29465; transform: rotate(45deg); }
.c-heading--block-num { counter-increment: c-heading-block; display: flex; align-items: center; gap: 2rem; }
.c-heading--block-num::before { content: counter(c-heading-block,decimal-leading-zero); flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 6rem; height: 6rem; background-color: #b29465; color: #fff; font-family: "Zen Old Mincho", serif; font-size: 2.6rem; font-weight: 900; font-style: italic; letter-spacing: -0.1rem; border-radius: 0.5rem; box-shadow: 0.3rem 0.3rem 0 rgba(178, 148, 101, 0.35); }
.c-heading--layered { position: relative; padding-top: 1.6rem; }
.c-heading--layered::before { content: attr(data-en); position: absolute; top: 0; left: 0; font-family: "Zen Old Mincho", serif; font-size: 4.8rem; font-weight: 900; font-style: italic; letter-spacing: -0.1rem; color: rgba(178, 148, 101, 0.18); line-height: 1; -webkit-text-stroke: 0.05rem rgba(178, 148, 101, 0.4); }
.c-heading--section { text-align: center; margin-bottom: 4rem; }
.c-heading--section .ja { display: block; font-size: 2.8rem; font-weight: 700; line-height: 1.4; margin-bottom: 1rem; }
.c-heading--section .en { display: inline-flex; align-items: center; gap: 1.2rem; font-family: "Zen Old Mincho", serif; font-size: 1.4rem; font-weight: 500; color: #b29465; letter-spacing: 0.3rem; text-transform: uppercase; }
.c-heading--section .en::before, .c-heading--section .en::after { content: ""; display: inline-block; width: 3rem; height: 0.1rem; background-color: #b29465; }
.c-heading--hy-lv1 { position: relative; padding: 0 0 2rem; margin-bottom: 4rem; text-align: center; font-size: var(--size-h1); line-height: 150%; }
.c-heading--hy-lv1::before { content: ""; position: absolute; left: 50%; bottom: 0; width: 7rem; height: 1.2rem; transform: translateX(-50%); border-bottom: 6px dotted #b29465; }
@media screen and (max-width: 960px) { .c-heading--hy-lv1 { padding-bottom: 1.6rem; margin-bottom: 3rem; }
  .c-heading--hy-lv1::before { width: 6rem; } }
@media screen and (max-width: 960px) and (max-width: 767px) { .c-heading--hy-lv1::before { width: 3rem; } }

.c-heading--hy-lv1-alt { padding: 0 0 0 2rem; font-size: 2.4rem; font-weight: 600; line-height: 1.5; border-left: 0.6rem solid #b29465; }
@media screen and (max-width: 960px) { .c-heading--hy-lv1-alt { font-size: 2rem; padding-left: 1.6rem; } }
.c-heading--hy-lv2 { position: relative; padding: 1.5rem 2rem; background: #b29465; color: #fff; font-size: 2.2rem; font-weight: 600; line-height: 1.4; border: 1px dashed #fff; outline: 0.6rem solid #b29465; width: calc(100% - 1.2rem); margin-left: 0.6rem; }
@media screen and (max-width: 960px) { .c-heading--hy-lv2 { padding: 1rem 1.5rem; font-size: 1.8rem; text-align: justify; } }
.c-heading--hy-lv2-alt { padding: 0 5rem 0 0; background: transparent; color: #b29465; font-size: 2.2rem; font-weight: 600; line-height: 1.4; letter-spacing: 0.2rem; }
.c-heading--hy-lv3 { position: relative; padding: 0 0 2rem; color: #b29465; font-size: 2rem; font-weight: 600; line-height: 1.4; }
.c-heading--hy-lv3::before, .c-heading--hy-lv3::after { content: ""; position: absolute; left: 0; bottom: 0; height: 0.2rem; background: #b29465; }
.c-heading--hy-lv3::before { width: 10%; z-index: 2; }
.c-heading--hy-lv3::after { width: 100%; opacity: 0.1; }
.c-heading--hy-lv4 { position: relative; padding-left: 3rem; }
.c-heading--hy-lv4::before { content: ""; position: absolute; left: 0.2rem; top: 1.6rem; width: 1.2rem; height: 1.2rem; background-color: #b29465; transform: translateY(-50%) rotate(45deg); }
@media screen and (max-width: 960px) { .c-heading--hy-lv4::before { top: 1.5rem; } }
.c-heading--hy-lv4::after { content: ""; position: absolute; left: 1.8rem; top: 1.6rem; width: 0.6rem; height: 0.6rem; background-color: #b29465; opacity: 0.4; transform: translateY(-50%) rotate(45deg); }
@media screen and (max-width: 960px) { .c-heading--hy-lv4::after { top: 1.5rem; } }
.c-heading--sizev1 { font-size: var(--size-h1); }
.c-heading--sizev2 { font-size: var(--size-h2); }
.c-heading--sizev3 { font-size: var(--size-h3); }
.c-heading--sizev4 { font-size: var(--size-h4); }

.c-heading-counter { counter-reset: c-heading-bignum c-heading-block; }

.c-media { display: flex; align-items: flex-start; gap: 4rem; margin-bottom: 4rem; }
@media screen and (max-width: 960px) { .c-media { gap: 3rem; flex-direction: column; }
  .c-media--column-reverse { flex-direction: column-reverse; } }
@media screen and (max-width: 767px) { .c-media { gap: 2.5rem; } }
.c-media--right { flex-direction: row-reverse; }
@media screen and (max-width: 960px) { .c-media--right { flex-direction: column; } }
.c-media--center { align-items: center; }
.c-media__image { flex: 0 0 35%; max-width: 35%; }
@media screen and (max-width: 960px) { .c-media__image { flex: 1 1 100%; width: 100%; max-width: 100%; padding-top: 0.5rem; }
  .c-media__image--ireverse { order: 1; } }
.c-media__image img { width: 100%; height: auto; display: block; border-radius: 0.8rem; }
.c-media__image .c-pa p { font-size: 2rem; line-height: 150%; letter-spacing: 0; font-weight: 500; }
@media screen and (max-width: 960px) { .c-media__image .c-pa p { font-size: 1.8rem; } }
.c-media__image.tn-02 { position: relative; z-index: 0; }
.c-media__image.tn-02 .c-pa { position: absolute; z-index: 0; bottom: 1.5rem; right: 1.5rem; }
.c-media--narrow .c-media__image { flex: 0 0 30%; max-width: 30%; }
@media screen and (max-width: 960px) { .c-media--narrow .c-media__image { flex: 1 1 100%; max-width: 100%; } }
.c-media__body { flex: 1 1 auto; min-width: 0; }
@media screen and (max-width: 960px) { .c-media__body { flex: 1 1 100%; width: 100%; min-width: 100%; }
  .c-media__body--breverse { order: 0; } }
.c-media__body > :first-child { margin-top: 0; }
.c-media__body > :last-child { margin-bottom: 0; }
.c-media__body h2, .c-media__body h3, .c-media__body h4 { margin-bottom: 1.6rem; }
.c-media__body p { margin-bottom: 0rem; }

.c-columns { display: grid; gap: 0rem 4rem; margin-bottom: 4rem; }
@media screen and (max-width: 960px) { .c-columns { gap: 4rem; } }
@media screen and (max-width: 960px) and (max-width: 767px) { .c-columns { gap: 3rem; } }

.c-columns--2 { grid-template-columns: repeat(2, 1fr); }
@media screen and (max-width: 960px) { .c-columns--2 { grid-template-columns: 1fr; } }
.c-columns--3 { grid-template-columns: repeat(3, 1fr); }
@media screen and (max-width: 960px) { .c-columns--3 { grid-template-columns: 1fr; } }
.c-columns--4 { grid-template-columns: repeat(4, 1fr); }
@media screen and (max-width: 960px) { .c-columns--4 { grid-template-columns: repeat(2, 1fr); } }
@media screen and (max-width: 960px) { .c-columns--sp-2 { grid-template-columns: repeat(2, 1fr); } }
@media screen and (max-width: 960px) { .c-columns--sp-3 { gap: 2rem; grid-template-columns: repeat(3, 1fr); } }
@media screen and (max-width: 767px) { .c-columns--sp-3 { gap: 0.8rem; } }
.c-columns__item img { width: 100%; height: auto; display: block; border-radius: 1rem; margin-bottom: 2rem; }
@media screen and (max-width: 960px) { .c-columns__item img { border-radius: 0.5rem; margin-bottom: 1.5rem; } }

.c-dot-list { list-style: none; margin-bottom: -1rem !important; padding: 0; }
@media screen and (max-width: 960px) { .c-dot-list { margin-bottom: 0 !important; }
  .c-dot-list.c-columns { gap: 0; }
  .c-dot-list.c-columns li { margin-bottom: 1.5rem; padding-bottom: 1.5rem; } }
.c-dot-list > li { position: relative; padding: 0 0 1rem 2.4rem; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; border-bottom: 1px dashed rgba(178, 148, 101, 0.3); margin-bottom: 1rem; }
@media (max-width: 960px) { .c-dot-list > li { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
@media screen and (max-width: 960px) { .c-dot-list > li:last-child { padding-bottom: 0; border-bottom: 0; margin-bottom: 0; } }
.c-dot-list > li::before { content: ""; position: absolute; top: 1.4rem; left: 0; width: 1rem; height: 1rem; background-color: #b29465; border-radius: 50%; }
@media screen and (max-width: 960px) { .c-dot-list > li::before { top: 1rem; } }
.c-dot-list--2col { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 4rem; row-gap: 0; }
@media (min-width: 960.5px) { .c-dot-list--2col li:nth-last-child(2), .c-dot-list--2col li:last-child { margin-bottom: 0; border-bottom: 0; } }
@media screen and (max-width: 960px) { .c-dot-list--2col { grid-template-columns: 1fr; column-gap: 0; } }
.c-dot-list--plain > li:not(:last-child) { border-bottom: 0; margin-bottom: 0; }
.c-dot-list--square > li::before { border-radius: 0; }

.c-check-list { list-style: none; margin: 0 0 4rem; padding: 0; }
.c-check-list > li { position: relative; padding: 0.4rem 0 0.4rem 3rem; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; }
@media (max-width: 960px) { .c-check-list > li { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
.c-check-list > li:not(:last-child) { margin-bottom: 0.6rem; }
.c-check-list > li::before { content: ""; position: absolute; top: 1rem; left: 0; width: 2rem; height: 1.1rem; border-left: 0.3rem solid #b29465; border-bottom: 0.3rem solid #b29465; transform: rotate(-45deg); }
.c-check-list--2col { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 4rem; }
@media screen and (max-width: 960px) { .c-check-list--2col { grid-template-columns: 1fr; } }
.c-check-list--3col { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 4rem; }
@media screen and (max-width: 960px) { .c-check-list--3col { grid-template-columns: 1fr; } }

.c-info-table { border-top: 1px dashed rgba(51, 51, 51, 0.2); }
@media screen and (max-width: 960px) { .c-info-table--rowsp .c-info-table__row { grid-template-columns: 11rem 1fr; } }
.c-info-table--pc21 .c-info-table__row { grid-template-columns: 21rem 1fr; }
@media screen and (max-width: 960px) { .c-info-table--pc21 .c-info-table__row { grid-template-columns: 11rem 1fr; } }
.c-info-table__row { display: grid; grid-template-columns: 15rem 1fr; gap: 2rem; padding: 2rem 0rem; border-bottom: 1px dashed rgba(51, 51, 51, 0.2); }
@media screen and (max-width: 960px) { .c-info-table__row { grid-template-columns: 7rem 1fr; gap: 1.5rem; padding: 1.5rem 0rem; } }
.c-info-table__row dt, .c-info-table__row dd { font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; margin: 0; color: #333333; }
@media (max-width: 960px) { .c-info-table__row dt, .c-info-table__row dd { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
.c-info-table__row dt { font-weight: 700; }
.c-info-table--filled .c-info-table__row { align-items: start; }
.c-info-table--filled .c-info-table__row dt { display: inline-block; width: max-content; max-width: 100%; padding: 0.4rem 1.4rem; background-color: #b29465; color: #fff; border-radius: 0.4rem; font-size: 1.4rem; }
.c-info-table--bordered { border: 1px solid #b29465; border-top-width: 1px; padding: 0 2rem; }
.c-info-table--bordered .c-info-table__row { border-bottom: 1px solid rgba(178, 148, 101, 0.3); }
.c-info-table--bordered .c-info-table__row:last-child { border-bottom: 0; }
.c-info-table--bordered .c-info-table__row dt { position: relative; padding-left: 1.6rem; }
.c-info-table--bordered .c-info-table__row dt::before { content: ""; position: absolute; left: 0; top: 0.8rem; width: 0.4rem; height: 1.6rem; background-color: #b29465; border-radius: 0.2rem; }
.c-info-table--striped { border-top: 0; }
.c-info-table--striped .c-info-table__row { border-bottom: 0; padding: 1.4rem 2rem; }
.c-info-table--striped .c-info-table__row:nth-child(odd) { background-color: rgba(178, 148, 101, 0.2); }
.c-info-table--striped .c-info-table__row:nth-child(even) { background-color: rgba(178, 148, 101, 0.06); }
@media screen and (max-width: 960px) { .c-info-table--striped .c-info-table__row { padding: 1rem 1.4rem; } }
.c-info-table--card { border-top: 0; display: flex; flex-direction: column; gap: 1.2rem; }
.c-info-table--card .c-info-table__row { background-color: #fff; border: 1px solid rgba(178, 148, 101, 0.3); border-bottom: 1px solid rgba(178, 148, 101, 0.3); border-radius: 0.6rem; padding: 1.6rem 2rem; box-shadow: 0 0.2rem 0.6rem rgba(0, 0, 0, 0.04); }
.c-info-table--vertical .c-info-table__row { grid-template-columns: 1fr; gap: 0.6rem; }
.c-info-table--vertical .c-info-table__row dt { font-size: 1.4rem; letter-spacing: 0.1rem; }
.c-info-table--compact .c-info-table__row { padding: 0.8rem 0.6rem; grid-template-columns: 14rem 1fr; gap: 1.2rem; }
@media screen and (max-width: 960px) { .c-info-table--compact .c-info-table__row { grid-template-columns: 1fr; padding: 0.6rem 0.4rem; } }

.c-box { padding: 3rem; margin-bottom: 4rem; border-radius: 0.8rem; }
@media screen and (max-width: 960px) { .c-box { padding: 2rem 1.6rem; } }
.c-box > :first-child { margin-top: 0; }
.c-box > :last-child { margin-bottom: 0; }
.c-box--bg { background-color: rgba(178, 148, 101, 0.08); }
.c-box--bg-primary { background-color: #b29465; color: #fff; }
.c-box--bg-primary h2, .c-box--bg-primary h3, .c-box--bg-primary h4, .c-box--bg-primary h5, .c-box--bg-primary h6, .c-box--bg-primary a { color: #fff; }
.c-box--bg-primary a { text-decoration: underline; }
.c-box--bg-dark { background-color: #333333; color: #fff; }
.c-box--bg-dark h2, .c-box--bg-dark h3, .c-box--bg-dark h4, .c-box--bg-dark h5, .c-box--bg-dark h6 { color: #fff; }
.c-box--border { background-color: #fff; border: 0.2rem solid #b29465; }
.c-box--border-thin { background-color: #fff; border: 0.1rem solid rgba(178, 148, 101, 0.5); }
.c-box--frame { position: relative; padding: 5rem; background-color: #fff; border: 6px solid #b29465; border-radius: 0; }
@media screen and (max-width: 960px) { .c-box--frame { padding: 2rem 2rem; border: 2px solid #b29465; } }
.c-box--rounded { border-radius: 2rem; }
.c-box--callout { background-color: rgba(178, 148, 101, 0.08); border-left: 0.6rem solid #b29465; padding-left: 2.6rem; }
@media screen and (max-width: 960px) { .c-box--callout { padding-left: 1.8rem; } }
.c-box__title { margin: 0 0 1.4rem; font-size: 2rem; font-weight: 700; line-height: 1.4; color: #333333; }

.c-schedule { width: 100%; margin: 0 0 4rem; border-collapse: collapse; border: 1px solid rgba(178, 148, 101, 0.4); text-align: center; }
.c-schedule th, .c-schedule td { padding: 1.5rem 1rem; border: 1px solid rgba(178, 148, 101, 0.4); font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; text-align: center; }
@media (max-width: 960px) { .c-schedule th, .c-schedule td { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
@media screen and (max-width: 960px) { .c-schedule th, .c-schedule td { text-align: center; line-height: 150%; padding: 0.8rem 0.5rem; } }
.c-schedule thead th { background-color: #b29465; color: #fff; font-weight: 700; border-left: 0; }
.c-schedule thead th:not(:last-child) { border-right: 1px solid rgba(255, 255, 255, 0.4); }
.c-schedule tbody th { background-color: rgba(178, 148, 101, 0.2); color: #b29465; font-weight: 700; text-align: left; padding-left: 1.4rem; white-space: nowrap; }
.c-schedule tbody td { color: #333333; }
.c-schedule .is-closed { color: #333333; }

.c-section { margin-bottom: 8rem; scroll-margin-top: 8rem; }
@media screen and (max-width: 960px) { .c-section { margin-bottom: 5rem; scroll-margin-top: 6rem; } }
.c-section__anchor { position: relative; top: -8rem; visibility: hidden; }
.c-section__title { margin-bottom: 3rem; }
.c-section__body > :first-child { margin-top: 0; }
.c-section__body > :last-child { margin-bottom: 0; }

.c-faq { margin: 0 0 4rem; }
.c-faq__item { margin-bottom: 1.6rem; border: 1px solid rgba(178, 148, 101, 0.4); background-color: #fff; }
.c-faq__item[open] .c-faq__q::after { transform: rotate(225deg); }
.c-faq__q { position: relative; list-style: none; cursor: pointer; padding: 1.6rem 5rem 1.6rem 5rem; background-color: rgba(178, 148, 101, 0.2); font-size: var(--size-p); font-weight: 700; line-height: 1.5; color: #333333; transition: background-color 0.25s ease; }
.c-faq__q::-webkit-details-marker { display: none; }
.c-faq__q::before { content: "Q."; position: absolute; left: 1.6rem; top: 50%; transform: translateY(-50%); font-family: "Zen Old Mincho", serif; font-size: 2rem; font-weight: 900; color: #b29465; }
.c-faq__q::after { content: ""; position: absolute; right: 2rem; top: 50%; width: 0.9rem; height: 0.9rem; border-right: 0.2rem solid #b29465; border-bottom: 0.2rem solid #b29465; transform: translateY(-70%) rotate(45deg); transition: transform 0.3s ease; }
@media (hover: hover) { .c-faq__q:hover { background-color: rgba(178, 148, 101, 0.25); } }
.c-faq__a { position: relative; padding: 1.6rem 2rem 1.6rem 5rem; font-size: var(--size-p); line-height: 1.85; color: #333333; }
.c-faq__a::before { content: "A."; position: absolute; left: 1.6rem; top: 1.5rem; font-family: "Zen Old Mincho", serif; font-size: 2rem; font-weight: 900; color: #c44; }
.c-faq__a > :first-child { margin-top: 0; }
.c-faq__a > :last-child { margin-bottom: 0; }

.c-btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.8rem; padding: 1rem 2rem; background-color: #b29465; color: #fff; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; text-decoration: none; border: 0.1rem solid #b29465; border-radius: 5rem; cursor: pointer; transition: all 0.3s ease; }
@media (max-width: 960px) { .c-btn { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
@media (hover: hover) { .c-btn:hover { background-color: #fff; color: #b29465; } }
.c-btn--outline { background-color: transparent; color: #b29465; }
@media (hover: hover) { .c-btn--outline:hover { background-color: #b29465; color: #fff; } }
.c-btn--lg { min-width: 32rem; height: 6.4rem; font-size: 1.8rem; border-radius: 3.2rem; }
@media screen and (max-width: 960px) { .c-btn--lg { min-width: 24rem; height: 5.4rem; font-size: 1.5rem; } }
.c-btn--block { width: 100%; min-width: 0; }
.c-btn--arrow::after { content: ""; display: inline-block; width: 0.7rem; height: 0.7rem; margin-left: 0.4rem; border-top: 0.2rem solid currentColor; border-right: 0.2rem solid currentColor; transform: rotate(45deg); transition: transform 0.3s ease; }
@media (hover: hover) { .c-btn--arrow:hover::after { transform: translateX(0.4rem) rotate(45deg); } }
.c-btn-group { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 1.6rem; margin: 2rem 0 0; }
@media screen and (max-width: 960px) { .c-btn-group { gap: 1rem; } }

.c-map { position: relative; width: 100%; aspect-ratio: 16 / 7; margin: 0 0 4rem; overflow: hidden; border-radius: 0.8rem; }
@media screen and (max-width: 960px) { .c-map { aspect-ratio: 4 / 3; margin-bottom: 2rem; } }
.c-map iframe, .c-map img, .c-map embed, .c-map object { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.c-map--square { aspect-ratio: 1 / 1; }
@media screen and (max-width: 960px) { .c-map--square { aspect-ratio: 1 / 1; } }
.c-map--tall { aspect-ratio: 3 / 4; }

.c-flow { display: flex; align-items: stretch; gap: 1.6rem; list-style: none; margin: 0 0 4rem; padding: 0; }
@media screen and (max-width: 960px) { .c-flow { flex-direction: column; gap: 2.4rem; } }
.c-flow__item { position: relative; flex: 1 1 0; padding: 2rem; background-color: rgba(178, 148, 101, 0.2); border-top: 0.4rem solid #b29465; text-align: center; border-radius: 0; }
.c-flow__item:not(:last-child)::after { content: ""; position: absolute; top: 50%; right: -1.35rem; transform: translateY(-50%); width: 0; height: 0; border-top: 1.2rem solid transparent; border-bottom: 1.2rem solid transparent; border-left: 1rem solid #b29465; z-index: 2; }
@media screen and (max-width: 960px) { .c-flow__item { border-radius: 0.8rem; }
  .c-flow__item:not(:last-child)::after { top: auto; right: 50%; bottom: -1.8rem; transform: translateX(50%); border-top: 1rem solid #b29465; border-bottom: 0; border-left: 1.2rem solid transparent; border-right: 1.2rem solid transparent; } }
.c-flow__num { display: block; margin-bottom: 0.2rem; font-family: "Zen Old Mincho", serif; font-size: 1.5rem; font-weight: 700; color: #b29465; letter-spacing: 0.2rem; }
.c-flow__title { display: block; font-size: 1.8rem; font-weight: 700; color: #b29465; line-height: 150%; }
.c-flow p { margin: 1rem 0 0; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; color: #555; }
@media (max-width: 960px) { .c-flow p { line-height: 185%; letter-spacing: 0em; text-align: justify; } }

.c-step { counter-reset: c-step; list-style: none; margin: 0 0 4rem; padding: 0; }
.c-step__item { counter-increment: c-step; position: relative; display: flex; gap: 2.4rem; padding-bottom: 4rem; }
@media screen and (max-width: 960px) { .c-step__item { gap: 1.6rem; padding-bottom: 3rem; } }
.c-step__item:not(:last-child)::before { content: ""; position: absolute; top: 8rem; left: 4.5rem; bottom: 0; width: 0.2rem; background-color: rgba(178, 148, 101, 0.35); }
@media screen and (max-width: 960px) { .c-step__item:not(:last-child)::before { top: 5.5rem; left: 2.75rem; } }
.c-step__item:last-child { padding-bottom: 0; }
.c-step__num { position: relative; z-index: 1; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.2rem; width: 9rem; height: 9rem; background-color: #b29465; color: #fff; border-radius: 50%; line-height: 1; }
.c-step__num > br { display: none; }
@media screen and (max-width: 960px) { .c-step__num { width: 6.5rem; height: 6.5rem; } }
.c-step__num .label { font-family: "Zen Old Mincho", serif; font-size: 1rem; font-weight: 500; letter-spacing: 0.2rem; }
@media screen and (max-width: 960px) { .c-step__num .label { font-size: 0.9rem; } }
.c-step__num .num { font-family: "Zen Old Mincho", serif; font-size: 2.2rem; font-weight: 900; font-style: italic; letter-spacing: -0.05rem; }
@media screen and (max-width: 960px) { .c-step__num .num { font-size: 1.6rem; } }
.c-step__num--auto::after { content: counter(c-step,decimal-leading-zero); font-family: "Zen Old Mincho", serif; font-size: 2.4rem; font-weight: 900; font-style: italic; }
.c-step__body { flex: 1 1 auto; min-width: 0; }
.c-step__body h4 { margin: 0 0 1rem; font-size: 2rem; font-weight: 700; color: #333333; line-height: 1.4; }
@media screen and (max-width: 960px) { .c-step__body h4 { font-size: 1.7rem; } }
.c-step__body p { margin: 0; }
.c-step__body p:not(:last-child) { margin-bottom: 1rem; }
.c-step__body img { display: block; max-width: 100%; height: auto; margin: 1.2rem 0; border-radius: 0.6rem; }

.ud_flow { padding-bottom: 1rem; }

.ud_flow .flow_box { position: relative; z-index: 1; padding: 5rem; margin-bottom: 5rem; }
@media screen and (max-width: 960px) { .ud_flow .flow_box { padding: 2rem; } }

.ud_flow .flow_box::before { content: ""; display: block; position: absolute; transition: all 0.3s; z-index: -1; inset: 1rem; background-color: white; border: 1px solid #b29465; }

.ud_flow .flow_box::after { content: ""; display: block; position: absolute; transition: all 0.3s; z-index: -2; left: 0; bottom: 0; width: 100%; height: 30%; min-height: 10rem; background-color: #b29465; }

.ud_flow .flow_box .step { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 auto 1.5rem; width: 6em; height: 6em; font-size: 1.3rem; letter-spacing: 0; text-transform: uppercase; line-height: 1; text-align: center; background-color: #b29465; color: #fff; }

.ud_flow .flow_box .step::after { content: ""; display: block; position: absolute; transition: all 0.3s; z-index: -1; inset: 0.5rem; border: 1px solid white; opacity: 0.8; }

.ud_flow .flow_box .step .num { margin-top: 0; font-size: 2.7em; text-transform: uppercase; line-height: 1; letter-spacing: 0; }

.ud_flow .flow_box h3.flow_ttl::after { display: none; }

.ud_flow .flow_box h4.flow_ttl { padding: 0; border-bottom: none; background-color: transparent; }

.ud_flow .flow_box h4.flow_ttl::before { display: none; }

.ud_flow .flow_box h5.flow_ttl { padding: 0; border-bottom: none; }

.ud_flow .flow_box .flow_ttl { text-align: center; color: #b29465; line-height: 1.4; }

.ud_flow .flow_box .ct_area { display: flex; justify-content: center; align-items: center; }
.ud_flow .flow_box .ct_area img { width: 100%; object-fit: cover; height: 35rem; }
@media screen and (max-width: 960px) { .ud_flow .flow_box .ct_area img { height: auto; } }

.ud_flow .flow_box .ct_area::after { content: ""; position: absolute; left: 0; right: 0; bottom: calc(-3em + 1px); display: block; margin: 0 auto; width: 7em; height: 3em; clip-path: polygon(0 0, 100% 0, 50% 100%); font-size: 1.6rem; background-color: #b29465; }

.ud_flow .flow_box:last-child { margin-bottom: 0; }

.ud_flow .flow_box:last-child .ct_area::after { display: none; }

.u-bg-white { padding: 2rem; border-radius: 1rem; margin: 1rem 0; background-color: #fff; }

/* ========================================================================== Object - Project (p-) ========================================================================== */
.p-page-banner { position: relative; width: 100%; overflow: hidden; }
.p-page-banner__content { position: relative; }
.p-page-banner__content::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--grits-banner-overlay, rgba(239, 154, 0, 0.1)); z-index: 1; }
.p-page-banner__image { margin: 0; line-height: 0; }
.p-page-banner__image img { display: block; width: 100%; height: 40rem; object-fit: cover; filter: blur(var(--grits-banner-blur, 0.3rem)); }
.p-page-banner__title { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; justify-content: center; margin: 0; color: #fff; text-align: center; }
.p-page-banner__title .ja { display: block; font-size: 3.8rem; font-weight: 700; text-shadow: 0.3rem 0.3rem 0.4rem #333; }
@media screen and (max-width: 960px) { .p-page-banner__title .ja { font-size: 2.4rem; } }

@media (max-width: 960px) { .p-page-banner__image img { height: 20rem; } }
.p-page-section { margin-bottom: var(--space-2xl); }
@media screen and (max-width: 960px) { .p-page-section { margin-bottom: var(--space-xl); } }

.p-breadcrumb { margin-top: 2rem; margin-bottom: 2rem; font-size: var(--size-p); }
.p-breadcrumb__list { display: inline; gap: 0; list-style: none; margin: 0; padding: 0; }
.p-breadcrumb__item { display: inline; position: relative; font-size: inherit; font-weight: 500; line-height: 1.5; letter-spacing: 0.05rem; }
.p-breadcrumb__item:not(:last-child) { padding-right: 1.5rem; margin-right: 1.5rem; }
.p-breadcrumb__item:not(:last-child)::after { content: ""; position: absolute; right: 0; top: 49%; width: 0.8rem; aspect-ratio: 1 / 1; border-top: 1px solid #353535; border-right: 1px solid #353535; transform: translateY(-47%) rotate(45deg); }
.p-breadcrumb__item a { color: #454545; text-decoration: none; }
@media (hover: hover) { .p-breadcrumb__item a:hover { opacity: 1; text-decoration: underline; } }
.p-breadcrumb__item.is-current { color: #999; }

.p-news-list { list-style: none; margin: 0 0 6rem; padding: 0; width: 100%; }
@media screen and (max-width: 960px) { .p-news-list { margin-bottom: 0rem; } }
.p-news-list__item { padding: 2rem 0; margin-bottom: 1.5rem; background-color: rgba(178, 148, 101, 0.2); transition: background-color 0.3s ease; }
.p-news-list__item:last-child { margin-bottom: 0; }
.p-news-list__item:nth-child(odd) { background-color: #b29465; }
.p-news-list__item:nth-child(odd) .p-news-list__date, .p-news-list__item:nth-child(odd) .p-news-list__title { color: #fff; }
@media (hover: hover) { .p-news-list__item:hover { background-color: rgba(183, 162, 102, 0.5); }
  .p-news-list__item:hover .p-news-list__date, .p-news-list__item:hover .p-news-list__title { color: #333333; } }
.p-news-list__link { display: flex; align-items: center; gap: 2rem; color: #333333; text-decoration: none; font-size: 1.6rem; transition: color 0.3s ease; }
@media (hover: hover) { .p-news-list__link:hover { color: #b29465; } }
@media screen and (max-width: 960px) { .p-news-list__link { gap: 0; } }
.p-news-list__date { display: inline-block; flex: 0 0 auto; min-width: 13rem; padding-inline: 2rem; font-size: 1.8rem; font-weight: 600; line-height: 1.4; letter-spacing: 0.1rem; color: #333333; font-family: "Zen Old Mincho", serif; }
@media screen and (max-width: 960px) { .p-news-list__date { font-size: 1.5rem; min-width: 11rem; padding-left: 1rem; padding-right: 0; } }
.p-news-list__title { flex: 1 1 auto; padding-right: 2rem; font-size: 1.8rem; line-height: 1.5; color: #333333; word-break: break-word; }
@media screen and (max-width: 960px) { .p-news-list__title { font-size: 1.5rem; padding-right: 1rem; } }
.p-news-list__empty { padding: 2.4rem; text-align: center; color: #333333; }

.pagination, .nav-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 0.8rem; margin-block: 4rem; }
.pagination .page-numbers, .nav-links .page-numbers { display: inline-flex; align-items: center; justify-content: center; height: 4rem; min-width: 4rem; padding: 0 1rem; border: 0.1rem solid #b29465; background-color: #fff; color: #333333; font-size: 1.4rem; text-decoration: none; transition: all 0.2s ease; }
@media (hover: hover) { .pagination .page-numbers:hover, .nav-links .page-numbers:hover { background-color: #b29465; color: #fff; } }
.pagination .page-numbers.current, .nav-links .page-numbers.current { background-color: #b29465; color: #fff; }
.pagination .page-numbers.dots, .nav-links .page-numbers.dots { border: 0; background: none; }

.p-sidebar { display: flex; flex-direction: column; }
.p-sidebar__widget { border: 0.1rem solid #b29465; margin-bottom: 3rem; background-color: #fff; }
@media screen and (max-width: 960px) { .p-sidebar__widget { margin-bottom: 1.5rem; } }
.p-sidebar__widget:last-child { margin-bottom: 0; }
.p-sidebar__title { position: relative; margin: 0; padding: 1rem 4rem 1rem 1rem; background-color: #b29465; color: #fff; font-size: 1.8rem; font-weight: 700; line-height: 1.5; letter-spacing: 0; text-align: left; cursor: pointer; }
.p-sidebar__title::before { content: ""; position: absolute; top: 50%; right: 1.5rem; width: 0.8rem; height: 0.8rem; border-top: 0.1rem solid #fff; border-right: 0.1rem solid #fff; transform: translateY(-50%) rotate(135deg); transition: transform 0.35s ease; }
.p-sidebar__title.is-active::before { transform: translateY(-50%) rotate(315deg); }
.p-sidebar__title span { display: inline; }
.p-sidebar__list { list-style: none; margin: 0; padding: 0 1.5rem; max-height: 32rem; overflow: auto; }
.p-sidebar__list li { border-bottom: 0.1rem solid #b29465; }
.p-sidebar__list li:last-child { border-bottom: 0; }
.p-sidebar__list li a { display: block; padding: 1rem 0; color: #333; font-size: 1.6rem; font-weight: 700; line-height: 1.5; letter-spacing: 0; text-decoration: none; transition: color 0.2s ease; }
@media (hover: hover) { .p-sidebar__list li a:hover { color: #b29465; } }
@media screen and (max-width: 960px) { .p-sidebar__list li a { font-size: 1.5rem; } }
.p-sidebar__list li ul { list-style: none; margin: 0; padding-left: 1.5rem; border-top: 0.1rem solid #b29465; }

.p-single__header { background-color: rgba(178, 148, 101, 0.08); padding: 3rem; margin-bottom: 0; border-radius: 0.5rem; }
@media screen and (max-width: 960px) { .p-single__header { padding: 1rem; } }
.p-single__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; margin-bottom: 1rem; }
.p-single__date { font-size: 1.6rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.3rem; color: #b29465; }
@media screen and (max-width: 960px) { .p-single__date { font-size: 1.5rem; } }
.p-single__categories { display: flex; flex-wrap: wrap; gap: 0.6rem; list-style: none; margin: 0; padding: 0; }
.p-single__category a { display: inline-block; padding: 0.3rem 1.4rem; background-color: #b29465; color: #fff; font-size: 1.3rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.05rem; border-radius: 2rem; text-decoration: none; transition: opacity 0.3s ease; }
@media (hover: hover) { .p-single__category a:hover { opacity: 0.85; } }
@media screen and (max-width: 960px) { .p-single__category a { font-size: 1.2rem; padding: 0.2rem 1rem; } }
.p-single__title { margin: 0; font-size: 3.2rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.2rem; color: #b29465; }
@media screen and (max-width: 960px) { .p-single__title { font-size: 2rem; } }
.p-single__content { padding: 4rem 0; }
.p-single__content :is(p, td, li, th, blockquote) { margin: 0 0 2.5rem; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; color: #333333; }
@media (max-width: 960px) { .p-single__content :is(p, td, li, th, blockquote) { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
.p-single__content a { color: #0073aa; text-decoration: underline; }
@media (hover: hover) { .p-single__content a:hover { opacity: 0.7; } }
.p-single__content ul, .p-single__content ol { margin: 0 0 1.5rem 2.2rem; }
.p-single__content ul { list-style: disc; }
.p-single__content ol { list-style: decimal; }
.p-single__content li { margin-bottom: 0; }
.p-single__content li:not(:last-child) { margin-bottom: 0.5rem; }
.p-single__content blockquote { position: relative; background-color: #eeeeee; padding: 5rem 4rem 4rem 7rem; border-radius: 1rem; }
@media screen and (max-width: 960px) { .p-single__content blockquote { padding: 4rem 1.5rem 1.5rem 5rem; } }
.p-single__content blockquote::before { content: "\201C"; position: absolute; top: 1.5rem; left: 1.8rem; font-family: Georgia, "Times New Roman", serif; font-size: 7rem; font-weight: 700; line-height: 1; color: #b29465; }
@media screen and (max-width: 960px) { .p-single__content blockquote::before { top: -1.2rem; left: 1rem; font-size: 5rem; } }
.p-single__content blockquote p:last-child { margin-bottom: 0; }
.p-single__content hr { border: 0; border-top: 0.1rem solid #cccccc; margin: 2rem 0; }
.p-single__content img { max-width: 100%; height: auto; margin-bottom: 2.5rem; }
.p-single__footer { margin-bottom: 10rem; }
@media screen and (max-width: 960px) { .p-single__footer { margin-bottom: 4rem; } }

.p-single__content :is(h1, h2, h3, h4, h5, h6) { color: #b29465; margin-bottom: var(--space-md); clear: both; }
.p-single__content :is(h2, h3, h4, h5, h6) { margin-top: var(--space-lg); }
.p-single__content h1 { position: relative; padding: 0 0 2rem; margin-bottom: 4rem; text-align: center; font-size: var(--size-h1); line-height: 150%; margin-bottom: var(--space-md); }
.p-single__content h1::before { content: ""; position: absolute; left: 50%; bottom: 0; width: 7rem; height: 1.2rem; transform: translateX(-50%); border-bottom: 6px dotted #b29465; }
@media screen and (max-width: 960px) { .p-single__content h1 { padding-bottom: 1.6rem; margin-bottom: 3rem; }
  .p-single__content h1::before { width: 6rem; } }
@media screen and (max-width: 960px) and (max-width: 767px) { .p-single__content h1::before { width: 3rem; } }

.p-single__content h2 { position: relative; padding: 1.5rem 2rem; background: #b29465; color: #fff; font-size: 2.2rem; font-weight: 600; line-height: 1.4; border: 1px dashed #fff; outline: 0.6rem solid #b29465; width: calc(100% - 1.2rem); margin-left: 0.6rem; }
@media screen and (max-width: 960px) { .p-single__content h2 { padding: 1rem 1.5rem; font-size: 1.8rem; text-align: justify; } }
.p-single__content h3 { position: relative; padding: 0 0 2rem; color: #b29465; font-size: 2rem; font-weight: 600; line-height: 1.4; }
.p-single__content h3::before, .p-single__content h3::after { content: ""; position: absolute; left: 0; bottom: 0; height: 0.2rem; background: #b29465; }
.p-single__content h3::before { width: 10%; z-index: 2; }
.p-single__content h3::after { width: 100%; opacity: 0.1; }
.p-single__content h4 { position: relative; padding-left: 3rem; margin-bottom: var(--space-xs); }
.p-single__content h4::before { content: ""; position: absolute; left: 0.2rem; top: 1.6rem; width: 1.2rem; height: 1.2rem; background-color: #b29465; transform: translateY(-50%) rotate(45deg); }
@media screen and (max-width: 960px) { .p-single__content h4::before { top: 1.5rem; } }
.p-single__content h4::after { content: ""; position: absolute; left: 1.8rem; top: 1.6rem; width: 0.6rem; height: 0.6rem; background-color: #b29465; opacity: 0.4; transform: translateY(-50%) rotate(45deg); }
@media screen and (max-width: 960px) { .p-single__content h4::after { top: 1.5rem; } }
.p-single__content img { border-radius: 1rem; overflow: hidden; }
@media screen and (max-width: 960px) { .p-single__content img { margin-bottom: 1rem; } }
@media (min-width: 960.5px) { .p-single__content img.alignright { float: right; margin-left: 1.5rem; margin-top: 1.1rem; margin-bottom: 1.1rem; width: 30%; }
  .p-single__content img.alignleft { float: left; margin-right: 2rem; margin-top: 1.1rem; margin-bottom: 1.1rem; width: 30%; } }
.p-single__content img.aligncenter { display: block; margin-left: auto; margin-right: auto; margin-bottom: var(--space-xs); }

@keyframes grits-toc-flash { 0% { background-color: rgba(183, 162, 102, 0.45); }
  100% { background-color: transparent; } }
.p-single-nav { margin-top: 5rem; }
@media screen and (max-width: 960px) { .p-single-nav { margin-top: 0; } }
.p-single-nav__list { display: flex; justify-content: space-between; gap: 2rem; list-style: none; margin: 0; padding: 0; }
@media screen and (max-width: 960px) { .p-single-nav__list { flex-wrap: wrap; gap: 1.5rem; } }
@media screen and (max-width: 960px) { .p-single-nav__item { width: calc((100% - 1.5rem) / 2); }
  .p-single-nav__item--back { order: 1; width: 100%; } }
.p-single-nav__link { display: flex; align-items: center; justify-content: center; width: 30rem; height: 6.5rem; font-size: 1.6rem; color: #fff; background-color: #b29465; border: 0.1rem solid #b29465; border-radius: 3.3rem; text-decoration: none; transition: all 0.3s ease; }
@media (hover: hover) { .p-single-nav__link:hover { opacity: 0.85; } }
@media screen and (max-width: 960px) { .p-single-nav__link { width: 100%; height: 5rem; font-size: 1.5rem; } }
.p-single-nav__link--disabled { opacity: 0.5; cursor: not-allowed; pointer-events: none; }

@media (max-width: 960px) { .p-single__content :is(p, td, li, th, blockquote, a) { font-size: 1.5rem; line-height: 185%; }
  .p-single__content h1 { font-size: 2rem; }
  .p-single__content h2 { font-size: 1.9rem; padding: 1.2rem 1.5rem; }
  .p-single__content h3 { font-size: 1.8rem; }
  .p-single__content h4 { font-size: 1.7rem; }
  .p-single__content h5 { font-size: 1.6rem; }
  .p-single__content h6 { font-size: 1.5rem; }
  .p-single__content blockquote { padding: 1.5rem; }
  .p-single__date { font-size: 1.5rem; }
  .p-single__title { font-size: 2rem; }
  .p-single-nav { margin-top: 0; }
  .p-single-nav__link { width: 20rem; height: 5rem; font-size: 1.5rem; } }
@media (max-width: 767px) { .p-single__header { padding: 1rem; }
  .p-single-nav__list { flex-wrap: wrap; gap: 1.5rem; }
  .p-single-nav__link { width: 100%; }
  .p-single-nav__item { width: calc((100% - 1.501rem) / 2); }
  .p-single-nav__item.p-single-nav__item--back { order: 1; width: 100%; } }
img { border-radius: 0rem; overflow: hidden; }

.p-column { margin-block: 4rem 8rem; }
@media screen and (max-width: 960px) { .p-column { margin-block: 2rem 4rem; } }
.p-column__list { display: flex; flex-wrap: wrap; gap: 5rem 1.5rem; list-style: none; margin: 0; padding: 0; }
@media screen and (max-width: 960px) { .p-column__list { gap: 5rem 1rem; } }
.p-column__item { flex: 0 0 calc((100% - 4.5rem) / 4); box-sizing: border-box; }
@media screen and (max-width: 960px) { .p-column__item { flex: 0 0 calc((100% - 1rem) / 2); } }

.c-column-card { display: flex; flex-direction: column; }
.c-column-card__thumb-link { display: block; text-decoration: none; }
@media (hover: hover) { .c-column-card__thumb-link:hover { opacity: 0.85; } }
.c-column-card__thumb { position: relative; margin: 0 0 1rem; line-height: 0; aspect-ratio: 4 / 2.8; border-radius: 1.5rem; overflow: hidden; }
@media screen and (max-width: 960px) { .c-column-card__thumb { border-radius: 0.8rem; } }
.c-column-card__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.c-column-card__thumb--placeholder { background-color: rgba(178, 148, 101, 0.2); }
.c-column-card__thumb--placeholder::after { content: "NO IMAGE"; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #b29465; font-size: 1.4rem; font-weight: 700; letter-spacing: 0.2rem; line-height: 1; opacity: 0.6; }
.c-column-card__content { display: flex; flex-direction: column; }
.c-column-card__date { display: inline-block; align-self: flex-start; padding: 0.5rem 1.5rem; margin-bottom: 1rem; background-color: #b29465; color: #fff; font-size: 1.5rem; font-weight: 700; line-height: 175%; letter-spacing: 0.1rem; border-radius: 0.5rem; text-decoration: none; }
@media screen and (max-width: 960px) { .c-column-card__date { font-size: 1rem; padding: 0.6rem; line-height: 120%; margin-top: -3.4rem; z-index: 1; margin-bottom: 1.5rem; } }
.c-column-card__title { margin: 0 0 1rem; }
.c-column-card__title a { display: inline-block; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; color: #333333; font-weight: bold; text-align: justify; text-decoration: none !important; transition: opacity 0.3s ease; }
@media (max-width: 960px) { .c-column-card__title a { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
@media (hover: hover) { .c-column-card__title a:hover { opacity: 0.7; } }
@media screen and (max-width: 960px) { .c-column-card__title a { line-height: 130%; } }
.c-column-card__excerpt { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.55; letter-spacing: 0.1rem; color: #333333; text-align: justify; }
@media screen and (max-width: 960px) { .c-column-card__excerpt { font-size: 1.4rem; letter-spacing: 0; line-height: 165%; } }

.p-drawer { position: fixed; inset: 0; z-index: 100; background-color: rgba(255, 255, 255, 0.98); overflow-y: auto; visibility: hidden; opacity: 0; transition: opacity 0.4s ease, visibility 0s linear 0.4s; }
.p-drawer.is-open { visibility: visible; opacity: 1; transition: opacity 0.4s ease, visibility 0s linear 0s; }
.p-drawer__inner { min-height: 100%; display: flex; align-items: center; justify-content: center; padding: 12rem 4rem; }
@media screen and (max-width: 960px) { .p-drawer__inner { padding: 9rem 2rem 12rem; align-items: flex-start; } }
.p-drawer__columns { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; width: 100%; max-width: 120rem; }
.p-drawer__columns--asymmetric { grid-template-columns: 1fr 2fr; }
@media screen and (max-width: 960px) { .p-drawer__columns { grid-template-columns: 1fr; gap: 3rem; } }
.p-drawer__col { min-width: 0; }
.p-drawer__heading { display: flex; align-items: center; gap: 1.6rem; margin: 0 0 1.6rem; padding-bottom: 1rem; border-bottom: 2px solid #b29465; }
.p-drawer__heading-icon { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 6rem; height: 6rem; color: #b29465; }
.p-drawer__heading-icon svg, .p-drawer__heading-icon img { width: 100%; height: 100%; object-fit: contain; display: block; }
@media screen and (max-width: 960px) { .p-drawer__heading-icon { width: 4.8rem; height: 4.8rem; } }
.p-drawer__heading-text { flex: 1 1 auto; min-width: 0; }
.p-drawer__heading .ja { display: block; font-size: 1.8rem; font-weight: 500; color: #b29465; line-height: 1; margin-bottom: 0.8rem; letter-spacing: 0.1rem; }
.p-drawer__heading .en { display: block; font-size: 3.4rem; font-weight: 700; color: #333333; font-family: "Zen Old Mincho", serif; letter-spacing: 0.2rem; line-height: 1; }
@media screen and (max-width: 960px) { .p-drawer__heading .en { font-size: 2.6rem; } }
.p-drawer__menu { list-style: none; margin: 0; padding: 0; }
.p-drawer__menu--split { column-count: 2; column-gap: 4rem; }
@media screen and (max-width: 960px) { .p-drawer__menu--split { column-count: 1; column-gap: 0; } }
.p-drawer__menu--split > li { break-inside: avoid; page-break-inside: avoid; -webkit-column-break-inside: avoid; }
.p-drawer__menu > li > a { position: relative; display: block; padding: 1.6rem 0 1.6rem 1.8rem; color: #333333; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; text-decoration: none; transition: color 0.25s ease, padding-left 0.25s ease; }
@media (max-width: 960px) { .p-drawer__menu > li > a { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
.p-drawer__menu > li > a::before { content: ""; position: absolute; top: 50%; left: 0; width: 0; height: 0; border-top: 0.45rem solid transparent; border-bottom: 0.45rem solid transparent; border-left: 0.7rem solid #b29465; transform: translateY(-50%); transition: transform 0.25s ease; }
@media (hover: hover) { .p-drawer__menu > li > a:hover { color: #b29465; padding-left: 2.6rem; }
  .p-drawer__menu > li > a:hover::before { transform: translateY(-50%) translateX(0.4rem); } }
@media screen and (max-width: 960px) { .p-drawer__menu > li > a { padding: 0.5rem 0 0.5rem 1.6rem; font-weight: 500; } }
.p-drawer__menu .sub-menu { list-style: none; margin: 0 0 1rem 1.6rem; padding: 0; }
.p-drawer__menu .sub-menu li { border-bottom: 0; }
.p-drawer__menu .sub-menu li a { position: relative; display: block; padding: 0.6rem 0 0.6rem 1.6rem; font-size: var(--size-p); font-weight: 500; color: #666; text-decoration: none; transition: color 0.25s ease, padding-left 0.25s ease; }
.p-drawer__menu .sub-menu li a::before { content: ""; position: absolute; top: 50%; left: 0; width: 0.9rem; height: 0.1rem; background-color: #b29465; transform: translateY(-50%); transition: width 0.25s ease; }
@media (hover: hover) { .p-drawer__menu .sub-menu li a:hover { color: #b29465; padding-left: 2.2rem; }
  .p-drawer__menu .sub-menu li a:hover::before { width: 1.5rem; } }

body.is-menu-open { overflow: hidden; }

.l-author-container { margin-block: 6rem; padding: 4.5rem; background: rgba(178, 148, 101, 0.1); }
@media screen and (max-width: 960px) { .l-author-container { padding: 1rem; margin-block: 4rem; } }

.c-author { display: flex; gap: 0; padding: 3rem; margin-bottom: 3rem; background: #fff; border: 0.1rem solid #b29465; }
.c-author:last-child { margin-bottom: 0; }
@media screen and (max-width: 960px) { .c-author { flex-direction: column; padding: 2rem 1.5rem; } }
.c-author__info { width: calc(100% - 33rem); padding-right: 6rem; }
@media screen and (max-width: 960px) { .c-author__info { order: 1; width: 100%; padding-right: 0; } }
.c-author__avatar { flex-shrink: 0; width: 33rem; }
.c-author__avatar.tn-02 { position: relative; z-index: 0; }
.c-author__avatar img { width: 100%; display: block; border-radius: 0.5rem; }
@media screen and (max-width: 960px) { .c-author__avatar { width: 100%; margin-bottom: 2rem; } }
.c-author__title { margin: 0 0 3rem; font-size: 3rem; font-weight: 600; line-height: 140%; letter-spacing: 0.15rem; color: #b29465; }
.c-author__title.vz-02 { font-size: 2.4rem; margin-bottom: 1.5rem; }
@media screen and (max-width: 960px) { .c-author__title { font-size: 2rem; margin-bottom: 1.5rem; }
  .c-author__title.vz-02 { font-size: 1.8rem; } }
.c-author__name { margin-bottom: 3rem; padding-bottom: 2.5rem; border-bottom: 0.1rem dashed #333333; }
.c-author__name p { margin: 0 0 0.4rem; font-size: var(--size-p); font-weight: 500; line-height: 175%; color: #333333; }
.c-author__name p:nth-child(2) { font-size: 2.4rem; font-weight: 700; letter-spacing: 0.1rem; }
@media screen and (max-width: 960px) { .c-author__name p:nth-child(2) { font-size: 1.8rem; } }
@media screen and (max-width: 960px) { .c-author__name { margin-bottom: 2.5rem; }
  .c-author__name p { font-size: 1.5rem; } }
.c-author__list { margin: 0 0 3.5rem; }
.c-author__list ul, .c-author__list ol { list-style: none; margin: 0; padding: 0; }
.c-author__list li { position: relative; margin-bottom: 1.5rem; padding-left: 1.6rem; font-size: var(--size-p); font-weight: 500; line-height: 175%; letter-spacing: 0.1rem; color: #333333; list-style: none; }
.c-author__list li:last-child { margin-bottom: 0; }
.c-author__list li::before { content: ""; position: absolute; top: 1.2rem; left: 0; width: 0.6rem; height: 0.6rem; border-radius: 50%; background: #b29465; }
@media screen and (max-width: 960px) { .c-author__list { margin-bottom: 2.5rem; }
  .c-author__list li { margin-bottom: 0.5rem; padding-left: 1.4rem; font-size: 1.5rem; }
  .c-author__list li::before { top: 1rem; } }
.c-author__desc { margin-bottom: 4rem; padding: 2.5rem; background: rgba(178, 148, 101, 0.2); }
.c-author__desc p { margin: 0; font-size: var(--size-p); font-weight: 500; line-height: 175%; letter-spacing: 0.1rem; color: #333333; }
@media screen and (max-width: 960px) { .c-author__desc { padding: 1.5rem; margin-bottom: 3rem; } }
.c-author__link ul { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; list-style: none; margin: 0; padding: 0; }
.c-author__link ul li a { display: flex; align-items: center; justify-content: center; height: 6rem; font-size: var(--size-p); font-weight: 400; line-height: 175%; color: #fff; background: #b29465; text-decoration: none; transition: opacity 0.2s ease; }
@media (hover: hover) { .c-author__link ul li a:hover { opacity: 0.85; } }
.c-author__link.vz-02 ul { grid-template-columns: repeat(3, 1fr); gap: 1rem; }
@media screen and (max-width: 960px) { .c-author__link ul, .c-author__link.vz-02 ul { grid-template-columns: 1fr; gap: 1rem; }
  .c-author__link ul li a { height: 5.5rem; } }
.c-author__table { margin: 0 0 3rem; border: 0.1rem solid #999; }
.c-author__table dl { display: flex; margin: 0; border-bottom: 0.1rem solid #999; }
.c-author__table dl:last-child { border-bottom: 0; }
.c-author__table dl dt, .c-author__table dl dd { margin: 0; padding: 1rem 2rem; font-size: var(--size-p); font-weight: 500; line-height: 175%; letter-spacing: 0.1rem; color: #333333; }
.c-author__table dl dt { width: 16rem; background: #b29465; color: #fff; }
.c-author__table dl dd { flex: 1; }
@media screen and (max-width: 960px) { .c-author__table dl dt, .c-author__table dl dd { padding: 0.7rem; font-size: 1.5rem; }
  .c-author__table dl dt { width: 9rem; } }

#toc_container { counter-reset: toc; width: 100%; max-width: 100%; margin: 3rem 0 8rem; padding: 2.4rem 3rem 2rem; background: rgba(178, 148, 101, 0.08); border: 1px solid rgba(178, 148, 101, 0.5); border-radius: 0.6rem; box-shadow: 0 0.2rem 0.8rem rgba(0, 0, 0, 0.04); box-sizing: border-box; }
@media screen and (max-width: 960px) { #toc_container { padding: 1.8rem 1.6rem 1.4rem; margin: 2rem 0 6rem; } }
#toc_container p.toc_title { position: relative; margin: 0; padding: 0 0 1rem 3rem; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; font-weight: bold; color: #333333; border-bottom: 0.2rem solid #b29465; text-align: left; margin-bottom: 1.6rem; }
@media (max-width: 960px) { #toc_container p.toc_title { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
#toc_container p.toc_title::before { content: ""; position: absolute; top: 0.6rem; left: 0; width: 2rem; height: 2rem; background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor); background-size: 1.4rem 0.25rem, 1.4rem 0.25rem, 1.4rem 0.25rem; background-position: 0 0.4rem, 0 0.9rem, 0 1.4rem; background-repeat: no-repeat; color: #b29465; }
@media screen and (max-width: 960px) { #toc_container p.toc_title { font-size: 1.6rem; } }
#toc_container .toc_list { list-style: none !important; margin: 0 !important; padding: 0 !important; }
#toc_container .toc_list li { position: relative; margin: 0 !important; padding: 1.2rem 0 1.2rem 2.4rem; border-bottom: 1px dashed rgba(178, 148, 101, 0.35); list-style: none !important; }
@media screen and (max-width: 960px) { #toc_container .toc_list li { padding: 0.8rem 0 0.8rem 2.2rem; }
  #toc_container .toc_list li:last-child { border-bottom: none; } }
#toc_container .toc_list li::before { content: ""; position: absolute; left: 0.4rem; top: 2.3rem; width: 0; height: 0; border-top: 0.5rem solid transparent; border-bottom: 0.5rem solid transparent; border-left: 0.7rem solid #b29465; }
@media screen and (max-width: 960px) { #toc_container .toc_list li::before { top: 1.4rem; } }
#toc_container .toc_list li ul { list-style: none !important; margin: 0.6rem 0 0 0 !important; padding: 0 !important; border-top: 1px dashed rgba(178, 148, 101, 0.35); }
#toc_container .toc_list li ul li { padding: 0.6rem 0 0.6rem 2rem; border-bottom: 0; font-size: 1.4rem; }
#toc_container .toc_list li ul li::before { content: ""; top: 1.2rem; width: 0.7rem; height: 0.7rem; border: 0.15rem solid #b29465; border-radius: 50%; background: transparent; }
#toc_container .toc_list li a { color: #333333; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; font-weight: 500; text-decoration: none; transition: color 0.2s ease, padding-left 0.2s ease; }
@media (max-width: 960px) { #toc_container .toc_list li a { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
@media (hover: hover) { #toc_container .toc_list li a:hover { color: #b29465; } }
@media screen and (max-width: 960px) { #toc_container .toc_list li a { font-size: 1.5rem; line-height: 150%; } }
#toc_container.toc--circle .toc_list > li::before { top: 1.7rem; border: 0; width: 0.9rem; height: 0.9rem; background: #b29465; border-radius: 50%; }
#toc_container.toc--cols-2 .toc_list { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 3rem; row-gap: 0; }
@media screen and (max-width: 960px) { #toc_container.toc--cols-2 .toc_list { grid-template-columns: 1fr; } }
#toc_container.toc--cols-3 .toc_list { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 3rem; row-gap: 0; }
@media screen and (max-width: 1024px) { #toc_container.toc--cols-3 .toc_list { grid-template-columns: repeat(2, 1fr); } }
@media screen and (max-width: 960px) { #toc_container.toc--cols-3 .toc_list { grid-template-columns: 1fr; } }
#toc_container.toc--button .toc_list { display: grid; grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); gap: 1.2rem; }
@media screen and (max-width: 960px) { #toc_container.toc--button .toc_list { grid-template-columns: 1fr 1fr; gap: 0.8rem; } }
#toc_container.toc--button .toc_list > li { border: 0.1rem solid #b29465; background: #fff; padding: 1.4rem 3rem 1.4rem 1.6rem; border-radius: 0.4rem; transition: background 0.25s ease, transform 0.2s ease; }
#toc_container.toc--button .toc_list > li::before { display: none; }
#toc_container.toc--button .toc_list > li::after { content: ""; position: absolute; right: 1.4rem; top: 50%; width: 0.7rem; height: 0.7rem; border-top: 0.2rem solid #b29465; border-right: 0.2rem solid #b29465; transform: translateY(-50%) rotate(45deg); transition: right 0.2s ease; }
@media (hover: hover) { #toc_container.toc--button .toc_list > li:hover { background: #b29465; }
  #toc_container.toc--button .toc_list > li:hover::after { border-color: #fff; right: 1rem; }
  #toc_container.toc--button .toc_list > li:hover a { color: #fff; } }
#toc_container.toc--button .toc_list > li a { display: block; }

.catalogue-list { margin: 2rem 0; }
@media screen and (max-width: 960px) { .catalogue-list { margin: 1.6rem 0; } }
.catalogue-list > :first-child { margin-top: 0; }
.catalogue-list > :last-child { margin-bottom: 0; }
.catalogue-list h2, .catalogue-list h3, .catalogue-list h4, .catalogue-list h5 { margin: 2rem 0 1.2rem; padding: 0 0 0.8rem 0; font-size: 1.6rem; font-weight: 700; line-height: 1.4; color: #333333; border-bottom: 0.2rem solid #b29465; }
.catalogue-list h2:first-child, .catalogue-list h3:first-child, .catalogue-list h4:first-child, .catalogue-list h5:first-child { margin-top: 0; }
@media screen and (max-width: 960px) { .catalogue-list h2, .catalogue-list h3, .catalogue-list h4, .catalogue-list h5 { font-size: 1.5rem; } }
.catalogue-list ul, .catalogue-list ol { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; }
.catalogue-list ul:last-child, .catalogue-list ol:last-child { margin-bottom: 0; }
.catalogue-list ul li, .catalogue-list ol li { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.catalogue-list ul li a, .catalogue-list ol li a { display: inline-flex; align-items: center; justify-content: center; min-height: 4.6rem; padding: 1rem 2.5rem; background: #fff; color: #b29465; border: 0.15rem solid #b29465; border-radius: 0; font-size: 1.5rem; font-weight: 700; line-height: 1.4; text-decoration: none !important; box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.05); transition: all 0.2s ease; white-space: nowrap; }
@media (hover: hover) { .catalogue-list ul li a:hover, .catalogue-list ol li a:hover { background: #b29465; color: #fff; box-shadow: 0 0.2rem 0.6rem rgba(178, 148, 101, 0.3); } }
@media screen and (max-width: 960px) { .catalogue-list ul li a, .catalogue-list ol li a { min-height: 3.8rem; padding: 0.6rem 1.4rem; font-size: 1.3rem; white-space: normal; } }
.catalogue-list ul li.is-current a, .catalogue-list ol li.is-current a { background: #b29465; color: #fff; border-color: #b29465; box-shadow: 0 0.2rem 0.6rem rgba(178, 148, 101, 0.25); cursor: default; pointer-events: none; }
@media screen and (max-width: 960px) { .catalogue-list ul, .catalogue-list ol { justify-content: flex-start; } }
@media screen and (max-width: 960px) and (max-width: 767px) { .catalogue-list ul, .catalogue-list ol { gap: 0.5rem; } }
@media screen and (max-width: 960px) { .catalogue-list ul li, .catalogue-list ol li { width: calc((100% - 2rem) / 3); }
  .catalogue-list ul li a, .catalogue-list ol li a { width: 100%; text-align: center; min-height: 100%; padding: 1.5rem; } }
@media screen and (max-width: 960px) and (max-width: 767px) { .catalogue-list ul li, .catalogue-list ol li { width: calc((100% - 0.5rem) / 2); }
  .catalogue-list ul li a, .catalogue-list ol li a { padding: 1rem 1.5rem; } }

.catalogue-list--stacked ul, .catalogue-list--stacked ol { flex-direction: column; gap: 0; }
.catalogue-list--stacked ul li, .catalogue-list--stacked ol li { border-bottom: 0.1rem dashed rgba(178, 148, 101, 0.35); }
.catalogue-list--stacked ul li:last-child, .catalogue-list--stacked ol li:last-child { border-bottom: 0; }
.catalogue-list--stacked ul a, .catalogue-list--stacked ol a { display: block; background: transparent; border: 0; border-radius: 0; padding: 0.9rem 0 0.9rem 2rem; font-size: var(--size-p); position: relative; }
.catalogue-list--stacked ul a::before, .catalogue-list--stacked ol a::before { content: ""; position: absolute; left: 0.4rem; top: 50%; width: 0; height: 0; border-top: 0.4rem solid transparent; border-bottom: 0.4rem solid transparent; border-left: 0.6rem solid #b29465; transform: translateY(-50%); }
@media (hover: hover) { .catalogue-list--stacked ul a:hover, .catalogue-list--stacked ol a:hover { background: transparent; color: #b29465; padding-left: 2.4rem; } }
.catalogue-list--cols-2 ul, .catalogue-list--cols-2 ol { display: grid; grid-template-columns: repeat(2, 1fr); }
@media screen and (max-width: 960px) { .catalogue-list--cols-2 ul, .catalogue-list--cols-2 ol { grid-template-columns: 1fr; } }
.catalogue-list--cols-3 ul, .catalogue-list--cols-3 ol { display: grid; grid-template-columns: repeat(3, 1fr); }
@media screen and (max-width: 1024px) { .catalogue-list--cols-3 ul, .catalogue-list--cols-3 ol { grid-template-columns: repeat(2, 1fr); } }
@media screen and (max-width: 960px) { .catalogue-list--cols-3 ul, .catalogue-list--cols-3 ol { grid-template-columns: 1fr; } }

.c-sitemap { display: flex; flex-direction: column; gap: 4rem; margin-block: 4rem 8rem; }
@media screen and (max-width: 960px) { .c-sitemap { gap: 2.4rem; margin-block: 2.4rem 4rem; } }
.c-sitemap__group { width: 100%; }
.c-sitemap__title { margin: 0 0 1.6rem; padding: 0 0 1rem; border-bottom: 0.2rem solid #b29465; line-height: 1.3; }
.c-sitemap__title .ja { display: inline-block; margin-right: 1rem; font-size: 2.2rem; font-weight: 700; color: #b29465; vertical-align: middle; }
@media screen and (max-width: 960px) { .c-sitemap__title .ja { font-size: 1.8rem; } }
.c-sitemap__title .en { display: inline-block; position: relative; top: 0.4rem; font-family: "Zen Old Mincho", serif; font-size: 1.6rem; font-weight: 500; color: #b29465; letter-spacing: 0.2rem; vertical-align: middle; }
@media screen and (max-width: 960px) { .c-sitemap__title .en { font-size: 1.4rem; } }
.c-sitemap__list { list-style: none; margin: 0; padding: 3rem; display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 3rem; row-gap: 0; background: #f1f1f1; border-radius: 0.5rem; }
@media screen and (max-width: 1024px) { .c-sitemap__list { grid-template-columns: repeat(2, 1fr); } }
@media screen and (max-width: 960px) { .c-sitemap__list { padding: 1rem 1.5rem; } }
@media screen and (max-width: 767px) { .c-sitemap__list { grid-template-columns: 1fr; } }
.c-sitemap__list > li { position: relative; padding: 1rem 0 1rem 1.6rem; border-bottom: 0.1rem dashed rgba(178, 148, 101, 0.35); line-height: 1.5; }
@media screen and (max-width: 767px) { .c-sitemap__list > li:last-child { border-bottom: none; } }
.c-sitemap__list > li::before { content: ""; position: absolute; top: 2.3rem; left: 0; width: 0; height: 0; border-top: 0.4rem solid transparent; border-bottom: 0.4rem solid transparent; border-left: 0.6rem solid #b29465; }
@media screen and (max-width: 960px) { .c-sitemap__list > li::before { top: 2rem; } }
.c-sitemap__list > li > a { color: #333333; font-size: var(--size-p); line-height: 195%; letter-spacing: 0.05rem; font-weight: 400; text-decoration: none; transition: ease all 0.2s; }
@media (max-width: 960px) { .c-sitemap__list > li > a { line-height: 185%; letter-spacing: 0em; text-align: justify; } }
@media (hover: hover) { .c-sitemap__list > li > a:hover { color: #b29465; } }
.c-sitemap__sub { list-style: none; margin: 0.8rem 0 0; padding: 0 0 0 1rem; }
.c-sitemap__sub li { position: relative; padding: 0.4rem 0 0.4rem 1.4rem; font-size: 1.4rem; line-height: 1.5; }
.c-sitemap__sub li::before { content: "─"; position: absolute; left: 0; top: 0.4rem; color: #b29465; font-weight: 700; }
.c-sitemap__sub li a { color: #555; text-decoration: none; transition: color 0.2s ease; }
@media (hover: hover) { .c-sitemap__sub li a:hover { color: #b29465; text-decoration: underline; } }

@media screen and (max-width: 960px) { .br-sp { display: none; } }

@media screen and (max-width: 767px) { .br-sp767 { display: none; } }

.p-heading { display: flex; flex-direction: column; gap: 1.1rem; padding-bottom: 7.8rem; }
@media screen and (max-width: 960px) { .p-heading { padding-bottom: 4rem; } }
.p-heading--en { color: #535353; font-size: 6rem; font-weight: 400; line-height: 100%; letter-spacing: 0.09em; }
@media screen and (max-width: 960px) { .p-heading--en { text-align: center; font-size: 4rem; z-index: 1; letter-spacing: 0; } }
.p-heading--jp { color: #535353; font-size: 2rem; font-weight: 400; line-height: 150%; letter-spacing: 0; }
@media screen and (max-width: 960px) { .p-heading--jp { font-size: 1.7rem; text-align: center; z-index: 1; } }

.p-price { border-top: 0.1rem solid #b29465; border-left: 0.1rem solid #b29465; }
.p-price__head { display: grid; grid-template-columns: 24rem 1fr 1fr; background: #eae3d4; }
.p-price__head dt { color: #333; font-size: var(--size-p); font-weight: 600; line-height: 1.5; letter-spacing: 0; padding: 2rem 3rem; border-right: 0.1rem solid #b29465; border-bottom: 0.1rem solid #b29465; }
.p-price__group { display: grid; grid-template-columns: 24rem 1fr; }
.p-price__category { color: #333; font-size: var(--size-p); font-weight: 600; line-height: 1.5; letter-spacing: 0; display: flex; align-items: center; padding: 1.5rem; border-right: 0.1rem solid #b29465; border-bottom: 0.1rem solid #b29465; }
.p-price__row { display: grid; grid-template-columns: 1fr 1fr; }
.p-price__row dt, .p-price__row dd { color: #333; font-size: var(--size-p); font-weight: 500; line-height: 1.5; letter-spacing: 0; padding: 2rem 1.5rem; border-right: 0.1rem solid #b29465; border-bottom: 0.1rem solid #b29465; }
.p-price__row dd { text-align: left; }
@media (max-width: 767px) { .p-price__head { grid-template-columns: 10rem 1fr 1fr; }
  .p-price__head dt { padding: 1rem; }
  .p-price__group { grid-template-columns: 10rem 1fr; }
  .p-price__category { padding: 1rem; }
  .p-price__row { grid-template-columns: 1fr 1fr; }
  .p-price__row dt, .p-price__row dd { padding: 1rem; } }

.p-recruit { padding: 2rem; border: 0.1rem solid #ede8e1; border-radius: 1rem; }
@media screen and (max-width: 960px) { .p-recruit { border: none; padding: 0; } }
.p-recruit__head { padding-bottom: 2.4rem; }
.p-recruit__title { color: #333333; font-size: 3rem; font-weight: 700; line-height: 150%; letter-spacing: 0; }
@media screen and (max-width: 960px) { .p-recruit__title { font-size: 2rem; } }
.p-recruit__row { display: flex; padding: 3rem 0; position: relative; }
.p-recruit__row:not(:last-child) { border-bottom: 0.1rem solid #e2e8f0; }
@media screen and (max-width: 960px) { .p-recruit__row:not(:last-child) { border: none; } }
@media screen and (max-width: 960px) { .p-recruit__row { display: block; padding: 2rem 0; } }
.p-recruit__row dt { width: 25rem; flex-shrink: 0; color: #333333; font-size: var(--size-p); font-weight: 700; line-height: 170%; letter-spacing: 0; }
@media screen and (max-width: 960px) { .p-recruit__row dt { width: 100%; margin-bottom: 1.5rem; background-color: rgba(178, 148, 101, 0.3); color: #b29465; padding: 1rem; } }
.p-recruit__row dd { flex: 1; color: #333333; font-size: var(--size-p); font-weight: 500; line-height: 200%; letter-spacing: 0; }
.p-recruit__row dd p + p { margin-top: 2rem; }

.c-tag { display: flex; flex-wrap: wrap; gap: 0.8rem; margin-bottom: 2rem; }
.c-tag li a { display: block; padding: 0.4rem 1rem; border: 0.1rem solid #996b00; border-radius: 10rem; background: #ffffff; color: #996b00; font-size: var(--size-p); font-weight: 500; line-height: 140%; letter-spacing: 0; transition: all 0.35s ease; }
.c-tag li a:hover { opacity: 0.8; }

.p-actions { display: flex; gap: 3rem; }
.p-actions .p-button { position: relative; display: flex; justify-content: center; align-items: center; text-align: center; color: #ffffff; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; width: 25.2rem; height: 5.9rem; background-color: #b29465; transition: all 0.35s ease; }
.p-actions .p-button::before { content: ""; position: absolute; width: calc(100% - 0.6rem); height: calc(100% - 0.6rem); background: transparent; border: 0.5px solid #f4eee0; transition: all 0.35s ease; }
.p-actions .p-button::after { content: ""; position: absolute; width: 1.455rem; height: 1.455rem; background: #f4eee0; right: 3px; bottom: 3px; clip-path: polygon(100% 0, 0% 100%, 100% 100%); transition: all 0.35s ease; }
.p-actions .p-button:hover { background-color: #eae3d4; color: #535353; }
.p-actions .p-button:hover::before { border-color: #b29465; }
.p-actions .p-button:hover::after { background-color: #b29465; }

.p-mv { width: 100%; height: 100rem; overflow: hidden; position: relative; z-index: 2; }
.p-mv::before { content: ""; position: absolute; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.36); top: 0; left: 0; z-index: 1; }
@media screen and (max-width: 960px) { .p-mv { height: 50.2rem; } }
@media screen and (max-width: 767px) { .p-mv { height: calc(100vh - 15rem); }
  .p-mv .p-mv__slide, .p-mv .slick-list, .p-mv .slick-track, .p-mv .slick-slide, .p-mv .p-mv__slide--item { height: 100%; } }

.p-mv--slide .p-mv__slide { width: 100%; height: 100%; }
.p-mv--slide .p-mv__slide--item { width: 100%; height: 100%; }
.p-mv--slide .p-mv__slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media screen and (max-width: 767px) { .p-mv--slide .p-mv__slide img { object-position: left; } }

.p-mv__cont { position: absolute; bottom: 4.4rem; left: 8.8rem; z-index: 2; }
@media screen and (max-width: 960px) { .p-mv__cont { bottom: 1.5rem; left: 1.5rem; width: 74%; } }
@media screen and (max-width: 767px) { .p-mv__cont { bottom: 2.5rem; left: 1.5rem; transform: translate(0, 0); width: 94%; } }
.p-mv__cont--desc { display: flex; flex-direction: column; gap: 3rem; }
@media screen and (max-width: 960px) { .p-mv__cont--desc { justify-content: center; align-items: flex-start; text-align: justify; gap: 2rem; } }
@media screen and (max-width: 767px) { .p-mv__cont--desc { padding-bottom: 0; } }
.p-mv__cont h2 { color: #ffffff; font-size: 5rem; font-weight: 400; line-height: 140%; letter-spacing: 0; text-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.25); }
@media screen and (max-width: 960px) { .p-mv__cont h2 { font-size: 3rem; } }
@media screen and (max-width: 767px) { .p-mv__cont h2 { font-size: 2.3rem; width: 81%; } }
.p-mv__cont p { color: #ffffff; font-size: 2.2rem; line-height: 159.09%; font-weight: 400; text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); }
@media screen and (max-width: 960px) { .p-mv__cont p { font-size: 2rem; text-align: justify; line-height: 185%; } }
@media screen and (max-width: 767px) { .p-mv__cont p { font-size: 1.3rem; line-height: 185%; width: 67%; } }

.p-mv__list { display: flex; flex-wrap: wrap; position: absolute; bottom: 4rem; right: 8.4rem; gap: 2.8rem; z-index: 2; }
@media screen and (max-width: 960px) { .p-mv__list { width: auto; justify-content: flex-end; flex-direction: column; right: 1.5rem; bottom: 1.5rem; gap: 1.5rem; transform: translateX(0); } }
@media screen and (max-width: 767px) { .p-mv__list { width: auto; justify-content: flex-end; flex-direction: column; right: 0.5rem; bottom: 1.5rem; gap: 1.5rem; transform: translateX(0); } }

.p-mv__item .p-mv__link { display: flex; justify-content: center; align-items: center; text-align: center; width: 19.8rem; height: 19.2rem; color: #ffffff; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; padding-top: 8rem; transition: all 0.35s ease; position: relative; }
.p-mv__item .p-mv__link--1 { background: url(assets/img/top-mv-03.png) center/cover; }
.p-mv__item .p-mv__link--2 { background: url(assets/img/top-mv-02.png) center/cover; }
.p-mv__item .p-mv__link::after { content: ""; position: absolute; width: 1.209rem; height: 1.209rem; background: #f1efe8; clip-path: polygon(100% 0, 0% 100%, 100% 100%); bottom: 2.4rem; left: 50%; transform: translateX(-50%) rotate(-45deg); }
.p-mv__item .p-mv__link:hover { opacity: 0.8; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-mv__item .p-mv__link { width: 15.8rem; height: 15.2rem; padding-top: 5rem; font-size: 1.6rem; } }
@media screen and (max-width: 960px) { .p-mv__item .p-mv__link { width: 13.4rem; height: 12.8rem; padding-top: 4.2rem; font-size: 1.5rem; }
  .p-mv__item .p-mv__link::after { bottom: 1.5rem; width: 0.8rem; height: 0.8rem; } }
@media screen and (max-width: 767px) { .p-mv__item .p-mv__link { width: 11.4rem; height: 10.8rem; padding-top: 3.2rem; }
  .p-mv__item .p-mv__link::after { bottom: 1.5rem; width: 0.8rem; height: 0.8rem; } }

.p-menu { position: relative; background-color: #f1efe8; border-block: 0.7rem solid #b29465; height: 11.6rem; display: flex; justify-content: center; align-items: center; text-align: center; z-index: 10; }
.p-menu::before { content: ""; position: absolute; width: 100%; height: calc(100% - 1.4rem); background: transparent; border-block: 1px solid #c4a97d; }
@media screen and (max-width: 960px) { .p-menu { display: none; } }

.p-menu .p-header__menu > li { position: relative; }
.p-menu .p-header__menu li { position: relative; padding: 1rem 3rem; }
.p-menu .p-header__menu li:hover { cursor: pointer; }
.p-menu .p-header__menu li:hover a { color: #b29465; }
.p-menu .p-header__menu li:hover a::after { opacity: 1; }
.p-menu .p-header__menu li:hover span { color: #b29465; }
.p-menu .p-header__menu a { position: relative; color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 150%; letter-spacing: 0; display: flex; justify-content: center; align-items: center; text-align: center; flex-direction: column; transition: all 0.35s ease; }
.p-menu .p-header__menu a::after { content: ""; position: absolute; width: 0.717rem; height: 0.717rem; background: #b29465; clip-path: polygon(100% 0, 0 100%, 100% 100%); transition: all 0.35s ease; bottom: -1rem; left: 50%; transform: translateX(-50%) rotate(45deg); opacity: 0; }
.p-menu .p-header__menu span { color: #b29465; }

.p-menu .current-menu-item::after { content: ""; position: absolute; width: 0.717rem; height: 0.717rem; background: #535353; clip-path: polygon(100% 0, 0 100%, 100% 100%); bottom: 0; left: 50%; transform: translateX(-50%) rotate(45deg); }

.p-menu .menu-item-has-children:hover .sub-menu { opacity: 1; pointer-events: auto; padding: 1rem 0 0; }
.p-menu .menu-item-has-children:has(li:nth-child(7)) { position: initial; }
.p-menu .menu-item-has-children:has(li:nth-child(7)) .sub-menu { display: flex; flex-wrap: wrap; width: 100%; left: 0; top: calc(100% - 1.9rem); padding: 3rem 10rem 5rem !important; }
.p-menu .menu-item-has-children:has(li:nth-child(7)) .sub-menu::before { content: ""; position: absolute; width: 12rem; height: 8rem; top: -35%; left: 50%; transform: translateX(-84%); }
.p-menu .menu-item-has-children:has(li:nth-child(7)) .sub-menu li { width: calc((100% - 9.001rem) / 3); margin-right: 3rem; }
.p-menu .menu-item-has-children:has(li:nth-child(7)) .sub-menu li:last-child { border-bottom: 1px solid #ffffff; }

.p-menu .sub-menu { position: absolute; width: 30rem; top: calc(100% - 0.4rem); right: 0; left: -2rem; padding: 1.5rem; transition: all 0.35s ease; pointer-events: none; z-index: 0; opacity: 0; }
.p-menu .sub-menu::after { content: ""; position: absolute; width: 100%; height: calc(100% - 1rem); background: #b29465; left: 0; bottom: 0; z-index: -1; }
.p-menu .sub-menu li { margin-left: 0; padding: 0; border-bottom: 1px solid #fff; }
.p-menu .sub-menu li:last-child { border: none; }
.p-menu .sub-menu a { position: relative; display: block; width: 100%; padding: 1.5rem 1.5rem 1.5rem 3rem; color: #ffffff !important; font-size: var(--size-p); font-weight: 400; line-height: 130%; letter-spacing: 0; border-right: 0; transition: all 0.35s ease; text-align: left; }
.p-menu .sub-menu a:hover { opacity: 0.8; }
.p-menu .sub-menu a::after { opacity: 0 !important; }
.p-menu .sub-menu a::before { content: ""; position: absolute; width: 1rem; height: 1rem; background: #ffffff; -webkit-mask: url(assets/img/icon_arrow-02.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow-02.svg) center/100% no-repeat; top: 1.9rem; left: 1rem; transform: initial; }

.p-info { width: 100%; padding: 7.3rem 0; background: url(assets/img/top-info-bg-01.png) center/cover; }
@media screen and (max-width: 960px) { .p-info { padding: 4rem 0; } }

.p-info__inner { width: 148.8rem; margin: 0 auto; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-info__inner { width: 100%; padding: 0 1.5rem; } }
@media screen and (max-width: 960px) { .p-info__inner { width: 100%; padding: 0 0rem; } }

.p-info__row { width: 100%; display: grid; grid-template-columns: repeat(2, 1fr); gap: 4rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-info__row { gap: 1.5rem; } }
@media screen and (max-width: 960px) { .p-info__row { padding: 0 1.5rem; grid-template-columns: repeat(1, 1fr); grid-template-rows: auto; gap: 2rem; } }

.p-info__news { background-color: #ffffff; padding: 4rem 1.7rem 2.9rem; position: relative; }
.p-info__news-heading { padding-bottom: 1.1rem; }
.p-info__news-wrapper { display: flex; align-items: flex-start; justify-content: space-between; width: 100%; margin-bottom: 2rem; height: 39.6rem; }
.p-info__news-list { padding: 0 2.3rem 0; display: flex; flex-direction: column; gap: 1rem; overflow-y: scroll; width: calc(100% - 2rem); height: 100%; -ms-overflow-style: none; scrollbar-width: none; }
.p-info__news-list::-webkit-scrollbar { display: none; }
.p-info__news-item { display: flex; flex-direction: column; width: 100%; border-bottom: 0.5px solid #535353; transition: all 0.35s ease; }
.p-info__news-item:hover { opacity: 0.8; }
.p-info__news-item time { color: #b29465; font-size: var(--size-p-18); font-weight: 500; line-height: 167%; letter-spacing: 0; }
.p-info__news-item a { position: relative; display: flex; flex-direction: column; color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; padding-bottom: 1rem; }
.p-info__news-item .p-info__text { position: relative; }
@media screen and (max-width: 767px) { .p-info__news-item .p-info__text { line-height: 150%; padding-right: 1.5rem; } }
.p-info__news-item .p-info__text::after { content: ""; position: absolute; width: 0.717rem; height: 0.717rem; background: #535353; clip-path: polygon(100% 0, 0 100%, 100% 100%); top: 50%; right: 0.1rem; transform: translate(-50%) rotate(-45deg); }
.p-info__news .p-custom-scrollbar { display: block; width: 0.2rem; height: 100%; margin-left: 1.5rem; }
.p-info__news .p-custom-scrollbar .p-custom-track { width: 0.2rem; height: 47.9rem; background: #d9d9d9; position: relative; top: 38%; transform: translateY(-50%); }
@media screen and (max-width: 960px) { .p-info__news .p-custom-scrollbar .p-custom-track { height: 28rem; top: 50%; } }
.p-info__news .p-custom-scrollbar .p-custom-thumb { width: 0.4rem; height: 10.1rem; background: #b29465; position: absolute; top: 0; left: -0.1rem; transition: all 0.35s ease; }
.p-info__news .p-actions { width: 100%; justify-content: center; }
@media screen and (max-width: 960px) { .p-info__news { padding: 3.5rem 1.5rem; }
  .p-info__news .p-info__news-wrapper { justify-content: space-between; height: 27.6rem; }
  .p-info__news .p-info__news-wrapper .p-info__news-list { padding: 0; height: 29rem; } }
.p-info__news::before { content: ""; position: absolute; width: 14.4rem; height: 14.4rem; background: #f1efe8; clip-path: polygon(100% 0, 0 100%, 0 0); top: 0; left: 0; }

.p-info__clinic { background-color: #ffffff; padding: 4rem 0 4.3rem; position: relative; z-index: 1; }
@media screen and (max-width: 960px) { .p-info__clinic { padding: 3.5rem 0; padding: 3rem 0; } }
.p-info__clinic::before { content: ""; position: absolute; width: 14.4rem; height: 14.4rem; background: #f1efe8; clip-path: polygon(100% 0, 0 100%, 0 0); top: 0; left: 0; z-index: -1; }
.p-info__clinic-heading { padding-bottom: 4rem; }
@media screen and (max-width: 960px) { .p-info__clinic-heading { padding-bottom: 3.5rem; } }
.p-info__clinic-body { padding: 0 8.6rem; }
@media screen and (max-width: 960px) { .p-info__clinic-body { padding: 0 1.5rem; } }

.p-info__schedule { width: 100%; border-collapse: collapse; margin-bottom: 1.2rem; table-layout: fixed; }
.p-info__schedule thead { height: 3.8rem; background-color: #b29465; }
.p-info__schedule thead tr { height: 100%; }
.p-info__schedule thead tr th { color: #ffffff; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; text-align: center; border: none; }
@media screen and (max-width: 767px) { .p-info__schedule thead tr th { font-size: 1.4rem; } }
.p-info__schedule thead tr th:first-child { width: 15.5rem; text-align: left; padding-left: 1rem; }
@media screen and (max-width: 767px) { .p-info__schedule thead tr th:first-child { width: 10rem; } }
.p-info__schedule tbody tr { height: 9.289rem; border-bottom: 1px solid #535353; }
@media screen and (max-width: 960px) { .p-info__schedule tbody tr { height: 8.6rem; } }
@media screen and (max-width: 767px) { .p-info__schedule tbody tr { height: 5.2rem; } }
.p-info__schedule tbody tr td { color: #b29465; font-size: var(--size-p-18); font-weight: bolder; line-height: 167%; letter-spacing: 0; text-align: center; }
@media screen and (max-width: 767px) { .p-info__schedule tbody tr td { font-size: 1.4rem; } }
.p-info__schedule tbody tr td:first-child { width: 15.5rem; text-align: left; padding-left: 1rem; color: #454545; font-weight: 400; }
@media screen and (max-width: 767px) { .p-info__schedule tbody tr td:first-child { width: 10rem; } }
.p-info__schedule tbody tr td:last-child { color: #535353; }

.p-info__note { color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; padding-bottom: 6rem; }
@media screen and (max-width: 960px) { .p-info__note { padding-bottom: 4rem; } }

.p-info__access { display: flex; align-items: center; gap: 1.5rem; }
@media screen and (max-width: 960px) { .p-info__access { flex-direction: column; justify-content: flex-start; gap: 5.5rem; } }
.p-info__access--text { color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; padding-left: 7.8rem; position: relative; }
@media screen and (max-width: 960px) { .p-info__access--text { width: 100% !important; } }
.p-info__access--text::before { content: ""; position: absolute; width: 6.8rem; height: 6.8rem; left: 0; top: 50%; transform: translateY(-50%); }
.p-info__access--text:first-child { width: 56.5%; }
.p-info__access--text:first-child::before { background: url(assets/img/top-info-clinic-01.png) center/contain no-repeat; }
.p-info__access--text:last-child::before { background: url(assets/img/top-info-clinic002.png) center/contain no-repeat; }

.p-banner { max-width: fit-content; margin: 0 auto; padding: 7rem 0 0 0; }
@media screen and (max-width: 960px) { .p-banner { max-width: unset; padding: 4rem 1.5rem; } }
.p-banner__list { display: flex; gap: 3rem; }
@media screen and (max-width: 960px) { .p-banner__list { gap: 1.5rem; } }
@media screen and (max-width: 767px) { .p-banner__list { flex-direction: column; } }
.p-banner__item { flex: 1; }
.p-banner__item:hover .p-banner__text { color: #b29465; }
.p-banner__link { display: flex; align-items: center; gap: 0.5rem; padding: 0.5rem; height: 100%; border: 1px solid #d5d5d5; background: #fff; }
.p-banner__img { flex-shrink: 0; width: 8rem; }
.p-banner__img img { width: 100%; height: 100%; display: block; object-fit: cover; }
.p-banner__text { color: #535353; font-size: 1.8rem; font-weight: 600; line-height: 167%; letter-spacing: 0; text-align: center; transition: all 0.35s ease; }
@media screen and (max-width: 960px) { .p-banner__text { font-size: 1.6rem; } }
.p-banner__text strong { color: #ff0000; font-weight: inherit; }

.p-message { width: 100%; height: auto; padding: 6.9rem 0 8rem; position: relative; z-index: 1; }
@media screen and (max-width: 960px) { .p-message { padding: 4rem 0; } }
@media screen and (max-width: 767px) { .p-message { padding: 3.5rem 0; } }
.p-message::after { content: ""; position: absolute; width: 33rem; height: 59rem; background: url(assets/img/top-message-decor-01.png) top right/contain no-repeat; top: 2rem; right: 0; z-index: -1; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message::after { width: 21rem; height: 47rem; top: 4rem; } }
@media screen and (max-width: 960px) { .p-message::after { width: 14rem; height: 40rem; top: 10rem; } }
@media screen and (max-width: 767px) { .p-message::after { width: 20%; top: 2rem; } }

.p-message__inner { width: 100%; }
@media screen and (max-width: 960px) { .p-message__inner { padding: 0 1.5rem; } }

.p-message__row { display: flex; }
.p-message__row--top { gap: 5.6rem; margin-bottom: 2rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--top { align-items: stretch; gap: 3rem; } }
@media screen and (max-width: 960px) { .p-message__row--top { flex-direction: column-reverse; gap: 0; margin-bottom: 0; } }
.p-message__row--top .p-message__media { width: 105.7rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--top .p-message__media { width: 55.05%; } }
.p-message__row--top .p-message__img { width: 100%; height: 100%; display: block; object-fit: cover; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--top .p-message__img { object-fit: contain; object-position: top; } }
@media screen and (max-width: 960px) { .p-message__row--top .p-message__img { border-radius: 0.8rem 0.8rem 0 0; } }
.p-message__row--top .p-message__body { padding-top: 7rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--top .p-message__body { padding-top: 5rem; } }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--top .p-message__heading { padding-bottom: 4rem; } }
@media screen and (max-width: 960px) { .p-message__row--top .p-message__heading { text-align: center; } }
.p-message__row--top .p-message__text { color: #535353; font-size: 4rem; font-weight: 600; line-height: 100%; letter-spacing: 0; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--top .p-message__text { font-size: 3rem; } }
@media screen and (max-width: 960px) { .p-message__row--top .p-message__text { font-size: 3rem; text-align: center; } }
@media screen and (max-width: 767px) { .p-message__row--top .p-message__text { font-size: 1.9rem; text-align: left; line-height: 60%; margin-bottom: 1.2rem; } }
.p-message__row--top .p-message__text strong { display: inline-block; color: #b29465; padding-bottom: 4rem; }
@media screen and (max-width: 960px) { .p-message__row--top .p-message__text strong { padding-bottom: 3rem; } }
@media screen and (max-width: 767px) { .p-message__row--top .p-message__text strong { padding-bottom: 2rem; } }
.p-message__row--top .p-message__text strong:nth-child(3) { color: #48abd5; }
.p-message__row--bottom { flex-direction: row-reverse; gap: 7.7rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--bottom { gap: 2rem; } }
@media screen and (max-width: 960px) { .p-message__row--bottom { flex-direction: column; gap: 1.5rem; } }
.p-message__row--bottom .p-message__media { width: 98rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--bottom .p-message__media { width: 51.041%; } }
.p-message__row--bottom .p-message__img { width: 100%; height: 100%; display: block; object-fit: cover; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__row--bottom .p-message__img { object-position: top; object-fit: contain; } }
@media screen and (max-width: 960px) { .p-message__row--bottom .p-message__img { border-radius: 0 0 0.8rem 0.8rem; } }
.p-message__row--bottom .p-message__body { width: 56.7rem; display: flex; flex-direction: column; gap: 7rem; margin-top: 6rem; }
@media screen and (max-width: 960px) { .p-message__row--bottom .p-message__body { gap: 4rem; } }
@media screen and (max-width: 767px) { .p-message__row--bottom .p-message__body { gap: 3rem; } }
.p-message__row--bottom .p-message__body .p-message__text { color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; }
@media screen and (max-width: 960px) { .p-message__row--bottom .p-message__body .p-message__text { line-height: 185%; } }
.p-message__row--bottom .p-message__body .p-message__actions { display: flex; flex-wrap: wrap; gap: 3rem; }
@media screen and (max-width: 960px) { .p-message__row--bottom .p-message__body .p-message__actions { display: flex; justify-content: center; align-items: center; text-align: center; } }
@media screen and (max-width: 767px) { .p-message__row--bottom .p-message__body .p-message__actions { gap: 1.5rem; } }
.p-message__row--bottom .p-message__body .p-message__actions .p-message__btn { display: flex; justify-content: center; align-items: center; text-align: center; width: 25.2rem; height: 5.9rem; color: #ffffff; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; background-color: #b29465; transition: all 0.35s ease; position: relative; }
.p-message__row--bottom .p-message__body .p-message__actions .p-message__btn::before { content: ""; position: absolute; width: calc(100% - 0.6rem); height: calc(100% - 0.6rem); border: 0.5px solid #f4eee0; transition: all 0.35s ease; }
.p-message__row--bottom .p-message__body .p-message__actions .p-message__btn::after { content: ""; position: absolute; width: 1.455rem; height: 1.455rem; background: #f4eee0; clip-path: polygon(100% 0, 0% 100%, 100% 100%); right: 3px; bottom: 3px; transition: all 0.35s ease; }
.p-message__row--bottom .p-message__body .p-message__actions .p-message__btn:hover { background-color: #eae3d4; color: #535353; }
.p-message__row--bottom .p-message__body .p-message__actions .p-message__btn:hover::before { border-color: #b29465; }
.p-message__row--bottom .p-message__body .p-message__actions .p-message__btn:hover::after { background-color: #b29465; }
@media screen and (max-width: 767px) { .p-message__row--bottom .p-message__body .p-message__actions .p-message__btn { width: 30rem; height: 6.2rem; } }
@media screen and (max-width: 960px) { .p-message__row .p-message__media { width: 100%; }
  .p-message__row .p-message__body { width: 100%; margin-top: 0; padding: 0; } }

.p-message__decor { position: absolute; color: #f1efe8; font-size: 16rem; font-weight: 400; line-height: 100%; letter-spacing: 0.1em; writing-mode: vertical-rl; text-orientation: sideways; top: 13.9rem; left: 6.2rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-message__decor { font-size: 9rem; top: 21rem; left: 1.5rem; } }
@media screen and (max-width: 960px) { .p-message__decor { writing-mode: unset; text-orientation: unset; font-size: 12rem; top: 0; left: 50%; transform: translateX(-50%); } }
@media screen and (max-width: 767px) { .p-message__decor { display: none; } }

.p-trouble { width: 100%; padding: 8.1rem 0 10.121rem; background: url(assets/img/top-trouble-bg-01.png) center/cover; position: relative; }
@media screen and (max-width: 960px) { .p-trouble { padding: 3.5rem 1.5rem; } }
.p-trouble::before { content: ""; position: absolute; width: 44.5rem; height: 40.3rem; background: url(assets/img/top-trouble-decor-01.png) top left/contain no-repeat; top: 0; left: 0; z-index: 0; }
@media screen and (max-width: 960px) { .p-trouble::before { width: 28.5rem; height: 16.3rem; } }

.p-trouble__inner { width: 100%; }

.p-trouble__header { text-align: center; }

.p-trouble__grid { width: calc(33.125 * 4rem); margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); }
@media screen and (max-width: 960px) { .p-trouble__grid { width: 100%; padding: 0; } }
@media screen and (max-width: 767px) { .p-trouble__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 550px) { .p-trouble__grid { grid-template-columns: repeat(2, 1fr); } }

.p-trouble__item { height: 27.279rem; position: relative; display: flex; justify-content: center; align-items: center; text-align: center; flex-direction: column; justify-content: space-between; background-color: #f1efe8; transition: all 0.35s ease; z-index: 1; }
@media screen and (max-width: 767px) { .p-trouble__item { height: 20rem; } }
.p-trouble__item::before { content: ""; position: absolute; width: calc(100% - 1rem); height: calc(100% - 1rem); top: 0.5rem; left: 0.5rem; background: transparent; border: 0.5px solid #535353; z-index: -1; }
.p-trouble__item::after { content: ""; position: absolute; width: 2.292rem; height: 2.292rem; background: #b29465; clip-path: polygon(100% 100%, 0 100%, 100% 0); bottom: 1.146rem; right: 1.107rem; z-index: -1; }
@media screen and (max-width: 767px) { .p-trouble__item::after { width: 1.455rem; height: 1.455rem; } }
.p-trouble__item:nth-child(2), .p-trouble__item:nth-child(4), .p-trouble__item:nth-child(5), .p-trouble__item:nth-child(7), .p-trouble__item:nth-child(10), .p-trouble__item:nth-child(12) { background-color: #eae3d4; }
.p-trouble__item:hover { opacity: 0.8; }
.p-trouble__item:hover .p-trouble__text { opacity: 0; visibility: hidden; }
.p-trouble__item:hover .p-trouble__text--hover { opacity: 1; visibility: visible; }

.p-trouble__media { padding-top: 3.9rem; }
@media screen and (max-width: 767px) { .p-trouble__media { padding-top: 1.5rem; } }

.p-trouble__text { display: flex; justify-content: center; align-items: center; text-align: center; height: 5.3rem; margin-bottom: 5.579rem; color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; transition: all 0.35s ease; }
.p-trouble__text:hover { opacity: 0; }
.p-trouble__text--hover { position: absolute; bottom: 0; visibility: hidden; transition: all 0.35s ease; opacity: 0; }
@media screen and (max-width: 960px) { .p-trouble__text { font-size: var(--size-p); } }
@media screen and (max-width: 767px) { .p-trouble__text { font-size: 1.3rem; margin-bottom: 1.5rem; width: 88%; } }

.p-trouble__decor { position: absolute; right: 6.8rem; top: 17rem; color: #b29465; font-size: 16rem; font-weight: 400; line-height: 100%; letter-spacing: 0.1em; opacity: 0.15; writing-mode: vertical-rl; text-orientation: sideways; }
@media (max-width: 1440px) { .p-trouble__decor { font-size: 12rem; top: 4rem; right: 50%; transform: translateX(50%); writing-mode: unset; text-orientation: unset; } }
@media screen and (max-width: 960px) { .p-trouble__decor { top: 0; } }
@media screen and (max-width: 767px) { .p-trouble__decor { top: 4rem; font-size: 10rem; } }
@media (max-width: 550px) { .p-trouble__decor { display: none; } }

.p-treatment { width: 100%; margin: 0rem 0 3rem; }
@media screen and (max-width: 960px) { .p-treatment { margin: 0; } }
.p-treatment .p-heading { width: 100%; display: flex; justify-content: center; align-items: center; text-align: center; margin: 0; height: 26.3rem; background: #b29465; padding: 0; overflow: hidden; position: relative; z-index: 1; }
.p-treatment .p-heading--en { color: #ffffff; }
.p-treatment .p-heading--jp { color: #ffffff; }
.p-treatment .p-heading::before { content: ""; position: absolute; width: 100%; height: 100%; background: url(assets/img/top-treatment-decor-01.png) center/cover; z-index: -1; }
.p-treatment .p-heading::after { content: ""; position: absolute; width: 196.5rem; height: 98.3rem; background: url(assets/img/top-treatment-bg-01.png) top/contain no-repeat; top: -18rem; left: -4rem; z-index: -2; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment .p-heading { height: 19.3rem; } }
@media screen and (max-width: 960px) { .p-treatment .p-heading { height: 13.3rem; } }

.p-treatment__inner { width: 100%; display: flex; flex-direction: column; gap: 3rem; }

.p-treatment__row { width: 100%; display: flex; position: relative; z-index: 1; }
@media screen and (max-width: 960px) { .p-treatment__row { flex-direction: column; } }
.p-treatment__row::before { content: ""; position: absolute; width: 100%; height: 100%; background-color: rgba(201, 230, 242, 0.9); z-index: -1; }
.p-treatment__row::after { content: ""; position: absolute; width: 100%; height: 100%; background: transparent right / cover no-repeat; z-index: -2; }

.p-treatment__row--reverse { flex-direction: row-reverse; }
@media screen and (max-width: 960px) { .p-treatment__row--reverse { flex-direction: column; } }
.p-treatment__row--reverse .p-treatment__media { width: 60.729%; flex-shrink: 0; }
@media screen and (max-width: 960px) { .p-treatment__row--reverse .p-treatment__media { width: 100%; } }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__row--reverse .p-treatment__media .p-treatment__img { object-position: left; } }
.p-treatment__row--reverse .p-treatment__body { margin-right: -3rem; }
@media screen and (max-width: 960px) { .p-treatment__row--reverse .p-treatment__body { margin-right: 0; } }
.p-treatment__row--reverse .p-treatment__heading { color: #f3f0e9; left: 3.2rem; right: auto; opacity: 1; z-index: auto; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__row--reverse .p-treatment__heading { left: 1.5rem; } }
@media screen and (max-width: 960px) { .p-treatment__row--reverse .p-treatment__heading { background-color: #b29465; } }
.p-treatment__row--reverse .p-treatment__title { padding-left: 21.6rem; background-color: #b29465; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__row--reverse .p-treatment__title { padding-left: 9.6rem; } }
.p-treatment__row--reverse .p-treatment__content { margin: 0; align-items: flex-end; }
.p-treatment__row--reverse .p-treatment__content .p-treatment__btn { background-color: #b29465; }
.p-treatment__row--reverse .p-treatment__content .p-treatment__btn:hover::before { border-color: #b29465; }
.p-treatment__row--reverse .p-treatment__content .p-treatment__btn:hover::after { background-color: #b29465; }
.p-treatment__row--reverse::before { content: ""; position: absolute; width: 100%; height: 100%; background-color: rgba(234, 227, 212, 0.9); z-index: -1; }
.p-treatment__row--reverse::after { background-position: left; }

.p-treatment__media { width: 59.6875%; flex-shrink: 0; }
@media screen and (max-width: 960px) { .p-treatment__media { width: 100%; } }

.p-treatment__img { width: 100%; height: 100%; display: block; object-fit: cover; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__img { object-position: right; } }

.p-treatment__body { flex: 1; }

.p-treatment__heading { position: absolute; top: 0; right: 2rem; color: #e3f2f8; font-size: 13rem; font-weight: 400; line-height: 105%; letter-spacing: 0.1em; opacity: 0.76; text-transform: uppercase; z-index: -1; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__heading { font-size: 10rem; } }
@media screen and (max-width: 960px) { .p-treatment__heading { position: inherit; font-size: 4rem !important; text-align: center; line-height: 120% !important; background-color: #48abd5; opacity: 1; } }
@media screen and (max-width: 767px) { .p-treatment__heading { font-size: 3.5rem !important; } }

.p-treatment__title { width: 100%; background-color: #48abd5; display: flex; justify-content: center; align-items: center; text-align: center; justify-content: flex-start; padding: 1.4rem 1.5rem 1.4rem 3.5rem; margin-top: 13.5rem; color: #ffffff; font-size: 3rem; font-weight: 400; line-height: 120%; letter-spacing: 0; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__title { margin-top: 10.5rem; padding: 1.5rem; } }
@media screen and (max-width: 960px) { .p-treatment__title { margin-top: 0; padding: 1rem 1.5rem !important; justify-content: center; font-size: 1.7rem; } }
@media screen and (max-width: 767px) { .p-treatment__title { font-size: 1.6rem; } }

.p-treatment__content { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; text-align: justify; gap: 4rem; padding-top: 2.9rem; margin: 0; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__content { padding: 2rem 0; gap: 3rem; } }
@media screen and (max-width: 960px) { .p-treatment__content { gap: 3rem; margin: 0 !important; padding: 2rem 1.5rem; } }
@media screen and (max-width: 767px) { .p-treatment__content { padding: 1.5rem; } }

.p-treatment__text { width: 56.7rem; color: #535353; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__text { width: 49.7rem; font-size: var(--size-p); } }
@media screen and (max-width: 960px) { .p-treatment__text { width: 100%; font-size: var(--size-p); line-height: 185%; } }

.p-treatment__actions { width: 56.7rem; display: flex; justify-content: center; align-items: center; text-align: center; flex-wrap: wrap; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__actions { width: 49.7rem; } }
@media screen and (max-width: 960px) { .p-treatment__actions { width: 100%; } }
.p-treatment__actions .p-treatment__btn { width: 25.2rem; height: 5.9rem; display: flex; justify-content: center; align-items: center; text-align: center; color: #ffffff; font-size: var(--size-p-18); font-weight: 400; line-height: 167%; letter-spacing: 0; transition: all 0.35s ease; background-color: #48abd5; position: relative; }
@media screen and (max-width: 767px) { .p-treatment__actions .p-treatment__btn { width: 30rem; height: 6.2rem; } }
.p-treatment__actions .p-treatment__btn::before { content: ""; position: absolute; width: calc(100% - 0.6rem); height: calc(100% - 0.6rem); background: transparent; border: 0.5px solid #f4eee0; transition: all 0.35s ease; }
.p-treatment__actions .p-treatment__btn::after { content: ""; position: absolute; width: 1.455rem; height: 1.455rem; background: #f4eee0; clip-path: polygon(100% 100%, 0 100%, 100% 0); transition: all 0.35s ease; right: 3px; bottom: 3px; }
.p-treatment__actions .p-treatment__btn:hover { background-color: #f4eee0; color: #535353; }
.p-treatment__actions .p-treatment__btn:hover::before { border-color: #48abd5; }
.p-treatment__actions .p-treatment__btn:hover::after { background-color: #48abd5; }

.p-treatment__badge { position: absolute; z-index: 0; }
.p-treatment__badge a { color: #ffffff; font-size: var(--size-p-18); font-weight: 400; line-height: 139%; letter-spacing: 0; position: relative; transition: all 0.35s ease; }
.p-treatment__badge a:hover { opacity: 0.8; }
@media (min-width: 960.5px) and (max-width: 1440px) { .p-treatment__badge a { font-size: var(--size-p); } }
@media screen and (max-width: 960px) { .p-treatment__badge { display: none !important; } }

.invisalign::after { background-image: url(assets/img/top-treatment-invisalign-bg-01.png); }
.invisalign .p-treatment__badge { left: 81.9rem; bottom: 7rem; display: flex; justify-content: center; align-items: center; text-align: center; gap: 3rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .invisalign .p-treatment__badge { left: 61rem; bottom: 6rem; } }
.invisalign .p-treatment__badge a:nth-child(1) { padding-top: 10rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .invisalign .p-treatment__badge a:nth-child(1) { padding-top: 9rem; } }
.invisalign .p-treatment__badge a:nth-child(1)::after { content: ""; position: absolute; width: 19.8rem; height: 20.3rem; top: 50%; left: 50%; transform: translate(-50%, -50%); background: url(assets/img/top-treatment-invisalign-02.png) center/contain no-repeat; z-index: -1; }
@media (min-width: 960.5px) and (max-width: 1440px) { .invisalign .p-treatment__badge a:nth-child(1)::after { width: 16.8rem; height: 17.3rem; } }
@media screen and (max-width: 960px) { .invisalign .p-treatment__badge a:nth-child(1)::after { width: 15.8rem; height: 16.3rem; } }
.invisalign .p-treatment__badge a:nth-child(2) { padding-top: 8rem; margin-top: -34rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .invisalign .p-treatment__badge a:nth-child(2) { padding-top: 7rem; margin-top: -28rem; } }
.invisalign .p-treatment__badge a:nth-child(2)::after { content: ""; position: absolute; width: 19.8rem; height: 19.2rem; top: 50%; left: 50%; transform: translate(-50%, -50%); background: url(assets/img/top-treatment-invisalign-03.png) center/contain no-repeat; z-index: -1; }
@media (min-width: 960.5px) and (max-width: 1440px) { .invisalign .p-treatment__badge a:nth-child(2)::after { width: 16.8rem; height: 16.2rem; } }
@media screen and (max-width: 960px) { .invisalign .p-treatment__badge a:nth-child(2)::after { width: 15.8rem; height: 15.2rem; } }
@media screen and (max-width: 960px) { .invisalign .p-treatment__badge a:nth-child(2) { margin-top: 0; } }
@media screen and (max-width: 960px) { .invisalign .p-treatment__badge { flex-direction: column; height: fit-content; justify-content: flex-start; gap: 4rem; top: 9rem; left: 3.5rem; } }

.kids-ortho::after { background-image: url(assets/img/top-treatment-kids_ortho-bg-01.png); }
.kids-ortho .p-treatment__heading { font-size: 7.5rem; line-height: 181%; letter-spacing: -0.02em; }
@media (min-width: 960.5px) and (max-width: 1440px) { .kids-ortho .p-treatment__heading { font-size: 5.5rem; } }
.kids-ortho .p-treatment__badge { bottom: 14.8rem; left: 85.6rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .kids-ortho .p-treatment__badge { bottom: 12rem; left: 56rem; } }
.kids-ortho .p-treatment__badge a { padding-top: 9rem; }
.kids-ortho .p-treatment__badge a::after { content: ""; position: absolute; width: 19.8rem; height: 20.6rem; top: 50%; left: 50%; transform: translate(-50%, -50%); background: url(assets/img/top-treatment-kids_ortho-02.png) center/contain no-repeat; z-index: -1; }
@media (min-width: 960.5px) and (max-width: 1440px) { .kids-ortho .p-treatment__badge a::after { width: 16.8rem; height: 17.8rem; } }
@media screen and (max-width: 960px) { .kids-ortho .p-treatment__badge a::after { width: 15.8rem; height: 16.6rem; } }
@media screen and (max-width: 960px) { .kids-ortho .p-treatment__badge { right: 4.5rem; left: auto; height: fit-content; top: 28rem; } }

.implant::after { background-image: url(assets/img/top-treatment-implant-bg-01.png); }
.implant .p-treatment__badge { bottom: 11.7rem; left: 85.8rem; }
@media (min-width: 960.5px) and (max-width: 1440px) { .implant .p-treatment__badge { bottom: 8rem; left: 64rem; } }
.implant .p-treatment__badge a { padding-top: 12rem; }
.implant .p-treatment__badge a::after { content: ""; position: absolute; width: 19.8rem; height: 22.3rem; top: 50%; left: 50%; transform: translate(-50%, -50%); background: url(assets/img/top-treatment-implant-02.png) center/contain no-repeat; z-index: -1; }
@media (min-width: 960.5px) and (max-width: 1440px) { .implant .p-treatment__badge a::after { width: 16.8rem; height: 19.3rem; } }
@media screen and (max-width: 960px) { .implant .p-treatment__badge a::after { width: 15.8rem; height: 18.3rem; } }
@media screen and (max-width: 960px) { .implant .p-treatment__badge { left: 5.5rem; height: fit-content; top: 28rem; } }

.whitening::after { background-image: url(assets/img/top-treatment-whitening-bg-01.png); }
.whitening .p-treatment__heading { font-size: 10.5rem; line-height: 130%; letter-spacing: -0.02em; }
@media (min-width: 960.5px) and (max-width: 1440px) { .whitening .p-treatment__heading { font-size: 7.5rem; } }

.p-home { color: #535353; background: #fff; overflow: hidden; }

.p-title { display: flex; flex-direction: column; gap: 0.8rem; }
.p-title--center { align-items: center; text-align: center; }
.p-title--center::after { margin-inline: auto; }
.p-title--white .p-title--en, .p-title--white .p-title--ja { color: #fff; }
.p-title--white::after { background: #fff; }
.p-title--en { color: #535353; font-size: 6rem; font-weight: 400; letter-spacing: 0.09em; line-height: 6.3rem; }
.p-title--ja { color: #535353; font-size: 2rem; font-weight: 400; line-height: 3rem; margin-top: 0.5rem; }

.p-btn { display: inline-flex; align-items: center; justify-content: center; position: relative; width: 25.2rem; height: 5.9rem; background: #b29465; font-size: var(--size-p-18); line-height: 3rem; color: #fff; gap: 3rem; text-decoration: none; transition: all 0.35s ease; }
.p-btn::before { content: ""; position: absolute; top: 0.3rem; left: 0.3rem; width: calc(100% - 0.6rem); height: calc(100% - 0.6rem); border: 0.5px solid #f4eee0; transition: all 0.35s ease; z-index: 1; }
.p-btn::after { content: ""; position: absolute; right: 0.3rem; bottom: 0.3rem; width: 1.455rem; height: 1.455rem; background-color: #f4eee0; clip-path: polygon(100% 0, 0 100%, 100% 100%); transition: all 0.35s ease; }
.p-btn:hover { background-color: #eae3d4; color: #535353; }
.p-btn:hover::before { border-color: #b29465; }
.p-btn:hover::after { background-color: #b29465; }
.p-btn--blue { background: #48abd5; }
.p-btn--blue:hover { background-color: #f4eee0; color: #535353; }
.p-btn--blue:hover::before { border-color: #48abd5; }
.p-btn--blue:hover::after { background-color: #48abd5; }

@media (min-width: 768px) and (max-width: 1440px) { .br-pc { display: none; } }

.p-home-mv { min-height: 65rem; padding: 9.2rem 0 9.1rem; background: url(./assets/img/top-treatment-bg.png); background-repeat: no-repeat; background-position: top center; position: relative; }
.p-home-mv__inner { width: 100%; max-width: 160rem; min-height: 56rem; margin: 0 auto; position: relative; }
.p-home-mv__treatment { width: 128rem; position: relative; z-index: 3; margin-left: 6rem; }
.p-home-mv__menu { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 1fr; gap: 2rem; margin: 0; padding: 0; list-style: none; }
.p-home-mv__menu-item { position: relative; height: 100%; }
.p-home-mv__menu-item::before { content: ""; position: absolute; left: 0.5rem; top: 0.5rem; width: calc(100% - 1rem); height: calc(100% - 1rem); border: 0.5px solid #f4eee0; transition: all 0.35s ease; z-index: 1; }
.p-home-mv__menu-item::after { content: ""; position: absolute; right: 0.5rem; bottom: 0.5rem; width: 2.2rem; height: 2.2rem; background-color: #f4eee0; clip-path: polygon(100% 0, 0 100%, 100% 100%); transition: all 0.35s ease; }
.p-home-mv__menu-link { display: block; position: relative; overflow: hidden; color: #fff; text-decoration: none; }
.p-home-mv .p-home-mv__menu-item:hover .p-home-mv__menu-hover { opacity: 1; transform: translateY(0); }
.p-home-mv__menu-hover { position: absolute; inset: 0; z-index: 3; display: flex; align-items: center; justify-content: center; padding: 2rem 1.5rem; color: #fff; font-size: var(--size-p-18); line-height: 3rem; font-weight: 500; text-align: center; background: #b29465; opacity: 0; transform: translateY(100%); transition: all 0.35s ease; }
.p-home-mv__menu-hover::before { content: ""; position: absolute; left: 0.5rem; top: 0.5rem; width: calc(100% - 1rem); height: calc(100% - 1rem); border: 0.5px solid #f4eee0; transition: all 0.35s ease; z-index: 1; }
.p-home-mv__menu-hover::after { content: ""; position: absolute; right: 0.6rem; bottom: 0.6rem; width: 2.2rem; height: 2.2rem; background-color: #f4eee0; clip-path: polygon(100% 0, 0 100%, 100% 100%); transition: all 0.35s ease; }
.p-home-mv__menu-hover--brown { background: #c4a97d; }
.p-home-mv__menu-hover--blue { background: #48abd5; }
.p-home-mv__menu-hover--blueb { background: #0097d8; }
.p-home-mv__menu-img { display: block; position: relative; height: 19rem; overflow: hidden; }
.p-home-mv__menu-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.p-home-mv__menu-img::after { content: ""; position: absolute; inset: 0; background: rgba(80, 80, 80, 0.2); z-index: 1; }
.p-home-mv__menu-label { display: flex; align-items: center; justify-content: center; height: 5.4rem; font-size: var(--size-p-18); font-weight: 500; line-height: 3rem; color: #fff; background: #c4a97d; cursor: pointer; }
.p-home-mv__menu-label--yb { background: #b29465; }
.p-home-mv__menu-label--blue { background: #48abd5; }
.p-home-mv__menu-label--blueb { background: #0097d8; }
.p-home-mv__watermark { position: absolute; top: -2rem; right: -9.2rem; margin: 0; color: #f1efe8; text-align: center; font-size: 16rem; font-weight: 400; line-height: 13.6rem; letter-spacing: 0.0002rem; writing-mode: vertical-rl; z-index: 6; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-home-mv__watermark { right: 0; top: -5rem; font-size: 8rem; line-height: 100%; } }
.p-home-mv__doctor { position: absolute; right: 0; bottom: -47.3%; width: 37.5rem; height: 88.8rem; z-index: 5; }
.p-home-mv__doctor img { width: 100%; height: 100%; display: block; object-fit: cover; object-fit: contain; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-home-mv__doctor { bottom: -23%; width: 16rem; height: 43rem; } }

.p-feature { padding-bottom: 9rem; background: #fff; margin-top: -1px; }
.p-feature__heading { height: 26.9rem; padding-top: 0.6rem; text-align: center; background: url(./assets/img/top-feature-bg.png) center/cover; display: flex; flex-direction: column; justify-content: center; align-items: center; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__heading { height: 19.9rem; } }
.p-feature__heading .p-title { display: flex; align-items: center; justify-content: center; }
.p-feature__inner { width: 100%; max-width: 174.6rem; margin: 12.4rem auto 5.2rem; }
.p-feature__card { display: grid; grid-template-columns: 85.1rem 1fr; min-height: 37rem; background: #fff; position: relative; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__card { grid-template-columns: 80rem 1fr; } }
.p-feature__card::before { content: ""; position: absolute; right: 0.1rem; top: 50%; transform: translateY(-50%); width: 161.7rem; height: 54.8rem; border: 1px solid #b29465; pointer-events: none; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__card::before { width: calc(100% - 3rem); height: 100%; right: 1.5rem; } }
.p-feature__image { width: 85.1rem; height: 54.6rem; border-radius: 0; z-index: 1; margin-top: -6.2rem; }
.p-feature__image img { width: auto; height: 100%; border-radius: 0; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__image { width: 76rem; height: auto; }
  .p-feature__image img { height: auto; } }
.p-feature__content { padding: 6rem 13rem 4rem 11.7rem; position: relative; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__content { padding: 4rem 3.5rem 4rem 0px; } }
.p-feature__num { position: absolute; top: 0; left: 0; width: 18.4rem; height: 18.4rem; color: #f1efe8; font-size: 10rem; line-height: 6.3rem; z-index: 2; padding-top: 2rem; padding-left: 1.2rem; }
.p-feature__num::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(196, 169, 125, 0.9); clip-path: polygon(0 0, 100% 0, 0 100%); z-index: -1; }
.p-feature__num--blue::before { background: rgba(72, 171, 213, 0.9); }
.p-feature__num--01 { padding-top: 2.5rem; top: -6.2rem; }
.p-feature__num--center { left: 50%; top: 0.1rem; transform: translateX(-50%); width: 31rem; height: 13rem; display: flex; justify-content: center; align-items: flex-start; padding-top: 0rem; padding-left: 0; color: #f1efe8; font-size: 10rem; line-height: 1; z-index: 2; }
.p-feature__num--center::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(72, 171, 213, 0.9); clip-path: polygon(0 0, 100% 0, 50% 100%); z-index: -1; }
.p-feature__num--right { left: auto; right: 7.9rem; top: 8.2rem; z-index: 3; padding-top: 2.5rem; padding-left: 5rem; }
.p-feature__num--right::before { clip-path: polygon(0 0, 100% 0, 100% 100%); }
.p-feature__title { margin: 0 0 4rem; color: #535353; font-size: 3rem; font-weight: 600; line-height: 4.5rem; }
.p-feature__title--white { color: #fff; text-align: center; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__title { margin: 0 0 3rem; font-size: 2.8rem; } }
.p-feature__text { font-size: var(--size-p-18); line-height: 3rem; color: #535353; }
.p-feature__text--white { color: #fff; }
.p-feature__btns { display: flex; gap: 3rem; margin-top: 6rem; align-items: center; justify-content: center; }
.p-feature__btns--left { justify-content: flex-start; }
.p-feature__wide { display: grid; grid-template-columns: 58rem 1fr 58rem; align-items: center; height: 55rem; margin-top: 7.2rem; padding: 11rem 0rem 3.7rem; position: relative; overflow: hidden; }
.p-feature__wide-bg { position: absolute; background-repeat: no-repeat; }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__wide-bg { width: 140%; height: 100%; left: 50%; transform: translateX(-50%); } }
.p-feature__wide-left, .p-feature__wide-right, .p-feature__wide-body { position: relative; z-index: 2; }
.p-feature__wide-left { width: 55.5rem; height: auto; top: 9%; }
.p-feature__wide-left img { width: 100%; height: 100%; }
.p-feature__wide-right { width: 52.6rem; height: auto; left: 5.3rem; bottom: 22%; }
.p-feature__wide-right img { width: 100%; height: 100%; }
.p-feature__wide-body { padding: 6rem 0rem 0; }
.p-feature__wide-body .p-feature__btns { justify-content: center; }
.p-feature__row { margin-top: 6rem; }
.p-feature__panel { display: grid; grid-template-columns: 1fr 1fr; min-height: 37.5rem; position: relative; background: url(./assets/img/top-feature_bg03.png) no-repeat; }
.p-feature__panel-body { padding: 14.5rem 16rem 4.5rem 21rem; }
.p-feature__panel-img { width: 100%; margin-top: 8.3rem; margin-left: 2rem; max-width: 85.3rem; overflow: hidden; position: relative; }
.p-feature__panel-img img { width: 100%; }
.p-feature__panel-img .p-feature__num--right { right: 0; top: 0; }
.p-feature__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4rem; width: 148.2rem; margin: 6rem auto 0; }
.p-feature__small { height: auto; padding: 0 0 4.4rem; background: #f1efe8; position: relative; }
.p-feature__small .p-feature__title, .p-feature__small .p-feature__text, .p-feature__small .p-feature__btns { padding: 0rem 9.2rem; }
.p-feature__small .p-feature__title { text-align: center; }
.p-feature__small .p-feature__title--04 { margin: 12rem 0 2.5rem; }
.p-feature .p-feature__btns--04 { margin-top: 2.6rem; }
.p-feature__small-img { height: 24.6rem; margin-bottom: 3rem; }

.p-greeting { display: grid; grid-template-columns: 1.075fr 0.925fr; min-height: 50rem; background-image: url(./assets/img/top-greeting-bg.png); background-repeat: no-repeat; background-size: cover; position: relative; }
.p-greeting::after { content: ""; position: absolute; right: 0; bottom: 0; width: 153.2rem; height: 28.7rem; background: linear-gradient(0deg, #c4a97d, #c4a97d); opacity: 0.1; z-index: 0; clip-path: polygon(100% 100%, 0 100%, 100% 0); }
@media (max-width: 960px) { .p-greeting::after { display: none; } }
.p-greeting__image { height: auto; }
.p-greeting__image img { width: 100%; height: 100%; display: block; object-fit: cover; }
.p-greeting__body { padding: 14.9rem 0rem 7rem; margin-left: -5.2rem; max-width: 62.9rem; position: relative; z-index: 1; }
.p-greeting__name { margin: 8.1rem 0 4rem; padding-bottom: 3.4rem; border-bottom: 1px solid #b29465; color: #535353; font-size: var(--size-p-18); line-height: 4.9rem; display: flex; align-items: flex-end; gap: 1rem; }
.p-greeting__nameBS { font-size: 3.5rem; color: #b29465; }
.p-greeting__nameBSS { letter-spacing: 0.36em; }
.p-greeting__text { font-size: var(--size-p-18); line-height: 3rem; }
.p-greeting__btns { display: flex; gap: 3rem; margin-top: 9.5rem; z-index: 2; }
.p-greeting__imageMobile { display: none; }

.p-gallery { overflow: hidden; padding: 3.3rem 1.2rem; position: relative; }
.p-gallery__list { display: flex; width: max-content; gap: 0.7rem; animation: slide-left 40s linear infinite; }
.p-gallery__item { margin-left: 1rem; margin-right: 1rem; position: relative; z-index: 0; }
.p-gallery__item img { width: 36rem; height: auto; object-fit: cover; border-radius: 2rem; }
@media screen and (max-width: 960px) { .p-gallery { padding: 1.5rem 0.5rem 1.5rem; }
  .p-gallery__list { gap: 1rem; }
  .p-gallery__item { margin-left: 0rem; margin-right: 0rem; }
  .p-gallery__item img { width: 18rem; height: 15rem; border-radius: 1rem; } }

@keyframes slide-left { 0% { transform: translateX(0); }
  100% { transform: translateX(-50%); } }
.p-column1 { padding: 8.1rem 1.5rem 6rem; background: url(./assets/img/top-column-bg.png) no-repeat center/cover; }
.p-column1__inner { width: 100%; max-width: 148.3rem; margin: 0 auto; }
.p-column1__list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.747rem; margin: 6rem 0 6.5rem; padding: 0; list-style: none; }
.p-column1__link { display: block; color: #535353; text-decoration: none; transition: all 0.35s ease; }
.p-column1__link:hover { opacity: 0.8; }
.p-column1__thumb { width: 100%; height: 22rem; margin-bottom: 1.8rem; }
.p-column1__date { display: block; color: #b29465; font-size: var(--size-p-18); font-weight: 500; line-height: 3rem; margin: 2rem 0 1rem; }
.p-column1__title { display: block; color: #3c251b; font-size: var(--size-p-18); line-height: 3rem; margin-bottom: 1rem; font-weight: 600; }
.p-column1__excerpt { display: block; font-size: var(--size-p-18); line-height: 3rem; color: #535353; }
.p-column1__btn { display: flex; justify-content: center; }

.p-instagram { padding: 7.4rem 1rem 6.3rem; background: #fff; }
.p-instagram__inner { width: 100%; }
.p-instagram__grid { position: relative; margin-top: 3.8rem; }
.p-instagram__grid::before { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; width: 17rem; height: 17rem; background: url("assets/img/ins.svg") no-repeat center/contain; pointer-events: none; }
.p-instagram__item { display: block; }
.p-instagram__item img { display: block; width: 100%; height: auto; }
.p-instagram__btns { display: flex; justify-content: center; gap: 3rem; margin-top: 3.9rem; }

@media (min-width: 960px) and (max-width: 1200px) { .p-home-mv { padding: 12rem 1.5rem 9rem; background-size: cover; }
  .p-home-mv__treatment { width: 115rem; }
  .p-home-mv__watermark { font-size: 10rem; line-height: 10rem; right: -1rem; }
  .p-home-mv__xh { display: none; }
  .p-home-mv__doctor { width: auto; height: 60rem; bottom: -31%; }
  .p-feature__heading { background-position: left center; background-size: cover; }
  .p-feature__inner { padding: 0 1.5rem; }
  .p-feature__card { grid-template-columns: 75.1rem 1fr; }
  .p-feature__card::before { width: 140.2rem; }
  .p-feature__content { padding: 6rem 13rem 4rem 8.7rem; }
  .p-feature__image { width: 80rem; }
  .p-feature__wide { height: auto; min-height: 58rem; grid-template-columns: 35rem 1fr 35rem; gap: 2rem; padding: 6rem 0rem 4rem; }
  .p-feature__wide-body { padding: 0; }
  .p-feature__wide-right { left: 0; width: auto; }
  .p-feature__wide-left { top: 5%; width: auto; }
  .p-feature__wide-bg { top: 0; left: 0; width: 100%; height: 100%; background-size: cover; }
  .p-feature__wide-bg img { height: 50rem; }
  .p-feature__panel-body { padding: 14.5rem 2rem 4.5rem 5rem; }
  .p-feature__panel-img { margin-left: 3.9rem; }
  .p-greeting { grid-template-columns: 1.1fr 0.9fr; }
  .p-greeting__body { padding: 7rem 0rem; margin-left: -3.8rem; }
  .p-greeting__btns { margin-top: 5rem; }
  .p-feature__num--right { right: 0; }
  .p-column__inner { max-width: 140rem; }
  .p-instagram__item { height: 68rem; } }
@media (max-width: 960px) { .p-home-mv { padding: 15rem 1.5rem 15rem; background-position: right 10rem top 3rem; }
  .p-home-mv__treatment { width: 100%; margin-left: 0; }
  .p-home-mv__menu { grid-template-columns: repeat(3, 1fr); gap: 1rem; }
  .p-home-mv__menu-img { height: 18rem; }
  .p-home-mv__menu-label { font-size: 1.5rem; height: 5rem; line-height: 1.4; text-align: center; padding: 0 1rem; }
  .p-home-mv__menu-hover { display: none; }
  .p-home-mv__watermark { top: -13rem; left: 50%; right: auto; transform: translateX(-50%); color: #535353; font-size: 8rem; line-height: 9rem; writing-mode: horizontal-tb; opacity: 0.2; }
  .p-home-mv__watermark--tmbr { display: none; }
  .p-home-mv__doctor { width: 16rem; height: auto; bottom: -15.3%; z-index: 0; }
  .p-home-mv__doctor img { width: 100%; height: auto; }
  /* ===== TITLE ===== */
  .p-title { gap: 0; text-align: center; }
  .p-title--en { font-size: 4rem; line-height: 5.2rem; text-align: center; }
  .p-title--ja { font-size: 1.8rem; }
  /* ===== FEATURE ===== */
  .p-feature { padding-bottom: 6rem; /* Feature 02 */ /* Feature 03 */ /* Feature 04-05 */ }
  .p-feature__heading { height: 20rem; background-position: left center; background-size: cover; }
  .p-feature__inner { margin: 7rem auto 3rem; padding: 0 1.5rem; }
  .p-feature__card { display: flex; flex-direction: column; }
  .p-feature__card::before { display: none; }
  .p-feature__image { width: 100%; height: auto; }
  .p-feature__image img { width: 100%; height: auto; }
  .p-feature__content { padding: 3rem 0; }
  .p-feature__wide { display: flex; flex-direction: column; height: auto; padding: 5rem 0rem; margin-top: 5rem; background: url(./assets/img/top-feature-bg02.png) no-repeat center/cover; }
  .p-feature__wide-bg { display: none; }
  .p-feature__wide-left { order: 1; width: 100%; margin-top: 4rem; }
  .p-feature__wide-left img { width: 100%; }
  .p-feature__wide-body { order: 3; width: 100%; padding: 2rem 17rem; z-index: 2; margin-top: 0rem; }
  .p-feature__wide-right { order: 2; width: 100%; left: 0; }
  .p-feature__wide-right img { width: 100%; }
  .p-feature__panel { display: flex; flex-direction: column; background-position: center; background-size: cover; padding: 3rem 0 0; }
  .p-feature__panel-img { order: 1; height: auto; margin-top: 0; padding: 0 1.5rem; margin-left: 0; }
  .p-feature__panel-img img { width: 100%; }
  .p-feature__panel-body { order: 2; padding: 4rem 2rem; }
  .p-feature__grid { width: 100%; grid-template-columns: repeat(2, 1fr); gap: 2rem; padding: 0 1.5rem; }
  .p-feature__small .p-feature__title, .p-feature__small .p-feature__text, .p-feature__small .p-feature__btns { padding: 0 1.5rem; }
  .p-feature .p-feature__small .p-feature__title--04 { margin: 0rem 0 1.5rem; }
  .p-feature__small-img { height: auto; margin-bottom: 0; }
  .p-feature__small-img img { width: 100%; }
  .p-feature__num { width: 12rem; height: 12rem; font-size: 6rem; padding-top: 0.8rem; }
  .p-feature__num--01 { padding: 0.8rem; }
  .p-feature__num--center { width: 16rem; height: 8rem; font-size: 6rem; top: 0rem; }
  .p-feature__num--right { top: 2.9rem; right: 1.4rem; padding-top: 0.8rem; padding-left: 4rem; }
  .p-feature__title { font-size: 1.9rem; line-height: 1.5; margin: 0 0 1.5rem; }
  .p-feature__text { line-height: 1.8; }
  .p-feature__btns { gap: 1.5rem; margin-top: 3rem; flex-wrap: wrap; }
  .p-feature__btns--left { justify-content: center; }
  /* ===== GREETING ===== */
  .p-greeting { display: flex; flex-direction: column; padding: 6rem 2rem; }
  .p-greeting__image { display: none; }
  .p-greeting__imageMobile { display: block; margin: 3rem 0; height: auto; }
  .p-greeting__imageMobile img { width: 100%; height: 100%; }
  .p-greeting__body { max-width: 100%; margin-left: 0; padding: 0; }
  .p-greeting__name { margin-bottom: 2rem; padding-bottom: 2rem; margin-top: 4rem; font-size: 1.6rem; }
  .p-greeting__nameBS { font-size: 3rem; }
  .p-greeting__btns { flex-wrap: wrap; gap: 1.5rem; margin-top: 3rem; justify-content: center; }
  /* ===== COLUMN ===== */
  .p-column1 { padding: 5rem 1.5rem; }
  .p-column1__inner { max-width: 100%; }
  .p-column1__list { grid-template-columns: repeat(2, 1fr); gap: 2rem; margin: 4rem 0; }
  .p-column1__thumb { height: auto; }
  .p-column1__thumb img { width: 100%; height: auto; display: block; }
  .p-instagram { padding: 5rem 2rem; }
  .p-instagram__grid { margin-top: 3rem; }
  .p-instagram__grid::before { width: 12rem; height: 12rem; }
  .p-instagram__item { height: auto; }
  .p-instagram__item img { width: 100%; height: auto; }
  .p-instagram__btns { justify-content: center; flex-wrap: wrap; gap: 1.5rem; } }
@media (max-width: 767px) { .p-home-mv { padding: 4rem 1.5rem; background-size: cover; background-position: center; height: auto !important; }
  .p-home-mv__inner { min-height: auto; }
  .p-home-mv__treatment { width: 100%; margin-left: 0; }
  .p-home-mv__menu { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 1fr; gap: 1rem; }
  .p-home-mv__menu-item { height: 100%; }
  .p-home-mv__menu-item::after { width: 1.5rem; height: 1.5rem; z-index: 2; }
  .p-home-mv__menu-item::before { z-index: 2; }
  .p-home-mv__menu-item:nth-child(4n + 1) .p-home-mv__menu-label { background: #b29465; }
  .p-home-mv__menu-item:nth-child(4n + 2) .p-home-mv__menu-label { background: #0097d8; }
  .p-home-mv__menu-item:nth-child(4n + 3) .p-home-mv__menu-label { background: #0097d8; }
  .p-home-mv__menu-item:nth-child(4n + 4) .p-home-mv__menu-label { background: #b29465; }
  .p-home-mv__menu-link { display: flex !important; flex-direction: column; height: 100%; }
  .p-home-mv__menu-img { display: block; height: auto; width: 100%; flex-shrink: 0; }
  .p-home-mv__menu-img img { width: 100%; height: 100% !important; object-fit: cover; }
  .p-home-mv__menu-label { font-size: 1.3rem; height: auto !important; flex-grow: 1; line-height: 1.8rem; text-align: center; padding: 1rem 0.5rem; }
  .p-home-mv__menu-hover { display: none; }
  .p-home-mv__watermark { display: none; }
  .p-home-mv__doctor { display: none; }
  .p-title { gap: 0; text-align: center; }
  .p-title--en { font-size: 4rem; letter-spacing: 0.05em; line-height: 4.3rem; }
  .p-title--ja { font-size: 1.7rem; margin-top: 0; }
  .p-feature { padding-bottom: 5rem; /* ================================= FEATURE 01
================================= */ /* ================================= FEATURE 02
================================= */ /* ================================= FEATURE 03
================================= */ /* ================================= FEATURE 04 - 05
================================= */ }
  .p-feature__heading { height: 15rem; background-position: center; }
  .p-feature__inner { margin: 4rem auto; padding: 0 1.5rem; }
  .p-feature__card { display: flex; flex-direction: column; }
  .p-feature__card::before { display: none; }
  .p-feature__image { width: 100%; height: auto; margin-top: 0; }
  .p-feature__image img { width: 100%; height: auto; display: block; border-radius: 0.8rem; }
  .p-feature__content { padding: 2.5rem 0; }
  .p-feature__wide { display: flex; flex-direction: column; align-items: center; height: auto; margin-top: 4rem; padding: 4rem 0 2.5rem; overflow: hidden; }
  .p-feature__wide-bg { display: none; }
  .p-feature__wide-left { order: 1; width: 100%; position: static; margin-top: 3rem; }
  .p-feature__wide-left img { width: 100%; height: auto; display: block; }
  .p-feature__wide-body { order: 3; width: 100%; padding: 2.5rem 1.5rem; position: relative; z-index: 2; margin-top: 0; }
  .p-feature__wide-right { order: 2; width: 100%; position: static; }
  .p-feature__wide-right img { width: 100%; height: auto; display: block; }
  .p-feature__panel { display: flex; flex-direction: column; background-size: cover; padding: 4rem 0; }
  .p-feature__panel-img { order: 1; height: auto; margin-top: 0; padding: 0 1.5rem; margin-left: 0; }
  .p-feature__panel-img img { width: 100%; height: auto; display: block; border-radius: 0.8rem; }
  .p-feature__panel-body { order: 2; padding: 2.5rem 1.5rem; }
  .p-feature__grid { width: 100%; grid-template-columns: 1fr; gap: 4rem; padding: 0 1.5rem; margin-top: 0rem; }
  .p-feature .p-feature__small-img { margin-bottom: 0; }
  .p-feature .p-feature__small .p-feature__title--04 { margin: -1rem 0 1.5rem; }
  .p-feature__small { padding-bottom: 3rem; }
  .p-feature__small .p-feature__title, .p-feature__small .p-feature__text, .p-feature__small .p-feature__btns { padding: 0 1.5rem; }
  .p-feature__small-img { height: auto; }
  .p-feature__small-img img { width: 100%; height: auto; display: block; }
  .p-feature__num { width: 9rem; height: 9rem; font-size: 4.8rem; line-height: 1; padding-top: 0.2rem; padding-left: 0.5rem; }
  .p-feature__num--01 { top: 0; }
  .p-feature__num--right { right: 1.45rem; top: 3.9rem; padding-left: 2.7rem; }
  .p-feature__num--center { top: 0rem; left: 50%; transform: translateX(-50%); width: 12rem; height: 6rem; font-size: 4.8rem; z-index: 1; }
  .p-feature__row { margin-top: 5rem; }
  .p-feature__title { font-size: 1.9rem; line-height: 1.5; }
  .p-feature__text { line-height: 1.8; }
  .p-feature__text br { display: none; }
  .p-feature__btns { flex-direction: column; gap: 1rem; margin-top: 3rem; }
  .p-feature .p-btn { width: 100%; max-width: 29rem; margin: 0 auto; }
  .p-greeting { display: flex; flex-direction: column; min-height: auto; padding: 5rem 1.5rem; background-position: center bottom; background-size: cover; }
  .p-greeting__body { max-width: 100%; margin-left: 0; padding: 0; }
  .p-greeting__image { display: none; }
  .p-greeting__imageMobile { display: block; margin: 4rem 0 3rem; }
  .p-greeting__imageMobile img { width: 100%; height: auto; display: block; border-radius: 0.8rem; }
  .p-greeting__name { margin: 0 0 2rem; padding-bottom: 1.8rem; display: flex; flex-wrap: nowrap; align-items: flex-end; gap: 1rem; font-size: 1.6rem; }
  .p-greeting__nameBS { font-size: 3rem; white-space: nowrap; }
  .p-greeting__nameBSS { display: inline-block; width: auto; font-size: 1.6rem; letter-spacing: 0.15em; white-space: nowrap; }
  .p-greeting__text { line-height: 1.8; }
  .p-greeting__btns { flex-direction: column; gap: 1rem; margin-top: 3rem; align-items: center; }
  .p-greeting .p-btn { width: 100%; max-width: 29rem; }
  .p-column1__list { grid-template-columns: repeat(2, 1fr); gap: 0.8rem; margin: 2.5rem 0 4rem 0; }
  .p-column1__thumb { display: block; height: 13.5rem; overflow: hidden; margin-bottom: 1rem; border-radius: 0.8rem 0.8rem 0rem 0rem; }
  .p-column1__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; overflow: hidden; border-radius: 0.5rem; }
  .p-column1__date { margin: 1rem 0 0rem; font-size: 1.6rem; line-height: 1.6; }
  .p-column1__title { line-height: 130%; margin-bottom: 0.5rem; }
  .p-column1__excerpt { font-size: 1.4rem; line-height: 1.6; }
  .p-instagram { padding: 5rem 1.5rem; }
  .p-instagram__grid { margin-top: 3rem; }
  .p-instagram__grid::before { width: 8rem; height: 8rem; }
  .p-instagram__item { height: auto; }
  .p-instagram__item img { width: 100%; height: auto; display: block; }
  .p-instagram__btns { flex-direction: column; align-items: center; gap: 1rem; margin-top: 3rem; }
  .p-instagram .p-btn { width: 100%; max-width: 30rem; height: 6.2rem; } }
.itv-container { display: flex; justify-content: center; gap: 3rem; flex-wrap: wrap; }
.itv-container__content { flex: 6; z-index: 1; }
.itv-container .itv-subtitle { display: block; width: 100%; font-weight: 500; line-height: 1; font-size: 1.8rem; letter-spacing: 0rem; color: #b29465; margin-bottom: 1.2rem; }
.itv-container .itv-title { margin-bottom: 3rem; position: relative; font-weight: 600; font-size: var(--size-h2); letter-spacing: 0rem; line-height: 140%; padding-bottom: 2.4rem; color: #b29465; }
.itv-container .itv-title::after { position: absolute; content: ""; width: 12rem; height: 1px; bottom: 0; background: #b29465; left: 0.3rem; }
.itv-container .itv-content-image { display: none; }
.itv-container__image { flex: 4; position: relative; z-index: 0; }
.itv-container__image::before { content: ""; position: absolute; width: 25rem; height: 15rem; bottom: -5rem; left: -12rem; z-index: -1; background: #f3f2ec; }
.itv-container__image--it05::before { bottom: 16rem; }
.itv-container__image--it07::before { bottom: 4rem; }
.itv-container__image img { width: 100%; object-fit: cover; border-radius: 0.8rem; }
.itv-container__image--rever::before { left: auto; right: -12rem; z-index: -1; bottom: 4.5em; }

.itv-container__02 { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 70%; padding: 5rem 3.2rem; text-align: center; margin-right: auto; margin-left: auto; border-radius: 0.8rem; position: relative; z-index: 0; background: #b29465; }
.itv-container__02 .itv-subtitle { color: #fff; font-weight: 500; line-height: 1; font-size: 1.8rem; letter-spacing: 0.1rem; margin-bottom: 1.2rem; }
.itv-container__02 .itv-title { margin-bottom: 3rem; position: relative; font-weight: 500; font-size: var(--size-h2); letter-spacing: 0rem; line-height: 140%; padding-bottom: 2.4rem; color: #fff; }
.itv-container__02 .itv-title::after { position: absolute; content: ""; width: 12rem; height: 1px; bottom: 0; background: #fff; left: 50%; transform: translateX(-50%); }
.itv-container__02 .itv-text { color: #fff; }
.itv-container__02 .itv-image { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: -1; }
.itv-container__02 .itv-image img { object-fit: cover; width: 100%; height: 100%; opacity: 0.1; }

@media (max-width: 960px) { .itv-container { gap: 4rem; }
  .itv-container__content { flex: 1 1 100%; order: 1; }
  .itv-container .itv-content-image { display: block; margin-bottom: 3rem; }
  .itv-container .itv-content-image img { width: 100%; height: auto; display: block; border-radius: 0.8rem; }
  .itv-container__image { display: none; }
  .itv-container .itv-title { font-size: 3.2rem; margin-bottom: 2.4rem; }
  .itv-container__02 { width: 90%; padding: 4rem 2.4rem; } }
/* ========================== MOBILE <= 760px
========================== */
@media (max-width: 760px) { .itv-container { flex-direction: column; gap: 3rem; }
  .itv-container__content, .itv-container__image { width: 100%; flex: unset; }
  .itv-container .itv-subtitle { font-size: 1.5rem; margin-bottom: 1rem; }
  .itv-container .itv-title { font-size: 2rem; padding-bottom: 1.8rem; margin-bottom: 2rem; }
  .itv-container .itv-title::after { width: 8rem; }
  .itv-container__image::before { width: 14rem; height: 9rem; left: -2rem; bottom: -2rem; }
  .itv-container__image--it05::before { bottom: 6rem; }
  .itv-container__image--it07::before { bottom: 2rem; }
  .itv-container__image--rever::before { right: -2rem; left: auto; bottom: 2rem; }
  .itv-container__02 { width: 100%; padding: 3rem 2rem; }
  .itv-container__02 .itv-subtitle { font-size: 1.5rem; }
  .itv-container__02 .itv-title { font-size: 2.8rem; margin-bottom: 2rem; padding-bottom: 1.8rem; }
  .itv-container__02 .itv-title::after { width: 8rem; } }
.special-img img { border-radius: 0.8rem; }

@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__wide { grid-template-columns: 35rem 1fr 35rem; height: auto; }
  .p-feature__wide-left { width: 100%; top: 0; }
  .p-feature__wide-left img { left: 0; bottom: 8rem; }
  .p-feature__wide-right { width: 100%; left: inherit; bottom: 0%; }
  .p-feature__wide-right img { right: 0; top: 8rem; }
  .p-feature__wide-right, .p-feature__wide-left { position: static; }
  .p-feature__wide-right img, .p-feature__wide-left img { width: auto; height: 15.2rem; position: absolute; }
  .p-feature__wide-body { padding: 6rem 8rem 5rem; }
  .p-feature__wide-bg { width: 140%; left: 50%; transform: translateX(-50%); }
  .p-feature__wide-bg img { width: 100%; height: 100%; object-fit: cover; }
  .p-feature__small .p-feature__title, .p-feature__small .p-feature__text, .p-feature__small .p-feature__btns { padding: 0rem 6rem; }
  .p-feature__panel-body { padding: 14.5rem 3rem 4.5rem 4rem; }
  .p-feature__title { padding-right: 8.5rem; }
  .p-feature__panel-img { margin-top: 0; margin-left: 0; }
  .p-feature__panel { padding: 5rem 0 2rem; }
  .p-feature__panel-body { padding: 1rem 3rem 2.5rem 4rem; }
  .p-footer__inner, .p-footer__nav, .p-footer__note { padding-left: 8.6rem; }
  .p-footer__inner { max-width: 64rem; } }
@media (max-width: 1440px) and (min-width: 960.5px) and (max-width: 1200px) { .p-feature__wide { width: calc(100% + 3rem); left: -1.5rem; padding: 13rem 0rem 3rem; }
  .p-feature__card::before { width: calc(100% - 3rem); }
  .p-feature__panel-img { margin-left: 0; }
  .p-feature__panel-body { padding: 3.5rem 5rem 3.5rem 4rem; }
  .p-feature__title { padding-right: 5.5rem; }
  .p-feature__panel-img { margin-top: 0; }
  .p-feature__panel { padding-top: 5rem; padding-bottom: 5rem; }
  .p-feature__title { padding-right: 0; } }
@media (max-width: 1440px) and (min-width: 960.5px) { .p-feature__grid { display: flex; width: 100%; justify-content: center; }
  .p-feature__small { width: calc(50% - 6rem); }
  .p-gallery__item img { border-radius: 1rem; }
  .p-footer__floatCard { right: 1.5rem; }
  .p-footer__floatCard img { width: 42.6rem; } }
@media screen and (max-width: 960px) { .p-info__news .p-info__news-wrapper, .p-info__news .p-info__news-wrapper .p-info__news-list { height: 27rem; }
  .p-trouble__item:nth-child(2), .p-trouble__item:nth-child(4), .p-trouble__item:nth-child(5), .p-trouble__item:nth-child(7), .p-trouble__item:nth-child(10), .p-trouble__item:nth-child(12) { background-color: #f1efe8; }
  .p-trouble__item:is(:nth-child(4n + 2), :nth-child(4n + 3)) { background-color: #eae3d4; } }
@media screen and (max-width: 767px) { .p-trouble__media { padding-top: 0; display: flex; justify-content: center; align-items: center; height: 8.5rem; width: calc(100% - 1rem); top: 0.5rem; left: 0; position: relative; }
  .p-trouble__media img { width: 40%; }
  .p-trouble__item { height: 17.25rem; }
  .p-trouble::before { width: 13.5rem; height: 12.3rem; }
  .p-treatment__heading { padding-top: 0.9rem; }
  .p-treatment__title { padding: 0.5rem 1.5rem 1.5rem 1.5rem !important; }
  .p-feature__panel-img { margin-top: 0; padding: 0; margin-left: 0; width: calc(100% - 3rem); margin: 0 auto; overflow: hidden; border-radius: 0.8rem; }
  .p-feature__grid { gap: 2rem; }
  .p-feature__small { padding-bottom: 3rem; border-radius: 0.8rem; overflow: hidden; }
  .p-feature__wide { border-radius: 0.8rem; overflow: hidden; }
  .p-info__clinic, .p-info__news { border-radius: 0.8rem !important; overflow: hidden; }
  .p-info__news::before { width: 10.4rem; height: 10.4rem; } }
/* Form Contact */
.table-form { margin-bottom: 4rem; }

.table-form dl { display: flex; }

.table-form dt, .table-form dd { color: #535353; font-size: 1.8rem; font-weight: 400; line-height: 175%; letter-spacing: 0; padding: 1rem; min-height: 7rem; display: flex; flex-wrap: wrap; align-items: center; }

.table-form dt .required, .table-form dd .required { background: #b29465; color: #fff; font-size: 1.4rem; padding: 0.5rem; border-radius: 0.5rem; margin-left: 1rem; }

.table-form dt .wpcf7-list-item input, .table-form dd .wpcf7-list-item input { width: 1.6rem; height: 1.6rem; position: relative; top: 0.2rem; }

.table-form dt .wpcf7-list-item.first, .table-form dd .wpcf7-list-item.first { margin: 0; }

.table-form dt .examp p, .table-form dd .examp p { font-size: 1.4rem; color: #ccc; }

.table-form dt { width: 36rem; padding-left: 2rem; }

.table-form dd { width: calc(100% - 36rem); }

@media (min-width: 767.5px) { .table-form dl:nth-child(odd) dt, .table-form dl:nth-child(odd) dd { background: rgba(156, 137, 84, 0.102); } }
.form-input { width: 100%; }

.form-input input, .form-input textarea { font-size: 1.8rem; font-family: "Zen Old Mincho", serif; width: 100%; height: 5rem; padding: 1rem; border: #ccc solid 1px; line-height: 175%; }

.form-input input:focus-visible, .form-input textarea:focus-visible { outline: none; }

.form-input textarea { height: 16rem; vertical-align: top; resize: none; }

.form-input-item { position: relative; padding-right: 4rem; }

.form-input-item input { width: 8rem; text-align: center; }

.form-input .value { position: absolute; top: 0.7rem; left: 9rem; }

.form_recruit .checked { margin-bottom: 4rem; }

.form_recruit .checked label { cursor: pointer; }

.form_recruit .txt_desc { margin-bottom: 4rem; }

.form_recruit .wpcf7-spinner { display: flex; margin-left: auto; margin-right: auto; margin-top: 3rem; }

.wpcf7 form.invalid .wpcf7-response-output { text-align: center; }

.wpcf7 form.sent .wpcf7-response-output { text-align: center; }

.btn-default-01 p { display: inline-flex; position: relative; width: 25.2rem; height: 5.9rem; margin: 0; }

.btn-default-01 .btn { display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: #b29465; font-size: var(--size-p-18); line-height: 3rem; color: #fff; border: none; text-decoration: none; cursor: pointer; -webkit-appearance: none; appearance: none; transition: ease all 0.35s; position: relative; z-index: 1; }

.btn-default-01 p::before { content: ""; display: block; position: absolute; top: 0.3rem; left: 0.3rem; width: calc(100% - 0.6rem); height: calc(100% - 0.6rem); border: 0.5px solid #f4eee0; transition: ease all 0.35s; z-index: 2; pointer-events: none; }

.btn-default-01 p::after { content: ""; display: block; position: absolute; right: 0.3rem; bottom: 0.3rem; width: 1.455rem; height: 1.455rem; background-color: #f4eee0; clip-path: polygon(100% 0, 0 100%, 100% 100%); transition: ease all 0.35s; z-index: 2; pointer-events: none; }

.btn-default-01 p:hover .btn { background-color: #eae3d4; color: #535353; }

.btn-default-01 p:hover::before { border-color: #b29465; }

.btn-default-01 p:hover::after { background-color: #b29465; }

.btn-default-01 .wpcf7-spinner { position: absolute; top: 50%; right: -3rem; transform: translateY(-50%); margin: 0; }

.wpcf7 form.failed .wpcf7-response-output { text-align: center; }

@media (max-width: 960px) { .table-form dt, .table-form dd, .table-form p { font-size: 1.5rem; }
  .table-form dt { width: 26rem; padding-left: 1rem; }
  .table-form dd { width: calc(100% - 26rem); }
  .form-input input { font-size: 1.5rem; height: 4.5rem; }
  .form-input textarea { height: 14rem; }
  .btn-default-01 .btn { width: 28rem; } }
@media (max-width: 767px) { .table-form { margin-bottom: 2rem; }
  .table-form dl { flex-wrap: wrap; }
  .table-form dt, .table-form dd { float: left; width: 100%; border: 0; padding: 1rem 0; height: auto; }
  .table-form dt { padding: 1rem; width: 100%; background: rgba(156, 137, 84, 0.1); }
  .form-input-item input { width: 7rem; }
  .form-input .value { left: 8.3rem; }
  .form_recruit { margin-bottom: -4rem; }
  .form_recruit .wpcf7-list-item { text-align: center; margin: 0 2rem 0 0 !important; }
  .form_recruit .checked { margin-bottom: 2.5rem; }
  .wpcf7 form .wpcf7-response-output { margin: 5em 0.5em 1em; } }
/* ========================================================================== Object - Utility (u-) ========================================================================== */
.u-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important; }

.u-hidden { display: none !important; }

@media screen and (min-width: 961px) { .u-sp-only { display: none !important; } }

@media screen and (max-width: 960px) { .u-pc-only { display: none !important; } }

.hv-o { transition: all 0.35s; }
.hv-o:hover { opacity: 0.8; }

.d-block { display: block; }

.d-inline { display: inline; }

.d-inline-block { display: inline-block; }

.d-flex { display: flex; flex-wrap: wrap; }

.d-inline-flex { display: inline-flex; }

.d-grid { display: grid; }

.d-inline-grid { display: inline-grid; }

.d-none { display: none; }

.justify-start { justify-content: flex-start; }

.justify-center { justify-content: center; }

.justify-end { justify-content: flex-end; }

.justify-between { justify-content: space-between; }

.justify-around { justify-content: space-around; }

.items-start { align-items: flex-start; }

.items-center { align-items: center; }

.items-end { align-items: flex-end; }

.items-stretch { align-items: stretch; }

@media (max-width: 960px) { .hv-o:hover { opacity: 1; } }
.u-mt-0 { margin-top: 0; }

.u-mt-xs { margin-top: var(--space-xs) !important; }

.u-mt-sm { margin-top: var(--space-sm) !important; }

.u-mt-md { margin-top: var(--space-md) !important; }

.u-mt-lg { margin-top: var(--space-lg) !important; }

.u-mt-xl { margin-top: var(--space-xl) !important; }

.u-mt-2xl { margin-top: var(--space-2xl) !important; }

.u-mb-0 { margin-bottom: 0 !important; }

.u-mb-xs { margin-bottom: var(--space-xs) !important; }

.u-mb-sm { margin-bottom: var(--space-sm) !important; }

.u-mb-md { margin-bottom: var(--space-md) !important; }

.u-mb-lg { margin-bottom: var(--space-lg) !important; }

.u-mb-xl { margin-bottom: var(--space-xl) !important; }

.u-mb-2xl { margin-bottom: var(--space-2xl) !important; }

.u-text-center { text-align: center; }

.u-text-left { text-align: left; }

.u-text-right { text-align: right; }

.u-text-sm { font-size: 1.5rem; }

.u-text-lg { font-size: 2rem; }

.u-text-bold { font-weight: 700; }

.u-text-muted { color: #333333; }

.u-text-primary { color: #b29465; }

.u-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.u-truncate-2 { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; }

.u-truncate-3 { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; white-space: normal; }

/*# sourceMappingURL=style.css.map */
