*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f5f9ff;--bg2:#eef4ff;--surface:#fff;--navy:#0b1e3d;--navy2:#1a3461;--accent:#06f;--accent2:#3385ff;--orange:#ff6b2b;--text:#0b1e3d;--muted:#0b1e3d73;--border:#0066ff1f;--border-bright:#0066ff59;--mono:"JetBrains Mono", monospace}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Noto Sans JP,sans-serif;overflow-x:hidden}body:before{content:"";z-index:0;pointer-events:none;background-image:linear-gradient(#0066ff0a 1px,#0000 1px),linear-gradient(90deg,#0066ff0a 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}nav{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#f5f9ffe0;justify-content:space-between;align-items:center;height:68px;padding:0 60px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{letter-spacing:.18em;text-transform:uppercase;color:var(--navy);font-family:Syne,sans-serif;font-size:14px;font-weight:800}.nav-logo span{color:var(--accent)}.nav-back{font-family:var(--mono);color:var(--muted);letter-spacing:.12em;align-items:center;gap:8px;font-size:11px;text-decoration:none;transition:color .2s;display:flex}.nav-back:hover{color:var(--accent)}.hero{background:var(--navy);flex-direction:column;justify-content:center;min-height:60vh;padding:120px 60px 80px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#06f6,#0000);height:2px;animation:8s linear infinite scan;position:absolute;left:0;right:0}@keyframes scan{0%{top:0}to{top:100%}}.hero-eyebrow{font-family:var(--mono);color:var(--accent2);letter-spacing:.25em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:24px;font-size:11px;display:flex}.hero-eyebrow:before{content:"";background:var(--accent);width:32px;height:1.5px;display:block}.hero h1{color:#fff;margin-bottom:24px;font-family:Syne,sans-serif;font-size:clamp(40px,6vw,80px);font-weight:800;line-height:1.1}.hero h1 em{color:var(--accent2);font-style:normal}.hero p{color:#ffffff73;max-width:480px;font-size:15px;line-height:2.1}.section{z-index:1;padding:96px 60px;position:relative}.section-eyebrow{font-family:var(--mono);color:var(--accent);letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:20px;font-size:10px;display:flex}.section-eyebrow:before{content:"";background:var(--accent);width:24px;height:1.5px;display:block}.story{background:var(--surface);border-top:1px solid var(--border)}.story h2{color:var(--navy);margin-bottom:48px;font-family:Syne,sans-serif;font-size:clamp(28px,3.5vw,44px);font-weight:800}.story-cards{flex-direction:column;gap:24px;max-width:780px;display:flex}.story-card{background:var(--bg);border:1.5px solid var(--border);border-radius:10px;padding:36px 40px;transition:border-color .3s}.story-card:hover{border-color:var(--border-bright)}.story-card-dark{background:var(--navy);border-color:#0066ff4d}.story-card p{color:var(--muted);font-size:15px;line-height:2.2}.story-card-dark p{color:#ffffff8c}.story-card .quote{color:var(--navy);border-left:3px solid var(--accent);margin-bottom:16px;padding-left:16px;font-size:16px;font-weight:700;line-height:1.8}.story-card-dark .headline{color:#fff;margin-bottom:16px;font-family:Syne,sans-serif;font-size:20px;font-weight:800;line-height:1.6}.values{background:var(--bg2)}.values h2{color:var(--navy);margin-bottom:48px;font-family:Syne,sans-serif;font-size:clamp(28px,3.5vw,44px);font-weight:800}.values-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.value-card{background:var(--surface);border:1.5px solid var(--border);border-radius:8px;padding:40px 32px;transition:border-color .3s,transform .3s,box-shadow .3s;position:relative;overflow:hidden}.value-card:after{content:"";background:var(--accent);transform-origin:0;height:3px;transition:transform .4s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.value-card:hover{border-color:var(--border-bright);transform:translateY(-4px);box-shadow:0 16px 48px #0066ff1a}.value-card:hover:after{transform:scaleX(1)}.value-num{color:var(--accent);opacity:.1;margin-bottom:12px;font-family:Syne,sans-serif;font-size:64px;font-weight:800;line-height:1}.value-card h4{color:var(--navy);margin-bottom:14px;font-family:Syne,sans-serif;font-size:18px;font-weight:800}.value-card p{color:var(--muted);font-size:14px;line-height:2.1}.vision{background:var(--navy);text-align:center}.vision .section-eyebrow{color:#ffffff59;justify-content:center}.vision .section-eyebrow:before{background:#fff3}.vision h2{color:#fff;margin-bottom:32px;font-family:Syne,sans-serif;font-size:clamp(32px,4.5vw,60px);font-weight:800;line-height:1.3}.vision h2 span{color:var(--accent2)}.vision p{color:#ffffff80;max-width:620px;margin:0 auto 48px;font-size:15px;line-height:2.2}.btn{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:#fff;border:1.5px solid #ffffff4d;border-radius:2px;align-items:center;gap:10px;padding:14px 36px;font-size:12px;text-decoration:none;transition:background .2s,border-color .2s;display:inline-flex}.btn:hover{background:#ffffff1a;border-color:#fff}footer{border-top:1px solid var(--border);z-index:1;background:#060e20;justify-content:space-between;align-items:center;padding:28px 60px;display:flex;position:relative}.footer-logo{letter-spacing:.18em;color:#ffffff40;font-family:Syne,sans-serif;font-size:13px;font-weight:800}.footer-copy{font-family:var(--mono);color:#fff3;letter-spacing:.1em;font-size:10px}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(28px)}.reveal.visible{opacity:1;transform:none}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.hero-photo{z-index:0;position:absolute;inset:0}.hero-photo img{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.hero-photo:after{content:"";background:linear-gradient(90deg,#0b1e3dd1 0%,#0b1e3d80 55%,#0b1e3d33 100%);position:absolute;inset:0}.hero{position:relative;overflow:hidden}.hero>:not(.hero-photo){z-index:1;position:relative}.team-banner{border-radius:12px;height:320px;margin:64px 60px 0;position:relative;overflow:hidden}.team-banner img{object-fit:cover;object-position:center 30%;width:100%;height:100%;display:block}.team-banner:after{content:"";background:linear-gradient(90deg,#0b1e3dcc 0%,#0b1e3d4d 60%,#0b1e3d0d 100%);position:absolute;inset:0}.team-banner-text{z-index:1;flex-direction:column;justify-content:center;padding:48px;display:flex;position:absolute;inset:0}@media (max-width:768px){nav{height:60px;padding:0 20px}.nav-back{font-size:12px}.hero{min-height:70vh;padding:88px 24px 56px}.hero h1{font-size:clamp(32px,8vw,48px)}.hero p{font-size:13px}.section{padding:56px 20px}.section-eyebrow{font-size:9px}.story h2{margin-bottom:32px;font-size:clamp(24px,6vw,36px)}.story-cards{gap:16px}.story-card{border-radius:8px;padding:24px 20px}.story-card p{font-size:14px;line-height:2}.story-card .quote{padding-left:12px;font-size:15px;line-height:1.7}.story-card-dark .headline{font-size:16px;line-height:1.6}.values h2{margin-bottom:28px;font-size:clamp(24px,6vw,36px)}.values-grid{grid-template-columns:1fr;gap:14px}.value-card{padding:28px 20px}.value-num{margin-bottom:8px;font-size:48px}.value-card h4{margin-bottom:10px;font-size:16px}.value-card p{font-size:13px;line-height:2}#vision{padding:72px 24px}#vision h2{margin-bottom:20px!important;font-size:clamp(26px,7vw,40px)!important}#vision p{margin-bottom:32px!important;font-size:13px!important;line-height:2!important}footer{text-align:center;flex-direction:column;gap:8px;padding:24px 20px}.team-banner{height:240px;margin:40px 0 0}.team-banner-text{padding:28px 24px}}
