/* FXガイド - 共通スタイル */
:root{
  --main:#0f3d5e;
  --accent:#0e9b6e;
  --accent-2:#f2a516;
  --bg:#f6f8fb;
  --text:#222;
  --muted:#667085;
  --card:#fff;
  --border:#e2e8f0;
  --max:1080px;
}
*{box-sizing:border-box}
body{margin:0;font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;color:var(--text);background:var(--bg);line-height:1.8}
a{color:var(--main)}
header.site-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}
.header-inner{max-width:var(--max);margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:16px}
.logo{font-weight:800;font-size:20px;color:var(--main);text-decoration:none}
.logo span{color:var(--accent)}
nav.main-nav{margin-left:auto}
nav.main-nav ul{display:flex;gap:16px;list-style:none;margin:0;padding:0}
nav.main-nav a{text-decoration:none;color:#333;font-size:14px;font-weight:600}
nav.main-nav a:hover{color:var(--accent)}
.hamburger{display:none;margin-left:auto;background:none;border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-size:18px}
.risk-bar{background:#1a1a1a;color:#fff;font-size:12px;text-align:center;padding:8px 12px}
.container{max-width:var(--max);margin:0 auto;padding:24px 16px}
.layout{display:grid;grid-template-columns:1fr 300px;gap:24px}
@media(max-width:900px){.layout{grid-template-columns:1fr}nav.main-nav{display:none}nav.main-nav.open{display:block;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--border)}nav.main-nav.open ul{flex-direction:column;padding:12px 16px}.hamburger{display:block}}
.hero{background:linear-gradient(135deg,#0f3d5e,#0e9b6e);color:#fff;border-radius:16px;padding:40px 28px;margin-bottom:24px}
.hero h1{margin:0 0 12px;font-size:28px;line-height:1.4}
.hero p{margin:0 0 20px;opacity:.92}
.btn{display:inline-block;background:var(--accent-2);color:#222;font-weight:800;text-decoration:none;padding:12px 20px;border-radius:10px}
.btn.secondary{background:#fff;border:1px solid var(--border)}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:20px}
.card h2{margin-top:0;color:var(--main);font-size:20px;border-left:5px solid var(--accent);padding-left:10px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:700px){.grid2{grid-template-columns:1fr}.hero h1{font-size:22px}}
.table{width:100%;border-collapse:collapse;font-size:14px}
.table th,.table td{border:1px solid var(--border);padding:10px;text-align:left}
.table th{background:#eef4f0;width:30%}
.sidebar .card{position:sticky;top:0}
.toc{background:#eef6f1;border:1px solid #cfe8d8;border-radius:10px;padding:16px;margin-bottom:20px;font-size:14px}
footer.site-footer{background:#0f2a3f;color:#cbd5e1;margin-top:32px}
.footer-inner{max-width:var(--max);margin:0 auto;padding:28px 16px;font-size:13px}
footer a{color:#cbd5e1}
.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:12px}
h1.page-title{color:var(--main);font-size:26px;margin:0 0 16px}
.note{background:#fff8e6;border:1px solid #f0d48a;border-radius:10px;padding:14px 16px;font-size:14px;margin:16px 0}
.warn{background:#fef2f2;border:1px solid #f5b5b5;border-radius:10px;padding:14px 16px;font-size:14px;margin:16px 0}
.faq details{background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:10px}

/* === アフィリエイトバナー用スペース === */
/* 審査通過後に各 .affiliate-slot の中にバナーコードを貼る想定 */
.affiliate-slot{
  border:2px dashed #9ca3af;
  background:#f3f4f6;
  border-radius:12px;
  text-align:center;
  padding:18px 12px;
  margin:20px 0;
  color:#6b7280;
  font-size:13px;
}
.affiliate-slot .slot-label{font-weight:800;color:#4b5563;display:block;margin-bottom:4px}
.affiliate-slot .slot-size{display:inline-block;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:2px 8px;font-size:12px;margin-bottom:6px}
.affiliate-slot.leaderboard{min-height:90px}
.affiliate-slot.rectangle{min-height:250px;display:flex;flex-direction:column;justify-content:center}
.affiliate-slot.infeed{min-height:120px}
