:root{--ink: #111318;--navy: #122335;--navy-2: #071421;--gold: #b29b68;--gold-2: #d6c08b;--paper: #f6f4ef;--soft: #f4f4f4;--line: rgba(17, 19, 24, .14);--white: #fff;--font-ja: "dnp-shuei-gothic-gin-std", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;--font-en: "widescreen-ex", "Arial Narrow", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font-ja);letter-spacing:.06em;overflow-x:clip}body.drawer-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.photo-slot{position:relative;overflow:hidden;min-height:180px;background:linear-gradient(135deg,#ffffff0f,#fff0),repeating-linear-gradient(-45deg,rgba(178,155,104,.18) 0,rgba(178,155,104,.18) 1px,transparent 1px,transparent 18px),linear-gradient(135deg,#273543,#111820 54%,#38434a)}.photo-slot:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.34);pointer-events:none}.photo-slot:after{content:"PHOTO PLACEHOLDER\a" attr(data-photo-label);position:absolute;left:28px;right:28px;bottom:26px;white-space:pre-line;color:#ffffffdb;font-family:var(--font-en);font-size:12px;line-height:1.6;letter-spacing:.04em}.photo-slot.has-photo{background-image:var(--photo);background-size:cover;background-position:var(--photo-position, center);background-repeat:no-repeat}.photo-slot.has-photo:before,.photo-slot.has-photo:after{display:none}.site-header{position:fixed;inset:0 0 auto;z-index:50;display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:stretch;min-height:68px;color:#fff;border-bottom:1px solid rgba(255,255,255,.55);background:#090f165c;backdrop-filter:blur(14px)}.brand{display:flex;flex-direction:column;justify-content:center;gap:5px;padding:12px clamp(18px,4vw,52px)}.brand img{width:192px;height:40px;object-fit:contain;filter:brightness(0) invert(1)}.brand span{font-size:10px;font-weight:700}.desktop-nav{display:flex;align-items:center;height:100%}.desktop-nav a{display:grid;place-items:center;height:100%;min-width:98px;padding:0 14px;border-left:1px solid rgba(255,255,255,.18);font-family:var(--font-en);font-size:15px;font-weight:600}.header-cta{display:grid;place-content:center;min-width:168px;padding:0 22px;background:var(--gold)}.header-cta small{font-family:var(--font-en);font-size:10px}.header-cta span{font-size:14px;font-weight:800}.menu-button{display:grid;place-content:center;gap:6px;width:84px;padding:0;color:#fff;background:var(--navy);border:0;border-left:1px solid rgba(255,255,255,.3);cursor:pointer}.menu-button span{display:block;width:24px;height:2px;background:currentColor;transition:transform .25s ease,opacity .25s ease}.drawer-open .menu-button span:nth-child(1){transform:translateY(8px) rotate(45deg)}.drawer-open .menu-button span:nth-child(2){opacity:0}.drawer-open .menu-button span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.drawer{position:fixed;inset:68px 0 auto;z-index:45;display:block;height:calc(100dvh - 68px);padding:clamp(20px,4vh,36px) clamp(22px,5vw,56px) calc(clamp(28px,5vh,44px) + env(safe-area-inset-bottom));color:#fff;background:#122335fa;opacity:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;pointer-events:none;transition:opacity .25s ease}.drawer-open .drawer{opacity:1;pointer-events:auto}.drawer nav{width:min(880px,100%);margin:0 auto}.drawer a{display:grid;grid-template-columns:clamp(140px,18vw,200px) minmax(0,1fr);column-gap:clamp(20px,3vw,36px);align-items:baseline;padding:clamp(14px,2.2vh,20px) 0;border-bottom:1px solid rgba(255,255,255,.28);font-size:clamp(20px,2.6vw,30px);font-weight:700;line-height:1.2}.drawer a span,.section-en{color:var(--gold);font-family:var(--font-en);font-weight:700;text-transform:uppercase}.drawer a span{min-width:0;font-size:clamp(14px,1.7vw,20px);letter-spacing:.04em;white-space:nowrap}.hero{position:relative;min-height:100svh;overflow:hidden;color:#fff;background:var(--navy)}.hero-slider,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slider{overflow:hidden}.hero-slide{opacity:0;transform:translate3d(0,var(--hero-scroll, 0px),0) scale(1.08);transform-origin:center;transition:opacity 1.1s ease;will-change:transform,opacity,background-position}.hero-slide.is-active{opacity:1;z-index:2;animation:heroSlideMotion 6.8s ease-in-out both}.hero-slide.is-leaving{opacity:0;z-index:1;animation:heroSlideMotion 6.8s ease-in-out both}.hero-bg{transform:translate3d(0,var(--hero-scroll, 0px),0) scale(1.08);transform-origin:center;animation:slowBgPan 18s ease-in-out infinite alternate;will-change:transform,background-position}.hero-shade{background:linear-gradient(90deg,#04080dd1,#04080d38 52%,#04080d8f),linear-gradient(0deg,#04080d8c,#04080d14 50%)}.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:end;min-height:100svh;width:min(920px,calc(100% - 48px));padding:140px 0 118px clamp(24px,7vw,96px);transform:translate3d(0,calc(var(--hero-text-scroll, 0px) * -1),0);will-change:transform}.eyebrow{margin:0 0 18px;color:var(--gold-2);font-family:var(--font-en);font-size:14px;font-weight:700}.hero h1{max-width:920px;margin:0;font-family:var(--font-ja);font-size:min(clamp(26px,5.4vw,80px),calc((100vw - 56px) / 13));line-height:1.25;font-weight:500;word-break:keep-all}.hero-jp{margin:22px 0 0;font-size:clamp(17px,1.65vw,24px);font-weight:800;line-height:1.7}.hero-sub{max-width:640px;margin:18px 0 0;color:#ffffffdb;font-size:clamp(14px,1.1vw,16px);line-height:1.85;font-weight:500}.hero-copy{max-width:720px;margin:14px 0 0;font-size:clamp(15px,1.4vw,18px);line-height:2}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.button{display:inline-grid;place-items:center;min-height:54px;padding:0 28px;border:1px solid currentColor;font-weight:800}.button small{display:block;margin-top:2px;font-size:11px;font-weight:600;letter-spacing:.04em;opacity:.92}.button.gold.cta-trial{padding:10px 32px;min-height:64px}.button.gold{color:#fff;background:var(--gold);border-color:var(--gold)}.button.ghost{color:#fff;background:#ffffff0f}.button.light{border-color:#ffffffa8}.hero-news{position:absolute;right:clamp(24px,5vw,70px);bottom:48px;z-index:3;display:grid;grid-template-columns:120px minmax(220px,1fr);align-items:center;width:min(440px,calc(100% - 48px));min-height:58px;border:1px solid rgba(255,255,255,.75)}.hero-news span{display:grid;place-items:center;height:100%;border-right:1px solid rgba(255,255,255,.75);font-family:var(--font-en);font-weight:700}.hero-news p{margin:0;padding:0 20px;font-size:13px;font-weight:700}.hero-dots{position:absolute;right:32px;top:38%;z-index:3;display:grid;justify-items:center;gap:12px;color:#fff}.hero-dots button{width:8px;height:36px;padding:0;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:transparent;cursor:pointer;transition:background-color .25s ease,height .25s ease}.hero-dots button.is-active{height:54px;background:var(--gold);border-color:var(--gold)}.section{padding:clamp(76px,10vw,140px) clamp(22px,6vw,86px)}.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1fr);gap:clamp(42px,7vw,96px);align-items:center}.section-copy{max-width:620px}.section-en{margin:0 0 14px;font-size:14px}.section h2,.contact-section h2{margin:0;font-size:clamp(28px,3.4vw,48px);line-height:1.45;word-break:keep-all}.section p{line-height:2}.text-link{display:inline-flex;align-items:center;gap:18px;margin-top:24px;font-family:var(--font-en);font-weight:800}.text-link:after{content:"→";display:grid;place-items:center;width:52px;height:52px;color:#fff;background:var(--navy);border-radius:50%}.image-pair{position:relative;min-height:620px}.image-large{width:74%;height:520px;margin-left:auto;transform:translate3d(0,var(--image-large-y, 0px),0) scale(1.02);transition:transform .8s cubic-bezier(.2,.7,.2,1);will-change:transform}.image-small{position:absolute;left:0;bottom:0;width:44%;min-width:220px;box-shadow:0 30px 70px #00000029;animation:floatPhoto 7s ease-in-out infinite alternate;will-change:transform}.dark{position:relative;color:#fff;background:var(--navy)}.center-head{max-width:780px;margin:0 auto clamp(38px,5vw,70px);text-align:center}.center-head>p:not(.section-en){color:#545454}.dark .center-head>p:not(.section-en),.proof .center-head>p:not(.section-en){color:#ffffffb8}.proof{background:radial-gradient(circle at 70% 20%,rgba(178,155,104,.2),transparent 36%),linear-gradient(#071421f0,#071421fa)}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto}.proof-grid article{min-height:230px;padding:30px;border:1px solid rgba(178,155,104,.76);background:#ffffff14}.proof-grid span,.facility-grid span,.gallery-grid span,.price-cards span{color:var(--gold);font-family:var(--font-en);font-weight:800}.proof-grid strong{display:block;margin-top:24px;font-size:clamp(24px,3vw,40px)}.section-row-head{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(280px,1fr);gap:36px;align-items:end;margin-bottom:48px}.section-side-link{justify-self:end;color:var(--gold);font-family:var(--font-en);font-weight:800}.facility,.gallery{background:#fff}.facility-grid,.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.facility-grid article,.gallery-grid article{background:var(--soft);overflow:hidden;transition:transform .45s ease,box-shadow .45s ease}.gallery-main{position:relative;grid-column:1 / -1;min-height:clamp(460px,48vw,660px);color:#fff;background:var(--navy-2)}.gallery-main:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#071421c7,#0714212e 54%,#07142175),linear-gradient(0deg,rgba(7,20,33,.72),transparent 48%);pointer-events:none}.facility-grid .card-photo,.gallery-grid .gallery-photo{width:100%;aspect-ratio:4 / 3;transform:scale(1.04);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.gallery-grid img.gallery-img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover}.gallery-main img.gallery-img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.gallery-main .gallery-photo{position:absolute;inset:0;height:100%;min-height:0;aspect-ratio:auto}.gallery-main>div:last-child{position:absolute;z-index:2;left:clamp(26px,5vw,72px);bottom:clamp(28px,5vw,72px);max-width:560px;padding:0 0 0 24px;border-left:2px solid var(--gold)}.gallery-main h3{color:#fff;font-size:clamp(28px,4vw,52px)}.gallery-grid article>div:last-child span{display:block;margin-bottom:12px;font-size:clamp(18px,2vw,28px)}.gallery-main>div:last-child span{margin-bottom:16px;color:#fff;font-size:clamp(34px,5vw,64px);line-height:.95}.gallery-main p{max-width:520px;color:#ffffffe0}.facility-grid article:hover,.gallery-grid article:hover{transform:translateY(-10px);box-shadow:0 24px 70px #12233524}.gallery-main:hover{transform:none}.facility-grid article:hover .card-photo,.gallery-grid article:hover .gallery-photo{transform:scale(1.11)}.gallery-grid article.gallery-main:hover .gallery-photo{transform:scale(1.04)}.facility-grid div,.gallery-grid article>div:last-child{padding:24px}.gallery-grid .gallery-main>div:last-child{padding:0 0 0 24px}.facility-grid h3,.gallery-grid h3,.price-group h3,.voice-grid h3{margin:8px 0 0;font-size:22px}.price{background:var(--paper)}.price-table{display:grid;gap:18px;max-width:1040px;margin:0 auto}.price-group,.price-line{background:#fff;border:1px solid rgba(178,155,104,.35)}.price-group{padding:26px;transition:transform .4s ease,border-color .4s ease,box-shadow .4s ease}.price-group:hover,.price-line:hover{transform:translateY(-8px);border-color:#b29b68e6;box-shadow:0 20px 58px #1223351f}.price-group h3{margin:0 0 16px;color:var(--navy)}.price-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:20px 24px;transition:transform .4s ease,border-color .4s ease,box-shadow .4s ease}.price-group .price-line{border-right:0;border-left:0;border-bottom:0}.price-line p{margin:0;color:#545454;line-height:1.65}.price-line strong{display:block;margin-top:4px;font-size:26px}.price-line b{font-family:var(--font-en);font-size:clamp(26px,4vw,46px);white-space:nowrap}.price-line small{display:block;margin-top:4px;color:#777;font-size:13px}.price-feature{border-color:var(--gold);background:linear-gradient(135deg,#fff,#fbf6e8);display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"title price cta" "desc  price cta";align-items:center;gap:4px 24px;padding:20px 24px}.price-feature>div:first-child{grid-area:title}.price-feature>p{grid-area:desc;margin:0;color:#545454;font-size:13px;line-height:1.5}.price-feature>b{grid-area:price}.price-feature .price-cta{grid-area:cta;min-height:54px;padding:8px 22px}.price-feature .price-cta small{display:block;margin-top:4px;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0;opacity:1}.price-feature span{color:var(--gold);font-family:var(--font-en);font-weight:800}@media(max-width:720px){.price-feature{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title price" "desc  desc" "cta   cta";gap:10px 14px;padding:18px 20px}.price-feature strong{font-size:20px}.price-feature>b{font-size:clamp(24px,6.5vw,32px)}.price-feature .price-cta{justify-self:stretch;width:100%}}@media(max-width:420px){.price-feature{grid-template-columns:1fr;grid-template-areas:"title" "desc" "price" "cta";gap:6px}.price-feature>b{justify-self:start;font-size:clamp(26px,8vw,34px)}.price-feature strong{font-size:22px}}.price-group.compact{display:grid;grid-template-columns:minmax(180px,.7fr) 1fr 1fr;gap:14px;align-items:stretch}.price-group.compact h3{display:grid;align-items:center;margin:0}.price-group.compact .price-line{border:1px solid rgba(178,155,104,.35)}.trainer{overflow:hidden}.trainer-bg{position:absolute;inset:0;background:radial-gradient(circle at 78% 34%,rgba(178,155,104,.22),transparent 34%),linear-gradient(90deg,#071421fa,#071421b8);transform:translate3d(0,var(--trainer-scroll, 0px),0) scale(1.08);animation:slowBgPan 22s ease-in-out infinite alternate-reverse;will-change:transform,background-position}.trainer-bg.has-photo{background-image:linear-gradient(90deg,#071421f5,#071421b3 48%,#07142185),var(--photo);background-size:cover;background-position:center,var(--photo-position, center)}.trainer-content{position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:64px;max-width:1040px;margin:0 auto;justify-items:center}.trainer-bio{width:100%;max-width:640px}.trainer-photos{display:grid;grid-template-columns:1fr 1fr;gap:28px;width:100%;max-width:900px}.trainer-portrait{width:100%;aspect-ratio:3 / 4;justify-self:center;filter:drop-shadow(0 26px 44px rgba(0,0,0,.34));animation:floatTrainer 6.5s ease-in-out infinite alternate}.trainer-portrait-action{animation-delay:1.2s}@media(max-width:720px){.trainer-photos{grid-template-columns:1fr;gap:12px}}.trainer-content dl,.access-card dl{display:grid;gap:12px;margin:28px 0}.trainer-content dl div,.access-card dl div{display:grid;grid-template-columns:120px 1fr;gap:18px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.18)}.trainer-content dt,.access-card dt{color:var(--gold);font-weight:800}.trainer-content dd,.access-card dd{margin:0}.kana{color:var(--gold);word-spacing:1.6em;letter-spacing:.06em}.before-after{background:#fff}.ba-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:900px;margin:0 auto}.ba-grid article{display:grid;grid-template-columns:minmax(160px,260px) 1fr;gap:24px;align-items:center;padding:24px;background:var(--soft)}.ba-photo{width:100%;aspect-ratio:4 / 5;transition:transform .7s ease}.ba-grid article{overflow:hidden;transition:transform .45s ease}.ba-grid article:hover{transform:translateY(-8px)}.ba-grid article:hover .ba-photo{transform:scale(1.06)}.ba-grid h3{color:var(--gold);font-family:var(--font-en);font-size:34px;margin:0 0 16px}.ba-grid ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ba-grid li{display:flex;justify-content:space-between;gap:18px;padding-bottom:8px;border-bottom:1px solid var(--line);font-weight:800}.ba-grid li span{color:#666;font-weight:500}.voice{background:var(--paper)}.review-summary{display:flex;justify-content:space-between;align-items:center;gap:22px;max-width:1120px;margin:0 auto 26px;padding:28px;color:#fff;background:var(--navy)}.review-summary span{color:var(--gold);font-family:var(--font-en);font-weight:800;text-transform:uppercase}.review-summary strong{display:block;margin-top:6px;font-size:clamp(24px,3vw,38px)}.review-summary p{margin:6px 0 0;color:#ffffffbd}.review-asof{display:block;margin-top:4px;font-size:11px;letter-spacing:.04em;color:#ffffff7a}.dark-button{color:var(--navy);background:#fff}.voice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.voice-grid article{min-height:260px;padding:28px;background:#fff;border-top:4px solid var(--gold);transition:transform .4s ease,box-shadow .4s ease}.voice-grid article:hover{transform:translateY(-8px);box-shadow:0 20px 56px #1223351f}.voice-grid span{color:var(--gold);font-weight:900}.review-meta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:16px;color:#1113189e;font-size:12px;font-weight:800}.review-stars{color:var(--gold);letter-spacing:.08em}.movie{color:#fff;background:var(--navy-2)}.movie .section-row-head>p{color:#ffffffb8}.movie-frame{position:relative;max-width:1040px;margin:0 auto;aspect-ratio:16 / 9;overflow:hidden;background:#000;border:1px solid rgba(178,155,104,.5);box-shadow:0 32px 90px #00000052}.movie-frame iframe{display:block;width:100%;height:100%;border:0}.movie-facade{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:#000;cursor:pointer;overflow:hidden}.movie-facade img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}.movie-facade:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 50%,#00000073);pointer-events:none}.movie-play{position:absolute;top:50%;left:50%;width:78px;height:78px;margin:-39px 0 0 -39px;border-radius:50%;background:#ff0000eb;box-shadow:0 16px 36px #0006;transition:transform .3s ease,background .3s ease;z-index:2}.movie-play:before{content:"";position:absolute;top:50%;left:56%;width:0;height:0;border-left:22px solid #fff;border-top:14px solid transparent;border-bottom:14px solid transparent;transform:translate(-50%,-50%)}.movie-facade:hover img,.movie-facade:focus-visible img{transform:scale(1.04);filter:brightness(.85)}.movie-facade:hover .movie-play,.movie-facade:focus-visible .movie-play{transform:scale(1.08);background:#ff1f1f}.instagram{background:#fff}.instagram-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:28px}.instagram-grid a{display:grid;gap:16px;padding:14px;background:var(--soft);transition:transform .4s ease,box-shadow .4s ease}.instagram-grid a:hover{transform:translateY(-8px);box-shadow:0 20px 56px #1223351f}.reel-thumb{display:block;aspect-ratio:9 / 16;min-height:360px}.reel-thumb:before{border-radius:999px;inset:50% auto auto 50%;width:64px;height:64px;transform:translate(-50%,-50%);background:#ffffff2e}.reel-thumb:after{bottom:22px}.instagram-grid strong{padding:0 8px 10px;font-size:18px}.faq{background:#fff}.faq-list{max-width:980px;margin:0 auto;border-top:1px solid var(--line)}.faq-category{margin:34px 0 8px;color:var(--gold);font-size:clamp(18px,2vw,24px)}.faq-category:first-child{margin-top:24px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;padding:24px 0;font-size:clamp(17px,2vw,22px);font-weight:800}.faq-list p{margin:0;padding:0 0 26px}.access{background:var(--navy);color:#fff}.access-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:44px;align-items:center;max-width:1120px;margin:0 auto}.map-panel{display:grid;gap:18px}.map-panel iframe{width:100%;min-height:360px;border:0;filter:grayscale(.2) contrast(1.05)}.map-static{position:relative;display:block;overflow:hidden;border:1px solid rgba(255,255,255,.18)}.map-static img{display:block;width:100%;height:auto;min-height:240px;object-fit:cover;filter:grayscale(.18) contrast(1.04);transition:transform .5s ease,filter .5s ease}.map-static:hover img,.map-static:focus-visible img{transform:scale(1.02);filter:grayscale(0) contrast(1.06)}.map-pin{position:absolute;left:16px;bottom:16px;padding:6px 12px;background:#fffffff0;color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.04em;box-shadow:0 6px 18px #0000004d}.access-photo{width:100%;aspect-ratio:4 / 3;background:#ffffff14;transform:translate3d(0,var(--access-image-y, 0px),0) scale(1.02);will-change:transform}.contact-section{position:relative;overflow:hidden;min-height:520px;color:#fff}.contact-bg{position:absolute;inset:0;background:radial-gradient(circle at 20% 28%,rgba(178,155,104,.22),transparent 34%),linear-gradient(#071421db,#071421eb);transform:translate3d(0,var(--contact-scroll, 0px),0) scale(1.08);animation:slowBgPan 20s ease-in-out infinite alternate;will-change:transform,background-position}.contact-bg.has-photo{background-image:linear-gradient(90deg,#071421eb,#071421b8 52%,#071421e6),var(--photo);background-size:cover;background-position:center,var(--photo-position, center)}.contact-inner{position:relative;z-index:2;display:grid;align-content:center;width:min(100%,900px);min-height:520px;max-width:900px;padding:84px clamp(22px,6vw,86px)}.contact-inner p{line-height:2}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px clamp(22px,6vw,86px);color:#fff;background:var(--navy-2)}.site-footer img{width:160px;filter:brightness(0) invert(1)}.mobile-cta{display:none}@media(max-width:820px){.mobile-cta{display:block;position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:40;opacity:0;transform:translateY(24px);pointer-events:none;transition:opacity .3s ease,transform .3s ease}.mobile-cta.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.mobile-cta .button{width:100%;min-height:62px;padding:8px 16px;box-shadow:0 12px 28px #00000052;line-height:1.2}body.drawer-open .mobile-cta{opacity:0;pointer-events:none}}.reveal{opacity:0;transform:translate3d(0,34px,0);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay, 0ms)}.reveal.is-visible{opacity:1;transform:translateZ(0)}.js-ready .hero-content .eyebrow,.js-ready .hero-content h1,.js-ready .hero-jp,.js-ready .hero-copy,.js-ready .hero-sub,.js-ready .hero-actions{opacity:0;transform:translate3d(0,22px,0);animation:heroTextIn .8s cubic-bezier(.2,.7,.2,1) forwards}.js-ready .hero-content h1{animation-delay:.12s}.js-ready .hero-copy,.js-ready .hero-sub{animation-delay:.26s}.js-ready .hero-actions{animation-delay:.38s}.js-ready .hero-actions{animation-delay:.4s}.js-ready .hero-jp{animation-delay:.2s}.button,.text-link:after,.menu-button{transition:transform .25s ease,background-color .25s ease,border-color .25s ease}.button:hover,.text-link:hover:after,.menu-button:hover{transform:translateY(-3px)}@keyframes slowBgPan{0%{background-position:48% 50%}to{background-position:56% 50%}}@keyframes heroSlideMotion{0%{transform:translate3d(0,var(--hero-scroll, 0px),0) scale(var(--hero-start-scale, 1.08));background-position:var(--hero-start-position, 45% 50%)}to{transform:translate3d(var(--hero-pan-x, -18px),calc(var(--hero-scroll, 0px) + var(--hero-pan-y, -12px)),0) scale(var(--hero-end-scale, 1.16));background-position:var(--hero-end-position, 58% 50%)}}@keyframes floatPhoto{0%{transform:translateZ(0) rotate(-.2deg)}to{transform:translate3d(0,-16px,0) rotate(.4deg)}}@keyframes floatTrainer{0%{transform:translateZ(0)}to{transform:translate3d(0,-14px,0)}}@keyframes heroTextIn{to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}.hero-slide,.hero-bg,.trainer-bg,.contact-bg,.image-large,.access-photo{transform:none!important}}@media(max-width:1320px){.desktop-nav{display:none}.site-header{grid-template-columns:1fr auto auto}}@media(max-width:1040px){.split,.section-row-head,.trainer-content,.access-card,.proof-grid,.facility-grid,.gallery-grid,.instagram-grid,.voice-grid,.gallery-main,.price-group.compact{grid-template-columns:1fr}.image-pair{min-height:auto}.image-large,.image-small{position:static;width:100%;min-width:0;height:auto;margin:0}.image-pair{display:grid;grid-template-columns:1fr .7fr;gap:18px;align-items:end}.ba-grid,.price-cards{grid-template-columns:1fr}.ba-grid article{grid-template-columns:1fr}}@media(min-width:821px)and (max-width:1040px){.section{padding-inline:42px}.hero-content{width:min(760px,calc(100% - 84px));padding-left:42px}.hero h1{font-size:min(clamp(40px,7.4vw,64px),calc((100vw - 56px) / 13))}.proof-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.facility-grid,.gallery-grid,.instagram-grid,.voice-grid,.ba-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ba-grid article{grid-template-columns:1fr}}@media(max-width:820px){.section-row-head{gap:18px}.hero-news,.hero-dots{display:none}.proof-grid,.facility-grid,.gallery-grid,.instagram-grid,.voice-grid,.ba-grid{grid-template-columns:1fr}.proof-grid article,.voice-grid article{min-height:auto}.review-summary{display:grid}}@media(max-width:720px){.hero,.hero-content{height:100vh;height:100lvh;min-height:620px}.site-header{min-height:62px}.brand{padding:10px 14px}.brand img{width:150px}.brand span,.header-cta{display:none}.menu-button{width:66px}.drawer{top:62px;height:calc(100dvh - 62px);padding:14px 22px calc(28px + env(safe-area-inset-bottom))}.drawer a{display:block;grid-template-columns:none;column-gap:0;padding:12px 2px;font-size:17px;line-height:1.3}.drawer a span{display:block;margin-bottom:4px;font-size:11px;letter-spacing:.18em;line-height:1;white-space:nowrap}.hero-slide{transform:scale(1.08)}.hero-slide.is-active{animation:none}.hero-slide.has-photo{background-image:var(--photo);background-size:cover;background-position:var(--photo-position, center)}.hero-content{width:calc(100% - 36px);padding:116px 0 88px 18px;transform:none;will-change:auto}.hero h1{font-size:min(clamp(24px,6.8vw,42px),calc((100vw - 36px) / 13));line-height:1.2}.hero-news,.hero-dots{display:none}.hero-actions,.button{width:100%}.section{padding:70px 18px}.section h2,.contact-section h2{font-size:clamp(24px,6.6vw,32px);line-height:1.55;word-break:keep-all;overflow-wrap:break-word}.contact-inner h2{font-size:clamp(20px,5.4vw,26px);line-height:1.6;margin-bottom:16px}.contact-inner p{line-height:1.85;font-size:14px}.contact-inner .hero-actions{align-items:stretch;max-width:360px}.contact-inner .button.gold{background:var(--gold);border-color:var(--gold)}.section p,.contact-inner p,.faq-list p{line-height:1.85}.proof-grid article,.facility-grid div,.gallery-grid article>div:last-child,.price-group,.price-line,.voice-grid article{padding:22px}.price-line{grid-template-columns:1fr;gap:8px}.price-line b{font-size:32px}.gallery-grid article:not(.gallery-main) .gallery-photo,.reel-thumb{min-height:300px}.gallery-main{min-height:500px}.gallery-grid .gallery-main>div:last-child{left:24px;right:24px;bottom:30px;max-width:none;padding:0 0 0 18px}.image-pair{grid-template-columns:1fr}.section-side-link{justify-self:start}.trainer-portrait{width:min(280px,82vw)}.trainer-content dl div,.access-card dl div{grid-template-columns:1fr;gap:4px}.site-footer{flex-direction:column;align-items:flex-start}.contact-section{min-height:auto}.contact-bg{transform:translate3d(0,var(--contact-scroll, 0px),0) scale(1.02)}.contact-inner{min-height:auto;padding:82px 18px calc(86px + env(safe-area-inset-bottom))}.contact-inner .hero-actions{width:100%;flex-direction:column}.contact-inner .button{width:100%}}@media(max-width:480px){.brand img{width:142px;height:auto}.menu-button{width:60px}.hero-content{width:calc(100% - 28px);padding-left:14px;padding-right:14px}.hero h1{font-size:min(clamp(22px,6.5vw,36px),calc((100vw - 28px) / 13));line-height:1.2}.hero-copy{font-size:14px;line-height:1.9}.button{min-height:52px;padding-inline:18px}.drawer{padding:12px 18px calc(28px + env(safe-area-inset-bottom))}.drawer a{padding:10px 2px;font-size:16px;line-height:1.25}.drawer a span{margin-bottom:3px;font-size:10.5px;letter-spacing:.18em}.section{padding:64px 16px}.facility-grid,.price-cards,.voice-grid,.ba-grid{gap:16px}.ba-grid article{padding:18px}.ba-grid h3{font-size:28px}.faq-list summary{font-size:16px;line-height:1.7}.contact-inner{min-height:auto;padding:72px 16px calc(78px + env(safe-area-inset-bottom))}}
