:root{--ink:#233e3b;--muted:#536863;--green:#21594e;--cream:#fbf9f1;--line:#dce3d8;--mint:#d9eadf;--peach:#ffe1ce;--yellow:#f5e8b3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--cream);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,h4,p{margin:0}p+p{margin-top:18px}h2{font-size:clamp(26px,3.1vw,40px);line-height:1.55;letter-spacing:.025em}h3{font-size:23px;line-height:1.6}h4{font-size:18px;margin:16px 0 12px}.container{width:min(1140px,calc(100% - 64px));margin:auto}.section{padding-top:96px;padding-bottom:96px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--green);margin-bottom:16px}.micro{font-size:13px;color:var(--muted);line-height:1.8;margin-top:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:16px 26px;background:var(--green);color:white;border-radius:8px;font-weight:700;font-size:15px;transition:background .2s,transform .2s}.button:hover{background:#173f37;transform:translateY(-2px)}.button.small{padding:11px 16px;font-size:13px;gap:14px}.outline{background:transparent;border:1px solid var(--green);color:var(--green)}.outline:hover{color:white}.text-link{display:inline-block;padding:13px 0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;font-size:14px;font-weight:700}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #cb732f;outline-offset:5px}.skip{position:fixed;left:20px;top:-80px;background:white;z-index:100;padding:10px}.skip:focus{top:10px}header{position:sticky;top:0;background:rgba(251,249,241,.97);z-index:20;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:20px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;line-height:1.5}.brand small{display:block;font-size:11px;letter-spacing:.06em}.brand b{display:block;font-size:23px;letter-spacing:.08em}.brand-symbol{font-family:Georgia,serif;font-weight:bold;font-size:40px;background:var(--green);color:var(--yellow);border-radius:50% 45% 46% 35%;width:54px;height:54px;line-height:54px;text-align:center;letter-spacing:-6px;padding-right:6px}.brand-symbol span{color:var(--peach)}nav{display:flex;gap:24px;align-items:center;font-size:13px;font-weight:700}.menu-button{display:none}nav a{padding:10px 0}.hero{padding:58px 0 0;background:radial-gradient(circle at 90% 12%,#f2ecd9 0,transparent 32%)}.hero-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:36px;align-items:center}.hero h1{font-size:clamp(36px,4.3vw,55px);line-height:1.5;letter-spacing:-.035em}.hero h1 span{background:linear-gradient(transparent 72%,#f3df9f 72%,#f3df9f 91%,transparent 91%)}.hero-lead{font-size:21px;font-weight:700;line-height:1.9;margin-top:24px}.hero-description{color:var(--muted);margin:22px 0}.hero-art{position:relative;padding:22px 0 40px}.hero-art img{border-radius:48% 48% 22% 22%;background:var(--mint)}.floating{position:absolute;background:white;padding:8px 18px;border-radius:6px;box-shadow:0 8px 20px #233e3b0c;font-weight:700;font-size:14px;z-index:1}.note-one{top:48px;left:-10px;transform:rotate(-6deg)}.note-two{bottom:54px;right:-5px;transform:rotate(5deg)}.photo-label{position:absolute;bottom:4px;right:20px;font-size:11px;color:var(--muted)}.power-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:42px}.power-strip a{display:grid;grid-template-columns:36px 1fr 20px;align-items:center;padding:24px 20px;column-gap:8px;border-right:1px solid var(--line)}.power-strip a:last-child{border:0}.power-strip b{font-size:17px}.power-strip small{grid-column:2;font-size:13px;color:var(--muted)}.power-strip a>span:last-child{grid-column:3;grid-row:1/3}.power-number{grid-row:1/3;font-family:Georgia,serif;font-size:24px;font-style:italic;color:#778c77}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.about>div:last-child{padding-top:16px}.courses{background:#f0f2e9}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:38px}.section-heading>p{color:var(--muted)}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.course{background:white;border-radius:14px;overflow:hidden;scroll-margin-top:20px}.course-art{height:195px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.english .course-art{background:var(--peach)}.abacus .course-art{background:var(--mint)}.reading .course-art{background:var(--yellow)}.course-index{position:absolute;bottom:12px;left:22px;font-size:10px;font-weight:bold;letter-spacing:.13em}.art-letter{font-family:Georgia,serif;font-size:53px;font-style:italic;transform:rotate(-9deg);background:var(--cream);padding:0 25px;border-radius:50%;border:1px solid #e0bfa6}.art-orbit{position:absolute;right:34px;top:22px;font-family:Georgia,serif;color:#a56244;font-size:20px;transform:rotate(15deg)}.abacus-drawing{display:flex;gap:17px;padding:8px 16px;border:8px solid #39745e;border-radius:8px;transform:rotate(-8deg);height:119px;background:#fbf9f1}.abacus-drawing i{display:block;width:6px;background:#997048;position:relative}.abacus-drawing i:after{content:"";position:absolute;top:12px;left:-8px;width:22px;height:14px;border-radius:50%;background:#db855e;box-shadow:0 28px #db855e,0 43px #db855e,0 58px #db855e}.book-drawing{display:flex;transform:rotate(8deg);font-size:17px;font-weight:bold;line-height:1.9;box-shadow:5px 6px 0 #ccbb72}.book-drawing span{padding:17px 20px;background:#fffdf5;border:1px solid #ccbb72;border-radius:8px 0 0 2px}.book-drawing span+span{border-radius:0 8px 2px 0}.course-body{padding:28px}.tag{font-size:13px;display:inline-block;border:1px solid #cbd9ce;border-radius:30px;padding:3px 12px;font-weight:bold;margin-bottom:12px}.course h3 small{font-size:12px;font-weight:normal;margin-left:5px}.course-body p{font-size:14px;color:var(--muted)}.course ul{list-style:none;padding:0;font-size:14px;margin:16px 0 12px}.course li:before{content:"✓";margin-right:8px;color:var(--green)}.course-cta{display:block;margin-top:16px;border-top:1px solid var(--line);padding:17px 0 12px;font-size:14px;font-weight:bold}.center{text-align:center}.center>p:last-child{margin-top:20px;color:var(--muted)}.choice-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px;align-items:stretch}.choice-buttons{display:grid;gap:12px}.choice-buttons button{background:white;text-align:left;border:1px solid var(--line);border-radius:8px;padding:18px 24px;display:flex;justify-content:space-between;gap:12px;color:var(--ink);font-weight:bold}.choice-buttons button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.recommendation{padding:34px;background:#e7eee2;border-radius:12px;display:flex;flex-direction:column;justify-content:center}.recommendation h3{margin-bottom:15px}.recommendation .button{align-self:start;margin-top:22px}.recommendation .text-link{align-self:start;margin-top:6px}.hero-tel-block{margin-top:18px}.hero-tel{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;padding:8px 0;font-size:14px;font-weight:700}.hero-tel b{font-size:24px;letter-spacing:.04em;color:var(--green)}.hero-tel-block .micro{margin-top:0}.stories{background:#f3eee3}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.story{background:var(--cream);border-radius:12px;overflow:hidden}.story-image{height:250px;display:flex;justify-content:center;align-items:center;gap:24px;position:relative}.award{background:#e3e9d1}.halloween{background:#ecdccb}.story-image>span{font-size:82px;color:#567343;font-family:Georgia,serif}.halloween>span{color:#995d41}.story-image strong{font-size:27px;line-height:1.6}.story-image small{position:absolute;bottom:12px;right:20px;font-size:11px;color:var(--muted)}.story-body{padding:32px}.story-body>p{color:var(--muted);font-size:14px;margin-top:18px}.results{display:flex;justify-content:space-around;background:#edf0e2;margin:20px 0;border-radius:8px;padding:16px}.results div{text-align:center;flex:1;border-right:1px solid #d2dac2}.results div:last-child{border:0}.results b{display:block;font-size:32px;line-height:1.4;font-family:Georgia,"Yu Gothic",serif}.results b small{font-size:15px;margin-left:4px}.results span{font-size:13px}.access-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}.access-art{background:#e9ede3;border-radius:12px;min-height:340px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px}.access-art>small{font-size:11px;margin-top:25px;color:var(--muted)}.building{background:#fcfaf1;border:2px solid #688a73;box-shadow:10px 10px 0 #d4dfcf;text-align:center;width:240px}.building>span{display:block;background:var(--green);color:white;font-size:13px;letter-spacing:.12em;padding:10px}.building>div{font-size:33px;line-height:1.4;color:#688a73}.access-grid dl{margin:24px 0}.access-grid dl>div{display:grid;grid-template-columns:95px 1fr;border-top:1px solid var(--line);padding:16px 0;font-size:14px}.access-grid dt{font-size:13px;font-weight:bold}.access-grid dd{margin:0}.trial{background:var(--green);color:white}.trial .eyebrow,.trial .center>p:last-child{color:#d3e3d5}.steps{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;gap:28px;padding:0;margin:42px 0}.steps li{text-align:center;border-top:1px solid #6a8b7d;padding:22px 12px}.steps span{font-family:Georgia,serif;font-size:25px;color:#e7d897;margin-right:12px}.steps b{font-size:17px}.steps p{font-size:13px;color:#d3e3d5;margin-top:12px}.contact-card{background:var(--cream);color:var(--ink);padding:40px;border-radius:12px;text-align:center}.contact-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:26px;gap:24px}.contact-grid>div{padding:26px 22px;border:2px solid var(--line);border-radius:12px;transition:background .2s,border-color .2s}.contact-grid>div.is-target{border-color:var(--green);background:#eef4e6}.contact-label{font-size:13px;font-weight:bold}.phone{font-size:clamp(25px,3vw,34px);font-weight:700;letter-spacing:.035em;display:inline-block;line-height:1.7;padding:2px 0}.contact-grid .button{margin-top:20px;gap:8px;font-size:13px;padding:14px 18px}.selected-course{background:#e2ecd9;padding:12px;margin-bottom:22px;font-size:14px}.faq{max-width:850px}.faq h2{font-size:28px;margin-bottom:30px}.faq details{border-top:1px solid var(--line);padding:0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:bold;font-size:15px;padding:18px 0}details p{font-size:14px;padding:0 20px 18px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:35px 0}.footer-inner{display:flex;gap:25px;align-items:center;justify-content:space-between}.footer-inner>p{font-size:13px}.footer-inner>small{font-size:13px;color:var(--muted)}.mobile-cta{display:none}
@media(min-width:901px){.course-body{display:flex;flex-direction:column;height:calc(100% - 195px)}.course-cta{margin-top:auto}.course-body .text-link{align-self:start;margin-bottom:8px}.course-body>p{min-height:108px}}
@media(max-width:1050px){nav{gap:14px}.container{width:calc(100% - 48px)}.brand b{font-size:20px}nav a{font-size:12px}.course-body{padding:22px}.course h3{font-size:20px}}
@media(max-width:900px){.menu-button{display:block;border:1px solid var(--line);border-radius:6px;padding:11px 14px;min-height:44px;background:transparent;color:var(--ink);font-size:13px}.header-inner{min-height:76px}nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--cream);padding:20px 24px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}nav.is-open{display:flex}nav a{font-size:15px;padding:13px 8px}.hero-grid{gap:20px}.hero h1{font-size:36px}.hero-lead{font-size:17px}.hero .button{font-size:13px;padding:15px;gap:12px}.power-strip a{padding:18px 12px;grid-template-columns:25px 1fr 12px}.power-strip b{font-size:14px}.power-number{font-size:20px}.about{gap:40px}.course-grid{gap:16px;grid-template-columns:1fr}.course{display:grid;grid-template-columns:30% 1fr}.course-art{height:100%;min-height:260px}.course-body{padding:28px}.course h3{font-size:23px}.course h4{margin:10px 0}.course ul{margin:12px 0}.course-cta{margin-top:16px}.art-letter{font-size:38px}.art-orbit{right:16px}.abacus-drawing{gap:12px}.book-drawing span{padding:10px}.choice-layout{gap:22px}.choice-buttons button{font-size:13px;padding:16px}.recommendation{padding:24px}.story-image strong{font-size:23px}.story-image>span{font-size:60px}.story-body{padding:24px}.access-grid{gap:32px}.contact-card{padding:30px}.contact-grid{gap:24px}.footer-inner{flex-wrap:wrap}.section{padding-top:70px;padding-bottom:70px}}
@media(max-width:600px){html{scroll-padding-top:92px}.container{width:calc(100% - 36px)}.brand-symbol{width:43px;height:43px;line-height:43px;font-size:32px}.brand small{font-size:11px}.brand b{font-size:19px}.hero{padding-top:36px}.hero-grid{grid-template-columns:1fr;gap:10px}.hero h1{font-size:38px;line-height:1.45}.hero-lead{font-size:18px;margin-top:22px}.hero-description{font-size:14px}.hero-copy .button{padding:16px 24px;font-size:14px}.hero-art{max-width:390px;margin:auto;padding:22px 6px 34px;width:100%}.note-one{top:35px;left:0;font-size:12px}.note-two{bottom:48px;right:0;font-size:12px}.photo-label{font-size:11px}.power-strip{margin-top:18px;grid-template-columns:1fr}.power-strip a{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:32px 1fr 24px;padding:15px 8px}.power-strip b{font-size:15px}.power-strip small{grid-column:2}.about{grid-template-columns:1fr;gap:22px}.about>div:last-child{padding:0}.section{padding-top:56px;padding-bottom:56px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;font-size:13px}.eyebrow{font-size:11px;margin-bottom:12px}.course{display:block}.course-art{height:180px;min-height:0}.course-body{padding:26px}.course h3{font-size:24px}.art-letter{font-size:48px}.abacus-drawing{gap:17px}.book-drawing span{padding:17px 20px}.choice-layout{grid-template-columns:1fr;gap:22px;margin-top:28px}.choice-buttons{gap:10px}.choice-buttons button{padding:16px;font-size:13px}.recommendation{padding:26px;min-height:265px}.center>p:last-child{font-size:14px}.story-grid{grid-template-columns:1fr;gap:24px}.story-image{height:220px}.story-body h3{font-size:21px}.story-image strong{font-size:26px}.access-grid{grid-template-columns:1fr;gap:30px}.access-art{min-height:300px}.access-grid h3{font-size:21px}.steps{grid-template-columns:1fr;gap:10px;margin:30px 0}.steps li{text-align:left;padding:16px 8px}.steps p{margin-left:47px;font-size:13px}.steps p br{display:none}.contact-card{padding:26px 18px}.contact-card h3{font-size:19px}.contact-grid{grid-template-columns:1fr;gap:16px}.contact-grid>div{padding:22px 16px}.hero-tel-block{display:none}.recommendation .button{width:100%}.phone{font-size:30px}.contact-grid .button{width:100%}.faq h2{font-size:25px}.faq summary{font-size:14px}.footer-inner{flex-direction:column;align-items:start;gap:16px}footer{padding-bottom:100px}.mobile-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;bottom:0;left:0;right:0;background:var(--cream);padding:10px 16px calc(10px + env(safe-area-inset-bottom));z-index:18;border-top:1px solid var(--line)}.mobile-cta a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:52px;padding:6px 8px;border-radius:8px;font-size:14px;line-height:1.4;border:2px solid var(--green)}.mobile-cta small{font-size:12px;font-weight:700}.mobile-call{background:white;color:var(--green)}.mobile-trial{background:var(--green);color:white}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
