:root{--bg:#0e0e10;--surface:#18181b;--text:#f2f2f3;--muted:#9a9aa2;--line:#2a2a30;--accent:#ff3b5c;--accent-soft:#2c141a;--chip:#232329;--chip-on:#f2f2f3;--chip-on-text:#0e0e10;--sale:#3ddc84;--shadow:0 1px 2px #00000080,0 10px 30px #00000073;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overflow-x:hidden}body{line-break:strict;overflow-wrap:break-word;background:var(--bg);max-width:100%;color:var(--text);margin:0;font-family:Noto Sans JP,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wrap{max-width:1100px;margin:0 auto;padding:0 16px}header.site{z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav{align-items:center;gap:20px;height:58px;display:flex}.logo{letter-spacing:.04em;white-space:nowrap;flex:none;font-size:18px;font-weight:700}.logo span{color:var(--accent)}.hsearch{flex:1;max-width:320px;margin-left:auto}.hsearch input{width:100%;font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:9px 16px;font-size:14px}.hsearch input:focus{border-color:var(--accent);outline:none}.nav nav{gap:10px;display:flex}.nav nav a{letter-spacing:.02em;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:999px;padding:10px 22px;font-size:15px;font-weight:700;transition:filter .15s,transform .15s;box-shadow:0 2px 10px #ff3b5c47}.nav nav a:hover{filter:brightness(1.12);transform:translateY(-1px)}main{min-height:60vh;padding-bottom:90px}.hero{padding:44px 0 20px}.hero h1{margin:0 0 8px;font-size:clamp(22px,3.4vw,34px);line-height:1.3}.hero p{color:var(--muted);max-width:640px;margin:0}h2{margin:36px 0 12px;font-size:20px}h3{margin:24px 0 8px;font-size:16px}.lead{color:var(--muted);margin:0 0 16px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);background:var(--chip);color:var(--text);border-radius:999px;padding:6px 12px;font-size:13px;transition:all .15s}.chip:hover{border-color:var(--text)}.chip.on{background:var(--chip-on);color:var(--chip-on-text);border-color:var(--chip-on)}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.card h3{margin:0;font-size:15px}.card p{color:var(--muted);margin:0;font-size:13px}.card .more{color:var(--accent);margin-top:auto;font-size:13px;font-weight:500}.notice{background:var(--accent-soft);border-radius:12px;margin:16px 0;padding:14px 16px;font-size:13px;line-height:1.7}.notice b{color:var(--accent)}article.prose{max-width:720px}article.prose p{margin:0 0 1.2em}article.prose ul{padding-left:1.3em}article.prose li{margin:.3em 0}.meta{color:var(--muted);font-size:13px}.breadcrumb{color:var(--muted);margin:16px 0 0;font-size:13px}.breadcrumb a:hover{color:var(--text)}footer.site{border-top:1px solid var(--line);color:var(--muted);margin-top:32px;padding:34px 0 56px;font-size:13px;line-height:1.9}footer.site nav{flex-wrap:wrap;gap:18px;margin-bottom:16px;display:flex}.age{z-index:100;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.age[hidden]{display:none}.age .box{background:var(--surface);color:var(--text);text-align:center;border-radius:16px;width:100%;max-width:440px;padding:28px 24px}.age h2{margin:0 0 8px;font-size:20px}.age p{color:var(--muted);margin:0 0 18px;font-size:14px}.age .btns{justify-content:center;gap:10px;display:flex}.btn{border:1px solid var(--line);background:var(--chip);color:var(--text);cursor:pointer;border-radius:10px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:700;display:inline-block}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}@media (width<=640px){.nav{gap:8px;height:54px}.logo{font-size:15px}.nav nav{gap:6px}.nav nav a{padding:9px 14px;font-size:13px}.hsearch{display:none}}pb-t{word-break:keep-all}h1,h2,h3{text-wrap:balance}.work .t pb-t{word-break:normal}iframe,video,img,table{max-width:100%}
