:root{--color-bg-1:#fef9c3;--color-bg-2:#ffe4e6;--color-bg-3:#dbeafe;--color-ink:#3f3f46;--color-card:#ffffff;--color-pink:#fb7185;--color-orange:#fb923c;--color-yellow:#facc15;--color-green:#34d399;--color-blue:#38bdf8;--color-purple:#a78bfa;--shadow-pop:0 10px 0 rgba(0,0,0,0.08);--radius-pop:24px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{min-height:100vh;color:var(--color-ink);background:linear-gradient(135deg,var(--color-bg-1),var(--color-bg-2) 50%,var(--color-bg-3));background-attachment:fixed;-webkit-font-smoothing:antialiased;font-family:Hiragino Maru Gothic ProN,ヒラギノ丸ゴ ProN W4,M PLUS Rounded\ 1c,Rounded Mplus\ 1c,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;font-weight:700}a{color:inherit;text-decoration:none}.container{max-width:1160px;margin:0 auto;padding:14px 18px 24px}.site-header{text-align:center;padding:10px 16px 4px}.site-header__logo{display:inline-block;font-size:clamp(24px,5vw,38px);font-weight:800;letter-spacing:.02em;color:#fff;padding:6px 20px;border-radius:999px;background:linear-gradient(90deg,var(--color-pink),var(--color-orange),var(--color-yellow));box-shadow:var(--shadow-pop);transform:rotate(-1.5deg)}.site-header__tagline{margin-top:10px;font-size:14px;font-weight:700;color:#6b7280}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-top:16px}.topic-card{display:block;background:var(--color-card);border-radius:18px;padding:14px 14px 16px;box-shadow:0 6px 0 rgba(0,0,0,.08);border:4px solid transparent;transition:transform .12s ease,border-color .12s ease}.topic-card:hover{transform:translateY(-4px) rotate(-.6deg)}.topic-card__emoji{font-size:34px;line-height:1}.topic-card__title{margin:6px 0 4px;font-size:17px;font-weight:800}.topic-card__desc{margin:0;font-size:12.5px;color:#6b7280;line-height:1.5}.topic-card--pink{border-color:var(--color-pink)}.topic-card--green{border-color:var(--color-green)}.topic-card--blue{border-color:var(--color-blue)}.topic-card--purple{border-color:var(--color-purple)}.page-shell__nav{margin-bottom:8px}.back-link{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;background:#fff;padding:6px 14px;border-radius:999px;box-shadow:0 4px 0 rgba(0,0,0,.08)}.page-shell__title{font-size:clamp(22px,4vw,30px);font-weight:800;margin:4px 0 2px}.page-shell__lead{margin:0 0 12px;color:#6b7280;font-weight:700;font-size:13.5px;line-height:1.55}.panel{background:var(--color-card);border-radius:18px;padding:16px;box-shadow:0 8px 0 rgba(0,0,0,.07);margin-bottom:16px}.panel__heading{font-size:15px;font-weight:800;margin:0 0 10px;color:#52525b}.experience{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px}.experience__panels{display:flex;flex-direction:column;gap:14px;min-width:0}.experience .panel{margin-bottom:0}.experience__visual{min-width:0}.experience__visual .panel{position:-webkit-sticky;position:sticky;top:12px}@media (min-width:760px){.experience{grid-template-columns:minmax(0,1.05fr) minmax(290px,.95fr);align-items:start}.experience__below{grid-column:1/-1}}.stage-wrap{display:flex;justify-content:center}.stage-wrap canvas{border-radius:18px;max-width:100%;height:auto}.slider{margin-bottom:12px}.slider:last-child{margin-bottom:0}.slider__top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.slider__label{font-weight:800;font-size:15px}.slider__value{font-weight:800;font-size:18px;color:var(--color-pink)}.slider__value-unit{font-size:13px;color:#9ca3af;margin-left:2px}.slider input[type=range]{width:100%;height:14px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:999px;background:#f1f5f9;outline:none;cursor:pointer}.slider input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--color-orange),var(--color-pink));border:4px solid #fff;box-shadow:0 3px 6px rgba(0,0,0,.18);cursor:pointer}.slider input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:var(--color-orange);border:4px solid #fff;box-shadow:0 3px 6px rgba(0,0,0,.18);cursor:pointer}.segmented{display:flex;flex-wrap:wrap;gap:10px}.segmented__btn{flex:1 1 auto;font-family:inherit;font-weight:800;font-size:13px;padding:9px 12px;border-radius:14px;border:3px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;transition:transform .1s ease,border-color .1s ease}.segmented__btn:hover{transform:translateY(-2px)}.segmented__btn--active{border-color:var(--color-blue);background:#eff6ff;color:#0369a1}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));grid-gap:10px;gap:10px}.stat-chip{border-radius:14px;padding:10px 12px;color:#fff;box-shadow:0 5px 0 rgba(0,0,0,.08)}.stat-chip__label{font-size:12px;font-weight:700;opacity:.95}.stat-chip__value{font-size:24px;font-weight:800;line-height:1.2}.stat-chip__unit{font-size:13px;font-weight:700;margin-left:3px}.stat-chip--pink{background:linear-gradient(135deg,#fb7185,#f43f5e)}.stat-chip--orange{background:linear-gradient(135deg,#fbbf24,#fb923c)}.stat-chip--green{background:linear-gradient(135deg,#34d399,#10b981)}.stat-chip--blue{background:linear-gradient(135deg,#38bdf8,#0ea5e9)}.stat-chip--purple{background:linear-gradient(135deg,#a78bfa,#8b5cf6)}.formula-box{background:#fffbeb;border:3px dashed var(--color-yellow);border-radius:14px;padding:12px 14px;font-size:14.5px;font-weight:800;color:#92400e;line-height:1.6}.formula-box__title{font-size:12px;color:#b45309;margin-bottom:4px}.note{font-size:12.5px;color:#9ca3af;font-weight:700;margin-top:8px;line-height:1.5}.site-footer{max-width:1160px;margin:28px auto 0;padding:18px 18px 28px;text-align:center;font-size:13px;font-weight:700;color:#6b7280}.site-footer__nav{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:8px}.site-footer__nav a{color:var(--color-pink)}.site-footer__copy{margin:0}.legal{background:var(--color-card);border-radius:var(--radius-pop);box-shadow:var(--shadow-pop);padding:22px 22px 28px;margin-top:16px;font-weight:500;line-height:1.8}.legal h2{font-size:17px;font-weight:800;margin:22px 0 6px;color:var(--color-ink)}.legal a{color:var(--color-pink);text-decoration:underline}.legal__meta{margin-top:24px;font-size:13px;color:#9ca3af}