:root{--ink:#302933;--rose:#b93868;--light:#fbf2f5;--line:#eadce2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:16px;line-height:1.85;background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7c458d;outline-offset:4px}.notice{text-align:center;background:#322b34;color:white;padding:7px 16px;font-size:14px}header{max-width:1240px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:26px 40px}.brand{font:italic 28px Georgia,serif}.brand small{display:block;font:12px sans-serif;letter-spacing:2px}.header-link{font-size:14px;border-bottom:1px solid var(--rose);padding:5px}.hero{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:35px 40px 60px}.eyebrow{font-size:12px;letter-spacing:2.5px;color:var(--rose);font-weight:700;margin:0 0 18px}.school{font-size:14px;margin:0 0 18px}.school strong{font-size:22px;color:var(--rose);margin-left:10px}h1,h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500;letter-spacing:.04em;line-height:1.5}h1{font-size:clamp(40px,4.6vw,64px);margin:15px 0 22px}h1 em{font-style:normal;color:var(--rose)}.lead{font-size:21px;line-height:1.8}.hero-copy>p:not(.eyebrow,.school,.lead){color:#756976}.button{display:inline-flex;justify-content:space-between;gap:36px;align-items:center;background:var(--rose);color:#fff;border:0;border-radius:3px;padding:17px 26px;font-weight:700}.hero-copy .button{margin-top:16px}.hero-visual{position:relative;align-self:stretch;background:var(--light);margin:25px 0 15px;overflow:hidden;border-radius:150px 150px 4px 4px;display:flex;flex-direction:column}.hero-visual img{width:100%;height:55%;min-height:275px;object-fit:cover;object-position:35% center}.visual-caption{padding:42px}.visual-caption span{font-size:12px;letter-spacing:2px;color:var(--rose)}.visual-caption p{font-family:'Yu Mincho',serif;font-size:30px;line-height:1.6;margin:12px 0}.hero-tag{position:absolute;right:0;bottom:0;background:#e8c1d0;padding:10px 25px;font-size:14px}.quick{background:var(--light);display:flex;justify-content:center;gap:7vw;padding:24px}.quick span{color:var(--rose);font-family:Georgia,serif;font-size:22px;margin-right:10px}.section{max-width:1240px;margin:auto;padding:90px 40px}h2{font-size:clamp(28px,3.2vw,40px);margin:0 0 25px}h3{line-height:1.6}.intro{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.intro>.eyebrow{grid-column:1/-1}.intro>div p:first-child{margin-top:0}.intro>div p{color:#6e626f}.support{background:#fbf7f9;max-width:none;padding-left:max(40px,calc((100% - 1160px)/2));padding-right:max(40px,calc((100% - 1160px)/2))}.section-head{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:26px}.section-head>p{color:#796e79}.support-grid,.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.support-grid article{border-top:1px solid #d9bbc8;padding:22px 12px 0 0}.number{font:36px Georgia,serif;color:#bc6586}.support-grid p{color:#756976}.course{border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;border-top:5px solid #c65c85}.course.blue{border-top-color:#4690a1}.course.purple{border-top-color:#8d64a2}.course-no{font-size:12px;letter-spacing:1.3px;color:var(--rose)}.course h3{font-size:24px;margin:12px 0}.target{font-size:14px;color:#706674}.course ul{padding-left:20px;margin-bottom:28px}.tool{font-size:12px;background:#f8f5f7;padding:8px 10px;margin-top:auto}.course-select{display:block;border-top:1px solid var(--line);margin-top:24px;padding-top:18px;font-size:14px;color:var(--rose);font-weight:700}.course-note{font-size:14px;color:#786b77;max-width:850px;margin-top:25px}.flow{border-top:1px solid var(--line)}.flow ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:0;margin:40px 0 0}.flow li{border-left:2px solid #e5bfd0;padding-left:24px}.flow li>span{color:var(--rose);font:26px Georgia,serif}.flow li p{color:#706571}.faq{max-width:920px;padding-top:30px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-weight:600;padding-right:20px}.faq details p{color:#756976}.consult{background:var(--light);max-width:none;padding-left:max(40px,calc((100% - 1160px)/2));padding-right:max(40px,calc((100% - 1160px)/2));display:grid;grid-template-columns:1fr 1fr;gap:65px}.draft-note{font-size:14px;border-left:3px solid var(--rose);padding:10px 15px;margin-top:35px;color:#75606b}form{background:white;padding:35px;border:1px solid var(--line)}form h3{margin-top:0}label{display:block;font-size:14px;font-weight:600;margin:18px 0 6px}label span{font-size:12px;color:#807480;font-weight:400;margin-left:8px}input,select,textarea{width:100%;padding:12px;background:#fff;border:1px solid #d5cad1;border-radius:3px;color:var(--ink)}textarea{resize:vertical}form .button{width:100%;margin-top:22px;font-size:14px;justify-content:center}button:disabled{background:#756a72;cursor:not-allowed}.form-note{font-size:12px;color:#796d78}footer{max-width:1240px;margin:auto;padding:42px 40px;display:flex;gap:35px;align-items:center;justify-content:space-between}footer p,footer small{font-size:12px;color:#7b6b76}.mobile-cta{display:none}@media(max-width:760px){header{padding:20px}.brand{font-size:23px}.header-link{font-size:12px}.hero{padding:20px 22px 40px;gap:25px;grid-template-columns:1fr}.hero h1{font-size:43px}.hero-copy>p:not(.school,.eyebrow){font-size:16px}.hero-visual{margin:0;border-radius:90px 90px 3px 3px;display:grid;grid-template-columns:1fr 1fr;min-height:235px}.hero-visual img{height:100%;min-height:235px;object-position:30% center}.visual-caption{padding:45px 15px}.visual-caption p{font-size:20px}.visual-caption span{font-size:10px;letter-spacing:1px}.hero-tag{font-size:12px;padding:5px 15px}.quick{flex-direction:column;gap:9px;padding:22px}.quick div{font-size:14px}.quick span{font-size:18px}.section{padding:55px 22px}.intro,.consult{grid-template-columns:1fr;gap:20px}.section-head{display:block}.support-grid,.course-grid,.flow ol{grid-template-columns:1fr}.support-grid{gap:12px}.support-grid article h3{font-size:22px}.course{padding:25px}.faq{padding-top:20px}.flow ol{gap:24px}.flow li h3{margin:10px 0}.consult form{padding:23px}.consult h2{font-size:28px}footer{padding:35px 22px 110px;display:block}footer p{margin:25px 0}.mobile-cta{display:flex;position:fixed;bottom:12px;left:16px;right:16px;justify-content:center;padding:14px;box-shadow:0 5px 20px #53233d33}h2{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

header .brand{font-size:clamp(18px,2.4vw,28px)}@media(max-width:760px){header{gap:12px}header .brand{font-size:19px}header .header-link{flex-shrink:0}footer .brand{font-size:24px}}

.brand{display:inline-flex;align-items:center;gap:14px}.brand-logo{display:block;width:86px;height:auto;flex-shrink:0}.brand-text{display:block}.brand-text small{margin-top:7px}footer .brand-logo{width:75px}@media(max-width:760px){header .brand{gap:9px;font-size:clamp(14px,3.7vw,19px)}header .brand-logo{width:56px}header .brand-text small{font-size:12px;letter-spacing:1px}footer .brand{font-size:20px;gap:12px}footer .brand-logo{width:65px}}
:root{--rose:#805e98;--light:#f6f2f9;--line:#e5ddeb}.hero{grid-template-columns:1.1fr 1fr}.hero h1{font-size:clamp(33px,3.6vw,49px)}.learning-visual{align-self:center;background:#f5f1f8;border-radius:70px 4px 70px 4px;padding:38px 30px}.learning-visual h2{font-size:32px}.sheet-preview{background:#fff;border:1px solid #dbd1e4;border-radius:7px;overflow:hidden;box-shadow:0 15px 35px #4425550a}.sheet-title{background:#876a9c;color:#fff;padding:12px 16px;font-size:15px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.sheet-title span{font-size:12px;font-weight:400}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}th,td{padding:12px 10px;text-align:left;border:1px solid #e8e2ec}thead{background:#f4eff7}td:nth-child(2){text-align:right;font-variant-numeric:tabular-nums}.sum-row{color:#6f468b;background:#f3edf7;font-weight:700}.formula{padding:10px 15px;margin:0;font:14px monospace;color:#795593}.visual-message{font-size:18px;line-height:1.8;margin:24px 0 15px}.skill-tags{display:flex;gap:8px;flex-wrap:wrap}.skill-tags span{border:1px solid #daccdf;padding:4px 9px;font-size:12px;border-radius:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.number{color:#9273a7}.support{background:#f8f6fa}.support-grid article{border-color:#daccdf}.curriculum-list article{display:grid;grid-template-columns:100px 1fr;gap:25px;padding:30px 0;border-bottom:1px solid var(--line)}.lesson-number{font:44px Georgia,serif;color:#9377a6;padding-top:6px}.lesson-number small{display:block;font:12px sans-serif;letter-spacing:2px;margin-top:12px}.lesson-kicker{font-size:12px;letter-spacing:2px;color:var(--rose);margin:0 0 5px}.curriculum-list h3{font-size:23px;margin:5px 0 13px}.curriculum-list p{max-width:830px}.practice{display:inline-block;padding:8px 13px;font-size:14px;background:var(--light);margin:5px 0}.goals{background:#f8f6fa;max-width:none;padding-left:max(40px,calc((100% - 1160px)/2));padding-right:max(40px,calc((100% - 1160px)/2))}.goal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.goal-grid>div{border-top:2px solid #d6c8df;padding-top:10px}.goal-grid h3{font-size:19px}.goal-grid p{color:#796d80}.entry{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.source-note{font-size:14px;max-width:300px;color:#807586}.source-note a,.application-link a,footer a:not(.brand){text-decoration:underline;text-underline-offset:4px}.entry-card{padding:35px;border:1px solid var(--line);background:#fdfbfe}.status-label{display:inline-block;background:#eee6f4;color:#715383;font-size:13px;padding:5px 12px}.entry-card h3{font-size:24px}.entry-card dl>div{display:grid;grid-template-columns:115px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:14px 0}.entry-card dt{font-size:14px;color:#76637f}.entry-card dd{margin:0}.past-note,.external-note{font-size:13px;color:#786d7c}.past-note{background:#f1ecf5;padding:15px}.entry-card .button{width:100%;justify-content:center;padding:17px;font-size:15px}.application-link{border-top:1px solid var(--line);padding-top:17px;margin-top:22px;font-size:14px}.application-link summary{cursor:pointer}.closing{text-align:center;background:var(--light);max-width:none}.closing .button{margin-top:20px}.closing p{color:#766480}.closing .eyebrow{color:var(--rose)}@media(max-width:760px){.hero{grid-template-columns:1fr}.hero h1{font-size:33px}.learning-visual{padding:28px 20px;border-radius:45px 4px 45px 4px}.learning-visual h2{font-size:28px}.learning-visual .eyebrow{font-size:10px;letter-spacing:1.5px}.curriculum-list article{grid-template-columns:46px 1fr;gap:15px;padding:25px 0}.lesson-number{font-size:31px}.lesson-number small{font-size:12px;letter-spacing:0}.curriculum-list h3{font-size:20px}.goal-grid{grid-template-columns:1fr 1fr;gap:20px}.goals{padding:55px 22px}.goal-grid h3{font-size:17px}.entry{grid-template-columns:1fr;gap:25px}.entry-card{padding:22px}.entry-card h3{font-size:22px}.entry-card dl>div{grid-template-columns:90px 1fr;gap:10px}.entry-card .button{font-size:14px}.closing h2{font-size:27px}footer .brand{font-size:20px}}

/* Shared BRAVE organizer branding */
header .brand,footer .brand{font-style:normal;gap:14px}
header .brand-logo,footer .brand-logo{width:150px;height:85px;object-fit:cover;object-position:center 40%;flex-shrink:0}
.brand-text{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:16px;font-style:normal;font-weight:600;line-height:1.5}
.brand-text small{font-size:14px;font-weight:400;letter-spacing:1px}
@media(max-width:760px){header .brand,footer .brand{gap:10px}header .brand-logo,footer .brand-logo{width:110px;height:64px}.brand-text{font-size:14px}header .brand-text small{font-size:12px}}

.people-hero{margin:20px 0;align-self:center;overflow:hidden;border-radius:100px 100px 4px 4px;background:var(--light);min-width:0}
.people-hero>img{display:block;width:100%;height:400px;object-fit:cover;object-position:center}
.people-hero figcaption{padding:24px 30px}.people-hero figcaption p{font:28px/1.6 'Yu Mincho','Hiragino Mincho ProN',serif;margin:0}.people-hero figcaption small{display:block;margin-top:8px;font-size:12px;color:#716b73}
.existing-detail{padding-top:20px;padding-bottom:20px}.existing-detail .unit-panel{border-radius:4px;padding:28px 35px}.existing-detail .learning-visual{border-radius:4px;display:grid;grid-template-columns:1fr 1fr;gap:0 35px;padding:30px}.existing-detail .learning-visual .sheet-preview{grid-column:2;grid-row:1/5}.existing-detail .learning-visual .skill-tags{grid-column:1}
@media(max-width:760px){.people-hero{margin:0;border-radius:65px 65px 4px 4px}.people-hero>img{height:auto;aspect-ratio:3/2;object-fit:cover}.people-hero figcaption{padding:22px}.people-hero figcaption p{font-size:24px}.existing-detail .learning-visual{display:block;padding:24px 20px}.existing-detail .unit-panel{padding:24px}.existing-detail{padding-top:15px;padding-bottom:15px}}
