:root{--red:#d7141e;--red2:#ff2a2a;--ink:#0b0b0b;--ink2:#141414;--line:#2a2a2a;--txt:#f3f0ea;--sub:#a9a39a}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--txt);font-family:"Noto Sans JP",system-ui,-apple-system,sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:var(--red2)}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#0b0b0bee;z-index:10}
.top .lg{color:#fff;text-decoration:none;font-family:"Oswald",sans-serif;font-weight:700;letter-spacing:.08em;font-size:16px}
.top .lg b{color:var(--red2)}
.top .bk{background:var(--red);color:#fff;text-decoration:none;font-weight:800;font-size:13px;padding:8px 14px;border-radius:4px;white-space:nowrap}
main{max-width:760px;margin:0 auto;padding:28px 16px 120px}
.crumb{font-size:12px;color:var(--sub)}.crumb a{color:var(--sub)}
h1{font-family:"Shippori Mincho B1",serif;font-size:clamp(28px,7vw,42px);line-height:1.3;margin:12px 0 10px}
.lead{font-size:17px;color:#ddd}
.meta{font-size:12px;color:var(--sub);margin-bottom:22px}
h2{font-family:"Shippori Mincho B1",serif;font-size:clamp(22px,5.4vw,28px);line-height:1.4;margin:40px 0 10px;border-left:4px solid var(--red2);padding-left:12px}
h3{font-size:18px;margin:26px 0 6px}
p,li{font-size:16px}
ul,ol{padding-left:1.3em}li{margin:6px 0}
figure{margin:24px 0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#000}
figure img{display:block;width:100%;height:auto}
figcaption{font-size:13px;color:var(--sub);padding:10px 12px}
.box{border:1px solid #ff2a2a66;background:linear-gradient(135deg,#2a0709,#111);border-radius:10px;padding:20px;margin:28px 0}
.box h3{margin-top:0;font-family:"Shippori Mincho B1",serif;font-size:22px}
.box dl{display:grid;grid-template-columns:7em 1fr;gap:6px 12px;margin:12px 0 0;font-size:15px}
.box dt{color:var(--sub)}.box dd{margin:0}
.cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.cta a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:900;padding:14px 20px;border-radius:4px;font-size:15px;flex:1 1 200px;text-align:center}
.cta .r{background:var(--red);color:#fff}.cta .g{background:#25d366;color:#fff}
.faq details{border-bottom:1px solid var(--line);padding:12px 0}
.faq summary{font-weight:700;cursor:pointer}
.more{display:grid;gap:10px;margin-top:14px}
.more a{display:block;border:1px solid var(--line);background:var(--ink2);border-radius:8px;padding:14px 16px;color:#fff;text-decoration:none;font-weight:700}
.more a span{display:block;font-weight:400;font-size:13px;color:var(--sub)}
footer{border-top:1px solid var(--line);padding:24px 16px 110px;text-align:center;font-size:12px;color:#777}
footer a{color:#aaa}
