/* ===== v14 共通：ヘッダー中央の入口・両端広告・ランキング枠 ===== */
.hnav{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.hnav a{ display:inline-flex; align-items:center; border:1px solid var(--gold); color:var(--gold-bright);
  background:rgba(184,149,79,.08); border-radius:22px; padding:9px 18px; font-size:14px; font-weight:600;
  text-decoration:none; white-space:nowrap; font-family:var(--font-display); letter-spacing:.03em; transition:.15s; }
.hnav a:hover, .hnav a.cur{ background:var(--gold); color:#1a1314; }

.rail{ position:fixed; top:180px; z-index:5; display:none; }
.rail-left{ left:calc(50% - 490px - 28px - 160px); width:160px; }
.rail-right{ left:calc(50% + 490px + 28px); width:300px; }
.rail-right > div + div{ margin-top:16px; }
@media (min-width:1700px){ .rail{ display:block; } }

.ad-inline2{ display:flex; flex-wrap:wrap; gap:16px; justify-content:center; margin:24px auto; max-width:980px; }
@media (min-width:1700px){ .ad-inline2{ display:none; } }

.ad-slot-c, .ad-bottom{ max-width:980px; margin:28px auto !important; background:var(--panel);
  border:1px solid var(--border-soft); border-radius:10px; padding:16px 18px 18px; box-sizing:border-box;
  box-shadow:0 10px 30px rgba(0,0,0,.45); }
.rank-h{ font-family:var(--font-display); color:var(--text); border-left:3px solid var(--gold);
  padding-left:12px; margin:0 0 14px; font-size:1.05em; font-weight:600; text-align:left; }
.ad-slot-c div, .ad-slot-c li, .ad-slot-c ul, .ad-slot-c table, .ad-slot-c td,
.ad-bottom div, .ad-bottom li, .ad-bottom ul, .ad-bottom table, .ad-bottom td{ background-color:transparent !important; }
.ad-slot-c a, .ad-bottom a{ color:var(--gold-bright) !important; }

@media (max-width:600px){
  .header-center{ display:flex !important; flex:0 0 100% !important; order:3; justify-content:flex-start !important; }
  .hnav{ justify-content:flex-start; gap:6px; }
  .hnav a{ padding:6px 10px; font-size:12px; }
  .ad-slot-c, .ad-bottom{ padding:12px 10px; }
}

/* ===== v15 ===== */
.rail{ position:absolute !important; }
.header-row{ position:relative; }
@media (min-width:1100px){
  .header-center{ position:absolute !important; left:50%; top:50%; transform:translate(-50%,-50%); }
}
.site-footer{ font-size:12px; color:var(--text-mute); text-align:center; margin:28px auto 16px; line-height:1.8; }
.site-footer a{ color:var(--gold-bright); }
.site-footer .sns{ display:flex; justify-content:center; gap:10px; margin:12px 0 8px; flex-wrap:wrap; }
.site-footer .sns a{ display:inline-flex; align-items:center; gap:6px; border:1px solid var(--border); background:var(--panel-soft);
  color:var(--text-soft); border-radius:20px; padding:7px 16px; font-size:13px; text-decoration:none; }
.site-footer .sns a:hover{ border-color:var(--gold); color:var(--text); }
.site-footer .flinks a{ color:var(--text-soft); text-decoration:none; margin:0 4px; }
.site-footer .flinks a:hover{ color:var(--gold-bright); }

/* ===== v16 ===== */
/* 両端の下側の広告（位置は v15.js で決める） */
.rail-low{ top:1000px; visibility:hidden; }
.rail-low iframe, .rail-low img{ max-width:100%; }
/* MGSランキング：作品名の終わりにかかる白いぼかしを消す */
.ad-slot-c *, .ad-bottom *{ background-color:transparent !important; background-image:none !important;
  -webkit-mask-image:none !important; mask-image:none !important; }
.ad-slot-c *::before, .ad-slot-c *::after, .ad-bottom *::before, .ad-bottom *::after{
  background:none !important; background-image:none !important; box-shadow:none !important; }
.ad-slot-c img, .ad-bottom img{ background:none !important; }

/* ===== v17 ===== */
/* 女優ページ：データで見る／体型が近い女優 */
.ins{margin:16px 0 18px;padding:14px 16px;background:var(--panel-soft,#241a1c);border:1px solid var(--border,#3a2a2a);border-radius:10px}
.ins-h{font-family:var(--font-display);color:var(--text,#ece2d8);font-weight:600;border-left:3px solid var(--gold,#b8954f);padding-left:10px;margin:2px 0 10px;font-size:15px}
.ins-h + .ins-lines{margin-top:0}
.ins-lines{list-style:none;margin:0 0 14px;padding:0;color:var(--text-soft,#b6a89c);font-size:14px;line-height:1.8}
.ins-lines li::before{content:"・";color:var(--gold,#b8954f)}
.ins-lines b{color:var(--gold-bright,#d9b876);font-weight:600}
.ins-sim{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.ins-sim a{display:block;text-decoration:none;background:var(--bg-soft,#150f10);border:1px solid var(--border,#3a2a2a);border-radius:8px;overflow:hidden;height:100%}
.ins-sim a:hover{border-color:var(--gold,#b8954f)}
.ins-sim img,.ins-sim .noimg{display:block;width:100%;aspect-ratio:147/200;object-fit:cover;background:var(--bg-soft,#150f10)}
.ins-sim .nm{display:block;padding:6px 7px 0;color:var(--gold-bright,#d9b876);font-size:13px;font-weight:600;line-height:1.35}
.ins-sim .sp{display:block;padding:2px 7px 7px;color:var(--text-mute,#8a7b71);font-size:11px;line-height:1.4}
.ins-note{font-size:12px;color:var(--text-mute,#8a7b71)}
.ins-note a{color:var(--gold-bright,#d9b876)}
@media (max-width:760px){ .ins-sim{grid-template-columns:repeat(3,minmax(0,1fr))} }

/* コラム記事 */
.article{line-height:1.95;font-size:15.5px;color:var(--text,#ece2d8)}
.article p{margin:0 0 1.1em}
.article .meta{color:var(--text-mute,#8a7b71);font-size:13px;margin:-4px 0 18px}
.article strong{color:var(--gold-bright,#d9b876);font-weight:600}
.article a{color:var(--gold-bright,#d9b876)}
.article ol,.article ul{padding-left:1.4em;margin:0 0 1.1em}
.article li{margin:.25em 0}
.article .note{background:var(--panel-soft,#241a1c);border:1px solid var(--border,#3a2a2a);border-radius:8px;padding:12px 14px;font-size:14px;color:var(--text-soft,#b6a89c)}
.article table{border-collapse:collapse;width:100%;margin:0 0 1.2em;font-size:14px}
.article th,.article td{border:1px solid var(--border,#3a2a2a);padding:7px 10px;text-align:left}
.article th{background:var(--panel-soft,#241a1c);color:var(--text-soft,#b6a89c);font-weight:500}
.article td.num{text-align:right;font-variant-numeric:tabular-nums}
.col-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.col-list a{display:block;text-decoration:none;background:var(--panel-soft,#241a1c);border:1px solid var(--border,#3a2a2a);border-radius:10px;padding:16px 18px;height:100%}
.col-list a:hover{border-color:var(--gold,#b8954f)}
.col-list .t{display:block;font-family:var(--font-display);color:var(--gold-bright,#d9b876);font-weight:600;font-size:17px;margin-bottom:6px}
.col-list .d{display:block;color:var(--text-soft,#b6a89c);font-size:13px;line-height:1.7}
.btn-gold{display:inline-block;background:var(--wine,#5e1a2b);color:var(--gold-bright,#d9b876)!important;border:1px solid var(--gold,#b8954f);border-radius:22px;padding:10px 22px;text-decoration:none;font-weight:600}
.btn-gold:hover{background:#7a2238}
/* 分布図 */
.chart-wrap{position:relative;background:var(--bg-soft,#150f10);border:1px solid var(--border,#3a2a2a);border-radius:10px;padding:10px;margin:0 0 8px}
.chart-wrap svg{display:block;width:100%;height:auto}
.chart-tip{position:absolute;pointer-events:none;background:#000c;border:1px solid var(--gold,#b8954f);color:var(--text,#ece2d8);font-size:12px;padding:5px 8px;border-radius:6px;white-space:nowrap;display:none;z-index:3}
.chart-cap{font-size:12px;color:var(--text-mute,#8a7b71);margin:0 0 1.2em}
.bars{margin:0 0 1.2em}
.bars .row{display:grid;grid-template-columns:3.2em 1fr 6.5em;gap:8px;align-items:center;font-size:13px;margin:3px 0}
.bars .bar{height:14px;background:var(--gold,#b8954f);border-radius:0 3px 3px 0;min-width:2px}
.bars .lab{color:var(--text-soft,#b6a89c);text-align:right}
.bars .val{color:var(--text-mute,#8a7b71);font-variant-numeric:tabular-nums}
.crumb a{color:var(--gold-bright,#d9b876)}
@media (max-width:760px){ .chart-wrap{overflow-x:auto} .chart-wrap svg{min-width:680px} .chart-wrap::after{content:"← 横にスクロールできます →";display:block;text-align:center;font-size:11px;color:var(--text-mute,#8a7b71);margin-top:4px} }
/* 女優ページのミニ分布図 */
.ins-top{display:grid;grid-template-columns:1fr 262px;gap:14px;align-items:start;margin-bottom:6px}
.ins-map{display:block;text-decoration:none;border:1px solid var(--border,#3a2a2a);border-radius:8px;overflow:hidden;background:#150f10}
.ins-map:hover{border-color:var(--gold,#b8954f)}
.ins-map canvas{display:block}
.ins-map span{display:block;padding:6px 8px;font-size:11px;color:var(--text-mute,#8a7b71);line-height:1.5}
.ins-map b{color:var(--gold-bright,#d9b876);font-weight:600}
@media (max-width:760px){ .ins-top{grid-template-columns:1fr} .ins-map{max-width:262px;margin:0 auto 6px} }
/* v17d：体型が近い女優の写真（大きい画像を顔が見えるように切り抜く）と NO IMAGE */
.ins-sim img{object-position:center top}
.ins-sim .noimg{display:flex;align-items:center;justify-content:center;color:var(--text-mute,#8a7b71);font-size:12px;letter-spacing:.05em}
