@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Zen+Maru+Gothic:wght@700&family=Klee+One:wght@600&family=DM+Mono:wght@400;500&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#faf6ee;--bg-card:#fff;--grid:#ece4d4;--border:#cfc6b4;--ink:#22211d;--text:#22211d;--text-secondary:#3e3a33;--text-muted:#5f5a50;--accent:#2f6b4f;--accent-hover:#1f4a36;--accent-dim:#eaf1ec;--marker:#f6d365;--chip:#e6dfd0;--r:28px;--r-sm:14px;--max:1200px;--font-body:"Zen Kaku Gothic New",-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif;--font-round:"Zen Maru Gothic",var(--font-body);--font-mono:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--font-hand:"Klee One",var(--font-body)}body,html{font-family:var(--font-body);background-color:var(--bg);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px;color:var(--text);line-height:1.8;-webkit-font-smoothing:antialiased}a{color:var(--accent)}a:hover{color:var(--accent-hover)}.container{max-width:var(--max);margin:0 auto;padding:0 32px}.section{border-top:1.5px solid var(--ink)}.section-inner{max-width:var(--max);margin:0 auto;padding:96px 32px 120px;display:flex;flex-wrap:wrap;gap:48px 64px}.section-head{flex:1 1 260px;min-width:0}.section-body{flex:999 1 600px;min-width:0}.section-num{font-family:var(--font-mono);font-size:14px;letter-spacing:.12em;color:var(--text-muted)}.section-title{font-weight:900;font-size:56px;line-height:1.1;letter-spacing:-.01em;margin-bottom:20px}.mono{font-family:var(--font-mono)}.btn{display:inline-block;padding:15px 30px;border-radius:999px;font-weight:700;text-decoration:none;transition:transform .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{color:#fff}.btn-outline{background:#fff;border:2px solid var(--ink);padding:13px 28px}.btn-outline,.btn-outline:hover{color:var(--ink)}.btn-ink{background:var(--ink);padding:10px 22px}.btn-ink,.btn-ink:hover{color:var(--bg)}.work-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px;padding:32px 16px;border-bottom:1px solid var(--border);border-radius:12px;color:var(--ink);text-decoration:none;transition:background-color .25s ease,transform .25s ease}.work-row:hover{background-color:#fff;transform:translateX(6px);color:var(--ink)}.status{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:14px;font-weight:500;letter-spacing:.08em;padding:4px 14px;border-radius:999px}.status-live{background:var(--accent);color:#fff}.status-closed{background:var(--chip);color:var(--text-secondary)}.status-archive{border:1.5px dashed var(--text-muted);color:var(--text-secondary);padding:3px 13px}.pulse{width:8px;height:8px;border-radius:50%;background:var(--marker);animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.card{background:var(--bg-card);border-radius:var(--r);padding:40px}.link-cta{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--accent);text-decoration:none;padding:10px 0}.link-cta:hover{text-decoration:underline}@media (max-width:640px){.container{padding:0 20px}.section-inner{padding:72px 20px 88px}.section-title{font-size:44px}.card{padding:28px}.work-arrow{display:none}}@media (prefers-reduced-motion:reduce){.pulse{animation:none}.btn:hover,.work-row:hover{transform:none}}