:root{color-scheme:dark;--bg:#181818;--orange:#e37614;--white:#fff;--ink:#242424;--pale:#ffefdf;--content:1100px;--header:100px;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-weight:400;font-synthesis:none;color:var(--white);background:var(--bg)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0}body.modal-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,ul,ol,dl{margin:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ffb76b;outline-offset:6px}button:disabled{cursor:default}p{line-height:1.9}ul,ol{padding:0}h2,h3{font-weight:500}.section{padding:115px 28px;text-align:center}.section-title{font-size:30px;color:var(--orange);line-height:1.4}.section-title span{display:inline-block;position:relative;padding-bottom:10px}.section-title span:after{content:"";position:absolute;bottom:0;width:168px;max-width:100%;height:1px;background:var(--orange);left:50%;transform:translateX(-50%)}.section-intro{font-size:20px;margin:32px 0 50px}.wide{max-width:var(--content);margin:auto}.narrow{max-width:880px;margin:auto}.left{text-align:left}.lead{font-size:26px;line-height:1.8;font-weight:500}.accent,.eyebrow{color:var(--orange)}.eyebrow{font-size:16px;margin-bottom:18px}.white-card{background:#fff;color:var(--ink);box-shadow:0 3px 2px #e6a76d;position:relative}.outline-button{min-height:70px;width:347px;max-width:100%;padding:16px 45px;display:inline-flex;align-items:center;justify-content:center;position:relative;border:2px solid var(--orange);border-radius:11px;background:transparent;font-size:16px;line-height:1.7;transition:background .2s,color .2s}.outline-button>span{font-size:32px;font-weight:200;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.outline-button:hover{background:var(--orange);color:#fff}.skip-link{position:fixed;left:20px;top:-100px;z-index:200;background:#fff;color:#181818;padding:10px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-only{display:none}
.header{height:var(--header);padding:0 32px;display:flex;justify-content:space-between;align-items:center;background:#090909;position:sticky;top:0;z-index:30}.brand{display:flex;width:254px;flex-direction:column;align-items:center;position:relative;height:96px;justify-content:flex-end;padding-bottom:8px;color:var(--orange)}.brand-image{position:absolute;width:254px;max-width:none;height:143px;object-fit:contain;top:-28px;left:0;pointer-events:none}.brand>span{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;position:relative}.menu-toggle{border:0;background:none;display:flex;width:80px;height:70px;justify-content:center;flex-direction:column;gap:26px;padding:8px}.menu-toggle span{display:block;width:65px;height:3px;background:white}.close-button{border:0;background:none;color:var(--orange);font-size:62px;font-weight:200;line-height:1;min-width:54px;min-height:54px;position:absolute;top:10px;right:18px;padding:0}.menu-dialog{max-width:none;max-height:none;width:100%;height:100dvh;border:0;padding:0;margin:0;color:white;background:linear-gradient(160deg,#201303 0%,#090909 65%)}dialog::backdrop{background:#000b}.menu-top{height:100px;padding:0 20px}.menu-links{max-width:570px;margin:100px auto 75px;display:grid;grid-template-rows:repeat(3,1fr);grid-auto-flow:column;grid-template-columns:1fr 1fr;column-gap:90px;row-gap:60px}.menu-link{font-size:20px;position:relative;padding-bottom:22px;white-space:nowrap}.menu-link:after{position:absolute;content:"";height:2px;width:140px;background:var(--orange);bottom:0;left:0}.menu-link:hover{color:var(--orange)}.menu-legal{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:14px;padding:20px}.footer{background:var(--orange);text-align:center;padding:70px 25px 28px}.brand-footer{margin:auto;width:340px;height:124px;color:#fff}.brand-footer .brand-image{filter:brightness(0) invert(1);width:340px;height:191px;top:-40px}.brand-footer>span{font-size:24px}.footer-nav{max-width:700px;margin:50px auto 65px;display:grid;grid-template-columns:1fr 1fr;gap:60px 30px;text-align:left;font-size:20px}.footer-nav a{width:fit-content}.footer a:hover{text-decoration:underline;text-underline-offset:5px}.social-title{font-size:20px;margin-bottom:50px}.socials{display:flex;gap:60px;justify-content:center}.socials>a,.socials>span{border:1px solid #fff;border-radius:50%;width:76px;height:76px;display:grid;place-items:center;padding:12px}.socials img{width:100%;max-height:52px;object-fit:contain}.footer-legal{display:flex;gap:24px;justify-content:center;margin:55px 0 30px;font-size:12px}.footer small{font-size:14px}.reservation-dialog{background:var(--bg);color:white;border:1px solid var(--orange);border-radius:14px;max-width:calc(100% - 36px);width:480px;text-align:center;padding:65px 30px 40px}.reservation-dialog h2{color:var(--orange);margin-bottom:24px}.reservation-dialog .close-button{font-size:40px}.reservation-dialog .outline-button{margin-top:20px}.reservation-dialog #reservation-actions:empty{display:none}
.home-hero{position:relative;height:554px;background:#292929}.home-hero picture,.hero-image{height:100%;width:100%}.hero-image{object-fit:cover;object-position:center}.hero-copy{position:absolute;left:max(28px,calc((100vw - 930px)/2));top:200px;font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;text-align:left;text-shadow:2px 3px 3px #000;line-height:1.1}.hero-copy h1{font-size:48px;line-height:1.12;font-weight:700}.hero-copy p{font-size:36px;line-height:1.4;margin-top:20px;font-weight:700}.hero-copy strong{display:block;font-size:58px;color:#ef7800;margin-top:12px}.hero-contact{position:absolute;right:0;bottom:0;background:#ef7800;border:0;width:355px;min-height:92px;padding:15px;color:white;font-family:"Yu Mincho",serif;font-size:20px;line-height:1.5}.hero-contact:hover{background:#d66b00}.intro{padding-top:128px;padding-bottom:105px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif}.intro h2{font-size:40px;letter-spacing:.025em;line-height:1.8}.intro p{font-size:20px;margin-top:20px}.features{padding-top:20px;padding-bottom:122px}.feature-grid{max-width:var(--content);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:56px}.feature-card{padding:34px 24px 58px;min-height:367px;text-align:left}.feature-number{position:absolute;top:24px;left:17px;background:var(--orange);color:white;padding:4px 6px;font-size:24px}.feature-icon{height:142px;width:150px;object-fit:contain;margin:0 auto 33px}.feature-card h3{font-size:20px;text-align:center;font-weight:500;white-space:nowrap}.feature-card p{font-size:16px;line-height:2;margin-top:4px}.photo-banner{height:547px;position:relative;isolation:isolate;text-align:center;overflow:hidden}.banner-image{position:absolute;z-index:-2;inset:0;height:100%;width:100%;object-fit:cover;object-position:center 59%}.photo-banner:after{content:"";position:absolute;inset:0;z-index:-1;background:#181818a6}.banner-content{padding:130px 25px 60px}.banner-content .section-title{color:white}.banner-content p{margin:60px 0 80px;font-size:20px;line-height:1.55}.home-price{padding-top:125px;padding-bottom:115px}.sample-plan{width:482px;max-width:100%;margin:96px auto 38px;padding:75px 65px 48px;text-align:left}.sample-plan h3,.plan-card h3{position:absolute;background:var(--orange);color:white;left:50%;transform:translateX(-50%);top:-30px;border-radius:15px;padding:16px 25px;min-width:210px;text-align:center;font-size:20px;white-space:nowrap}.price-amount{font-size:22px;text-align:center;line-height:1.4}.price-amount strong{font-size:34px;font-weight:400}.price-amount small{font-size:14px}.check-list{list-style:none;margin-top:24px;line-height:2}.check-list li{padding-left:25px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:#ef7800}.plan-note{font-size:18px;margin-bottom:46px}.home-trial{padding-top:125px;padding-bottom:110px}.step-grid{max-width:1202px;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:96px auto 54px;text-align:left}.step-card{position:relative;background:#fff;color:#242424;padding:22px 28px 18px;box-shadow:0 3px 2px #e6a76d}.step-card:not(:last-child):after{content:"›";position:absolute;right:-26px;top:40%;font-size:40px;color:var(--orange)}.step-icon{height:90px;width:120px;object-fit:contain;margin:0 auto 16px}.step-number{text-align:center;color:#ef7800;font-size:16px;line-height:1.7}.step-card h3{text-align:center;font-size:20px;font-weight:500;line-height:1.6}.step-card>p:last-child{font-size:16px;line-height:2;margin-top:5px}.home-faq{padding-top:35px;padding-bottom:105px}.faq-list{max-width:610px;text-align:left;margin:48px auto 0}.faq-list details{border-bottom:1px solid var(--orange);font-size:20px}.faq-list summary{cursor:pointer;position:relative;list-style:none;min-height:90px;display:flex;align-items:center;padding:20px 55px 20px 20px;line-height:1.7}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"＋";position:absolute;right:22px;font-size:26px;font-weight:200;color:var(--orange)}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{font-size:16px;padding:0 20px 24px}.access{padding-top:50px;padding-bottom:155px}.access-inner{max-width:680px;margin:55px auto 0}.map-panel{display:flex;aspect-ratio:680/461;align-items:flex-end;justify-content:flex-end;background:#d9d9d9;color:#292929}.map-panel>span{padding:12px 18px;background:#fff;font-size:13px}.map-panel:hover>span{background:var(--orange);color:#fff}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px 45px;text-align:left;margin:54px 20px 0}.access-grid>div{display:flex;gap:15px;align-items:flex-start}.access-grid dt{flex:0 0 24px}.access-grid dt img{width:24px;height:27px;object-fit:contain}.access-grid dd{margin:0;font-size:14px;line-height:1.55}
.page-hero{height:380px;position:relative;isolation:isolate;display:flex;align-items:center;padding:0 max(28px,calc((100vw - 1100px)/2));overflow:hidden}.page-hero-image{position:absolute;inset:0;z-index:-2;height:100%;width:100%;object-fit:cover;object-position:center 55%}.page-hero:after{position:absolute;content:"";inset:0;background:#1818186b;z-index:-1}.page-hero h1{border-bottom:3px solid var(--orange);font-size:34px;font-weight:500;min-width:428px;max-width:100%;padding-bottom:3px}.facility-body{padding:80px 28px 220px}.icon-strip{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);max-width:850px;margin:100px auto 130px}.icon-strip li{text-align:center;position:relative;padding:0 12px}.icon-strip img{width:110px;height:112px;object-fit:contain;margin:0 auto 40px}.icon-strip li:not(:last-child):after{position:absolute;content:"";height:112px;width:1px;right:0;top:0;background:var(--orange)}.icon-strip span{font-size:23px;line-height:1.5}.ruled-title{display:flex;align-items:center;justify-content:center;gap:30px;font-size:30px;font-weight:500;margin:50px auto 100px}.ruled-title:before,.ruled-title:after{content:"";height:1px;width:105px;flex-shrink:0;background:var(--orange)}.facility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:76px}.equipment-card{padding:32px 23px 24px;text-align:left}.equipment-card h3{text-align:center;font-size:20px;margin-bottom:36px}.equipment-card>img{width:100%;height:140px;object-fit:cover}.equipment-card p{font-size:16px;line-height:2}.price-body{padding-top:60px;padding-bottom:110px}.admission{display:flex;align-items:center;justify-content:center;gap:45px;width:520px;max-width:100%;margin:80px auto 20px;padding:40px 35px 20px}.admission>img{width:90px;height:90px;object-fit:contain}.admission h3{font-size:26px}.admission strong{font-size:44px;font-weight:400}.admission p{font-size:24px;white-space:nowrap}.admission small{font-size:14px}.price-body .ruled-title{margin:20px auto 70px}.plan-group-title{font-size:26px;font-weight:400;border-bottom:1px solid var(--orange);width:fit-content;max-width:100%;padding:0 30px;margin:0 auto 68px}.plan-grid{max-width:1020px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:58px}.plan-card{padding:65px 95px 40px;min-height:510px}.person-disc{width:86px;height:86px;padding:20px;margin:0 auto 30px;background:var(--orange);border-radius:50%}.person-disc img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.plan-card .price-amount{white-space:nowrap}.plan-card .price-amount strong{font-size:38px}.plan-card .price-amount small{display:inline-block;vertical-align:middle;text-align:right;margin-left:10px;font-size:17px}.plan-badge{background:var(--orange);color:#fff;border-radius:15px;padding:14px 6px;white-space:nowrap;font-size:16px;margin:28px -18px 30px}.plan-card .check-list{text-align:left;font-size:16px;white-space:nowrap}.plan-card .check-list li{border-bottom:1px solid #ffb479;line-height:2}.plan-card.light h3,.plan-card.light .person-disc,.plan-card.light .plan-badge{background:#fff0e4;color:#d76000}.plan-card.light .person-disc img{filter:none}.plan-card.apricot h3,.plan-card.apricot .person-disc,.plan-card.apricot .plan-badge{background:#ffa74f;color:#111}.plan-card.peach h3,.plan-card.peach .person-disc,.plan-card.peach .plan-badge{background:#ffc288;color:#111}.weekday-note{font-size:20px;text-align:left;width:1020px;max-width:100%;margin:25px auto 70px;padding-left:35px;line-height:1.4}.price-body .plan-grid+.plan-group-title{margin-top:85px}.price-notes{font-size:20px;text-align:left;max-width:550px;margin:90px auto 0;line-height:1.6}
.lesson-intro{padding:55px 28px 80px}.lesson-intro h2{font-size:44px;font-weight:600}.lesson-intro p{font-size:32px;margin-top:70px;line-height:1.8}.lesson-group{padding:35px 28px 100px;text-align:left}.lesson-group h2,.lesson-features h2,.coaches h2,.schedule h2{font-size:32px}.lesson-group-image{width:670px;height:448px;object-fit:cover;margin:30px auto}.lesson-group>p:not(.eyebrow){font-size:24px;line-height:1.4;max-width:600px;margin:30px auto 90px}.lesson-group>.outline-button{display:flex;margin:auto}.lesson-features{padding:20px 28px 50px;text-align:left}.lesson-features h3{font-size:30px;font-weight:600;margin:55px 0 20px}.lesson-features>p:not(.eyebrow){font-size:20px;line-height:2.2}.lesson-features .icon-strip{margin:95px auto 45px}.lesson-features .icon-strip span{font-size:20px}.coaches{padding-top:10px;padding-bottom:70px}.coach-card{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;padding:50px;margin-top:75px;text-align:left;align-items:center}.coach-card>img{width:100%;height:340px;object-fit:cover}.coach-card h3{font-size:34px;font-weight:600;white-space:nowrap}.coach-card h3 span{font-size:18px;margin-left:14px}.coach-card p,.coach-card ul{font-size:16px;line-height:1.3;margin-top:34px}.coach-card ul{list-style:disc;padding-left:18px}.schedule{padding-top:10px;padding-bottom:135px}.schedule-grid{max-width:944px;margin:75px auto 55px;display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:65px 88px 85px}.schedule-grid h3{font-size:30px;font-weight:600;margin-bottom:48px;white-space:nowrap}.schedule table{width:100%;border-collapse:collapse;text-align:left}.schedule th{font-weight:400}.schedule thead th{font-size:20px;padding-bottom:20px}.schedule tbody th,.schedule td{font-size:25px;line-height:1.8;white-space:nowrap;border-bottom:2px solid var(--orange)}.schedule tbody th{padding-left:25px;width:32%}.schedule>p:last-child{font-size:26px;font-weight:500}.trial-options{padding-top:55px;padding-bottom:100px}.trial-options>h2:first-child{font-size:34px;font-weight:600}.trial-options .lead{margin:35px 0 60px;font-size:24px}.trial-options .ruled-title{font-size:26px;margin-bottom:60px}.trial-grid{max-width:1020px;margin:0 auto 60px;display:grid;grid-template-columns:1fr 1fr;gap:58px}.trial-card{padding:50px 70px 15px}.trial-card h3{font-size:28px}.trial-price{font-size:64px;color:#f18a2e;border-bottom:1px solid var(--orange);line-height:1.5;margin:24px 25px}.trial-price small{font-size:28px;white-space:nowrap}.trial-card .check-list{font-size:18px;text-align:left;line-height:1.7;white-space:nowrap}.trial-card>p:last-of-type{margin-top:18px;font-size:20px}.trial-card>small{font-size:14px}.pale{background:#ffeddd;color:#242424}.trial-flow .ruled-title{font-size:26px;margin:0 auto 100px}.trial-flow .step-grid{margin:0 auto 0}.trial-flow .step-card{background:transparent;box-shadow:none;display:flex;flex-direction:column;padding:0 16px}.trial-flow .step-number{order:-1;margin-bottom:20px}.trial-flow .step-icon{margin-bottom:40px}.trial-flow .step-card h3{margin-bottom:25px}.trial-flow .step-card>p:last-child{margin:0}.trial-rentals{padding-top:160px;padding-bottom:160px}.trial-rentals .ruled-title{margin:30px auto 85px;font-size:26px}.trial-rentals .icon-strip{grid-template-columns:repeat(3,1fr);margin:0 auto 30px}.trial-rentals .icon-strip img{border-radius:50%;background:#ffeddd;width:122px;height:122px;padding:20px;margin-bottom:60px}.trial-rentals .icon-strip li:after{display:none}.trial-faq .ruled-title{font-size:26px;margin:0 auto 110px}.trial-faq .faq-list{max-width:930px;display:grid;grid-template-columns:1fr 1fr;gap:50px 60px;margin:0 auto}.trial-faq details{background:white;border:1px solid #ffac70;height:fit-content}.trial-faq summary{font-size:20px;min-height:75px;padding:14px 40px 14px 18px}.trial-faq summary:after{right:12px}.legal-title{max-width:1100px;margin:140px auto 120px;padding:0 0 4px;color:red;font-size:34px;font-weight:400;border-bottom:3px solid #908443;width:428px;margin-left:max(28px,calc((100vw - 1100px)/2))}.legal-body{font-size:18px;line-height:1.25;max-width:680px;margin:0 auto 220px;padding:0 0}.legal-body h2{font-size:18px;font-weight:400;line-height:1.25}.legal-body p{line-height:1.25}.legal-body section{margin:100px 0}.legal-body section:first-child{margin-top:0}.legal-body ol{padding-left:22px}.legal-body ul{padding-left:22px}.legal-body li{line-height:1.25}.commerce-body section{margin:0}.commerce-body p{margin:0}.commerce-body h2{margin:0;font-size:18px}.commerce-body .break-before{margin-top:25px}
@media(min-width:601px) and (max-width:1100px){.feature-grid{gap:24px}.feature-card{padding-left:16px;padding-right:16px}.feature-card h3{font-size:17px;white-space:normal}.hero-copy{left:10%}.intro h2{font-size:33px}.step-grid{gap:22px}.step-card{padding:20px 16px}.facility-grid{gap:30px}.plan-card{padding-left:40px;padding-right:40px}.coach-card{padding:35px}.coach-card h3{font-size:26px}.coach-card h3 span{display:block;margin:10px 0}.schedule-grid{gap:40px;padding:55px 40px}.legal-body{padding:0 28px}.trial-card{padding:35px}.trial-card .check-list{white-space:normal}}
@media(max-width:600px){:root{--header:69px}html{scroll-padding-top:80px}.header{padding:0 18px;height:69px}.brand{width:150px;height:68px;padding-bottom:9px}.brand-image{width:150px;height:84px;top:-15px}.brand>span{font-size:14px}.menu-toggle{width:48px;height:48px;gap:11px;padding:5px}.menu-toggle span{height:3px;width:38px}.section{padding:65px 18px}.section-title{font-size:22px}.section-title span{padding-bottom:4px}.section-title span:after{width:110px}.section-intro{font-size:13px;margin:24px 0 36px}.mobile-only{display:block}.outline-button{width:280px;min-height:54px;padding:12px 30px;font-size:14px;border-radius:7px}.outline-button>span{font-size:28px;right:15px}.header .menu-toggle{margin-right:1px}.menu-top{height:69px;padding:0 18px}.close-button{font-size:48px;right:15px;top:8px}.menu-links{display:flex;flex-direction:column;gap:26px;align-items:flex-start;max-width:240px;margin:65px auto 45px}.menu-link{font-size:16px;padding-bottom:12px;white-space:nowrap}.menu-link:after{width:94px}.menu-legal{font-size:12px;gap:6px;padding-bottom:30px}.footer{padding:46px 24px 22px}.brand-footer{width:255px;height:95px;padding-bottom:4px}.brand-footer .brand-image{width:255px;height:143px;top:-28px}.brand-footer>span{font-size:18px}.footer-nav{max-width:320px;margin:40px auto 45px;gap:30px 15px;font-size:12px}.footer-nav a:nth-child(6){font-size:11px}.social-title{font-size:14px;margin-bottom:32px}.socials{gap:22px}.socials>a,.socials>span{width:46px;height:46px;padding:8px}.socials img{max-height:30px}.footer-legal{font-size:10px;gap:12px;margin:38px 0 30px}.footer small{font-size:10px}.home-hero{height:580px;padding-bottom:82px}.hero-image{object-fit:cover;object-position:center}.hero-copy{left:28px;top:auto;bottom:135px}.hero-copy h1{font-size:32px;line-height:1.15}.hero-copy p{font-size:24px;line-height:1.4;margin-top:12px}.hero-copy strong{font-size:38px;letter-spacing:-1px;margin-top:6px}.hero-contact{width:100%;min-height:82px;font-size:18px;line-height:1.4;padding:15px}.intro{padding:62px 28px 54px;text-align:left}.intro h2{font-size:24px;line-height:1.7;letter-spacing:0}.intro p{font-size:14px;line-height:2;margin-top:12px}.features{padding-top:0;padding-bottom:65px}.feature-grid{display:flex;flex-direction:column;gap:26px;max-width:365px}.feature-card{min-height:235px;padding:19px 21px 20px;text-align:left}.feature-number{top:19px;left:16px;font-size:23px;padding:3px 6px}.feature-icon{height:87px;width:100px;margin:0 auto 17px}.feature-card h3{font-size:18px;white-space:nowrap}.feature-card p{font-size:14px;line-height:2.2;margin-top:10px}.photo-banner{height:330px}.banner-image{object-position:55% 59%}.banner-content{padding:54px 20px 30px}.banner-content .section-title{font-size:24px}.banner-content p{font-size:14px;line-height:1.8;margin:35px 0 32px}.home-price{padding-top:65px;padding-bottom:65px}.home-price .section-intro{font-size:14px;max-width:300px;margin:24px auto 55px}.sample-plan{width:280px;padding:54px 36px 30px;margin:70px auto 28px}.sample-plan h3{min-width:145px;top:-22px;font-size:18px;padding:10px 20px;border-radius:10px}.price-amount{font-size:18px}.price-amount strong{font-size:30px}.price-amount small{font-size:12px}.sample-plan .check-list{font-size:13px;margin-top:20px;white-space:nowrap}.sample-plan .check-list li{padding-left:18px}.plan-note{font-size:13px;line-height:1.8;margin:0 auto 30px;max-width:300px}.home-trial{padding-top:60px;padding-bottom:55px}.home-trial .section-title{font-size:20px}.step-grid{grid-template-columns:repeat(2,1fr);gap:25px 15px;margin:45px auto 35px;max-width:365px}.step-card{padding:16px 13px 15px}.step-card:not(:last-child):after{display:none}.step-card:nth-child(odd):after{display:block;right:-15px;font-size:25px}.step-icon{height:64px;width:80px;margin-bottom:10px}.step-number{font-size:12px}.step-card h3{font-size:16px}.step-card>p:last-child{font-size:12px;line-height:1.8;margin-top:8px}.home-faq{padding-top:0;padding-bottom:45px}.faq-list{margin-top:30px;max-width:330px}.faq-list details{font-size:14px}.faq-list summary{min-height:67px;padding:16px 36px 16px 5px;font-size:14px}.faq-list summary:after{right:6px;font-size:21px}.faq-list details>p{font-size:13px;padding:0 5px 20px}.access{padding-top:35px;padding-bottom:80px}.access-inner{margin-top:35px}.map-panel{aspect-ratio:329/260}.map-panel>span{font-size:11px;padding:9px 12px}.access-grid{grid-template-columns:1fr;gap:22px;margin:30px 16px 0}.access-grid>div{gap:15px}.access-grid dd{font-size:12px;line-height:1.7}.access-grid dt{flex-basis:21px}.access-grid dt img{width:21px;height:23px}.page-hero{height:230px;padding:0 28px}.page-hero h1{font-size:24px;min-width:0;width:100%;max-width:290px}.page-hero-image{object-position:center}.lead{font-size:18px}.facility-body{padding:50px 18px 80px}.facility-body .lead{font-size:16px;line-height:1.9}.icon-strip{grid-template-columns:repeat(2,1fr);gap:35px 0;margin:50px auto 65px}.icon-strip img{width:78px;height:78px;margin-bottom:22px}.icon-strip span{font-size:16px}.icon-strip li:after{display:none}.icon-strip li:nth-child(odd):after{display:block;height:78px}.ruled-title{font-size:20px;line-height:1.7;gap:15px;margin:40px auto}.ruled-title:before,.ruled-title:after{width:35px}.facility-body .ruled-title{font-size:18px}.facility-grid{display:flex;flex-direction:column;gap:30px;max-width:330px;margin:auto}.equipment-card{padding:25px 24px}.equipment-card h3{font-size:18px;margin-bottom:25px}.equipment-card>img{height:155px}.equipment-card p{font-size:14px}.price-body{padding-top:45px;padding-bottom:70px}.price-body>.lead{font-size:18px;max-width:320px;margin:auto}.admission{width:300px;margin:40px auto 32px;padding:25px 16px 20px;gap:23px}.admission>img{width:60px;height:60px}.admission h3{font-size:20px}.admission p{font-size:18px}.admission strong{font-size:30px}.admission small{font-size:11px}.price-body .ruled-title{font-size:23px;margin-bottom:45px}.plan-group-title{font-size:18px;margin-bottom:48px;padding:0 5px}.plan-grid{grid-template-columns:1fr;gap:65px;max-width:330px}.plan-card{padding:50px 40px 30px;min-height:410px}.plan-card h3{top:-24px;font-size:18px;padding:12px 15px;min-width:190px;border-radius:12px}.person-disc{width:67px;height:67px;padding:15px;margin-bottom:22px}.plan-card .price-amount strong{font-size:32px}.plan-card .price-amount small{font-size:14px}.plan-badge{font-size:14px;margin:25px 10px 25px;padding:10px 4px;border-radius:10px}.plan-card .check-list{font-size:13px;white-space:normal}.weekday-note{font-size:12px;max-width:330px;padding:0;margin:22px auto 55px}.price-body .plan-grid+.plan-group-title{margin-top:55px}.price-notes{font-size:12px;line-height:1.9;margin-top:45px}.lesson-intro{padding:45px 26px 55px}.lesson-intro h2{font-size:25px;line-height:1.8}.lesson-intro p{font-size:18px;line-height:1.9;margin-top:32px}.lesson-group{padding:0 18px 55px}.eyebrow{font-size:13px;margin-bottom:10px}.lesson-group h2,.lesson-features h2,.coaches h2,.schedule h2{font-size:24px}.lesson-group-image{width:100%;height:auto;margin:25px auto}.lesson-group>p:not(.eyebrow){font-size:16px;line-height:1.8;margin:25px auto 35px}.lesson-features{padding:15px 22px 30px}.lesson-features h3{font-size:22px;margin:35px 0 20px;line-height:1.8}.lesson-features>p:not(.eyebrow){font-size:15px;line-height:2}.lesson-features .icon-strip{margin:40px auto 0}.lesson-features .icon-strip span{font-size:15px}.coaches{padding:20px 18px 55px}.coach-card{display:flex;flex-direction:column;padding:28px;margin-top:35px;gap:25px}.coach-card>img{width:100%;height:auto;max-height:340px;object-fit:contain}.coach-card h3{font-size:27px;white-space:normal}.coach-card h3 span{display:block;font-size:16px;margin:5px 0 0}.coach-card p,.coach-card ul{font-size:14px;line-height:1.5;margin-top:20px}.schedule{padding-top:0;padding-bottom:70px}.schedule-grid{grid-template-columns:1fr;padding:35px 35px 45px;gap:50px;margin:35px auto}.schedule-grid h3{font-size:24px;margin-bottom:20px}.schedule thead th{font-size:15px;padding-bottom:12px}.schedule td,.schedule tbody th{font-size:20px;line-height:2}.schedule tbody th{padding-left:10px}.schedule>p:last-child{font-size:17px;line-height:1.8}.trial-options{padding:45px 18px 65px}.trial-options>h2:first-child{font-size:23px}.trial-options .lead{font-size:17px;margin:25px auto 35px}.trial-options .ruled-title{font-size:20px;margin-bottom:35px}.trial-grid{grid-template-columns:1fr;max-width:330px;gap:30px;margin-bottom:40px}.trial-card{padding:35px 35px 25px}.trial-card h3{font-size:25px}.trial-price{font-size:58px;margin:20px}.trial-price small{font-size:23px}.trial-card .check-list{font-size:15px;line-height:1.9;white-space:normal}.trial-card>p:last-of-type{font-size:18px}.trial-card>small{font-size:11px}.trial-flow{padding-top:50px;padding-bottom:60px}.trial-flow .ruled-title{font-size:22px;margin-bottom:40px}.trial-flow .step-grid{grid-template-columns:1fr;gap:28px;max-width:310px}.trial-flow .step-card{min-height:120px;display:grid;grid-template-columns:85px 1fr;grid-template-rows:22px 32px auto;column-gap:20px;padding:0}.trial-flow .step-icon{grid-column:1;grid-row:1/4;align-self:center;width:80px;height:80px;margin:0}.trial-flow .step-number,.trial-flow .step-card h3{text-align:left;margin:0}.trial-flow .step-number{grid-column:2;grid-row:1}.trial-flow .step-card h3{grid-column:2;grid-row:2;align-self:center}.trial-flow .step-card>p:last-child{grid-column:2;grid-row:3;font-size:13px}.trial-flow .step-card:after{display:none}.trial-rentals{padding-top:60px;padding-bottom:70px}.trial-rentals .ruled-title{font-size:22px;margin:0 auto 35px}.trial-rentals .icon-strip{grid-template-columns:repeat(3,1fr);gap:0}.trial-rentals .icon-strip img{width:75px;height:75px;padding:14px;margin-bottom:20px}.trial-rentals .icon-strip li{padding:0 2px}.trial-rentals .icon-strip span{font-size:12px}.trial-faq{padding:50px 18px 65px}.trial-faq .ruled-title{font-size:22px;margin-bottom:40px}.trial-faq .faq-list{grid-template-columns:1fr;gap:22px}.trial-faq summary{font-size:14px;min-height:65px;padding:15px 35px 15px 12px}.legal-title{font-size:24px;width:auto;max-width:310px;margin:70px 28px 60px}.legal-body{font-size:14px;line-height:1.5;margin:0 auto 80px;padding:0 28px}.legal-body h2{font-size:14px;line-height:1.5}.legal-body p,.legal-body li{line-height:1.5}.legal-body section{margin:50px 0}.commerce-body section{margin:0}.commerce-body h2{font-size:14px}.reservation-dialog{padding:55px 24px 35px}.reservation-dialog h2{font-size:23px}.reservation-dialog p{font-size:14px}}
.home-hero picture{display:block;position:relative}.home-hero picture:after{position:absolute;content:"";inset:0;background:linear-gradient(#18181812,#18181877);pointer-events:none}
.step-icon,.access-grid dt img,.icon-strip img,.admission>img{filter:brightness(0) saturate(100%) invert(49%) sepia(97%) saturate(1741%) hue-rotate(355deg) brightness(96%) contrast(98%)}
.step-card:nth-child(2) .step-icon{position:relative}
@media(max-width:600px){
 .home-hero .hero-contact{font-size:18px}
 .photo-banner{height:400px}.banner-content{padding-top:62px}.banner-content p{margin:40px 0 32px}
 .home-price{padding-top:85px;padding-bottom:110px}.home-price .section-intro{font-size:14px;text-align:left;max-width:287px;line-height:2.2;margin:22px auto 83px}.sample-plan h3{min-width:183px;font-size:22px;padding:12px 20px;top:-26px}.sample-plan{padding-top:54px}.plan-note{font-size:14px;text-align:left;max-width:287px;line-height:2.2;margin-bottom:48px}.home-price>.outline-button,.home-trial>.outline-button,.banner-content>.outline-button{width:225px;min-height:49px}
 .home-trial .step-grid{grid-template-columns:1fr;max-width:278px;gap:40px;margin:55px auto 40px}.home-trial .step-card{height:262px;padding:23px 38px 15px}.home-trial .step-icon{width:110px;height:90px;margin-bottom:20px}.home-trial .step-number{font-size:16px}.home-trial .step-card h3{font-size:18px}.home-trial .step-card>p:last-child{font-size:14px;line-height:2.2;margin-top:8px}.home-trial .step-card:not(:last-child):after{display:block;content:"⌄";position:absolute;top:auto;bottom:-30px;left:50%;right:auto;transform:translateX(-50%);font-size:30px;line-height:1}
 .home-faq .faq-list summary{min-height:84px;padding-right:76px}.home-faq .faq-list{max-width:336px}.home-faq{padding-top:15px;padding-bottom:45px}
 .map-panel{max-width:281px;margin:auto;aspect-ratio:281/193}.access-grid{margin-top:40px;gap:28px}.access-grid dd{font-size:14px;line-height:1.45}.access{padding-top:35px;padding-bottom:120px}
 .page-hero{height:196px}
 .facility-body .icon-strip,.lesson-features .icon-strip{grid-template-columns:repeat(4,1fr);gap:0}.facility-body .icon-strip img,.lesson-features .icon-strip img{width:53px;height:60px;margin-bottom:22px}.facility-body .icon-strip span,.lesson-features .icon-strip span{font-size:12px}.facility-body .icon-strip li,.lesson-features .icon-strip li{padding:0 4px}.facility-body .icon-strip li:not(:last-child):after,.lesson-features .icon-strip li:not(:last-child):after{display:block;height:60px}.facility-body .lead{font-size:14px;line-height:1.6}.facility-body .ruled-title{font-size:14px;margin:80px auto 50px}.facility-body{padding-top:45px}.facility-grid{gap:50px}.equipment-card{padding:14px 24px 16px;text-align:center}.equipment-card h3{margin-bottom:26px;font-size:18px}.equipment-card>img{width:144px;height:97px;margin:auto}.equipment-card p{font-size:14px;line-height:1.3;margin-top:16px}.equipment-card:first-child{min-height:210px}.equipment-card{min-height:208px}
 .lesson-intro{padding:42px 18px 50px}.lesson-intro h2{font-size:18px;line-height:1.7}.lesson-intro p{font-size:14px;line-height:1.4;margin-top:14px}.lesson-features h3{font-size:18px;line-height:1.5;margin:35px 0 20px}.lesson-features>p:not(.eyebrow){font-size:14px;line-height:1.5}.lesson-features .icon-strip{margin:40px auto}.lesson-group-image{max-width:300px}.lesson-group>p:not(.eyebrow){font-size:14px;line-height:1.5;margin-bottom:55px}.coach-card>img{width:200px;height:210px;object-fit:cover}.coach-card h3{font-size:26px;white-space:nowrap}.coach-card h3 span{display:inline;font-size:12px;margin-left:12px}.coach-card{text-align:center;gap:22px}.coach-card p,.coach-card ul{font-size:13px;line-height:1.5}.coach-card ul{text-align:left}.coaches h2{font-size:24px}.schedule-grid{background:transparent;box-shadow:none;padding:0;gap:50px;max-width:310px}.schedule-grid>div{background:#fff;padding:35px 30px 40px;box-shadow:0 3px 2px #e6a76d}.schedule-grid h3{font-size:20px;margin-bottom:30px}.schedule thead th{font-size:13px}.schedule td,.schedule tbody th{font-size:16px;line-height:2}.schedule>p:last-child{font-size:13px;font-weight:400}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Current image campaign; the old text campaign rules have been removed. */
.campaign-dialog { width: 760px; max-width: calc(100vw - 32px); max-height: calc(100dvh - 32px); padding: 10px; margin: auto; overflow: auto; border: 1px solid #7f6548; border-radius: 5px; background: #171715; color: #f4eadb; }
.campaign-dialog::backdrop { background: #000b; }
.campaign-toolbar { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.campaign-close { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: 88px; min-height: 44px; padding: 4px 10px; background: transparent; border: 0; color: #eee5d8; font-size: 13px; cursor: pointer; }
.campaign-close > span { font: 300 30px/1 Arial,sans-serif; }
.campaign-banner { display: block; }
.campaign-banner img { width: 100%; height: auto; }
.campaign-dismiss { display: block; width: 100%; min-height: 44px; margin-top: 10px; padding: 10px 16px; border: 1px solid #71604a; border-radius: 2px; background: transparent; color: #eee5d8; font-size: 13px; cursor: pointer; }
.campaign-dismiss:hover, .campaign-close:hover { background: #302a22; }
@media (max-width: 600px) {
 .campaign-dialog { max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); padding: 8px; }
 .campaign-toolbar { margin-bottom: 4px; }
 .campaign-close { min-height: 44px; }
}
