:root{color-scheme:light;--bg: #f7efe3;--bg-deep: #21161a;--surface: rgba(255, 250, 244, .76);--surface-strong: #fff8f0;--surface-dark: rgba(34, 22, 26, .82);--line: rgba(67, 40, 47, .12);--text: #24171a;--text-soft: rgba(36, 23, 26, .72);--text-on-dark: #fff7f0;--berry: #b0175d;--berry-strong: #d23a7a;--amber: #f2bf56;--shadow: 0 28px 80px rgba(35, 20, 25, .12);--radius-xl: 32px;--radius-lg: 24px;--container: min(1120px, calc(100vw - 40px) )}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Noto Sans JP,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(210,58,122,.12),transparent 28%),radial-gradient(circle at top right,rgba(242,191,86,.24),transparent 22%),linear-gradient(180deg,#fbf5ec,#f7efe3)}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:var(--container);margin:0 auto}.site-shell{min-height:100vh}.hero{position:relative;overflow:clip;padding-bottom:56px}.hero:before,.hero:after{content:"";position:absolute;inset:auto;border-radius:999px;filter:blur(12px);pointer-events:none}.hero:before{top:-120px;right:-80px;width:420px;height:420px;background:#d23a7a2e}.hero:after{left:-140px;bottom:80px;width:360px;height:360px;background:#f2bf5633}.hero__veil{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 78%);mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 78%)}.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}.nav__brand{font-family:Lexend,sans-serif;font-size:1.15rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav__links{display:flex;gap:20px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:#fffaf499;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav__links a{color:var(--text-soft);font-size:.95rem}.nav__toggle{display:none;flex-direction:column;gap:5px;width:48px;height:48px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fffaf4b8;justify-content:center;align-items:center}.nav__toggle span{display:block;width:18px;height:2px;border-radius:999px;background:var(--text)}.hero__content{position:relative;padding:56px 0 24px}.eyebrow{margin:0 0 14px;font-family:Lexend,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.24em;color:var(--berry);text-transform:uppercase}.hero__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);gap:28px;align-items:stretch}.hero__copy,.hero__panel,.program-card,.env-card{border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.hero__copy{padding:36px;background:linear-gradient(135deg,#fff8f0eb,#fff4e7c2),var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hero__status,.panel__label,.env-card__label,.program-card__index{font-family:Lexend,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero__status{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:#b0175d1a;color:var(--berry)}.hero__status:before{content:"";width:10px;height:10px;border-radius:50%;background:currentColor;box-shadow:0 0 0 7px #b0175d1f}.hero__copy h1,.section h2{margin:18px 0 0;font-family:Lexend,sans-serif;font-weight:800;line-height:1.02;letter-spacing:-.03em}.hero__copy h1{font-size:clamp(2.8rem,5vw,5.4rem)}.hero__copy h1 span{color:var(--berry)}.hero__lead,.copy-stack p,.program-card p,.env-card p,.next-list li{color:var(--text-soft);line-height:1.8;font-size:1rem}.hero__lead{max-width:56ch;margin:22px 0 0}.hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 22px;border-radius:999px;font-family:Lexend,sans-serif;font-weight:700;letter-spacing:.04em}.button--primary{color:var(--text-on-dark);background:linear-gradient(135deg,var(--berry),var(--berry-strong))}.button--ghost{border:1px solid var(--line);background:#ffffff85}.hero__panel{padding:28px;color:var(--text-on-dark);background:linear-gradient(180deg,#1b1116b3,#1b1116eb),var(--bg-deep)}.panel__label,.env-card__label{color:var(--amber)}.deploy-list{display:grid;gap:18px;margin:20px 0 0;padding:0;list-style:none}.deploy-list li{display:grid;gap:8px;padding:18px;border-radius:24px;background:#ffffff0d}.deploy-list span{color:#fff7f0ad;font-size:.95rem}.deploy-list strong{font-size:1.02rem;line-height:1.6}.section{padding:88px 0}.section--cream{background:transparent}.section--dark{color:var(--text-on-dark);background:radial-gradient(circle at top right,rgba(210,58,122,.22),transparent 28%),linear-gradient(180deg,#2a1d22,#1b1116)}.section--warm{background:linear-gradient(180deg,#f2bf561f,#f2bf560a),transparent}.section__grid,.next-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:start}.section__head{margin-bottom:30px}.section h2{font-size:clamp(2rem,3.3vw,3.6rem)}.copy-stack{display:grid;gap:18px}.program-grid,.environment__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.program-card,.env-card{padding:24px;background:#ffffff0f}.program-card h3,.env-card h3{margin:12px 0 10px;font-size:1.32rem}.program-card__index{color:var(--amber)}.section--dark .program-card p,.section--dark .program-card h3{color:var(--text-on-dark)}.next-list{margin:0;padding-left:22px}.next-list li+li{margin-top:14px}.footer{padding:28px 0 44px}.footer__inner{display:flex;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid var(--line);color:var(--text-soft);font-size:.92rem}@media(max-width:980px){.hero__grid,.section__grid,.next-grid,.program-grid,.environment__cards{grid-template-columns:1fr}.nav__toggle{display:inline-flex}.nav__links{position:absolute;top:calc(100% + 10px);right:20px;left:20px;display:none;flex-direction:column;align-items:flex-start;border-radius:24px;background:#fffaf4f0}.nav__links[data-open=true]{display:flex}}@media(max-width:640px){.nav{padding:16px 0}.hero__content{padding-top:32px}.hero__copy,.hero__panel,.program-card,.env-card{padding:22px;border-radius:24px}.hero__actions{flex-direction:column}.button{width:100%}.footer__inner{flex-direction:column}}
