:root{--ink:#354a53;--blue:#4e7080;--deep:#2f5363;--sky:#eef5f8;--cream:#faf5e9;--pink:#f9eff0;--paper:#fffefb;--line:#dce4e6;--green:#315a3e;--yellow:#f5e8bd;font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN','Yu Gothic',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}p{line-height:2}h1,h2,h3{font-weight:700;overflow-wrap:anywhere}h2{font-size:clamp(1.9rem,3.1vw,2.8rem);line-height:1.7;letter-spacing:.035em;color:var(--deep)}h3{line-height:1.7;color:var(--deep)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}section[id]{scroll-margin-top:30px}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;padding:12px 20px;background:var(--cream)}.skip-link:focus{top:10px}.container{max-width:1080px;margin:auto}.section{padding:100px 30px}.section-heading{text-align:center;margin-bottom:52px}.section-description{font-size:17px;margin-top:22px}.eyebrow{font-size:13px;line-height:1.7;color:var(--blue);letter-spacing:.1em;margin-bottom:15px}.small{font-size:14px;line-height:1.8}.mobile-only{display:none}.highlight{background:linear-gradient(transparent 73%,var(--yellow) 73%,var(--yellow) 94%,transparent 94%)}.underline{box-shadow:inset 0 -.2em var(--yellow)}.site-header{display:flex;align-items:center;justify-content:space-between;height:104px;padding:10px 5%;gap:24px}.brand{display:block;flex-shrink:0}.brand-logo{width:auto;height:84px}.site-header nav{display:flex;gap:28px;font-size:14px}.site-header nav a:hover{text-decoration:underline;text-underline-offset:7px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:14px 28px;background:#d0e4ec;border:1px solid transparent;border-radius:7px;color:var(--deep);font-weight:700;font-size:16px;line-height:1.65;transition:background .2s,transform .2s}.button:hover{background:#bddbe7;transform:translateY(-2px)}.button-icon{width:31px;height:31px;flex-shrink:0}.header-button{padding:10px 18px;min-height:46px;font-size:14px}.header-button .button-icon{width:25px;height:25px}.hero{position:relative;overflow:hidden;text-align:center;padding-top:46px;background:linear-gradient(180deg,#f1f7fa,rgba(241,247,250,.25))}.hero-content{position:relative;z-index:2;padding:0 25px}.recruit-pill{font-size:14px;letter-spacing:.08em;color:var(--deep);font-weight:700}.hero h1{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.8;letter-spacing:.055em;margin:24px 0}.hero-ending{display:inline}.hero-lead{font-size:17px;line-height:2}.hero-button{margin-top:27px}.hero-note{margin-top:13px;color:#526771}.hero-art{max-width:1050px;margin:18px auto 0;mix-blend-mode:multiply}.hero-art img{width:100%;height:420px;object-fit:cover;object-position:center 70%}.hero-stamp{display:none}.intro{text-align:center}.intro h2{font-size:clamp(2rem,3.3vw,3rem)}.intro-opening{font-size:19px;font-weight:700;margin-top:28px;line-height:2.1}.intro-copy{max-width:740px;margin:35px auto 0;font-size:16px}.intro-copy p+p{margin-top:26px}.intro-copy strong{font-weight:700;color:var(--deep)}.intro-daily-photo{margin:48px auto 0;max-width:940px}.intro-daily-photo img{width:100%;height:auto;border-radius:3px}.intro-daily-photo figcaption{font-size:14px;color:#5b717b;margin-top:14px;line-height:1.8}.values{background:var(--cream)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.value-card{padding:0;background:none;border-radius:0}.number{display:block;font:500 36px/1.5 Georgia,serif;color:#75919b;margin-bottom:18px}.value-label{font-size:13px;color:var(--blue);margin-bottom:7px}.value-card h3{font-size:23px;min-height:76px;margin-bottom:20px}.value-card p:not(.value-label){font-size:16px;line-height:2;margin-top:15px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 28px}.photo-slot{overflow:hidden;display:block;border-radius:3px;background:none;aspect-ratio:4/3}.photo-slot img{width:100%;height:auto;object-fit:contain}.photo-number,.photo-status{display:none}.experience-category{font-size:13px;color:var(--blue);margin:17px 0 5px}.experience-card h3{font-size:20px;margin-bottom:10px}.experience-card>p:last-child{font-size:16px;line-height:1.95}.marche-card{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:30px 45px;padding-top:35px;margin-top:12px;border-top:1px solid var(--line);background:none;border-radius:0}.photo-marche{align-self:center}.marche-content{align-self:center}.marche-content h3{font-size:28px}.question-tags{display:flex;flex-wrap:wrap;gap:6px 15px;margin:20px 0;color:var(--blue)}.question-tags span{font-size:15px;border-bottom:1px solid #c9d9df;padding-bottom:4px}.marche-content>p:last-child{font-size:16px}.marche-gallery{grid-column:1/-1;display:grid;grid-template-columns:16fr 9fr;gap:24px;align-items:start}.marche-gallery img{width:100%;border-radius:3px}.marche-gallery figcaption,.staff-actual-photo figcaption,.study-photo figcaption{font-size:14px;color:#5b717b;line-height:1.8;margin-top:12px}.learning{background:var(--sky)}.learning-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.learning h2{font-size:clamp(1.9rem,3vw,2.5rem)}.learning-note{font-size:18px;line-height:1.9;margin-top:28px;color:var(--blue)}.learning-list{list-style:none;margin:28px 0;padding:0}.learning-list li{font-size:20px;font-weight:700;line-height:1.8;margin:11px 0}.learning-list li::before{content:'・';color:#7798a6;margin-right:7px}.learning-copy{font-size:16px}.everyday-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 45px;align-items:start}.everyday-panel{background:none;border-radius:0;padding:0}.panel-kicker{display:block;font-size:14px;color:var(--blue);margin-bottom:12px}.everyday-panel h3{font-size:26px;margin-bottom:24px}.everyday-panel p{font-size:16px;line-height:2}.everyday-panel p+p{margin-top:17px}.day-rhythm{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px}.day-rhythm span{font-size:14px;color:var(--deep)}.day-rhythm span+span::before{content:'→';margin-right:15px;color:#829ba5}.staff-quote{font-weight:700;color:var(--deep)}.staff-actual-photo,.study-photo{margin-top:25px}.staff-actual-photo img,.study-photo img{width:100%;border-radius:3px}.study-copy{margin-top:22px}.voices{background:#faf8f2}.voice-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.voice-card{position:relative;padding:44px 34px 25px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 35px,#e8e8df 35px,#e8e8df 36px),#fffef9;border-radius:0;box-shadow:1px 3px 10px rgba(79,67,42,.055);border:none}.voice-card::before{content:'';position:absolute;width:75px;height:20px;top:-9px;left:calc(50% - 38px);background:#eadfcb;opacity:.65;transform:rotate(-4deg)}.voice-card:nth-child(even)::before{background:#d8e7ec;transform:rotate(3deg)}.voice-card blockquote{margin:0;font-size:18px;font-weight:500;line-height:2;min-height:108px}.voice-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;margin-top:21px;color:#5b6c70;line-height:1.8}.parent-portrait{width:90px;height:90px;flex:0 0 90px;position:relative;overflow:hidden}.parent-portrait img{position:absolute;width:200%;max-width:none;height:200%;left:0;top:0}.portrait-2 img{left:-100%}.portrait-3 img{top:-100%}.portrait-4 img{left:-100%;top:-100%}.quote-mark{display:none}.voice-note{font-size:12px;text-align:center;color:#6b7b80;margin-top:30px}.mid-cta{text-align:center;padding:48px 25px;background:var(--cream)}.mid-cta>.container>p:first-child{font-size:21px;font-weight:700;margin-bottom:22px}.line-button{background:#e4efe7;color:var(--green)}.line-button:hover{background:#d6e8dc}.mid-cta .small{margin-top:15px;color:#536b5e}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section-index{display:block;font-size:14px;color:var(--blue);margin-bottom:18px}.guide h3{font-size:27px;margin-bottom:22px}.school-list{display:flex;flex-wrap:wrap;gap:7px 18px;margin:22px 0 12px}.school-list span{font-size:16px;color:var(--deep);border-bottom:1px solid #c9d9df;padding:4px 0}.transport .small{margin-bottom:20px}.hours-list{margin:0}.hours-list>div{display:flex;align-items:center;justify-content:space-between;padding:19px 0;gap:15px;border-bottom:1px solid var(--line)}.hours-list dt{font-size:16px;line-height:1.7}.hours-list dd{margin:0;font:600 27px/1.6 Arial,sans-serif;white-space:nowrap;color:var(--deep)}.hours-list dd span{font:500 15px/1.6 'Zen Maru Gothic',sans-serif;margin:0 5px}.fees{display:grid;grid-template-columns:.9fr 1.3fr;gap:48px;margin-top:65px;padding-top:45px;border-top:1px solid var(--line);background:none;border-radius:0}.fees h3{font-size:24px;margin-bottom:15px}.fees-heading p{font-size:15px;line-height:1.95}.fee-tables{display:grid;grid-template-columns:1fr 1fr;gap:28px}.fee-list{margin:0}.fee-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.8}.fee-list dt{font-weight:500}.fee-list dd{margin:0;color:#5c6d72;white-space:nowrap}.fee-list .fee-label{color:var(--deep);border-bottom:1px solid #a5bbc4}.families{background:var(--cream)}.families-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.family-list{list-style:none;padding:0;margin:0}.family-list li{position:relative;padding:14px 0 14px 29px;font-size:16px;line-height:1.9;border-bottom:1px solid #e6e1d3}.family-list li::before{content:'✓';position:absolute;left:0;color:#65848b}.family-list li:last-child{border-bottom:0}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;margin:0;padding:0}.steps-grid li{border-top:1px solid #9bb4bf;padding-top:19px}.step-number{display:block;font:500 12px/1.5 Arial,sans-serif;color:var(--blue);letter-spacing:.05em;margin-bottom:23px}.step-number strong{font:500 36px/1 Georgia,serif;margin-left:8px}.steps-grid h3{font-size:21px;min-height:70px;margin-bottom:20px}.steps-grid p{font-size:16px;line-height:1.95}.visit{background:var(--sky);text-align:center}.visit-copy{font-size:17px;margin:30px 0 25px}.visit-emphasis{font-size:21px;font-weight:700;color:var(--deep);margin-bottom:24px}.contact-box{margin:42px auto 0;max-width:800px;padding-top:35px;border-top:1px solid #c2d4dc;background:none;border-radius:0;box-shadow:none}.contact-recruit{font-size:20px;font-weight:700;color:var(--deep)}.contact-target{font-size:18px;margin:10px 0}.contact-actions{display:flex;justify-content:center;gap:18px;margin:27px 0 18px}.contact-actions .button{min-width:270px}.phone-button{flex-direction:column;gap:2px;font-size:14px;background:transparent;border:1px solid #aec6d0}.phone-button span{font:500 21px/1.5 Arial,sans-serif}.phone-button:hover{background:#ddebf1}.closing{text-align:center;padding:85px 25px;background:var(--paper)}.closing p{font-size:17px;margin-top:24px}.closing-wish{font-size:23px!important;color:var(--blue);font-weight:700;margin-top:35px!important}.site-footer{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 5% 42px;border-top:1px solid var(--line);flex-wrap:wrap}.site-footer .brand-logo{height:95px}.footer-contact p,.footer-contact a{font-size:14px;line-height:1.9}.site-footer small{font-size:12px;color:#5f7178}.social-links{display:flex;align-items:center;gap:20px}.social-link{display:flex;align-items:center;gap:9px;font-size:14px;min-height:44px}.social-link img{width:29px;height:29px;object-fit:contain}.privacy-note{max-width:880px;margin:auto;padding:0 30px 35px;font-size:12px;line-height:1.85;color:#617177}.privacy-note a{text-decoration:underline}.mobile-contact{display:none}.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}.opening-logo{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:rgba(255,254,251,.98);pointer-events:none;animation:opening-leave .4s .85s both}.opening-logo img{width:140px;height:auto;animation:logo-welcome .85s both}.opening-logo.is-finished{display:none}.brand-logo{animation:brand-settle 1s 1s both}@keyframes logo-welcome{0%{opacity:0;transform:translateY(12px) rotate(-7deg) scale(.9)}45%{opacity:1;transform:translateY(-3px) rotate(3deg) scale(1.03)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes opening-leave{to{opacity:0;visibility:hidden}}@keyframes brand-settle{0%{transform:rotate(-4deg)}45%{transform:rotate(2deg)}100%{transform:rotate(0)}}
@media(max-width:1000px){.site-header nav{gap:20px}.values-grid{gap:28px}.value-card h3{font-size:21px}.learning-layout,.families-layout{gap:45px}.guide-grid{gap:40px}.fees{grid-template-columns:1fr;gap:25px}.everyday-grid{gap:45px 35px}.everyday-panel h3{font-size:24px}}
@media(max-width:760px){body{padding-bottom:80px}.section{padding:72px 24px}h2{font-size:clamp(1.75rem,5.8vw,2.3rem);line-height:1.75;letter-spacing:.015em}.site-header{height:89px;padding:8px 22px}.brand-logo{height:72px}.site-header nav{display:none}.header-button{font-size:13px;padding:9px 12px;gap:8px}.header-button .button-icon{width:23px;height:23px}.hero{padding-top:28px}.hero-content{padding:0 20px}.recruit-pill{font-size:13px;letter-spacing:.03em}.hero h1{font-size:clamp(1.65rem,6.7vw,2.2rem);line-height:1.75;letter-spacing:.02em;margin:22px 0}.hero h1 .highlight,.hero-ending{display:block;width:fit-content;margin:auto}.hero h1 .highlight{background:none;box-shadow:inset 0 -.12em var(--yellow)}.hero-lead{font-size:15px;line-height:2}.hero-lead .mobile-only{display:block}.hero-button{font-size:14px;gap:9px;padding:13px 15px}.button-icon{width:28px;height:28px}.hero-note{font-size:12px}.hero-art img{height:275px;object-position:center}.section-heading{margin-bottom:38px}.section-description{font-size:16px;margin-top:20px}.intro h2{font-size:clamp(1.8rem,6.1vw,2.4rem)}.intro-opening{font-size:17px;margin-top:24px}.intro-copy{text-align:left;font-size:16px;margin-top:30px}.intro-copy br{display:none}.intro-copy p+p{margin-top:22px}.intro-daily-photo{margin-top:34px}.intro-daily-photo figcaption{font-size:13px}.values-grid{grid-template-columns:1fr;gap:38px}.value-card{display:grid;grid-template-columns:44px 1fr;gap:4px 16px}.number{font-size:30px;margin:0;grid-row:1/3;align-self:start}.value-label{font-size:13px;line-height:1.8;margin:0}.value-card h3{font-size:23px;min-height:0;margin:0}.value-card h3 br{display:none}.value-card p:not(.value-label){grid-column:1/-1;margin-top:16px}.experience-grid{grid-template-columns:1fr 1fr;gap:36px 22px}.experience-card h3{font-size:19px}.marche-card{grid-template-columns:1fr;gap:22px;padding-top:30px}.marche-content h3{font-size:25px}.marche-gallery{gap:24px;grid-template-columns:1fr}.marche-gallery figure:last-child{max-width:360px;justify-self:center}.learning-layout,.families-layout{grid-template-columns:1fr;gap:35px}.learning h2{font-size:26px}.learning h2 br:nth-of-type(2){display:none}.learning-copy>p br{display:none}.learning-list li{font-size:18px}.learning-note{font-size:16px;margin-top:22px}.everyday-grid{grid-template-columns:1fr;gap:42px}.everyday-panel h3{font-size:24px}.study-photo,.staff-actual-photo{margin-top:22px}.voice-grid{grid-template-columns:1fr;gap:34px}.voice-card{padding:37px 24px 20px}.voice-card blockquote{font-size:17px;min-height:0}.voice-card blockquote br{display:none}.voice-card figcaption{margin-top:13px}.parent-portrait{width:78px;height:78px;flex-basis:78px}.mid-cta>.container>p:first-child{font-size:18px}.guide-grid{grid-template-columns:1fr;gap:42px}.guide h3{font-size:24px}.fees{margin-top:45px;padding-top:30px}.fee-tables{grid-template-columns:1fr;gap:22px}.fee-list>div{font-size:15px}.fees-heading p{font-size:16px}.families h2 br:nth-of-type(2){display:none}.steps-grid{grid-template-columns:1fr;gap:26px}.steps-grid li{display:grid;grid-template-columns:65px 1fr;gap:9px 18px}.step-number{grid-row:1/3;font-size:11px;margin:0;padding-top:6px}.step-number strong{display:block;margin:8px 0 0;font-size:36px}.steps-grid h3{font-size:22px;min-height:0;margin:0}.steps-grid h3 br{display:none}.steps-grid p{grid-column:2;font-size:16px}.contact-box{padding-top:28px;margin-top:34px}.contact-recruit{font-size:17px}.contact-actions{flex-direction:column;gap:13px}.contact-actions .button{width:100%;min-width:0;font-size:15px}.contact-actions .phone-button{font-size:14px}.contact-target{font-size:17px}.visit-copy{font-size:16px}.visit-copy br{display:none}.visit-emphasis{font-size:19px}.visit h2{font-size:clamp(1.6rem,5.6vw,2.3rem)}.closing{padding:65px 24px}.closing h2{font-size:24px;letter-spacing:0}.closing p{font-size:16px}.closing p br{display:none}.closing .closing-wish{font-size:21px!important}.site-footer{padding:28px 24px;display:flex;flex-direction:column;text-align:center;gap:21px}.site-footer .brand-logo{height:95px}.privacy-note{padding:0 24px 30px}.mobile-contact{position:fixed;bottom:0;left:0;width:100%;display:flex;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,254,251,.98);border-top:1px solid var(--line);z-index:30;transition:transform .2s}.mobile-contact>a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:49px;padding:9px 12px;border-radius:6px;background:#e4efe7;color:var(--green);font-size:15px;font-weight:700;flex:1}.mobile-contact .button-icon{width:27px;height:27px}.mobile-contact .mobile-phone{flex:0 0 84px;border:1px solid #c3d4dc;background:#fffefb;color:var(--deep);font-size:14px}.mobile-contact.is-hidden{transform:translateY(130%)}.opening-logo img{width:115px}}
@media(max-width:600px){.experience-grid{grid-template-columns:1fr;gap:35px}.experience-card h3{font-size:22px}.experience-category{font-size:13px}.photo-slot{aspect-ratio:auto}.hero h1{font-size:clamp(1.5rem,6.5vw,2.1rem)}}
@media(max-width:360px){.section{padding-left:20px;padding-right:20px}.site-header{padding-left:18px;padding-right:18px}.hero-button{font-size:13px;padding:12px}.hero-button .button-icon{width:25px;height:25px}.hero-lead{font-size:14px}.hero-art img{height:240px}.contact-recruit{font-size:16px}.hours-list dd{font-size:25px}.opening-logo img{width:105px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.opening-logo{display:none}}

.keep-phrase{white-space:nowrap}
