@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
:root{--green:#244d2b;--deep:#102c19;--lime:#dcefbc;--cream:#f7f6f0;--ink:#263029;--orange:#ee7146;--line:#d9dfd6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Zen Kaku Gothic New',sans-serif;line-height:1.85;overflow-x:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Noto Serif JP',serif;line-height:1.5}.section{padding:110px max(24px,calc(50% - 570px))}.en{color:#6c9450;font-size:10px;font-weight:900;letter-spacing:.25em}.top{position:absolute;z-index:20;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:22px 4vw;color:#fff}.logo{display:flex;flex-direction:column;line-height:1}.logo b{font-size:30px}.logo span{font-size:8px;letter-spacing:.18em;margin-top:6px}.head-line{background:#06c755;padding:10px 18px;font-size:12px;font-weight:900}.hero{position:relative;min-height:900px;color:#fff;display:flex;align-items:center}.hero>img,.hero-shade{position:absolute;inset:0;height:100%;object-fit:cover}.hero>img{object-position:center 44%}.hero-shade{background:linear-gradient(90deg,#092313ee 0%,#092313ae 46%,transparent 78%)}.hero-copy{position:relative;z-index:2;width:min(660px,90%);margin-left:max(5vw,calc(50% - 570px));padding:130px 0 80px}.kicker{font-size:12px;letter-spacing:.12em}.hero h1{font-size:clamp(48px,6vw,72px);margin:18px 0}.hero h1 em{font-style:normal;color:var(--lime)}.lead{font-size:16px}.facts{display:flex;border-block:1px solid #ffffff5c;margin:28px 0 20px}.facts span{flex:1;padding:12px;text-align:center;font-size:10px}.facts strong{display:block;color:var(--lime);font-size:20px}.cta{min-height:76px;display:flex;align-items:center;position:relative;padding:12px 58px 12px 24px;max-width:510px}.cta small,.cta b{display:block}.cta small{font-size:10px}.cta b{font-size:16px}.cta i{position:absolute;right:22px;font-style:normal;font-size:22px}.line{color:#fff;background:#06c755;box-shadow:0 12px 26px #061b0d33}.textlink{display:inline-block;margin:15px 0 0 16px;font-size:12px;border-bottom:1px solid currentColor}.scroll{position:absolute;z-index:2;right:35px;bottom:35px;font-size:8px;letter-spacing:.18em;writing-mode:vertical-rl}.scroll span{display:inline-block;width:1px;height:55px;background:#fff;margin-top:10px;animation:scroll 1.8s infinite}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}.intro{text-align:center;max-width:820px;margin:auto}.intro h2,.section-head h2{font-size:clamp(28px,3.7vw,44px)}.worries{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:40px 0}.worries p{margin:0;border-bottom:1px solid var(--line);padding:15px 12px}.worries p:before{content:'✓';color:#76a74f;margin-right:10px;font-weight:900}.answer{margin:45px 0 0;font-size:17px}.answer strong{display:block;color:var(--green);font-family:'Noto Serif JP',serif;font-size:25px}.image-message{display:grid;grid-template-columns:1.15fr .85fr;background:var(--cream)}.image-message>img{height:680px;object-fit:cover}.image-message>div{align-self:center;padding:70px max(35px,7vw)}.image-message h2{font-size:clamp(30px,4vw,46px)}.image-message p:last-child{color:#67716a}.difference{background:#fff}.section-head{text-align:center;max-width:750px;margin:0 auto 55px}.section-head>p:last-child{color:#69726b}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.feature{background:#fff;padding:46px}.feature span{color:#719450;font-family:serif}.feature h3{font-family:'Noto Serif JP',serif;font-size:24px;line-height:1.55}.feature p{font-size:14px;color:#69726b;margin:0}.compare{display:grid;grid-template-columns:1fr 1fr;max-width:900px;margin:65px auto 0}.compare>div{padding:35px;background:#f1f2ef}.compare .ours{color:#fff;background:var(--green);transform:translateY(-12px);box-shadow:0 16px 30px #17321e2b}.compare small{font-weight:900;letter-spacing:.15em}.compare p{margin:15px 0 0;padding-left:20px;position:relative}.compare p:before{content:'—';position:absolute;left:0}.movie{background:var(--cream)}.video-wrap{max-width:900px;margin:auto;aspect-ratio:16/9;box-shadow:0 22px 55px #102c1925}.video-wrap iframe{border:0;width:100%;height:100%}.movie-note{text-align:center;color:#69726b;margin:25px 0 0}.coaches{padding:110px 0;background:var(--deep);color:#fff;overflow:hidden}.coaches .section-head{padding:0 24px}.coaches .section-head>p:last-child{color:#bdc9bf}.coach-window{overflow:hidden}.coach-track{display:flex;gap:16px;width:max-content;will-change:transform;cursor:grab}.coach-track img{width:310px;aspect-ratio:3/4;object-fit:cover;flex:none;box-shadow:0 18px 38px #0005}.coach-track.dragging{cursor:grabbing}.proof-band{display:grid;grid-template-columns:repeat(3,1fr);background:var(--lime);padding:55px max(24px,calc(50% - 500px));text-align:center}.proof-band div{border-right:1px solid #91a578}.proof-band div:last-child{border:0}.proof-band strong{display:block;color:var(--green);font-family:'Noto Serif JP',serif;font-size:42px}.proof-band sup{font-size:18px}.proof-band span{font-size:11px}.reviews{background:var(--cream)}.rating{display:flex;justify-content:center;gap:12px;align-items:center}.rating span,.stars{color:#f2a300;letter-spacing:.08em}.rating small{color:#747d76}.review-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:5px 5px 28px}.review-track article{flex:0 0 355px;scroll-snap-align:start;background:#fff;padding:30px;border:1px solid var(--line)}.review-track .quote{font-family:'Noto Serif JP',serif;line-height:1.9}.full{display:none;font-size:14px;color:#59635c}.review-track article.open .quote{display:none}.review-track article.open .full{display:block}.more{border:0;border-bottom:1px solid var(--green);background:none;color:var(--green);padding:2px 0;cursor:pointer}.review-track footer{border-top:1px solid var(--line);margin-top:22px;padding-top:16px;display:flex;flex-direction:column}.review-track footer small{color:#737d75}.line-benefit{color:#fff;background:linear-gradient(120deg,#183b21,#315e37);padding:90px max(24px,calc(50% - 450px));text-align:center}.line-benefit>div{max-width:760px;margin:auto}.line-benefit h2{font-size:clamp(30px,4vw,44px)}.line-benefit .en{color:var(--lime)}.line-benefit .cta{margin:30px auto 0;text-align:left}.class-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.class-grid article{border:1px solid var(--line);padding:22px;display:flex;flex-direction:column;position:relative}.class-grid b{font-family:'Noto Serif JP',serif;font-size:20px}.class-grid span{font-size:12px;color:#6f7971}.class-grid em{font-style:normal;color:#fff;background:var(--green);font-size:9px;padding:3px 7px;position:absolute;right:9px;top:9px}.campaign{display:grid;grid-template-columns:1.05fr .95fr;background:var(--cream)}.campaign-photo img{height:100%;min-height:720px;object-fit:cover}.campaign-copy{align-self:center;padding:80px max(35px,7vw)}.campaign-copy h2{font-size:clamp(34px,4vw,48px)}.campaign-copy ul{list-style:none;padding:0;margin:25px 0}.campaign-copy li{border-bottom:1px solid var(--line);padding:10px 5px}.campaign-copy li:before{content:'✓';color:#70a449;margin-right:10px}.campaign-copy>strong{display:block;color:var(--orange);font-size:22px;margin-bottom:25px}.form-link{display:block;text-align:center;max-width:510px;margin-top:15px;font-size:12px;text-decoration:underline}.faq{max-width:820px;margin:auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700;padding:20px 5px}.faq details p{color:#69726b;padding:0 5px 20px;font-size:14px}.final{position:relative;min-height:700px;color:#fff;display:flex;align-items:flex-end}.final>img,.final>div:first-of-type{position:absolute;inset:0;height:100%;object-fit:cover}.final>div:first-of-type{background:linear-gradient(transparent,#092012ed)}.final-copy{position:relative;text-align:center;width:min(680px,90%);margin:0 auto;padding:70px 0}.final h2{font-size:clamp(32px,4vw,48px)}.final .cta{margin:28px auto 0;text-align:left}.site-footer{background:#102c19;color:#dbe6dc;text-align:center;padding:45px 20px 95px;display:flex;flex-direction:column}.site-footer b{font-size:28px}.site-footer span,.site-footer small{font-size:10px}.sticky{display:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s,transform .85s}.reveal.visible{opacity:1;transform:none}
@media(max-width:760px){.section{padding:78px 20px}.top{padding:16px}.head-line{font-size:10px;padding:9px 11px}.hero{min-height:850px;align-items:flex-end}.hero>img{object-position:57% center}.hero-shade{background:linear-gradient(transparent 8%,#0923136b 38%,#092313f5 68%)}.hero-copy{width:auto;margin:0;padding:0 20px 90px}.hero h1{font-size:clamp(36px,10vw,46px)}.lead{font-size:13px}.facts span{padding:10px 2px;font-size:8px}.facts strong{font-size:15px}.cta{min-height:68px;padding-left:18px}.cta b{font-size:13px}.textlink{font-size:11px}.scroll{display:none}.worries{grid-template-columns:1fr}.answer strong{font-size:20px}.image-message,.campaign{grid-template-columns:1fr}.image-message>img{height:440px}.image-message>div,.campaign-copy{padding:60px 20px}.feature-grid{grid-template-columns:1fr}.feature{padding:32px 25px}.feature h3{font-size:21px}.compare{grid-template-columns:1fr}.compare .ours{transform:none}.coaches{padding:78px 0}.coach-track{gap:10px}.coach-track img{width:72vw;max-width:290px}.proof-band{padding:38px 10px}.proof-band strong{font-size:27px}.proof-band span{font-size:8px}.review-track{margin-inline:-20px;padding-left:20px}.review-track article{flex-basis:82vw}.class-grid{grid-template-columns:1fr 1fr}.class-grid article{padding:17px 12px}.class-grid b{font-size:17px}.campaign-photo img{min-height:420px}.final{min-height:650px}.final-copy{padding-bottom:100px}.sticky{position:fixed;z-index:60;inset:auto 0 0;display:grid;grid-template-columns:1.15fr .85fr;background:#fff;padding:8px 9px calc(8px + env(safe-area-inset-bottom));gap:7px}.sticky a{min-height:50px;display:grid;place-items:center;font-size:11px;font-weight:900}.sticky a:first-child{color:#fff;background:#06c755}.sticky a:last-child{color:var(--green);border:1px solid var(--line)}.site-footer{padding-bottom:105px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}.reveal{opacity:1;transform:none}.coach-track{transform:none!important}}

