:root{--bg:#0a0a0f;--panel:#15151f;--line:#2a2a3a;--txt:#e6e6ee;--mut:#9090a8;--acc:#ff2d95;--acc2:#ff3b3b;--acc3:#ff6fb5}
*{box-sizing:border-box}html,body{background:var(--bg);color:var(--txt);margin:0;font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;line-height:1.7}
a{color:var(--acc3)}header.site{border-bottom:2px solid var(--acc);background:linear-gradient(180deg,#1a0612,#0a0a0f)}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
.logo{display:inline-block;font-size:clamp(32px,7vw,64px);font-weight:900;letter-spacing:.05em;color:#fff;text-decoration:none;text-shadow:3px 3px 0 var(--acc),-2px -2px 0 var(--acc3);transform:skew(-6deg);padding:18px 0 4px}
.tag{color:var(--acc2);font-weight:bold;margin:0 0 14px}
nav.top a{color:var(--txt);margin-right:16px;text-decoration:none;font-weight:bold}nav.top a:hover{color:var(--acc)}nav.top{padding-bottom:12px}
h1,h2{color:#fff}h2.sec{border-left:6px solid var(--acc);padding-left:10px;margin-top:40px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--txt);transition:.15s;display:block}
.card:hover{transform:translateY(-4px) rotate(-.5deg);border-color:var(--acc);box-shadow:0 0 24px #ff2d9544}
.card .thumb{aspect-ratio:3/4;background:#000 center/cover;display:flex;align-items:center;justify-content:center;font-size:42px;color:#333}
.card .body{padding:12px 14px}.card h3{margin:0 0 4px;color:#fff}.card p{margin:0;color:var(--mut);font-size:14px}
.badge{display:inline-block;background:var(--acc);color:#fff;font-size:12px;padding:1px 8px;border-radius:99px;margin-bottom:6px}.badge.soon{background:#444}
.card.soon{opacity:.6;pointer-events:none}
.content{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin:24px 0}
.sample{background:#3a2a00;color:#ffd24d;border:1px solid #ffd24d;padding:8px 12px;border-radius:8px;font-weight:bold}
footer.site{border-top:1px solid var(--line);margin-top:48px;padding:24px 0;color:var(--mut);font-size:14px;background:#07070b}footer.site a{color:var(--mut);margin-right:14px}
