:root{--paper:#fcfcf1;--ink:#296b49;--body:#4f6150;--muted:#788673;--lime:#e8efba;--line:#dce5ca;--dark:#327452;--max:1160px}
body{background:#fcfcf1;font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif; background-image:radial-gradient(ellipse at 5% 2%,#f6ec8390,transparent 27%),radial-gradient(ellipse at 95% 12%,#d8eac890,transparent 25%)}
h1,h2,h3{font-weight:800;letter-spacing:.025em}.gradient-text{background:none;-webkit-text-fill-color:currentColor;color:#367d4d}.large-heading{font-size:clamp(34px,4.5vw,58px);line-height:1.55;letter-spacing:.025em}.section-padding{padding-block:110px}.section-inner{width:min(1160px,calc(100% - 96px))}.eyebrow{letter-spacing:.13em;color:#699148;font-size:11px}.site-header{height:78px;background:#fffff2ed;border-bottom:1px solid #e3e8c8;padding-inline:36px}.brand{font-size:19px;color:#347450}.brand-symbol{color:#80a747}.brand small{font-size:9px}.desktop-nav{gap:22px}.nav-cta,.button-primary{background:linear-gradient(110deg,#5b995e,#9fb940);border-radius:100px;box-shadow:0 6px 18px #769c3e22}.chapter-indicator{color:#77955f}.chapter-rule{background:#bbcb95}.hero{padding-top:125px;position:relative;padding-bottom:0;isolation:isolate}.hero:before,.chapter:after{content:'';position:absolute;background:url('assets/leaves.svg') center/contain no-repeat;width:170px;height:240px;pointer-events:none;z-index:0}.hero:before{left:-30px;top:65px;transform:rotate(18deg)}.chapter:after{right:-42px;top:22px;transform:rotate(190deg);opacity:.45}.hero-heading{padding:0 24px 32px;position:relative;z-index:1}.hero-intro{font-size:12px;font-weight:600;letter-spacing:.22em;margin-bottom:22px}.cover-title{font-size:clamp(46px,6.8vw,88px);font-weight:900;line-height:.98;letter-spacing:.035em;color:#448c58;margin-bottom:25px}.cover-title span{color:#9db63e}.hero h1{font-size:clamp(26px,3.6vw,46px);line-height:1.55;letter-spacing:.04em}.hero h1>span:first-child{font-size:17px;font-weight:600;letter-spacing:.1em}.handwritten{font-family:Georgia,serif;color:#cfad29;font-size:1.35em;font-style:italic;margin-left:12px;display:inline-block;transform:rotate(-9deg)}.hero-description{font-size:14px;line-height:2;margin:14px auto}.hero-heading>.text-link{font-size:12px;gap:14px;border-bottom:1px solid #abc57b;padding-bottom:7px}.hero-visual{height:auto;width:min(1000px,83%);aspect-ratio:1.85;margin:auto;border-radius:48% 43% 45% 36%/33% 40% 35% 42%;clip-path:none;overflow:hidden;border:10px solid #fff;box-shadow:0 14px 60px #79964018}.hero-image{width:100%;height:100%;object-fit:cover;transform:none}.hero-image-overlay{background:linear-gradient(transparent 50%,#294c3a80)}.hero-photo-caption{bottom:35px;left:8%;font-size:20px}.hero-location{font-size:9px}.hero-bottom{width:85%;padding:30px 0 60px}.hero-bottom>p{font-size:13px;font-weight:700}.chapter{position:relative;overflow:hidden;isolation:isolate}.chapter>*{position:relative;z-index:1}.philosophy{background:#f6f9e8;color:var(--ink)}.belief-inner{padding:110px 0}.belief-title{font-size:clamp(34px,4.9vw,61px);line-height:1.55;letter-spacing:.04em}.belief-line.accent{color:#92a73b;font-size:.62em;line-height:2;margin-top:18px}.eyebrow.light{color:#849b52}.belief-bottom{gap:60px;margin-top:45px;grid-template-columns:1fr 1fr}.belief-bottom p{color:var(--body);font-size:16px;line-height:2.2}.belief-bottom img{border-radius:45% 42% 36% 38%;border:8px solid white;filter:none;aspect-ratio:1.5}.belief-decoration{color:#a0bd4c0e;top:45px;font-size:140px}.wards{background:#fffef4}.ward-stage{padding:110px 0 75px}.section-top{margin-bottom:45px}.ward-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.ward-panel{background:#f4f7e6;border-radius:100px 100px 25px 25px;padding:32px 25px;display:flex;flex-direction:column;align-items:flex-start}.field-number{width:61px;height:61px;display:grid;place-items:center;border-radius:50%;font-size:32px;color:white;background:linear-gradient(130deg,#97bd61,#387951)}.field-number>span{display:none}.ward-type{background:#387c54;color:#fff;border-radius:30px;padding:8px 14px;font-size:11px;margin:20px 0}.ward-panel h3{font-size:23px;line-height:1.65}.ward-panel>p:last-of-type{font-size:13px;line-height:2}.mobile-ward-image{display:block;order:-1;border-radius:50%;aspect-ratio:1.25;margin:0 0 25px;border:5px solid #fff}.ward-tabs,.ward-visual,.ward-scroll-note{display:none!important}.ward-footer{color:#6c8857}.learning{background:linear-gradient(160deg,#edf5e0,#fdfbea)}.learning-grid{gap:55px}.learning-photo{border-radius:48% 38% 41% 39%;overflow:hidden;border:8px solid white}.learning-photo img{border-radius:0}.learning-point{border-color:#c5d8ad}.learning-point summary{font-size:21px}.point-number{background:#a1bf60;color:white;border-radius:50%;padding:12px;align-self:center}.director-message{background:#fffdf1;border:1px solid #dce6bf;border-radius:34px}.director-message img{border-radius:50%;border:5px solid #e8f0d4}.year{background:#fffef3}.year-visual{border-radius:44% 37% 40% 35%;border:7px solid #fff;box-shadow:0 10px 40px #6c824318}.season-tabs{background:#edf2d8;border-radius:100px}.season-tabs [role=tab]{border-radius:100px}.season-tabs [aria-selected=true]{background:#6c9b52;color:#fff}.season-panel{background:#f3f6e6;border-radius:28px}.season-panel h3{font-size:28px}.voices{background:linear-gradient(160deg,#f3f7e5,#fffde9)}.voice-track{padding-bottom:25px}.voice-card{border-radius:35px;background:#fffef5;border:1px solid #dee8c4;padding:32px;box-shadow:0 8px 25px #849e4320}.voice-card:nth-child(even){background:#f0f6e5}.voice-card .voice-portrait,.voice-card img{border-radius:50%;border:6px solid #edf3d6}.voice-card h3{font-size:25px;letter-spacing:.04em}.voice-card blockquote{color:var(--body)}.circle-button{border-color:#a8c57a;background:#fffff5;color:#4f8855}.support{background:#fffff5}.benefits{border:1px solid #dfe9bc;border-radius:35px;background:#f2f6df;padding:35px}.benefit-value{color:#6c9e43}.scholarship{background:linear-gradient(130deg,#eaf2d9,#fbf9d5);border-radius:35px}.scholarship-mark{color:#88aa48}.visit{background:#f1f6e5}.visit-landscape{height:420px;width:90%;margin:55px auto 0;border-radius:48% 42% 37% 34%/35% 42% 36% 40%;border:9px solid #fff;overflow:hidden}.visit-landscape>img{object-fit:cover;width:100%;height:100%;transform:none}.visit-content{text-align:center;padding-block:75px 95px}.visit-description{margin-inline:auto}.visit-actions{justify-content:center}.visit-links{justify-content:center}.phone-link strong{color:#387952}.site-footer{background:#ebf2da;color:#3d6a49;border-top:1px solid #d1deb8}.footer-note{color:#71845f}.edition-note{text-align:center;font-size:12px;padding:25px;background:#dae8bf;color:#52743d}.edition-note a{margin-left:18px;text-decoration:underline}.chapter:before{content:'';position:absolute;bottom:0;left:0;right:0;height:65px;background:radial-gradient(ellipse at 10% 100%,#f0df5650,transparent 35%),radial-gradient(ellipse at 90% 100%,#a7ca9a50,transparent 50%);pointer-events:none;z-index:0}
@media(min-width:1100px){.hero{min-height:0}.hero-heading{width:100%}.cover-title{font-size:80px}.hero-visual{max-height:520px}.hero h1{font-size:42px}}
@media(max-width:899px){.site-header{padding-inline:20px}.section-inner{width:calc(100% - 42px)}.section-padding{padding-block:75px}.hero{padding-top:110px}.hero:before{width:105px;left:-30px;top:75px}.chapter:after{width:100px;right:-42px;opacity:.3}.cover-title{font-size:58px}.hero-visual{width:94%;height:330px;aspect-ratio:auto;border-width:6px}.hero h1{font-size:30px}.hero h1>span:first-child{font-size:13px}.hero-photo-caption{left:10%;font-size:18px}.hero-bottom{padding-bottom:40px}.hero-heading{padding-bottom:25px}.belief-inner{padding:75px 0}.belief-bottom{gap:30px}.belief-bottom p{font-size:14px}.ward-stage{padding-top:75px}.ward-panels{grid-template-columns:1fr;gap:24px}.ward-panel{border-radius:35px;padding:25px;display:block}.mobile-ward-image{float:right;width:43%;margin:0 0 15px 20px;border-width:4px}.ward-panel h3{font-size:24px}.ward-type{display:inline-block}.ward-panel>p:last-of-type{max-width:none;clear:both}.field-number{display:grid}.learning-grid{gap:30px}.large-heading{font-size:34px}.voice-card{padding:25px}.benefits{padding:15px;border-radius:25px}.benefits>div{padding:22px 10px}.visit-landscape{height:280px;width:94%;border-width:6px}.visit-content{padding-block:55px}.visit-actions{align-items:center}.edition-note{font-size:11px;line-height:2}.edition-note a{display:block;margin:0}.site-footer .footer-main{gap:25px}.belief-title{font-size:35px}.belief-bottom{grid-template-columns:1fr}.learning-point summary{font-size:18px}.cover-title{letter-spacing:.02em}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Photo frames and section ribbons follow the brochure. */
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:#edf3dc}.hero-visual{aspect-ratio:1.65;max-height:none}.hero-shade{background:linear-gradient(0deg,#274d3d80,transparent 48%)}.hero-caption{bottom:30px}.hero-caption p{font-size:25px;letter-spacing:.03em}.hero-caption>span{font-size:8px}.learning-image,.year-photo{border-radius:45% 38% 39% 35%;border:7px solid white;overflow:hidden}.learning-image img{aspect-ratio:1.1}.point-no{width:45px;height:45px;display:grid;place-items:center;padding:0;background:#93b954;color:white;border-radius:50%;align-self:center;flex-shrink:0;font-size:17px}.year-photo img{height:100%;object-fit:cover}.season-panel{padding:28px}.eyebrow.reveal,.section-top .eyebrow{display:inline-block;border-radius:40px;background:linear-gradient(100deg,#59955d,#b1c64d);color:white;padding:9px 20px}.learning-layout{gap:50px}.voice-portrait{height:250px;margin:0 auto;width:250px;background:#e4edcf;overflow:hidden}.voice-card img{border:0}.voice-card{padding:25px 0 0;overflow:hidden}.voice-body{padding:28px}.chapter:before{height:85px;background:linear-gradient(#fcfcf1e8,#f8fbe5a0),url('assets/mountains.webp') center 55%/cover;opacity:.5}
@media(max-width:899px){.hero-visual{height:330px;aspect-ratio:auto}.hero-caption{bottom:22px}.hero-caption p{font-size:17px}.hero-caption>span{display:none}.ward-panel .mobile-ward-image{border-radius:50%;margin-top:0;aspect-ratio:1.1}.point-no{width:37px;height:37px;font-size:14px}.learning-point>p{margin-left:0}.season-panel{padding:22px}.year-photo img{height:auto}.voice-portrait{width:205px;height:205px}.cover-title{font-size:clamp(42px,12vw,58px)}.hero h1{font-size:27px}}
