*{box-sizing:border-box}
body{margin:0;background:#e9edf1;color:#1a1a1a;
font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;
font-size:15px;line-height:1.75}
a{color:#1a5fb4;text-decoration:none}
a:hover{text-decoration:underline}
.top{background:#2b3a4a;color:#fff;padding:9px 16px;font-size:12px}
.top a{color:#cfe0f0;margin-right:14px}
.brand{background:#3d6b9e;padding:14px 16px;display:flex;align-items:center;gap:12px}
.brand img{width:46px;height:46px;border-radius:8px;background:#fff}
.brand a{color:#fff;font-size:22px;font-weight:700;letter-spacing:.04em;display:block}
.brand span{color:#d3e4f5;font-size:11px}
nav{background:#fff;border-bottom:2px solid #3d6b9e;padding:0 8px;display:flex;flex-wrap:wrap}
nav a{padding:11px 18px;font-size:14px;font-weight:700;color:#33404d}
nav a:hover{background:#f0f5fa;text-decoration:none}
.wrap{max-width:760px;margin:16px auto;padding:0 12px}
.card{background:#fff;border:1px solid #ccd4dc;border-radius:3px;margin-bottom:16px}
h1.title{margin:0;background:#2b3a4a;color:#fff;font-size:19px;line-height:1.55;padding:14px 16px}
.meta{padding:9px 16px;border-bottom:1px solid #e3e8ee;font-size:12px;color:#5b6b7b}
.meta b{color:#c0392b}
.body{padding:18px 16px}
.thumb{display:block;margin:0 auto 18px;max-width:260px;width:100%}
.src{font-weight:700;font-size:16px;line-height:1.6;margin:0 0 14px;color:#14304d}
blockquote{margin:0 0 8px;padding:14px 16px;background:#f4f7fa;border-left:4px solid #8fb4d6;font-size:14px}
blockquote p{margin:0 0 10px}
blockquote p:last-child{margin:0}
.more{display:inline-block;margin:6px 0 22px;font-weight:700;font-size:13px}
.rx{border-top:2px solid #2b3a4a;margin-top:26px;padding-top:16px}
.rx h3{font-size:17px;margin:0 0 22px;color:#2b3a4a;font-weight:700}
.rx .r{margin:0 0 26px;font-size:20px;line-height:1.6;white-space:pre-line;font-weight:700}
.rx .q{color:#1a1a1a;font-weight:400}
.rx .c1{color:#d80c18}
.rx .c2{color:#e800c8}
.rx .c3{color:#2f2fe8}
.rx .c4{color:#7b1fa2}
.rx .c5{color:#0f8a3c}
.rx .c6{color:#c25e00}
@media(max-width:520px){.rx .r{font-size:19px}}
.rel{background:#fff8e8;border:1px dashed #e0b84c;padding:12px 14px;margin:0 0 26px;font-size:14px}
.rel span{color:#b07d10;font-weight:700;font-size:11px;display:block;margin-bottom:3px}
.talk{display:flex;gap:12px;align-items:flex-start;margin:22px 0;padding:14px;background:#f7f9fb;border-radius:8px}
.talk img{width:64px;height:64px;flex:0 0 64px}
.talk .say{font-size:14px}
.talk .who{font-weight:700;font-size:12px;color:#3d6b9e;display:block}
.ad{background:#fafbfc;border:1px dashed #c3ccd6;color:#93a1af;text-align:center;padding:22px;margin:20px 0;font-size:12px}
.shop{border:1px solid #e0e6ec;border-radius:4px;padding:14px 16px;margin:24px 0;background:#fcfdfe}
.shop .pr{margin:0 0 8px;font-size:10.5px;font-weight:700;color:#93a1af;letter-spacing:.1em}
.shop ul{margin:0;padding-left:20px}
.shop li{margin-bottom:7px;font-size:14px}
.note{font-size:11px;color:#8a97a4;text-align:center;padding:14px;border-top:1px solid #e3e8ee}
.ch{background:#2b3a4a;color:#fff;font-size:14px;font-weight:700;padding:10px 16px;display:flex;justify-content:space-between}
.ch .cnt{font-weight:400;font-size:12px;color:#b9cadb}
.rules{font-size:11px;color:#6b7885;padding:10px 16px;background:#f4f7fa;border-bottom:1px solid #e3e8ee}
.res{padding:11px 16px;border-bottom:1px solid #eef2f6;font-size:14px}
.res:nth-child(even){background:#fbfcfd}
.rh{font-size:11.5px;color:#4b7a2f;margin-bottom:5px}
.rh .no{color:#c0392b;font-weight:700;margin-right:4px}
.rh .id{color:#8a97a4;font-family:ui-monospace,Consolas,monospace}
.rb{white-space:pre-line;word-break:break-word}
.rb .a{color:#1a5fb4;font-weight:700}
.back{font-size:11px;color:#8a97a4;margin-top:5px}
.hid{color:#a8b2bc;font-style:italic;font-size:12px}
.empty{padding:26px 16px;text-align:center;color:#8a97a4;font-size:13px}
form.cf{padding:16px;border-top:2px solid #2b3a4a;background:#f7f9fb}
form.cf label{display:block;font-size:11px;color:#5b6b7b;margin:0 0 4px}
form.cf input,form.cf textarea{width:100%;padding:9px 10px;border:1px solid #c3ccd6;border-radius:3px;font-family:inherit;font-size:14px;margin-bottom:12px;background:#fff}
form.cf textarea{min-height:110px;resize:vertical}
form.cf .hp{position:absolute;left:-9999px}
form.cf button{background:#3d6b9e;color:#fff;border:0;border-radius:3px;padding:11px 26px;font-size:14px;font-weight:700;cursor:pointer}
form.cf button:disabled{background:#a8b8c8;cursor:not-allowed}
.msg{font-size:13px;margin-top:10px;min-height:18px}
.msg.err{color:#c0392b}
.msg.ok{color:#0f8a3c}
footer{background:#2b3a4a;color:#9db2c6;font-size:11.5px;padding:20px 16px;text-align:center;line-height:2}
footer a{color:#cfe0f0;margin:0 8px}

/* X埋め込み（URLだけのblockquote＋widgets.js） */
.emb{margin:0 0 20px}
.emb blockquote{background:#fff;border:1px solid #e0e6ec;border-left:1px solid #e0e6ec;
border-radius:6px;padding:14px 16px;margin:0 0 12px;font-size:14px}
.emb .twitter-tweet{margin:0 auto 12px!important}

/* シェアボタン */
.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;
padding:16px;border-top:1px solid #e3e8ee;background:#fafbfc}
.share .lbl{font-size:11px;color:#8a97a4;font-weight:700;letter-spacing:.1em;margin-right:4px}
.share a,.share button{display:inline-block;font-size:12.5px;font-weight:700;
padding:8px 16px;border-radius:4px;border:0;cursor:pointer;color:#fff;text-decoration:none}
.share a:hover,.share button:hover{opacity:.85;text-decoration:none}
.share .sx{background:#0f1419}
.share .sh{background:#00a4de}
.share .sf{background:#1877f2}
.share .sl{background:#06c755}
.share .sc{background:#6b7885}
