@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;900&display=swap";:root{--bg-page:#fff;--bg-subtle:#f8fafc;--bg-muted:#f1f5f9;--bg-darker:#f8fafc;--bg-dark:#fff;--bg-card:#fff;--bg-card-hover:#fff;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-dark:#94a3b8;--text-light:#0f172a;--primary:#0284c7;--primary-hover:#0369a1;--primary-light:#e0f2fe;--primary-glow:#0284c714;--cta:#ea580c;--cta-hover:#c2410c;--cta-light:#ffedd5;--secondary:#475569;--secondary-hover:#1e293b;--accent:#0284c7;--border-subtle:#e2e8f0;--border-default:#cbd5e1;--border-light:#e2e8f0;--border-hover:#94a3b8;--border-active:#0284c7;--shadow-sm:0 1px 2px 0 #0f172a0d;--shadow-card:0 2px 8px -2px #0f172a0f, 0 1px 3px 0 #0f172a0a;--shadow-hover:0 12px 28px -4px #0f172a14, 0 4px 10px -2px #0f172a08;--font-sans:"Inter", "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-sans);background-color:var(--bg-page);color:var(--text-primary)}body{background-color:var(--bg-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.7;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:7px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}h1,h2,h3,h4,h5,h6{color:var(--text-primary);letter-spacing:-.01em;font-weight:700;line-height:1.3}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 1.5rem}.text-gradient{color:var(--text-primary)}.text-gradient-cyan-indigo{color:var(--primary)}.text-gradient-silver{color:var(--text-primary)}.glass-panel{border:1px solid var(--border-subtle);box-shadow:var(--shadow-card);background:#fff;border-radius:12px;transition:border-color .2s,box-shadow .2s,transform .2s}.glass-panel:hover{border-color:var(--border-default);box-shadow:var(--shadow-hover)}.glass-panel-accent{border:1.5px solid var(--primary);background:#fff;box-shadow:0 8px 24px -4px #0284c71f}.btn{cursor:pointer;letter-spacing:.01em;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-size:.92rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--cta);border:1px solid var(--cta);box-shadow:0 2px 6px #ea580c40;color:#fff!important}.btn-primary:hover{background:var(--cta-hover);border-color:var(--cta-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ea580c59}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);background:#fff}.btn-secondary:hover{border-color:var(--text-secondary);color:var(--text-primary);background:#f8fafc;transform:translateY(-1px)}.btn-dark{color:#fff;background:#0f172a;border:1px solid #0f172a}.btn-dark:hover{background:#1e293b;transform:translateY(-1px)}.glow-badge{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;border-radius:9999px;align-items:center;gap:.5rem;padding:.35rem .95rem;display:inline-flex}.status-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;display:inline-block}.section-divider{background:var(--border-subtle);border:none;width:100%;height:1px;margin:0}.section{padding:6rem 0;scroll-margin-top:80px;position:relative}@media (width<=768px){.section{padding:4rem 0}}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1);transform:translateY(24px)}.reveal-left{opacity:0;will-change:opacity, transform;transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1);transform:translate(-24px)}.reveal-right{opacity:0;will-change:opacity, transform;transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1);transform:translate(24px)}.reveal-scale{opacity:0;will-change:opacity, transform;transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1);transform:scale(.96)translateY(18px)}.reveal.is-visible,.reveal-left.is-visible,.reveal-right.is-visible,.reveal-scale.is-visible{opacity:1;transform:translate(0)scale(1)}.delay-100{transition-delay:80ms}.delay-200{transition-delay:.16s}.delay-300{transition-delay:.24s}.delay-400{transition-delay:.32s}.delay-500{transition-delay:.4s}.delay-600{transition-delay:.48s}@media (prefers-reduced-motion:reduce){.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transition:none!important;transform:none!important}}
