/* 比較サイトの付属ページ（ランキングの根拠・運営者情報・プライバシーポリシー） */
:root { --ink:#1f2a33; --sub:#5b6b78; --line:#e3e9ee; --bg:#f5f8fa; --accent:#2f7fb5; --accent-d:#1f5f8b; --ok:#2f8f5b; --mk:#fde9c4; }
* { box-sizing:border-box; }
body { margin:0; background:#fff; color:var(--ink); font:16px/1.85 -apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif; overflow-wrap:anywhere; }
a { color:var(--accent-d); }
header.site { border-bottom:1px solid var(--line); }
header.site .wrap { display:flex; align-items:baseline; gap:10px; padding:14px 16px; }
header.site a { color:var(--ink); text-decoration:none; font-weight:900; font-size:18px; }
header.site span { font-size:13px; color:var(--sub); }
main { max-width:760px; margin:0 auto; padding:28px 16px 56px; }
.wrap { max-width:760px; margin:0 auto; }
h1 { font-size:26px; line-height:1.45; margin:0 0 8px; }
.date { font-size:14px; color:var(--sub); margin-bottom:24px; }
h2 { font-size:20px; line-height:1.5; margin:44px 0 14px; padding:0 0 10px; border-bottom:2px solid var(--accent); display:flex; gap:10px; align-items:flex-start; }
h2 .hn { flex:none; width:30px; height:30px; border-radius:50%; background:var(--accent); color:#fff; font-size:15px; text-align:center; line-height:30px; margin-top:1px; }
h3 { font-size:17px; margin:28px 0 8px; }
p { margin:0 0 16px; }
.box { border:1px solid var(--line); border-radius:12px; padding:18px 18px 4px; margin:18px 0 22px; background:var(--bg); }
.box.pr { background:#fff8e6; border-color:#f1dfb0; }
.mk { background:linear-gradient(transparent 60%,var(--mk) 60%); font-weight:700; }
ul, ol { padding-left:1.4em; margin:0 0 16px; }
li { margin-bottom:8px; }
.tw { overflow-x:auto; margin:14px 0 8px; border:1px solid var(--line); border-radius:12px; }
table { border-collapse:collapse; width:100%; min-width:560px; font-size:14px; line-height:1.6; }
th, td { border-bottom:1px solid var(--line); padding:12px 12px; text-align:left; vertical-align:top; }
tr:last-child th, tr:last-child td { border-bottom:0; }
thead th { background:var(--bg); font-size:13px; color:var(--sub); white-space:nowrap; }
tbody th { background:#fbfcfd; white-space:nowrap; font-weight:800; }
td.top, th.top { background:#fff8e6; }
.y { color:var(--ok); font-weight:900; }
.n { color:#9aa7b1; font-weight:900; }
.q { display:block; color:var(--sub); font-size:13px; margin-top:4px; }
.note { font-size:14px; color:var(--sub); line-height:1.75; }
dl.info { margin:0 0 20px; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
dl.info div { display:grid; grid-template-columns:140px 1fr; border-bottom:1px solid var(--line); }
dl.info div:last-child { border-bottom:0; }
dl.info dt { background:var(--bg); font-weight:800; font-size:14px; padding:14px; }
dl.info dd { margin:0; padding:14px; font-size:15px; }
.back { display:inline-block; margin-top:36px; padding:12px 18px; border:1px solid var(--line); border-radius:10px; text-decoration:none; font-weight:700; }
footer.site { border-top:1px solid var(--line); background:var(--bg); }
footer.site .wrap { padding:22px 16px 32px; font-size:13px; color:var(--sub); line-height:1.8; }
footer.site nav { display:flex; flex-wrap:wrap; gap:8px 20px; margin-bottom:10px; }
@media (max-width: 600px) {
  .tw.stk { border:0; overflow:visible; }
  table.stk { min-width:0; }
  table.stk thead { display:none; }
  table.stk tr { display:block; border:1px solid var(--line); border-radius:12px; margin-bottom:14px; overflow:hidden; }
  table.stk th, table.stk td { display:block; white-space:normal; border-bottom:1px solid var(--line); padding:12px 14px; }
  table.stk tr > :last-child { border-bottom:0; }
  table.stk tbody th { background:var(--bg); font-size:15px; }
  table.stk tbody th.top { background:#fff3d6; }
  table.stk .q { display:inline; margin-left:8px; }
  table.stk td[data-l]::before { content:attr(data-l); display:block; font-size:13px; font-weight:800; color:var(--sub); margin-bottom:2px; }
  h1 { font-size:22px; }
  h2 { font-size:18px; margin-top:38px; }
  dl.info div { grid-template-columns:1fr; }
  dl.info dt { padding:10px 14px; }
  dl.info dd { padding:12px 14px 14px; }
}
