:root{--navy:#2f4858;--navy82:#2f4858d1;--navy62:#2f48589e;--navy06:#2f48580f;--navy08:#2f485814;--accent:#c8d0d1;--accentTint:#eef1f1;--bg:#f7f8f9;--surface:#fff;--border:#e8ebed;--sans:"Inter","Noto Sans JP","Hiragino Sans","Yu Gothic",system-ui,sans-serif;--shadow:0 12px 36px #2f485817;color-scheme:light}*{box-sizing:border-box}h1,h2,h3,p,li,strong{word-break:auto-phrase}body{background:var(--surface);color:var(--navy);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15.5px;line-height:1.95}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.in{max-width:1440px;margin:0 auto;padding-inline:clamp(20px,4vw,64px)}.label{letter-spacing:.22em;color:var(--navy62);text-transform:uppercase;font-family:Inter,sans-serif;font-size:11.5px;font-weight:500}.h2{letter-spacing:.05em;text-wrap:balance;margin:14px 0 0;font-size:clamp(26px,3vw,36px);font-weight:400;line-height:1.55}.lead{color:var(--navy82);max-width:38em;margin:0}.btn{--ease:cubic-bezier(.23,1,.32,1);letter-spacing:.04em;white-space:nowrap;height:48px;transition:transform .15s var(--ease),background-color .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:0 24px;font-size:13.5px;font-weight:500;display:inline-flex}.btn:active{transform:scale(.97)}.btn:focus-visible,a:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.btn svg{flex:none;width:16px;height:16px}.btn .arr{transition:transform .18s var(--ease)}.btn:hover .arr{transform:translate(3px)}.btn-p{background:var(--navy);color:#fff;border-color:var(--navy)}.btn-p:hover{background:#263b48;border-color:#263b48}.btn-s{color:var(--navy);backdrop-filter:blur(6px);background:#ffffff61;border-color:#2f48586b}.btn-s:hover{border-color:var(--navy);background:#ffffffb8}.btn-o{height:44px;color:var(--navy);backdrop-filter:blur(6px);background:#ffffff47;border-color:#2f485880;padding:0 18px;font-size:12.5px}.btn-o:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.btn-w{color:var(--navy);background:#fff;border-color:#fff}.btn-w:hover{background:#ffffffe0}.btn-g{color:#fff;background:#ffffff14;border-color:#ffffff8c}.btn-g:hover{background:#ffffff2e;border-color:#fff}.more{border-bottom:1px solid var(--accent);align-items:center;gap:8px;padding-bottom:2px;font-size:14px;font-weight:500;display:inline-flex}.more:hover{border-color:var(--navy)}.ic{background:var(--navy06);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid}.ic svg{width:20px;height:20px;stroke:var(--navy);fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.memo{z-index:20;color:#5b4a12;background:#fff8d9;border:1px solid #efd98a;border-radius:10px;max-width:280px;padding:8px 12px;font-size:12px;line-height:1.6;position:absolute;top:16px;right:16px;box-shadow:0 4px 14px #00000014}.memo b{font-weight:500}body.clean .memo{display:none}.season{z-index:50;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));border:1px solid var(--border);box-shadow:var(--shadow);font:500 12.5px var(--sans);background:#ffffffeb;border-radius:999px;padding:4px;display:flex;position:fixed}.season button{color:var(--navy62);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:999px;padding:7px 14px}.season button[aria-pressed=true]{background:var(--navy);color:#fff}body.summer #winter{display:none}.ctrls{z-index:50;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:fixed}.ctrls .season{position:static}.memo-toggle{z-index:50;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));background:var(--navy);color:#fff;font:500 13px var(--sans);cursor:pointer;box-shadow:var(--shadow);border:0;border-radius:999px;padding:10px 18px;position:fixed}section{position:relative}.menu-btn{cursor:pointer;backdrop-filter:blur(6px);background:#ffffff47;border:1px solid #2f485880;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;display:none}.menu-btn i{background:var(--navy);width:16px;height:1.5px;transition:transform .25s;display:block}.menu-btn[aria-expanded=true] i:first-child{transform:translateY(3.25px)rotate(45deg)}.menu-btn[aria-expanded=true] i:last-child{transform:translateY(-3.25px)rotate(-45deg)}.sp-menu{z-index:40;background:var(--bg);padding:calc(96px + env(safe-area-inset-top,0px)) 24px 40px;flex-direction:column;gap:32px;display:flex;position:fixed;inset:0;overflow:auto}.sp-menu[hidden]{display:none}.sp-menu nav{border-top:1px solid var(--border);flex-direction:column;display:flex}.sp-menu nav a{border-bottom:1px solid var(--border);letter-spacing:.04em;padding:16px 4px;font-size:17px}.sp-menu .btn{align-self:flex-start}body.menu-open .hdr{z-index:45;position:fixed}.hdr{z-index:5;justify-content:space-between;align-items:center;padding:22px 40px;display:flex;position:absolute;inset:0 0 auto}.logo{flex:none;align-items:center;line-height:0;display:flex}.logo img{width:auto;height:36px;display:block}.ftr .logo img{height:44px}@media (width<=960px){.logo img{height:30px}}.nav{align-items:center;gap:24px;font-size:13.5px;display:flex}.nav a:not(.btn){padding-bottom:3px;position:relative}.nav a:not(.btn):after{content:"";background:currentColor;width:0;height:1px;transition:width .25s;position:absolute;bottom:0;left:0}.nav a:not(.btn):hover:after{width:100%}.hero{height:100svh;min-height:620px;max-height:1100px;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:50% 78%;width:100%;height:100%;position:absolute;inset:0}.hero:before{content:"";z-index:1;background:linear-gradient(#ffffff8c 0%,#fff0 28%),linear-gradient(90deg,#f7f8f973 0%,#f7f8f933 30%,#f7f8f900 50%),linear-gradient(#f7f8f900 76%,#f7f8f999 100%);position:absolute;inset:0}.hero .copy{z-index:2;flex-direction:column;gap:24px;display:flex;position:absolute;top:clamp(110px,19vh,210px);left:clamp(20px,4vw,64px)}.hero .foot{z-index:2;flex-direction:column;gap:22px;display:flex;position:absolute;bottom:clamp(36px,7vh,72px);left:clamp(20px,4vw,64px)}.hero .vlabel{z-index:2;writing-mode:vertical-rl;letter-spacing:.34em;color:var(--navy82);font-family:Inter,sans-serif;font-size:10.5px;position:absolute;top:clamp(110px,19vh,210px);right:clamp(16px,2.4vw,36px)}.hero .scroll{z-index:2;letter-spacing:.3em;color:var(--navy82);flex-direction:column;align-items:center;gap:10px;font-family:Inter,sans-serif;font-size:10.5px;display:flex;position:absolute;bottom:clamp(36px,7vh,72px);right:clamp(16px,2.4vw,36px)}.hero .scroll i{background:linear-gradient(var(--navy) 50%,#2f485833 50%);background-size:1px 200%;width:1px;height:48px;animation:2.4s ease-in-out infinite sc;display:block}@keyframes sc{0%{background-position:0 100%}to{background-position:0 -100%}}.hero .kicker{letter-spacing:.2em;color:var(--navy82);font-size:12.5px}.hero h1{letter-spacing:.04em;margin:0;font-size:clamp(40px,6.4vw,96px);font-weight:400;line-height:1.32}.hero h1 .l2{padding-left:1.1em;display:block}.hero .sub{margin:0;font-size:15.5px}.hero .ctas{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.foryou{padding-block:clamp(88px,11vw,150px) clamp(72px,8vw,110px)}.foryou .grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,104px);max-width:none;padding-left:0;display:grid}.foryou .ph{border-radius:0 16px 16px 0;height:clamp(520px,52vw,760px);position:relative;overflow:hidden}.foryou .ph img{object-fit:cover;object-position:30% 50%;width:100%;height:100%}.foryou .ph figcaption{letter-spacing:.28em;color:#fff;text-shadow:0 1px 8px #00000040;font-family:Inter,sans-serif;font-size:10.5px;position:absolute;bottom:24px;left:clamp(20px,4vw,64px)}.foryou .txt{max-width:560px}.foryou .h2{font-size:clamp(30px,3.4vw,46px)}.worries{border-top:1px solid var(--border);margin:40px 0 0;padding:0;list-style:none}.worries li{border-bottom:1px solid var(--border);align-items:flex-start;gap:18px;padding:19px 4px;font-size:clamp(15px,1.25vw,17px);line-height:1.75;display:flex}.worries li svg{width:22px;height:22px;stroke:var(--navy62);fill:none;stroke-width:1.6px;flex:none;margin-top:3px}.foryou .note{color:var(--navy82);margin:32px 0 0;line-height:2.05}.foryou .note strong{color:var(--navy);font-weight:500}.answer{padding-block:0 clamp(88px,10vw,140px)}.bridge{text-align:center;flex-direction:column;align-items:center;gap:18px;padding-block:clamp(24px,4vw,56px) clamp(48px,6vw,80px);display:flex}.bridge i{background:linear-gradient(#2f485800,var(--navy62));width:1px;height:72px;display:block}.bridge p{letter-spacing:.06em;margin:0;font-size:clamp(22px,2.4vw,32px);line-height:1.6}.courses{grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,28px);display:grid}.course{background:var(--bg);isolation:isolate;border-radius:16px;flex-direction:column;min-height:clamp(520px,44vw,640px);display:flex;position:relative;overflow:hidden}.course .media{flex:auto;min-height:280px;position:relative;overflow:hidden}.course .media img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.23,1,.32,1);position:absolute;inset:0}.course:hover .media img{transform:scale(1.03)}.course .body{grid-template-columns:1fr auto;align-items:end;gap:8px 24px;padding:clamp(24px,2.6vw,40px);display:grid}.course .en{letter-spacing:.24em;color:var(--navy62);grid-column:1/-1;font-family:Inter,sans-serif;font-size:11px}.course h3{letter-spacing:.05em;margin:0;font-size:clamp(22px,2vw,28px);font-weight:400;line-height:1.5}.course p{color:var(--navy82);grid-column:1;margin:0;font-size:14px;line-height:1.9}.course .circle{border:1px solid #2f48584d;border-radius:50%;grid-area:2/2/4;place-items:center;width:52px;height:52px;transition:background-color .18s,border-color .18s,color .18s;display:grid}.course .circle svg{width:18px;height:18px}.course:hover .circle{background:var(--navy);border-color:var(--navy);color:#fff}.course.w{background:var(--navy);color:#fff}.course.w .media{background:radial-gradient(120% 90% at 70% 0,#4a6475 0%,#2f4858 55%,#23384a 100%)}.course.w .media canvas{width:100%;height:100%;position:absolute;inset:0}.course.w .media .flake{stroke:#ffffff80;fill:none;stroke-width:1px;width:64px;height:64px;position:absolute;top:clamp(24px,3vw,44px);right:clamp(24px,3vw,44px)}.course.w .media .ph-note{color:#ffffff8c;font-size:11.5px;position:absolute;bottom:20px;left:clamp(24px,2.6vw,40px)}.course.w .en{color:#fff9}.course.w p{color:#fffc}.course.w .circle{border-color:#fff6}.course.w:hover .circle{color:var(--navy);background:#fff;border-color:#fff}.trial{background:var(--accentTint);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 48px;margin-top:clamp(16px,2vw,28px);padding:clamp(24px,2.6vw,36px) clamp(24px,3vw,48px);display:flex}.trial .l{flex-wrap:wrap;align-items:baseline;gap:12px 36px;display:flex}.trial .tt{flex-direction:column;gap:2px;display:flex}.trial b{font-size:17px;font-weight:500}.trial span{color:var(--navy82);font-size:13.5px}.trial .price{letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap;font-family:Inter,sans-serif;font-size:clamp(28px,2.6vw,36px);font-weight:300}.trial .price small{font-family:var(--sans);color:var(--navy82);margin-left:4px;font-size:13px;font-weight:400}.why{background:var(--bg);padding-block:clamp(88px,11vw,150px);overflow:hidden}.why .top{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:clamp(40px,6vw,104px);display:grid}.why .top .txt{max-width:calc(560px + max(clamp(20px,4vw,64px),50vw - 720px + clamp(20px,4vw,64px)));padding-left:max(clamp(20px,4vw,64px),50vw - 720px + clamp(20px,4vw,64px))}.why .h2{font-size:clamp(30px,3.4vw,46px)}.why .lead{margin-top:28px;line-height:2.05}.why .pics{aspect-ratio:3/2;max-height:680px;position:relative}.why .pics .main{border-radius:16px 0 0 16px;position:absolute;inset:0;overflow:hidden}.why .pics .main img{object-fit:cover;object-position:68% 45%;width:100%;height:100%}.feats{border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);margin:clamp(88px,9vw,130px) 0 0;padding:0;list-style:none;display:grid}.feat{border-left:1px solid var(--border);flex-direction:column;gap:14px;padding:36px clamp(18px,2vw,32px) 8px;display:flex}.feat:first-child{border-left:0;padding-left:0}.feat .ic{background:var(--surface)}.feat strong{letter-spacing:.03em;font-size:clamp(16px,1.35vw,18.5px);font-weight:500;line-height:1.6}.feat span{color:var(--navy82);font-size:14px;line-height:1.95}.band{text-align:center;flex-direction:column;align-items:center;gap:24px;margin-top:clamp(80px,9vw,120px);display:flex}.band h3{letter-spacing:.06em;text-wrap:balance;margin:0;font-size:clamp(26px,3vw,40px);font-weight:400;line-height:1.6}.band h3 em{background:linear-gradient(#0000 62%,#c8d0d1b3 62%);font-style:normal}.band p{color:var(--navy82);max-width:34em;margin:0;line-height:2.05}.band .btn{margin-top:12px}.winter{color:#fff;background:radial-gradient(120% 80% at 85% 0,#4a6475 0%,#4a647500 55%),linear-gradient(170deg,#2f4858 0%,#26394a 55%,#1c2d3b 100%);padding-block:clamp(100px,12vw,170px);overflow:hidden}.winter canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.winter .in{position:relative}.winter .label{color:#ffffff9e}.winter .wh{letter-spacing:.05em;color:#fff;text-wrap:balance;margin:18px 0 0;font-size:clamp(30px,4.4vw,64px);font-weight:400;line-height:1.45}.winter .wh .l2{padding-left:1.1em;display:block}.winter .row{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(40px,6vw,104px);margin-top:clamp(56px,6vw,88px);display:grid}.winter p{color:#ffffffd6;max-width:30em;margin:0;line-height:2.05}.winter .note{color:#ffffffe6;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:10px;margin-top:22px;padding:7px 16px;font-size:13px;display:inline-flex}.winter .note svg{stroke:currentColor;fill:none;stroke-width:1.6px;width:15px;height:15px}.winter .btn{margin-top:32px}.winter ul{border-top:1px solid #ffffff29;grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.winter li{border-bottom:1px solid #ffffff29;flex-direction:column;gap:6px;padding:26px 24px 26px 0;display:flex}.winter li:nth-child(2n){border-left:1px solid #ffffff29;padding-left:24px}.winter li b{letter-spacing:.24em;color:#ffffff8c;font-family:Inter,sans-serif;font-size:11px;font-weight:400}.winter li span{letter-spacing:.03em;font-size:clamp(16px,1.4vw,19px)}.message{padding-block:clamp(88px,11vw,150px)}.message .grid{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,104px);display:grid}.message .ph{border-radius:0 16px 16px 0;height:clamp(560px,56vw,800px);position:relative;overflow:hidden}.message .ph img{object-fit:cover;object-position:50% 30%;width:100%;height:100%}.message .txt{max-width:600px;padding-right:clamp(20px,4vw,64px)}.message blockquote{letter-spacing:.05em;text-wrap:balance;margin:24px 0 0;font-size:clamp(22px,2.2vw,31px);font-weight:400;line-height:1.7}.message .body{color:var(--navy82);margin:32px 0 0;line-height:2.05}.message .who{border-top:1px solid var(--border);flex-direction:column;gap:4px;margin-top:36px;padding-top:24px;display:flex}.message .who small{letter-spacing:.24em;color:var(--navy62);font-family:Inter,sans-serif;font-size:11px}.message .who b{letter-spacing:.12em;font-size:22px;font-weight:400}.message .who span{color:var(--navy62);font-size:13px}.message .btn{margin-top:32px}.app{background:var(--bg);padding-block:clamp(88px,10vw,140px)}.app .grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,104px);display:grid}.app .h2{font-size:clamp(28px,3vw,42px)}.app .lead{margin-top:24px;line-height:2.05}.app ul{border-top:1px solid var(--border);margin:36px 0 0;padding:0;list-style:none}.app li{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr;gap:4px 18px;padding:18px 0;display:grid}.app li .ic{background:var(--surface);grid-row:1/3;width:40px;height:40px}.app li .ic svg{width:18px;height:18px}.app li b{font-size:15.5px;font-weight:500}.app li span{color:var(--navy82);font-size:13.5px;line-height:1.85}.phones{justify-content:center;gap:clamp(16px,2vw,28px);display:flex}.phone{aspect-ratio:9/19;background:var(--surface);border:1px solid var(--border);border-radius:32px;width:clamp(170px,17vw,240px);padding:10px;display:flex;box-shadow:0 24px 60px #2f48581f}.phone:nth-child(2){margin-top:56px}.phone div{background:repeating-linear-gradient(135deg,var(--bg) 0 12px,#f1f3f4 12px 24px);text-align:center;color:var(--navy62);border-radius:24px;flex:1;place-items:center;padding:12px;font-size:11.5px;line-height:1.7;display:grid}.app .fine{color:var(--navy62);margin-top:18px;font-size:12px}.pricing{padding-block:clamp(88px,10vw,140px)}.pricing .head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:24px clamp(40px,6vw,104px);display:grid}.pricing .h2{font-size:clamp(28px,3vw,42px)}.pricing .head p{color:var(--navy82);max-width:34em;margin:0;line-height:2.05}.plans{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin-top:clamp(48px,5vw,72px);display:grid}.plan{border-left:1px solid var(--border);flex-direction:column;gap:8px;padding:36px clamp(20px,2.4vw,40px);display:flex;position:relative}.plan:first-child{border-left:0}.plan.pop{background:var(--bg)}.plan.pop:before{content:"";background:var(--navy);height:2px;position:absolute;top:-1px;left:0;right:0}.plan .badge{background:var(--navy);color:#fff;border-radius:999px;padding:2px 12px;font-size:11px;position:absolute;top:36px;right:clamp(20px,2.4vw,40px)}.plan h3{letter-spacing:.05em;margin:0;font-size:clamp(19px,1.6vw,22px);font-weight:400}.plan .spec{color:var(--navy62);font-size:13px}.plan .amt{letter-spacing:.01em;font-variant-numeric:tabular-nums;margin-top:18px;font-family:Inter,sans-serif;font-size:clamp(34px,3.2vw,46px);font-weight:300;line-height:1.1}.plan .amt small{font-family:var(--sans);margin-left:4px;font-size:14px;font-weight:400}.plan .per{color:var(--navy82);font-variant-numeric:tabular-nums;font-size:13px}.plan .note{color:var(--navy82);margin-top:10px;font-size:13px;line-height:1.85}.pricing .fine{color:var(--navy62);flex-wrap:wrap;gap:6px 24px;margin-top:22px;font-size:12.5px;display:flex}.pricing .actions{flex-wrap:wrap;gap:10px;margin-top:36px;display:flex}.cform{background:var(--bg);padding-block:clamp(88px,10vw,140px)}.cform .grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(40px,6vw,104px);display:grid}.cform .h2{font-size:clamp(28px,3vw,42px)}.cform .side p{color:var(--navy82);margin:24px 0 0;line-height:2.05}.cform .side .alt{background:var(--surface);color:var(--navy82);border-radius:16px;margin-top:28px;padding:20px 22px;font-size:13.5px;line-height:1.9}.cform .side .alt b{color:var(--navy);margin-bottom:4px;font-weight:500;display:block}form.f{background:var(--surface);border-radius:16px;gap:22px;padding:clamp(24px,3vw,44px);display:grid;box-shadow:0 6px 24px #2f48580d}.f .row{gap:8px;display:grid}.f .two{grid-template-columns:1fr 1fr;gap:22px;display:grid}.f label,.f legend{align-items:center;gap:8px;padding:0;font-size:13.5px;font-weight:500;display:flex}.f .req{color:#fff;background:var(--navy);border-radius:999px;padding:1px 8px;font-size:10.5px;font-weight:500}.f .opt{color:var(--navy62);border:1px solid var(--border);border-radius:999px;padding:0 8px;font-size:10.5px}.f input[type=text],.f input[type=email],.f input[type=tel],.f textarea{width:100%;font:inherit;color:var(--navy);background:var(--surface);border:1px solid var(--border);border-radius:12px;outline:none;padding:12px 14px;font-size:15px;transition:border-color .2s}.f textarea{resize:vertical;min-height:140px;line-height:1.8}.f input:focus,.f textarea:focus{border-color:var(--accent)}.f input::placeholder,.f textarea::placeholder{color:#2f485866}.f fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}.f .chips{flex-wrap:wrap;gap:8px;display:flex}.f .chips input{opacity:0;pointer-events:none;position:absolute}.f .chips label{border:1px solid var(--border);cursor:pointer;border-radius:12px;padding:9px 14px;font-size:13.5px;font-weight:400;transition:background-color .2s,border-color .2s}.f .chips input:checked+label{background:var(--navy06);border-color:var(--navy)}.f .chips input:focus-visible+label{outline:2px solid var(--navy);outline-offset:2px}.f .hint{color:var(--navy62);font-size:12px}.f .agree{align-items:flex-start;gap:10px;font-size:13.5px;font-weight:400;display:flex}.f .agree input{accent-color:var(--navy);width:16px;height:16px;margin-top:5px}.f .agree a{text-underline-offset:3px;text-decoration:underline}.f .send{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.f .btn[disabled]{opacity:.4;cursor:not-allowed;transform:none}.f .done{background:var(--accentTint);border-radius:12px;padding:20px 22px;font-size:14px;line-height:1.9;display:none}.f.sent .done{display:block}.f.sent .body{display:none}.f .err{color:var(--navy);font-size:12.5px}.flow{background:var(--bg);padding-block:clamp(88px,10vw,140px)}.flow .head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:24px clamp(40px,6vw,104px);display:grid}.flow .h2{font-size:clamp(28px,3vw,42px)}.flow .head p{color:var(--navy82);max-width:34em;margin:0;line-height:2.05}.steps{grid-template-columns:repeat(5,1fr);margin:clamp(48px,5vw,72px) 0 0;padding:0;list-style:none;display:grid;position:relative}.steps:before{content:"";background:var(--border);height:1px;position:absolute;top:22px;left:0;right:0}.steps li{flex-direction:column;gap:18px;padding-right:clamp(16px,2vw,32px);display:flex;position:relative}.steps .num{background:var(--surface);letter-spacing:.04em;border:1px solid #2f48584d;border-radius:50%;place-items:center;width:44px;height:44px;font-family:Inter,sans-serif;font-size:13px;display:grid;position:relative}.steps li:first-child .num{background:var(--navy);color:#fff;border-color:var(--navy)}.steps li>div{flex-direction:column;gap:8px;display:flex}.steps small{letter-spacing:.24em;color:var(--navy62);font-family:Inter,sans-serif;font-size:10.5px}.steps b{letter-spacing:.03em;font-size:clamp(15.5px,1.3vw,18px);font-weight:500;line-height:1.6}.steps span{color:var(--navy82);font-size:13.5px;line-height:1.9}.flow .foot{margin-top:clamp(40px,4vw,56px)}.flow .area{background:var(--surface);border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:clamp(40px,4vw,56px);padding:22px 28px;display:flex}.flow .area b{letter-spacing:.24em;color:var(--navy62);font-family:Inter,sans-serif;font-size:11px;font-weight:500}.flow .area span{font-size:14.5px}.contact{align-items:center;min-height:clamp(620px,62vw,820px);display:flex;position:relative;overflow:hidden}.contact>img{object-fit:cover;object-position:30% 50%;width:100%;height:100%;position:absolute;inset:0}.contact:before{content:"";z-index:1;background:linear-gradient(90deg,#f7f8f900 22%,#f7f8f9e0 52%,#f7f8f9f5 100%);position:absolute;inset:0}.contact .in{z-index:2;justify-content:flex-end;width:100%;display:flex;position:relative}.contact .box{flex-direction:column;gap:22px;width:min(560px,100%);padding-block:100px;display:flex}.contact .h2{font-size:clamp(30px,3.6vw,50px);line-height:1.5}.contact .lead{line-height:2.05}.contact .ctas{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.contact .qr{align-items:center;gap:18px;margin-top:6px;display:flex}.contact .qr i{border:1px dashed var(--accent);background:var(--surface);width:96px;height:96px;color:var(--navy62);text-align:center;border-radius:12px;flex:none;place-items:center;font-size:10.5px;font-style:normal;line-height:1.5;display:grid}.contact .qr span{color:var(--navy82);font-size:13px;line-height:1.8}.contact .info{border-top:1px solid var(--border);margin-top:10px;display:grid}.contact .info div{border-bottom:1px solid var(--border);grid-template-columns:110px 1fr;gap:12px;padding:13px 0;font-size:13.5px;display:grid}.contact .info span{overflow-wrap:anywhere}.contact .info b{letter-spacing:.2em;color:var(--navy62);padding-top:2px;font-family:Inter,sans-serif;font-size:11px;font-weight:500}.ftr{background:var(--navy);color:#ffffffd1;padding-block:64px 40px;font-size:13px}.ftr .top{flex-wrap:wrap;justify-content:space-between;gap:40px;display:flex}.ftr nav{grid-template-columns:repeat(3,auto);gap:10px 40px;display:grid}.ftr nav a:hover{color:#fff}.ftr .bottom{color:#fff9;border-top:1px solid #ffffff24;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:48px;padding-top:22px;font-size:12px;display:flex}.ftr .bottom nav{gap:20px;display:flex}.rv{transition:opacity .5s,transform .5s}.rv.pre{opacity:.001;transform:translateY(20px)}@media (width<=960px){.in{padding-inline:20px}.hdr{padding:16px 20px}.menu-btn{display:flex}.nav{gap:8px}.nav a:not(.btn){display:none}.hero{background:var(--surface);height:auto;min-height:0;max-height:none}.hero>img{object-position:74% 50%;height:78svh;min-height:520px;bottom:auto}.hero:before{background:linear-gradient(#f7f8f9cc 0%,#f7f8f973 30%,#f7f8f900 48%),linear-gradient(#fff0 86%,#fff 100%);height:78svh;min-height:520px;bottom:auto}.hero .vlabel,.hero .scroll{display:none}.hero .foot{gap:18px;margin-top:max(78svh + 12px,532px);padding:0 20px 8px;position:relative;bottom:auto;left:auto}.hero .copy{top:96px;left:20px;right:20px}.courses,.feats,.app .grid,.pricing .head{grid-template-columns:1fr}.phones{order:-1}.phone{border-radius:26px;width:40vw}.plans{grid-template-columns:1fr}.plan{border-left:0;border-top:1px solid var(--border);padding:28px 4px}.plan:first-child{border-top:0}.plan .badge{top:28px;right:4px}.plan.pop{margin-inline:-16px;padding-inline:16px}.course{min-height:0}.course .media{flex:none;height:240px}.foryou,.why,.winter,.message,.app,.pricing,.flow{padding-block:72px}.winter .row{grid-template-columns:1fr;gap:44px}.winter .wh{font-size:25px}.winter .wh .l2{padding-left:0}.winter li,.winter li:nth-child(2n){padding:20px 12px 20px 0}.winter li:nth-child(2n){padding-left:14px}.foryou .grid,.why .top,.message .grid{grid-template-columns:1fr;gap:36px}.message .ph{aspect-ratio:4/5;height:auto;margin-right:20px}.message .txt{padding-inline:20px}br.pc{display:none}.why .top .txt{max-width:none;padding-inline:20px}.why .pics{aspect-ratio:4/3;margin-left:20px}.feats{grid-template-columns:1fr 1fr;margin-top:72px}.feat,.feat:first-child{border-left:0;padding:26px 14px 22px}.feat:nth-child(2n){border-left:1px solid var(--border)}.feat:nth-child(n+3){border-top:1px solid var(--border)}.feat:nth-child(odd){padding-left:0}.feat strong br{display:none}.feat strong{font-size:15px}.foryou .grid{padding-inline:0}.foryou .ph{aspect-ratio:4/3;border-radius:0;height:auto}.foryou .txt{padding-inline:20px}.flow .head,.cform .grid,.f .two{grid-template-columns:1fr}.steps{grid-template-columns:1fr;gap:26px}.steps:before{width:1px;height:auto;inset:22px auto 22px 22px}.steps li{flex-direction:row;align-items:flex-start;gap:18px;padding:0}.contact{min-height:0}.contact:before{background:linear-gradient(#f7f8f91a 0%,#f7f8f9f0 34%)}.contact .box{padding-block:240px 64px}.contact .qr{display:none}.contact .info div{grid-template-columns:96px 1fr}.ftr nav{grid-template-columns:repeat(2,auto)}.memo{max-width:220px;font-size:11px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.rv.pre{opacity:1;transform:none}}.shdr{top:env(safe-area-inset-top,0px);z-index:30;backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#ffffffeb;position:sticky}.shdr .bar{justify-content:space-between;align-items:center;max-width:1440px;margin:0 auto;padding:14px clamp(20px,4vw,64px);display:flex}.shdr .nav a[aria-current=page]:after{width:100%}.pghead{padding-block:clamp(56px,7vw,96px) clamp(32px,4vw,56px)}.crumb{color:var(--navy62);gap:8px;margin-bottom:28px;font-size:12px;display:flex}.crumb a:hover{text-decoration:underline}.pghead .grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:24px clamp(40px,6vw,104px);display:grid}.pghead h1{letter-spacing:.05em;margin:14px 0 0;font-size:clamp(32px,4vw,56px);font-weight:400;line-height:1.4}.pghead p{color:var(--navy82);max-width:34em;margin:0;line-height:2.05}.banner{height:clamp(260px,32vw,460px);overflow:hidden}.banner img{object-fit:cover;width:100%;height:100%}.toc{flex-wrap:wrap;gap:10px;margin-top:32px;display:flex}.toc a{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:8px 18px;font-size:13px;transition:border-color .2s}.toc a:hover{border-color:var(--navy)}.sec{padding-block:clamp(80px,9vw,130px)}.sec.alt{background:var(--bg)}.sec .h2{font-size:clamp(28px,3vw,42px)}.course-d{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(40px,6vw,104px);display:grid}.course-d .ph{aspect-ratio:4/3;border-radius:16px;position:sticky;top:110px;overflow:hidden}.course-d .ph img{object-fit:cover;width:100%;height:100%}.course-d .ph.snow{background:radial-gradient(120% 90% at 70% 0,#4a6475 0%,#2f4858 55%,#23384a 100%);position:sticky}.course-d .ph.snow canvas{width:100%;height:100%;position:absolute;inset:0}.course-d .ph.snow span{color:#ffffff8c;font-size:11.5px;position:absolute;bottom:18px;left:24px}.course-d .en{letter-spacing:.24em;color:var(--navy62);font-family:Inter,sans-serif;font-size:11px}.course-d h2{letter-spacing:.05em;margin:12px 0 0;font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.5}.course-d .lead{margin-top:22px;line-height:2.05}.block{margin-top:44px}.block h3{letter-spacing:.06em;align-items:center;gap:10px;margin:0 0 14px;font-size:15px;font-weight:500;display:flex}.block h3:before{content:"";background:var(--navy);width:18px;height:1px}.checks{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.checks li{border-bottom:1px solid var(--border);gap:14px;padding:14px 2px;font-size:15px;line-height:1.75;display:flex}.checks li svg{width:20px;height:20px;stroke:var(--navy62);fill:none;stroke-width:1.6px;flex:none;margin-top:3px}.learn{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;display:grid}.learn div{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:18px 18px 18px 0;display:flex}.learn div:nth-child(2n){border-left:1px solid var(--border);padding-left:18px}.learn b{letter-spacing:.22em;color:var(--navy62);font-family:Inter,sans-serif;font-size:10.5px;font-weight:400}.learn span{font-size:15px}.keyfacts{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:44px;display:grid}.keyfacts div{background:var(--bg);border-radius:12px;flex-direction:column;gap:2px;padding:16px 18px;display:flex}.sec.alt .keyfacts div{background:var(--surface)}.keyfacts b{letter-spacing:.2em;color:var(--navy62);font-family:Inter,sans-serif;font-size:10.5px;font-weight:500}.keyfacts span{font-size:14.5px}.course-d .acts{flex-wrap:wrap;gap:10px;margin-top:40px;display:flex}.divider{background:var(--border);height:1px;margin-block:clamp(72px,8vw,110px)}.cars{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:40px;display:grid}.car{background:var(--bg);border-radius:16px;flex-direction:column;gap:10px;padding:28px;display:flex}.car .step{letter-spacing:.22em;color:var(--navy62);font-family:Inter,sans-serif;font-size:11px}.car b{font-size:18px;font-weight:500}.car p{color:var(--navy82);margin:0;font-size:14px;line-height:1.95}.scenes2{border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);gap:0;margin-top:44px;display:grid}.scenes2 div{border-right:1px solid var(--border);flex-direction:column;gap:10px;padding:26px clamp(14px,1.6vw,24px) 8px 0;display:flex}.scenes2 div+div{padding-left:clamp(14px,1.6vw,24px)}.scenes2 div:last-child{border-right:0}.scenes2 b{font-size:16px;font-weight:500;line-height:1.6}.scenes2 span{color:var(--navy82);font-size:13.5px;line-height:1.9}.endcta{background:var(--navy);color:#fff;text-align:center;padding-block:clamp(80px,9vw,120px)}.endcta .h2{color:#fff;margin-top:12px}.endcta .label{color:#ffffff9e}.endcta p{color:#ffffffd1;max-width:32em;margin:20px auto 0;line-height:2.05}.endcta .acts{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:32px;display:flex}@media (width<=960px){.pghead .grid,.course-d,.cars{grid-template-columns:1fr}.course-d .ph{position:relative;top:0}.keyfacts,.learn{grid-template-columns:1fr}.learn div:nth-child(2n){border-left:0;padding-left:0}.scenes2{grid-template-columns:1fr 1fr}.scenes2 div,.scenes2 div+div{border-right:0;border-bottom:1px solid var(--border);padding:22px 12px 18px 0}.scenes2 div:nth-child(2n){border-left:1px solid var(--border);padding-left:14px}}
