:root{color-scheme:dark;--navy:#0c1727;--blue:#162b46;--red:#ff4b3e;--white:#f7f9fc;--muted:#b5c5d6;--line:rgba(191,209,229,.17);--bar:76px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#070f1a;color:var(--white);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8;-webkit-text-size-adjust:100%;padding-bottom:calc(var(--bar) + env(safe-area-inset-bottom))}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #5bc3ff;outline-offset:4px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p,figure,dl,dd{margin:0}h2{font-size:clamp(28px,5.8vw,46px);line-height:1.45;letter-spacing:-.035em;font-weight:780}h3{font-size:20px;line-height:1.55}em{color:var(--red);font-style:normal}p{color:var(--muted)}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:8px;left:8px;z-index:100;background:#fff;color:#000;padding:10px}main,.page-footer{max-width:820px;margin:auto}main{background:var(--navy);box-shadow:0 0 100px #0004}.site-header{height:60px;background:rgba(12,23,39,.97);position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:0 max(18px,calc((100vw - 772px)/2));border-bottom:1px solid var(--line)}.brand{display:flex;gap:4px;align-items:center;font-size:18px;font-weight:750;white-space:nowrap}.brand-star{font-size:25px;color:var(--red);margin-right:4px}.brand small{font-size:11px;font-weight:400;letter-spacing:.03em;color:var(--muted);margin-left:10px}.share-button{background:none;color:var(--white);border:0;display:flex;align-items:center;gap:5px;padding:10px 0 10px 10px;font-size:13px}.share-button svg{width:19px;height:19px}.reading-progress{height:2px;position:absolute;bottom:-1px;left:0;right:0}.reading-progress i{display:block;background:var(--red);height:100%;width:0}.hero-poster{width:100%;height:auto}.hero-intro{padding:36px 28px 40px;background:linear-gradient(135deg,#162b46,#0c1727)}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.13em;margin-bottom:17px;color:var(--muted)}.eyebrow span{color:var(--red);margin-right:12px;font-family:Arial,sans-serif;font-weight:700}.hero-intro h2{font-size:28px;margin-bottom:18px}.hero-intro>p:not(.eyebrow){margin-bottom:22px;max-width:600px}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:12px 20px;min-height:48px;border-radius:8px;font-weight:650;font-size:15px;border:1px solid transparent;line-height:1.5}.primary{background:var(--red);color:#fff}.primary:hover{background:#e94035}.outline{background:transparent;border-color:#718298;color:#fff}.section-nav{display:flex;overflow-x:auto;scrollbar-width:none;gap:24px;padding:18px 24px;border-bottom:1px solid var(--line);background:#0b1727;font-size:14px}.section-nav a{white-space:nowrap;color:#d4deea}.section-nav a:hover{color:var(--red)}.chapter{padding:58px 28px;background:linear-gradient(180deg,#0c1727,#13233a);border-bottom:1px solid var(--line);scroll-margin-top:0}.chapter-head{margin-bottom:28px}.chapter-head>p:last-child:not(.eyebrow){margin-top:18px}.light{background:#f3f6fa;color:#162337;--muted:#56677b;--line:#d9e1eb;color-scheme:light}.blue{background:linear-gradient(145deg,#162b46,#0d1b2e)}.course-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.course-gallery figure{min-width:0}.image-button{padding:0;background:#fff;border:0;display:block;width:100%;position:relative;overflow:hidden;border-radius:10px;color:#172337}.course-gallery .image-button{aspect-ratio:1/1.05;display:flex;align-items:center;justify-content:center}.course-gallery img{width:100%;height:100%;object-fit:contain;padding:8px}.image-expand{position:absolute;right:9px;bottom:9px;border-radius:50%;width:28px;height:28px;line-height:28px;background:#0c1727c7;color:#fff;font-size:20px;font-family:Arial,sans-serif}.chapter figcaption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:12px}.image-note{font-size:12px;margin:19px 0 22px}.curriculum-list article,.ability-list article{display:flex;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.curriculum-list article>span,.ability-list article>span{font-size:13px;color:var(--red);font-weight:700;padding-top:5px}.curriculum-list h3,.ability-list h3{margin-bottom:7px}.curriculum-list p,.ability-list p{font-size:15px;line-height:1.85}.classroom-figure{margin-left:-28px;margin-right:-28px}.classroom-crop{aspect-ratio:1.9;overflow:hidden;background:#142235}.classroom-crop img{width:154%;max-width:none;margin-top:-16%;height:auto}.classroom-figure figcaption{padding-left:28px}.learning-steps{list-style:none;padding:0;margin:30px 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:26px 20px}.learning-steps li{display:flex;gap:12px;align-items:start}.learning-steps li>span{color:var(--red);font-size:12px;line-height:28px;font-weight:700}.learning-steps h3{font-size:18px;margin-bottom:7px}.learning-steps p{font-size:14px;line-height:1.8}.pullquote{font-size:clamp(29px,6vw,43px);font-weight:750;line-height:1.5;color:#fff;border-top:1px solid var(--line);padding-top:26px;margin-top:32px}.pullquote strong{color:var(--red)}.wide-case{margin:26px 0}.wide-case .image-button{background:#fff}.wide-case img{padding:12px;width:100%}.section-end{font-size:14px;border-top:1px solid var(--line);padding-top:22px;margin-top:8px}.experience{margin:24px 0 30px}.experience>strong{font-size:clamp(58px,13vw,88px);letter-spacing:-.04em;line-height:1.2;font-family:Arial,sans-serif}.experience small{font-size:18px;font-weight:600;letter-spacing:0;margin-left:16px;color:var(--red)}.experience p{font-size:16px;margin-top:16px}.award{max-width:620px}.award img{width:100%}.teacher-note{margin-top:26px}.teacher-note h3{margin-bottom:9px}.support-note{margin-top:28px;padding:23px 0 0;border-top:1px solid var(--line)}.support-note h3{margin-bottom:10px}#career>h3{margin-top:30px;margin-bottom:12px}.schedule-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px}.schedule-heading>span{font-size:14px;color:#56677b}.schedule dl>div{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line)}.schedule dt{color:#56677b}.schedule dd{font-size:22px;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.5}.duration-note{padding:25px 0 32px}.duration-note h3{font-size:19px;margin-bottom:10px}.duration-note p{font-size:15px}.tuition{background:var(--navy);color:var(--white);border-radius:14px;padding:24px 20px;color-scheme:dark}.tuition-heading{display:flex;align-items:center;justify-content:space-between}.tuition-heading h3{font-size:24px}.tuition-heading>span{font-size:13px;color:#a9bdcf}.tuition dl>div{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:23px 0;border-bottom:1px solid #34475b}.tuition dt{font-size:15px;white-space:nowrap}.tuition dd{display:flex;align-items:baseline;white-space:nowrap;gap:4px;font-variant-numeric:tabular-nums}.tuition strong{font-size:33px;line-height:1}.tuition dd small,.tuition dd>span{font-size:12px;color:#bed0e0}.tuition>p{font-size:12px;line-height:1.8;color:#b5c5d6;margin-top:17px}.tuition>p+p{margin-top:5px}.contact-person{margin-top:36px;text-align:center}.contact-person>span{color:#c4d5e5;font-size:17px}.phone{display:block;font-size:clamp(31px,7.9vw,48px);line-height:1.5;font-weight:730;letter-spacing:.01em;font-variant-numeric:tabular-nums;margin-top:8px}.qr-block{max-width:280px;margin:28px auto 24px;text-align:center}.qr-block img{background:#fff;border:14px solid #fff;border-radius:16px;width:100%}.qr-block p{font-size:13px;margin-top:13px}.contact-buttons{display:flex;gap:12px;justify-content:center}.contact-buttons .button{min-width:125px}.visit-note{text-align:center;padding:30px 0;margin-top:20px;border-bottom:1px solid var(--line)}.visit-note p{font-size:14px;margin:9px 0}.text-button{background:none;color:#c9d9e8;padding:10px 0;border:0;font-size:14px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.closing{text-align:center;font-size:24px;color:#fff;line-height:1.7;margin-top:34px}.closing strong{color:var(--red)}.back-top{display:block;text-align:center;color:var(--muted);font-size:13px;margin-top:25px}.page-footer{text-align:center;font-size:12px;padding:25px;color:#7f93ab;background:#0a1422}.consult-bar{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:18px;min-height:var(--bar);padding:12px max(18px,calc((100vw - 764px)/2)) calc(12px + env(safe-area-inset-bottom));background:rgba(12,23,39,.97);border-top:1px solid #334154;box-shadow:0 -7px 20px #0002}.call-button{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:14px;flex:0 0 auto}.call-button svg{width:19px}.consult-bar .button{flex:1;max-width:540px;font-size:15px;padding:11px 12px;min-height:46px}.consult-bar .button svg{width:21px}dialog{border:1px solid #32445b;border-radius:16px;background:#112238;color:var(--white);padding:23px;width:calc(100vw - 32px);max-width:430px;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #0006}dialog::backdrop{background:#030915c9;backdrop-filter:blur(5px)}dialog:not([open]){display:none}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:22px}.dialog-head h2{font-size:23px;line-height:1.5}.dialog-head>div>span{font-size:12px;color:var(--muted)}.close-button{width:36px;height:36px;flex:0 0 36px;font-size:28px;line-height:1;border:1px solid #42516a;border-radius:50%;background:none;color:#fff;display:grid;place-items:center}.dialog-qr{width:100%;max-width:300px;margin:0 auto 15px;border:12px solid #fff;border-radius:12px}dialog>p{font-size:14px;line-height:1.8;margin:16px 0}.full{width:100%}.contact-dialog>.text-button{display:block;margin:8px auto 0}.image-dialog{max-width:980px}.image-dialog .dialog-head h2{font-size:16px}.image-scroll{overflow:auto;border-radius:8px;background:#fff}.image-scroll img{max-width:100%;margin:auto}.image-dialog>p{font-size:12px;text-align:center}.route-dialog video{width:100%;max-height:60dvh;background:#000}.share-dialog label{font-size:12px;color:var(--muted)}.share-dialog input{width:100%;background:#091522;color:#fff;border:1px solid #485b74;border-radius:6px;padding:12px;font-size:13px;margin:8px 0 18px;min-width:0}.dialog-open{overflow:hidden}#toast{position:fixed;bottom:calc(var(--bar) + 16px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,10px);padding:10px 18px;border-radius:8px;background:#f5f8fc;color:#132238;box-shadow:0 8px 30px #0005;z-index:100;max-width:calc(100vw - 32px);width:max-content;font-size:14px;opacity:0;visibility:hidden;transition:.15s}#toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(min-width:680px){.hero{display:grid;grid-template-columns:1fr .65fr;align-items:center;background:linear-gradient(145deg,#162b46,#0c1727)}.hero-intro{padding:30px 26px;background:none}.hero-intro h2{font-size:25px}.hero-intro .eyebrow{font-size:11px}.hero-intro p{font-size:14px}.chapter{padding:64px 58px}.classroom-figure{margin-left:-58px;margin-right:-58px}.classroom-figure figcaption{padding-left:58px}.course-gallery{gap:24px}.learning-steps{gap:36px}.learning-steps h3{font-size:21px}.learning-steps p{font-size:16px}.section-nav{padding:20px 58px;justify-content:space-between}.tuition{padding:30px}.tuition strong{font-size:42px}.tuition dt{font-size:18px}.tuition dd small,.tuition dd>span{font-size:15px}}
@media(max-width:359px){.brand small{display:none}.chapter{padding-left:20px;padding-right:20px}.chapter h2{font-size:27px}.classroom-figure{margin-left:-20px;margin-right:-20px}.classroom-figure figcaption{padding-left:20px}.consult-bar{gap:10px;padding-left:14px;padding-right:14px}.consult-bar .button{font-size:13px}.tuition{padding:20px 15px}.tuition strong{font-size:29px}.tuition dt{font-size:13px}.learning-steps{gap:22px 15px}.learning-steps h3{font-size:17px}.course-gallery figcaption{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
