*,: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;--accent-dim:#0066ff12;--accent-glow:#0066ff2e;--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:88px;padding:0 60px;display:flex;position:fixed;top:0;left:0;right:0}.nav-links{align-items:center;gap:40px;display:flex}.nav-links a{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);font-size:11px;text-decoration:none;transition:color .2s}.nav-links a:before{content:attr(data-num);color:var(--accent);opacity:.7;margin-right:5px;font-size:9px}.nav-links a:hover{color:var(--accent)}.nav-tag{font-family:var(--mono);border:1.5px solid var(--border-bright);color:var(--accent);letter-spacing:.1em;border-radius:2px;padding:5px 14px;font-size:10px}.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}.btn-primary{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;background:var(--accent);color:#fff;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));padding:14px 36px;font-size:12px;font-weight:700;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 8px 32px #0066ff40}.btn-primary:hover{background:var(--navy);transform:translateY(-2px);box-shadow:0 12px 40px #0066ff4d}.btn-secondary{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;border:1.5px solid var(--border-bright);color:var(--accent);border-radius:2px;padding:14px 36px;font-size:12px;text-decoration:none;transition:background .2s,transform .2s;display:inline-block}.btn-secondary:hover{background:var(--accent-dim);transform:translateY(-2px)}footer{z-index:1;background:#060e20;border-top:1px solid #ffffff12;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}.footer-link{font-family:var(--mono);color:#ffffff8c;letter-spacing:.1em;margin:-8px 0;padding:16px 12px;font-size:10px;text-decoration:none;transition:color .2s}.footer-link:hover{color:#ffffffd9}.blog-main{z-index:1;min-height:calc(100vh - 88px);padding:88px 60px 0;position:relative}.blog-wrap{overflow-wrap:anywhere;max-width:880px;margin:0 auto;padding:72px 0 120px}.blog-title{color:var(--navy);margin-bottom:24px;font-family:Syne,sans-serif;font-size:clamp(32px,4vw,52px);font-weight:800;line-height:1.2}.blog-lead{color:var(--muted);max-width:600px;margin-bottom:56px;font-size:15px;line-height:2.1}.post-list{flex-direction:column;gap:16px;list-style:none;display:flex}.post-card{color:inherit;border:1.5px solid var(--border);background:var(--surface);border-radius:8px;padding:28px 32px;text-decoration:none;transition:border-color .3s,transform .3s,box-shadow .3s;display:block;position:relative;overflow:hidden}.post-card:before{content:"";background:var(--accent);transform-origin:top;width:3px;height:100%;transition:transform .3s;position:absolute;top:0;left:0;transform:scaleY(0)}.post-card:hover{border-color:var(--border-bright);transform:translate(5px);box-shadow:4px 0 20px #0066ff14}.post-card:hover:before{transform:scaleY(1)}.post-date{font-family:var(--mono);color:var(--accent);letter-spacing:.2em;margin-bottom:8px;font-size:10px;display:block}.post-card h2{color:var(--navy);margin-bottom:10px;font-family:Syne,sans-serif;font-size:20px;font-weight:800;line-height:1.5}.post-desc{color:var(--muted);font-size:13px;line-height:2}.blog-empty{border:1.5px solid var(--border);background:var(--surface);color:var(--muted);border-radius:8px;padding:40px 32px;font-size:15px;line-height:2.1}.back-link{font-family:var(--mono);letter-spacing:.15em;color:var(--muted);margin-bottom:40px;font-size:11px;text-decoration:none;transition:color .2s;display:inline-block}.back-link:hover{color:var(--accent)}.post-title{color:var(--navy);margin-bottom:20px;font-family:Syne,sans-serif;font-size:clamp(28px,3.6vw,44px);font-weight:800;line-height:1.35}.post-meta{font-family:var(--mono);color:var(--muted);letter-spacing:.1em;font-size:11px;line-height:1.9}.post-meta time{color:var(--accent)}.post-body{background:var(--surface);border:1.5px solid var(--border);border-radius:10px;margin-top:40px;padding:48px 56px;position:relative;overflow:hidden}.post-body:before{content:"";background:linear-gradient(90deg, var(--accent), var(--orange));height:3px;position:absolute;top:0;left:0;right:0}.post-cta{border-top:1px solid var(--border);text-align:left;margin-top:56px;padding-top:40px}.article-body{color:var(--navy2);font-size:15px;line-height:2.1}.article-body>*+*{margin-top:20px}.article-body h1,.article-body h2,.article-body h3,.article-body h4{color:var(--navy);font-family:Syne,sans-serif;font-weight:800;line-height:1.5}.article-body h1,.article-body h2{border-left:3px solid var(--accent);margin-top:56px;padding-left:16px;font-size:24px}.article-body h3{margin-top:40px;font-size:19px}.article-body h4{margin-top:32px;font-size:16px}.article-body>:first-child{margin-top:0}.article-body a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.article-body a:hover{color:var(--navy)}.article-body strong{color:var(--navy);font-weight:700}.article-body ul,.article-body ol{padding-left:1.6em}.article-body ul{list-style:outside}.article-body ol{list-style:decimal}.article-body li{list-style:inherit}.article-body li+li,.article-body li>ul,.article-body li>ol{margin-top:6px}.article-body blockquote{border-left:3px solid var(--accent);background:var(--accent-dim);color:var(--navy2);padding:16px 24px}.article-body table{border-collapse:collapse;max-width:100%;font-size:14px;line-height:1.8;display:block;overflow-x:auto}.article-body th,.article-body td{border:1.5px solid var(--border);text-align:left;vertical-align:top;padding:10px 16px}.article-body th{background:var(--bg2);color:var(--navy);white-space:nowrap;font-weight:700}.article-body hr{border:none;border-top:1px solid var(--border);margin:40px 0}.article-body code{font-family:var(--mono);background:var(--bg2);border-radius:2px;padding:2px 6px;font-size:13px}.article-body pre{background:var(--navy);color:#fff;border-radius:4px;padding:20px 24px;overflow-x:auto}.article-body pre code{color:inherit;background:0 0;padding:0}@media (max-width:768px){body{cursor:auto}nav{height:56px;padding:0 20px}.nav-links,.nav-tag{display:none}.blog-main{min-height:calc(100vh - 56px);padding:56px 24px 0}.blog-wrap{padding:48px 0 64px}.blog-lead{margin-bottom:36px;font-size:13px}.post-card{padding:22px 20px}.post-card h2{font-size:17px}.back-link{margin-bottom:28px}.post-body{margin-top:28px;padding:28px 20px}.article-body{font-size:14px}.article-body h1,.article-body h2{margin-top:44px;font-size:20px}.article-body h3{font-size:17px}.post-cta{margin-top:40px;padding-top:32px}.post-cta .btn-primary{text-align:center;padding:14px 24px;font-size:11px;display:block}.section-eyebrow{font-size:9px}footer{text-align:center;flex-direction:column;gap:8px;padding:24px 20px}}
