/* Responsive behavior and interactive components. Design values: design.css. */
:root{--green:#036242;--cream:#f5f4ea;--ink:#20201b;--gold:#c9962f;--header-offset:110px}
*,*::before,*::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-offset)}
body{margin:0;color:var(--ink);background:#fff;font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;font-size:16px;line-height:1.6;overflow-x:clip}
p,h1,h2,h3,h4{margin:0;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;background:none;padding:0;cursor:pointer;text-align:inherit}a{color:inherit;text-decoration:none}img{display:block}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #d6a744;outline-offset:5px}a:hover{filter:brightness(.94)}[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:12px;top:-70px;z-index:100;background:#fff;color:var(--green);padding:12px}.skip-link:focus{top:10px}
.responsive-section{position:relative;scroll-margin-top:110px}.section-root{width:100%;height:auto;isolation:isolate}.layout-desktop{display:none}.layout-mobile{display:flex;max-width:600px;margin-inline:auto}.section-hero{height:602px;max-width:none;overflow:hidden}.section-hero.layout-mobile{width:390px;left:50%;margin-left:-195px;margin-right:0;transform-origin:top center}.responsive-section:has(>.section-hero){overflow:hidden;background:var(--green)}
.section-root:not(.section-hero)>[data-layout="flow"]{max-width:100%}.section-title{max-width:100%}.section-title p{max-width:100%}.layout-mobile [data-mobile-fluid]:not([data-layout="absolute"]){max-width:100%}.layout-mobile.section-holdings{padding:55px 20px;align-items:center;gap:28px}.layout-mobile.section-holdings>div{width:100%;max-width:100%}.layout-mobile.section-holdings [data-node-id="1:2866"]{flex-direction:column;gap:24px;width:100%}.layout-mobile.section-holdings [data-node-id="1:2866"]>a,.layout-mobile.section-holdings [data-node-id="1:2866"]>div{width:100%;max-width:100%}.layout-mobile.section-holdings [data-nowrap]{white-space:normal}.layout-mobile.section-holdings [data-node-id="1:2862"]{font-size:24px}.layout-mobile.section-holdings [data-node-id="1:2865"]{font-size:14px;line-height:1.8}.layout-mobile.section-holdings [data-name="List"]{width:100%;flex-direction:column}.layout-mobile.section-holdings img{max-width:100%}
.site-header{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:50;width:calc(100% - 30px);max-width:1365px;height:60px;display:flex;align-items:center;gap:12px;padding:12px 20px;border-radius:8px;background:#fff;transition:box-shadow .2s,top .2s}.site-header.is-scrolled{box-shadow:0 3px 24px #00352324}.home-logo{display:block;flex:none}.site-logo{position:relative;width:129px;height:18px}.header-booking{display:flex;justify-content:center;align-items:center;flex:1;max-width:160px;min-width:105px;height:34px;margin-left:auto;color:#fff;background:var(--green);border-radius:30px;font-family:"Noto Sans JP",sans-serif;font-size:11px;font-weight:700;white-space:nowrap}.menu-toggle{width:30px;height:36px;flex:none;display:flex;flex-direction:column;justify-content:center;gap:7px}.menu-toggle span{height:2px;width:30px;background:var(--green)}.desktop-nav{display:none}
.content-link{cursor:pointer}.accordion{width:100%;border-radius:8px;overflow:hidden;background:#fff}.accordion>summary{list-style:none;display:flex;align-items:center;gap:14px;position:relative;cursor:pointer;background:var(--green);color:#fff;min-height:50px;padding:12px 14px;font-size:13px;font-weight:500;letter-spacing:.05em}.accordion>summary::-webkit-details-marker{display:none}.accordion>summary>span:nth-child(2){flex:1;min-width:0}.question-marker{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border-radius:50%;background:#fff;color:var(--green);font:500 16px "Zilla Slab",serif}.accordion-sign{position:relative;width:20px;height:20px;flex:none;margin-left:auto}.accordion-sign:before,.accordion-sign:after{content:"";position:absolute;background:currentColor;left:5px;top:9px;width:10px;height:1px}.accordion-sign:after{transform:rotate(90deg);transition:transform .15s}.accordion[open] .accordion-sign:after{transform:rotate(0)}.accordion-answer{font-size:12px;line-height:1.8;letter-spacing:.05em;padding:24px 20px}.faq-item[open]{box-shadow:0 4px 2px #0003}.commitments-item{background:var(--green);color:#fff;border-radius:12px}.commitments-item>summary{font-size:15px;min-height:60px;padding:10px 14px}.pledge-number{font-weight:700;font-size:28px;line-height:1.5;letter-spacing:0}.commitments-item .accordion-answer{padding:0 16px 18px;font-size:13px}
.video-rail{width:calc(100% + 40px)!important;max-width:none!important;align-self:center;justify-content:flex-start!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#ffffff66 transparent;padding-bottom:4px}.video-card{scroll-snap-align:center;transition:filter .2s}.video-card:hover{filter:brightness(1.06)}.photo-rail{overflow-x:auto!important;justify-content:flex-start!important;scroll-snap-type:x proximity}.photo-rail>div{scroll-snap-align:start}
dialog{border:0}dialog::backdrop{background:#001e1770;backdrop-filter:blur(3px)}.menu-dialog{position:fixed;inset:0 0 0 auto;width:min(390px,100%);height:100dvh;max-height:100dvh;max-width:100%;margin:0;padding:0;background:var(--cream);overscroll-behavior:contain;overflow-y:auto}.menu-source{width:100%!important;height:auto!important}.menu-source>div{width:100%;height:auto}.menu-source [data-node-id="1:1194"]{position:sticky;top:0;z-index:2}.menu-source [data-node-id="1:1199"]{padding:0;margin-bottom:16px}.menu-source [data-node-id="1:1198"]{gap:16px}.menu-source [data-name="List"]{max-width:100%}.menu-source [data-name="Link"]{max-width:100%}.menu-source [data-node-id="1:1198"]>div{max-width:100%;padding-inline:0}.menu-source [data-node-id="1:1200"]{width:100%}.menu-source [data-node-id="1:1201"]{gap:0;justify-content:space-between;width:100%}.menu-group-button{width:100%!important;max-width:100%;gap:12px!important;justify-content:space-between!important}.menu-group-content{width:100%!important}/* About header owns its padding; inset its sibling list to match the area panel. */
.menu-source #menu-about{width:calc(100% - 48px)!important}.menu-source [data-name="title"]{max-width:100%}.menu-source [data-node-id="1:1332"]{display:flex;min-height:44px}.menu-close{border-radius:50%;flex:none}.menu-close:hover{background:#e4e9df}.menu-source a{display:block}.menu-source a:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.video-dialog{position:fixed;inset:0;width:min(900px,94vw);height:auto;max-height:95dvh;padding:40px 16px 18px;background:#092c21;border-radius:14px;color:#fff;margin:auto}.video-player{aspect-ratio:16/9;width:100%}.video-player iframe{width:100%;height:100%;border:0}.video-close{position:absolute;right:10px;top:0;width:40px;height:40px;font-size:28px}.video-external{display:inline-block;font-size:14px;margin-top:12px;text-decoration:underline}
@media(min-width:600px) and (max-width:1199px){.layout-mobile{max-width:600px}.section-hero.layout-mobile{transform:scale(1.3);margin-top:0}.responsive-section:has(>.section-hero){height:782.6px}.layout-mobile.section-root:not(.section-hero){align-items:center}.site-header{max-width:570px}.header-booking{max-width:190px}.layout-mobile.section-holdings [data-name="List"]{align-items:center}.layout-mobile.section-holdings [data-name="List"]>a{max-width:420px}.layout-mobile.section-symptoms>div{width:100%}}
@media(min-width:1200px){.layout-mobile{display:none}.layout-desktop{display:flex}.section-root.layout-desktop{max-width:none;margin-inline:auto}.section-hero.layout-desktop{height:750px;width:1440px;max-width:none;left:50%;margin-left:-720px;transform-origin:top center}.site-header{height:90px;top:32px;width:calc(100% - 74px);padding:20px 26px;gap:22px}.site-logo{transform:scale(1.8);transform-origin:left center}.home-logo{width:230px}.desktop-nav{display:flex;align-items:center;justify-content:space-between;flex:1;gap:12px;font:700 15px "Noto Sans JP",sans-serif;white-space:nowrap}.nav-separator{font-weight:400;font-size:12px}.header-booking{flex:none;margin-left:0;width:187px;max-width:none;height:47px;font-size:15px}.menu-toggle{display:none}.accordion>summary{font-size:15px;min-height:50px}.accordion-answer{font-size:16px;padding:24px 24px}.commitments-item>summary{font-size:18px}.commitments-item .accordion-answer{font-size:16px;padding:0 20px 24px}.pledge-number{font-size:32px}.section-root.layout-desktop>div[data-layout="flow"]{max-width:calc(100vw - 40px)}.section-root.layout-desktop.section-audience{max-width:1024px}.video-rail{max-width:100%!important}.section-holdings{overflow:hidden}.section-holdings>div:last-child{width:100%;max-width:100%}}
@media(min-width:1200px) and (max-width:1380px){.site-header{gap:12px;padding:16px}.home-logo{width:185px}.site-logo{transform:scale(1.4)}.desktop-nav{gap:8px;font-size:12px}.header-booking{width:145px;font-size:13px}.section-hero.layout-desktop{transform:scale(calc(100vw / 1440px))}.responsive-section:has(>.section-hero){height:calc(750 * 100vw / 1440)}}
@media(max-width:389px){.site-header{padding:10px 14px;gap:9px}.site-logo{transform:scale(.9);transform-origin:left center}.home-logo{width:117px}.header-booking{min-width:91px;font-size:10px}.menu-toggle,.menu-toggle span{width:25px}.section-hero.layout-mobile{transform:scale(calc(100vw / 390px))}.responsive-section:has(>.section-hero){height:calc(602 * 100vw / 390)}.layout-mobile [data-nowrap]:not([data-layout="absolute"]){white-space:normal}.layout-mobile [data-layout="flow"]{max-width:100%}.layout-mobile.section-root{padding-left:16px;padding-right:16px}.layout-mobile.section-hero{padding:0}.accordion>summary{gap:9px;padding:12px 10px;font-size:12px}.commitments-item>summary{font-size:13px}.pledge-number{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Adapt the three original Holdings cards to phones and wider screens. */
.section-holdings [data-node-id="1:2865"]{width:100%;max-width:1440px;overflow-x:auto;scroll-snap-type:x proximity}
.section-holdings [data-node-id="1:2865"]>[data-name="item"]{scroll-snap-align:center;min-width:0;flex:1;height:auto}
.section-holdings [data-node-id="1:2865"]>[data-name="item"]>div:first-child{width:100%;height:auto;aspect-ratio:2/1}
.section-holdings [data-node-id="1:2865"]>[data-name="item"]>div:last-child{height:42px;width:100%}
.layout-mobile.section-holdings [data-node-id="1:2860"]{gap:28px}
.layout-mobile.section-holdings [data-node-id="1:2862"]{font-size:14px}
.layout-mobile.section-holdings [data-node-id="1:2863"]{font-size:24px;line-height:1.6;max-width:100%}
.layout-mobile.section-holdings [data-node-id="1:2864"]{font-size:14px;line-height:1.8;max-width:100%;text-align:left}
.layout-mobile.section-holdings [data-node-id="1:2865"]{flex-direction:column;gap:24px;overflow:visible}
.layout-mobile.section-holdings [data-node-id="1:2865"]>[data-name="item"]{flex:none;width:100%;gap:0}
.section-features [data-node-id="1:254"]{width:100%;max-width:100%;overflow-x:auto;justify-content:flex-start;padding-bottom:6px}
.section-audience{overflow:hidden}
/* Clip intentional decorative bleed; horizontal galleries scroll internally. */
.responsive-section{overflow:clip;container-type:inline-size}
@media(max-width:599px){
.section-hero.layout-mobile{transform:scale(min(1,calc(100cqw / 390px)))}
.responsive-section:has(>.section-hero){height:min(602px,calc(602 * 100cqw / 390))}
.layout-mobile [data-mobile-fluid]:not([data-layout="absolute"]){width:100%}
.layout-mobile.section-intro [data-node-id="1:116"]{font-size:clamp(21px,6.7vw,28px);white-space:normal}
}
@media(max-width:1199px){
.layout-mobile [data-nowrap]:not([data-layout="absolute"]){white-space:normal}
.layout-mobile [data-layout="flow"]{max-width:100%}
.layout-mobile.section-intro{padding-inline:20px}
.layout-mobile .section-title>div{max-width:100%}
.layout-mobile.section-commitments .section-title{font-size:22px;text-align:center}
}
.menu-source [data-layout="flow"]{min-width:0;max-width:100%}
.menu-source [data-nowrap]{white-space:normal}
.menu-source [data-node-id="1:1198"]{width:100%}
.menu-dialog{overflow-x:hidden}
.menu-group-button[aria-expanded="false"] [data-name="Icon"]{transform:rotate(90deg)}
.video-dialog{height:fit-content}
.menu-added-link{font-family:"Noto Sans JP",sans-serif;font-size:14px;line-height:1.6}
.menu-group-button [data-name="-"]{position:relative}
.menu-group-button[aria-expanded="false"] [data-name="-"]::after{content:"";position:absolute;width:1.5px;height:12px;background:var(--green)}
@media(min-width:600px) and (max-width:1199px){
.layout-mobile.section-root{max-width:none}
.layout-mobile.section-root:not(.section-hero)>[data-layout="flow"]{max-width:560px}
.layout-mobile.section-root:not(.section-hero)>[data-mobile-fluid]{width:100%}
.site-header{max-width:750px}
}
@media(min-width:768px) and (max-width:1199px){
.section-hero.layout-mobile{display:none}
.section-hero.layout-desktop{display:flex;width:1440px;height:750px;left:50%;margin-left:-720px;transform-origin:top center;transform:scale(calc(100cqw / 1440px))}
.responsive-section:has(>.section-hero){height:calc(750 * 100cqw / 1440)}
}
.menu-source [data-node-id="1:1253"],.menu-source [data-node-id="1:1261"]{gap:12px;justify-content:space-between;width:100%}
@media(max-width:1199px){
.layout-mobile.section-method [data-node-id="1:195"],.layout-mobile.section-method [data-node-id="1:203"],.layout-mobile.section-method [data-node-id="1:211"]{flex:1;width:0;min-width:0;align-items:stretch}
.layout-mobile.section-method [data-node-id="1:196"],.layout-mobile.section-method [data-node-id="1:204"]{width:100%;align-items:stretch}
.layout-mobile.section-method [data-node-id="1:200"],.layout-mobile.section-method [data-node-id="1:208"],.layout-mobile.section-method [data-node-id="1:214"]{flex:1;min-width:0;text-align:left;font-size:clamp(12px,3.6vw,15px);line-height:1.5}
.layout-mobile.section-price [data-name="Table"],.layout-mobile.section-price [data-name="Body"]{height:auto;width:100%}
.layout-mobile.section-price [data-name="Row"]{height:auto;align-items:stretch;width:100%}
.layout-mobile.section-price [data-name="Row"]>div:first-child{width:65%;height:auto;min-width:0;padding-inline:12px}
.layout-mobile.section-price [data-name="Row"]>div:last-child{width:35%;height:auto;min-width:0;padding-inline:10px}
.layout-mobile.section-audience [data-name="item"]>div:last-child{flex:1;min-width:0}
}

.section-root.section-hero>div[data-layout="flow"]{max-width:none}
@media(min-width:1200px) and (max-width:1439px){.section-hero.layout-desktop{transform:scale(calc(100cqw / 1440px))}.responsive-section:has(>.section-hero){height:calc(750 * 100cqw / 1440)}}
@media(max-width:1199px){
.layout-mobile.section-symptoms [data-name="card-wrapper"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.layout-mobile.section-symptoms [data-name="card"]{width:100%;height:auto;min-height:270px}
.layout-mobile.section-symptoms [data-name="card"]>div:first-child{width:100%}
.layout-mobile.section-symptoms [data-name="card"]>[data-name="Container"]{height:auto;min-height:138px;padding-inline:12px;flex:1}
}
@media(max-width:1199px){
.layout-mobile.section-features [data-name="card-wrapper"]{width:100%}
.layout-mobile.section-features [data-name="card"]{width:100%;min-width:0;height:auto}
.layout-mobile.section-features [data-node-id="1:228"],.layout-mobile.section-features [data-node-id="1:235"],.layout-mobile.section-features [data-node-id="1:243"]{width:100%;padding-inline:10px;text-align:center}
.layout-mobile.section-features [data-node-id="1:237"],.layout-mobile.section-features [data-node-id="1:245"]{height:auto;aspect-ratio:350/200}
}
@media(max-width:1199px){
.layout-mobile [data-node-id="1:124"],.layout-mobile [data-node-id="1:156"]{font-size:clamp(20px,6.15vw,26px)}
}
