:root{--ink:#071417;--ink-soft:#132323;--deep:#01090a;--deep-2:#031416;--paper:#fff;--mist:#f4f8f7;--mist-2:#eaf2f0;--line:#d8e4e1;--line-dark:#ccefea2e;--text:#0b1c20;--muted:#60716f;--muted-dark:#9db3af;--teal:#087b75;--teal-bright:#39d6c8;--amber:#d0973d;--radius:8px;--max:1220px;--shadow:0 28px 80px #0516171f;--font-sans:"Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;--font-display:"Times New Roman", "Yu Mincho", "Hiragino Mincho ProN", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--text);font-family:var(--font-sans);letter-spacing:0;text-rendering:optimizelegibility;margin:0;line-height:1.78;overflow-x:hidden}body.nav-open{overflow:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;letter-spacing:0}.skip-link{z-index:80;background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:10px 14px;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:60;color:#f8fffd;backdrop-filter:blur(16px);background:#01090ad1;border-bottom:1px solid #0000;transition:background .22s,border-color .22s;position:fixed;inset:0 0 auto}.site-header.is-scrolled,.site-header.is-open{border-color:var(--line-dark);background:#01090ae0}.nav-shell{width:min(var(--max), calc(100% - 56px));align-items:center;gap:34px;min-height:82px;margin:0 auto;display:flex}.brand{color:inherit;font-family:var(--font-display);align-items:center;gap:12px;font-size:1.72rem;line-height:1;display:inline-flex}.brand img{flex:none}.nav-links{color:#f8fffddb;font-family:var(--font-display);align-items:center;gap:34px;margin-left:auto;font-size:1rem;line-height:1;display:flex}.nav-links a{border-bottom:1px solid #0000;padding:12px 0}.nav-links a:hover,.nav-links a:focus-visible{border-color:var(--teal-bright)}.nav-cta{border-radius:var(--radius);color:#fff;background:linear-gradient(135deg,#098a82,#056b66);justify-content:center;align-items:center;min-height:48px;padding:12px 28px;font-weight:760;line-height:1;display:inline-flex;box-shadow:0 18px 44px #087b7547}.nav-toggle{border:1px solid var(--line-dark);border-radius:var(--radius);color:#fff;background:#ffffff0f;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;margin-left:auto;padding:0;display:none}.nav-toggle-line{background:currentColor;border-radius:999px;width:19px;height:2px}.section-inner,.hero-shell{width:min(var(--max), calc(100% - 56px));margin:0 auto}.section-pad{padding:128px 0}.section-label{color:var(--teal);margin:0 0 22px;font-size:.92rem;font-weight:820;line-height:1;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--font-display);letter-spacing:0;font-weight:500;line-height:1.08}h2{color:var(--ink);margin-bottom:24px;font-size:3.45rem}h3{color:var(--ink);margin-bottom:12px;font-size:1.34rem;line-height:1.5}p{color:var(--muted)}.button,.mail-link{border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;gap:16px;min-height:56px;padding:15px 26px;font-weight:780;line-height:1.2;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:inline-flex}.button:hover,.button:focus-visible,.mail-link:hover,.mail-link:focus-visible{transform:translateY(-2px)}.button-primary,.mail-link{color:#fff;background:linear-gradient(135deg,#087b75,#045f5b);box-shadow:0 20px 48px #087b7540}.button-secondary{color:#07363f;background:#ffffffbd;border-color:#07363f42;box-shadow:0 14px 34px #0516171a}.arrow-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.home-flow{isolation:isolate;background:linear-gradient(160deg, transparent 0 27%, #087b750d 27% 46%, transparent 46% 100%), linear-gradient(24deg, transparent 0 42%, #d0973d0d 42% 56%, transparent 56% 100%), linear-gradient(180deg, var(--paper) 0%, #f8fbfa 36%, var(--paper) 66%, #f2f7f6 100%);position:relative;overflow:clip}.home-flow:before{content:"";z-index:0;opacity:.9;pointer-events:none;background:linear-gradient(112deg,#0000 0 18%,#087b7512 18% 19%,#0000 19% 100%),linear-gradient(112deg,#0000 0 49%,#d0973d0f 49% 50%,#0000 50% 100%),linear-gradient(112deg,#0000 0 72%,#087b750b 72% 73%,#0000 73% 100%);position:absolute;inset:102vh -8vw 10rem;mask-image:linear-gradient(#0000,#000 14% 86%,#0000)}.home-flow>section{z-index:1;position:relative}.hero{isolation:isolate;min-height:100vh;color:var(--ink);background:linear-gradient(90deg,#f7fcfbfa 0%,#eff8f6f0 34%,#e1f2ef7a 66%,#07363f14 100%),linear-gradient(115deg,#f7fcfb 0%,#e5f3f0 54%,#b8d9d4 100%);align-items:stretch;display:flex;position:relative;overflow:clip}.hero:after{content:"";background:var(--paper);z-index:5;border-radius:50% 50% 0 0/100% 100% 0 0;height:184px;position:absolute;bottom:-82px;left:-8vw;right:-8vw}.hero-shell{z-index:2;grid-template-columns:minmax(430px,.78fr) minmax(520px,1.22fr);align-items:center;gap:44px;min-height:100vh;padding:120px 0 98px;display:grid;position:relative}.hero-copy{z-index:3;min-width:0;position:relative}.hero-copy h1{color:#07363f;margin:0 0 24px;font-size:6.8rem}.hero-lead{color:#07585a;max-width:690px;font-family:var(--font-display);overflow-wrap:anywhere;margin-bottom:28px;font-size:2.04rem;line-height:1.45}.hero-body{color:#072327d1;overflow-wrap:anywhere;max-width:590px;margin-bottom:42px;font-size:1.02rem}.hero-lead span,.hero-body span{display:block}.hero-actions{flex-wrap:wrap;gap:18px;display:flex}.hero-visual{--sequence-progress:0;z-index:1;aspect-ratio:16/9;width:min(84vw,1600px);position:absolute;top:50%;right:max(-8vw,-128px);overflow:hidden;transform:translateY(-50%)}.hero-visual:after{content:"";z-index:4;pointer-events:none;background:linear-gradient(90deg,#f7fcfbf5,#f7fcfbc2 22%,#0000 45% 84%,#07363f14),linear-gradient(#f7fcfb24,#0000 54%,#07363f1f);position:absolute;inset:0}.sequence-canvas,.sequence-poster{object-fit:cover;filter:saturate(1.08)contrast(1.06);width:100%;max-width:none;height:100%;position:absolute;inset:0}.sequence-canvas{z-index:2;opacity:0;transition:opacity .26s}.sequence-poster{z-index:1}.hero-visual.is-ready .sequence-canvas{opacity:1}.hero-visual.is-ready .sequence-poster{opacity:0}.hero-visual.is-static .sequence-canvas{display:none}.hero-visual.is-static .sequence-poster{opacity:1!important}.scroll-cue{z-index:7;color:#07363fc7;writing-mode:vertical-rl;flex-direction:column;align-items:center;gap:16px;font-size:.72rem;font-weight:760;display:none;position:absolute;bottom:118px;left:34px}.hero.is-sequence-active .scroll-cue{display:inline-flex}.scroll-cue .arrow-icon{color:var(--teal);transform:rotate(90deg)}.concept{background:0 0;position:relative}.concept-grid{grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);align-items:center;gap:62px;display:grid}.concept-grid p{max-width:650px;font-size:1.02rem}.concept-grid h2 span{display:block}.concept-visual{border-radius:var(--radius);background:var(--mist);box-shadow:var(--shadow);margin:0;overflow:hidden}.concept-visual img{aspect-ratio:1.8;object-fit:cover;width:100%}.services{z-index:0;background:0 0;position:relative}.services:before{content:"";z-index:0;transform-origin:50%;pointer-events:none;background:linear-gradient(#f4f8f7eb,#fff9),linear-gradient(112deg,#0000 0 26%,#087b7513 26% 27%,#0000 27% 100%);position:absolute;inset:42px 0 28px;transform:skewY(-1.8deg)}.services-grid{z-index:1;grid-template-columns:minmax(310px,.42fr) minmax(0,1fr);align-items:start;gap:70px;display:grid;position:relative}.section-sticky{position:sticky;top:118px}.service-rows{gap:18px;display:grid}.service-row{border-radius:var(--radius);background:linear-gradient(90deg,#ffffffdb,#ffffff9e),linear-gradient(90deg,#087b7514,#0000 42%);border:1px solid #d8e4e18a;grid-template-columns:56px minmax(0,1fr) 54px;align-items:center;gap:32px;min-height:168px;padding:30px 30px 30px 26px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;box-shadow:0 18px 54px #05161712}.service-row:hover{border-color:#087b753d;transform:translateY(-3px);box-shadow:0 26px 72px #0516171a}.service-number{color:var(--amber);font-weight:860}.service-row p{max-width:720px;margin-bottom:12px}.service-row a:not(.row-arrow){color:var(--teal);font-weight:760}.row-arrow{border:1px solid var(--line);border-radius:var(--radius);width:52px;height:52px;color:var(--teal);justify-content:center;align-items:center;transition:background .18s,color .18s,transform .18s;display:inline-flex}.service-row:hover .row-arrow,.row-arrow:focus-visible{background:var(--teal);color:#fff;transform:translate(3px)}.approach{background:0 0}.approach-grid{grid-template-columns:minmax(320px,.36fr) minmax(0,1fr);gap:72px;display:grid}.approach-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:24px 0 0;padding:0;list-style:none;display:grid;position:relative}.approach-rail:before{content:"";background:linear-gradient(90deg, var(--teal), var(--teal-bright), var(--amber));height:2px;position:absolute;top:55px;left:10%;right:10%}.approach-rail li{padding:98px 22px 0;position:relative}.approach-rail li:before{content:"";border:1px solid var(--line);background:var(--paper);border-radius:50%;width:56px;height:56px;position:absolute;top:28px;left:22px;box-shadow:0 16px 34px #05161714}.approach-rail span{z-index:1;color:var(--teal);font-size:.82rem;font-weight:860;position:absolute;top:44px;left:38px}.approach-rail p{font-size:.94rem}.company{background:linear-gradient(90deg,#ffffffe6 0%,#ffffffd1 50%,#ffffff8f 100%),url(/assets/learning-pathways.png) 100%/48% no-repeat,0 0;position:relative;overflow:hidden}.company-grid{grid-template-columns:minmax(310px,.44fr) minmax(0,1fr);align-items:start;gap:72px;display:grid}.company-grid h2{white-space:nowrap;font-size:3.25rem}.company-list{gap:12px;margin:0;display:grid}.company-list div{border-radius:var(--radius);background:#ffffffb3;grid-template-columns:190px minmax(0,1fr);gap:28px;padding:20px 24px;display:grid;box-shadow:0 12px 34px #0516170f}.company-list dt{color:var(--muted);font-weight:800}.company-list dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:760}.contact{isolation:isolate;clip-path:polygon(0 92px,100% 0,100% 100%,0 100%);background:linear-gradient(90deg, #01090afa 0%, #01090aeb 42%, #01090a38 100%), url(/assets/scroll-sequence/poster.webp) right center / cover no-repeat, var(--deep);color:#fff;margin-top:-92px;padding:214px 0 138px;position:relative;overflow:hidden}.contact:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(168deg,#f2f7f6e6 0 28%,#f2f7f638 48%,#01090a00 78%);height:176px;position:absolute;inset:0 0 auto}.contact .section-label{color:var(--teal-bright)}.contact h2{color:#fff}.contact p{color:#ebf8f5bd;max-width:560px}.contact-grid{z-index:1;grid-template-columns:minmax(0,.72fr) minmax(320px,.38fr);align-items:end;gap:56px;display:grid;position:relative}.mail-link{justify-self:end;width:min(100%,420px)}.page-hero{background:linear-gradient(90deg, #01090af5, #01090ab8, #01090a47), url(/assets/scroll-sequence/poster.webp) right center / cover no-repeat, var(--deep);color:#fff;padding:166px 0 104px}.page-hero-grid{grid-template-columns:minmax(0,.72fr) minmax(320px,.48fr);align-items:end;gap:60px;display:grid}.page-hero h1{color:#fff;margin-bottom:0;font-size:4.6rem}.page-hero p:not(.section-label){color:#ebf8f5c7;font-size:1.08rem}.service-detail{background:var(--paper)}.service-detail-grid{grid-template-columns:minmax(300px,.44fr) minmax(0,1fr);gap:74px;display:grid}.detail-main h2{font-size:3rem}.detail-list{border-top:1px solid var(--line)}.detail-list article{border-bottom:1px solid var(--line);grid-template-columns:58px minmax(0,.38fr) minmax(0,1fr);gap:26px;padding:28px 0;display:grid}.detail-list span{color:var(--amber);font-weight:860}.detail-list h3,.detail-list p{margin:0}.notice-hero{background:var(--paper);padding:166px 0 98px}.notice-shell,.privacy-shell{max-width:880px}.notice-kicker{color:var(--teal);margin:0 0 14px;font-size:.92rem;font-weight:820}.notice-shell h1,.privacy-shell h1{color:var(--ink);font-family:var(--font-display);margin:0;font-size:4.2rem;font-weight:500;line-height:1.08}.notice-shell p,.privacy-shell p{max-width:760px;margin:22px 0 0}.notice-section{background:var(--mist)}.notice-grid,.privacy-grid{grid-template-columns:minmax(260px,.52fr) minmax(0,1fr);align-items:start;gap:66px;display:grid}.notice-panel,.privacy-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:0 18px 54px #05161712}.notice-list,.privacy-list{margin:0}.notice-list div{border-bottom:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);gap:22px;padding:18px 0;display:grid}.notice-list div:first-child{padding-top:0}.notice-list dt{color:var(--muted);font-weight:780}.notice-list dd{overflow-wrap:anywhere;margin:0;font-weight:740}.privacy-list{color:var(--muted);padding-left:1.2em}.privacy-list li+li{margin-top:12px}.notice-note{color:var(--muted);margin:22px 0 0;font-size:.94rem}.site-footer{color:#eefaf7c2;border-top:1px solid var(--line-dark);background:#041012}.footer-inner{width:min(var(--max), calc(100% - 56px));grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:44px;min-height:118px;margin:0 auto;display:grid}.footer-brand{color:#fff}.footer-inner p{color:#eefaf79e;margin:0}.footer-links{justify-content:flex-end;align-items:center;gap:32px;display:flex}.footer-links a:hover,.footer-links a:focus-visible{color:#fff}.footer-bottom{width:min(var(--max), calc(100% - 56px));border-top:1px solid var(--line-dark);color:#eefaf77a;justify-content:space-between;align-items:center;gap:24px;min-height:56px;margin:0 auto;font-size:.88rem;display:flex}@media (width<=1100px){.nav-links{gap:22px}.hero-shell{grid-template-columns:minmax(360px,.82fr) minmax(420px,1fr)}.hero-copy h1{font-size:5.4rem}.hero-lead{font-size:1.76rem}.services-grid,.approach-grid,.company-grid,.service-detail-grid{grid-template-columns:1fr}.section-sticky{position:static}}@media (width<=900px){.company-grid h2{white-space:normal;font-size:clamp(2.5rem,11vw,2.8rem)}.nav-shell{width:calc(100% - 32px);min-height:72px}.nav-toggle{display:inline-flex}.nav-links{border:1px solid var(--line-dark);border-radius:var(--radius);background:#01090af5;flex-direction:column;align-items:flex-start;gap:0;padding:16px;display:none;position:absolute;top:72px;left:16px;right:16px;box-shadow:0 28px 80px #01090a6b}.nav-links.is-open{display:flex}.nav-links a{width:100%;padding:14px 8px}.nav-cta{display:none}.section-inner,.hero-shell,.footer-inner,.footer-bottom{width:calc(100% - 32px)}.hero{min-height:auto}.hero:after{height:108px;bottom:-54px}.hero-shell{grid-template-columns:1fr;min-height:auto;padding:124px 0 104px;position:relative}.hero-visual{aspect-ratio:16/9;width:calc(100% + 32px);min-height:0;margin:22px -16px 0;position:relative;inset:auto;transform:none}.hero-visual:after{background:linear-gradient(#0000,#01090a47)}.sequence-canvas{display:none}.sequence-poster{opacity:1!important}.scroll-cue{display:none}.concept-grid,.page-hero-grid,.contact-grid{grid-template-columns:1fr}.section-pad{padding:96px 0}h2,.detail-main h2{font-size:2.7rem}.approach-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.approach-rail:before{display:none}.company{background:linear-gradient(180deg, #fffffff5, #ffffffe6), url(/assets/learning-pathways.png) right bottom / 80% auto no-repeat, var(--paper)}.contact{clip-path:polygon(0 64px,100% 0,100% 100%,0 100%);margin-top:-64px;padding:170px 0 104px}.mail-link{justify-self:start}.footer-inner{grid-template-columns:1fr;gap:18px;padding:34px 0}.footer-links{flex-wrap:wrap;justify-content:flex-start}}@media (width<=640px){.brand{font-size:1.36rem}.hero-copy h1{font-size:4rem}.hero-lead{word-break:break-all;max-width:calc(100vw - 32px);font-size:1.38rem}.hero-body{word-break:break-all;max-width:calc(100vw - 32px);font-size:.98rem}.hero-actions{flex-direction:column}.button,.mail-link{width:100%}.hero-visual{min-height:0}h2,.page-hero h1,.notice-shell h1,.privacy-shell h1,.detail-main h2{font-size:2.28rem}.page-hero{padding:128px 0 76px}.contact{clip-path:polygon(0 48px,100% 0,100% 100%,0 100%);margin-top:-48px;padding:148px 0 92px}.service-row,.detail-list article,.company-list div,.notice-list div{grid-template-columns:1fr;gap:10px}.row-arrow{width:100%}.approach-rail{grid-template-columns:1fr}.approach-rail li{padding-top:86px}.notice-grid,.privacy-grid{grid-template-columns:1fr;gap:38px}.notice-panel,.privacy-panel{padding:24px}.footer-bottom{flex-direction:column;align-items:flex-start;min-height:auto;padding:18px 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
