@charset "UTF-8";
/* ============================================================
   なんでも比較.com 編集部＋デスク制 CSS（2026-09-06）
   inc/nandemo-desk.php が style.css の後に読み込む。
   色: 編集部共通ネイビー 1F3A63/3B5BC9・ビューティー C25E7A・キッズ 7DB343・シニア E08A3C・ギフト C9A227
   ============================================================ */

/* --- シーン／デスクのアーカイブも全幅（category と同じ扱い） --- */
body.tax-scene #main, body.tax-scene .main,
body.tax-desk #main, body.tax-desk .main {
    float: none !important; width: 100% !important; max-width: 1160px;
    margin-left: auto !important; margin-right: auto !important;
}
body.tax-scene #sidebar, body.tax-scene .sidebar,
body.tax-desk #sidebar, body.tax-desk .sidebar { display: none !important; }
body.tax-scene .content, body.tax-desk .content { width: 100% !important; max-width: 100% !important; }

/* --- アバター（イニシャル） --- */
.nandemo-avatar {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: 50%;
    background: var(--desk-c, #3b5bc9); color: #fff;
    font-weight: 700; font-size: 13px; line-height: 1; flex: none;
    font-family: "Helvetica Neue", Arial, sans-serif;
}
.nandemo-avatar.is-xs { width: 18px; height: 18px; font-size: 10px; }
.nandemo-avatar.is-sm { width: 22px; height: 22px; font-size: 11px; }
.nandemo-avatar.is-md { width: 40px; height: 40px; font-size: 16px; }
.nandemo-avatar.is-lg { width: 56px; height: 56px; font-size: 22px; }
.nandemo-avatar.is-xl { width: 84px; height: 84px; font-size: 32px; box-shadow: 0 0 0 6px rgba(0,0,0,.06); }

/* --- 記事冒頭のデスク／シーンバッジ --- */
.nandemo-desk-badge { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 12px; font-size: 12px; }
.nandemo-desk-badge a { display: inline-flex; align-items: center; gap: 6px; text-decoration: none; font-weight: 700; border-radius: 4px; padding: 3px 10px 3px 4px; line-height: 1.4; }
.nandemo-desk-badge .nandemo-desk-badge-desk { color: var(--desk-c, #3b5bc9); background: color-mix(in srgb, var(--desk-c, #3b5bc9) 12%, #fff); }
.nandemo-desk-badge .nandemo-desk-badge-scene { color: #2c3e50; background: #f1f3f7; padding-left: 10px; border-left: 3px solid var(--scene-c, #3b5bc9); }

/* --- 調査方法ノートの担当行 --- */
.nandemo-research-note { flex-wrap: wrap; }
.nandemo-research-note .nandemo-research-note-credit { flex-basis: 100%; margin: 6px 0 0; font-size: 12px; color: #44525e; }
.nandemo-research-credit { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.nandemo-research-credit a { color: #2c3e50; font-weight: 700; text-decoration: none; }

/* --- 著者ボックス（デスク版） --- */
.nandemo-author-box--desk { border-left: 4px solid var(--desk-c, #3b5bc9); align-items: flex-start; }
.nandemo-author-role { font-weight: 500; font-size: 12px; color: #777; margin-left: 6px; }
.nandemo-author-meta { margin: 0 0 10px; }
.nandemo-desk-kind {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; letter-spacing: .04em; color: #44525e;
    background: #fff; border: 1px solid #dfe3ea; border-radius: 4px; padding: 2px 8px;
}
.nandemo-desk-kind::before { content: "AI"; background: #2c3e50; color: #fff; border-radius: 3px; padding: 1px 5px; font-size: 10px; font-family: Arial, sans-serif; }
.nandemo-desk-kind.is-human::before { content: "編集長"; font-family: inherit; }

/* --- カードのデスクチップ --- */
.nandemo-card-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; color: #44525e; }

/* --- フロント: ヒーロー（編集部版） --- */
.nandemo-hero--editorial {
    text-align: left; display: grid; grid-template-columns: 1.2fr 1fr; gap: 28px; align-items: start;
    background: linear-gradient(135deg, #1f3a63 0%, #3b5bc9 100%);
}
.nandemo-hero--editorial h1 { font-size: 20px; letter-spacing: .06em; margin: 0 0 10px; opacity: .9; }
.nandemo-hero--editorial .nandemo-hero-lead { font-size: 28px; font-weight: 700; line-height: 1.4; margin: 0 0 12px; color: #fff; }
.nandemo-hero--editorial .nandemo-hero-sub { font-size: 14px; line-height: 1.8; margin: 0 0 14px; color: rgba(255,255,255,.9); max-width: 48em; }
.nandemo-hero-trust { list-style: none; padding: 0; margin: 0; display: grid; gap: 6px; }
.nandemo-hero-trust li { position: relative; padding-left: 22px; font-size: 13px; color: rgba(255,255,255,.95); line-height: 1.6; }
.nandemo-hero-trust li::before { content: ""; position: absolute; left: 0; top: 5px; width: 12px; height: 12px; border-radius: 50%; border: 2px solid #fff; box-sizing: border-box; }
.nandemo-hero-ctas--scene { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; justify-content: stretch; }
.nandemo-hero-ctas--scene a {
    display: grid; gap: 2px; text-align: left; background: #fff; color: #2c3e50;
    padding: 12px 14px; border-left: 5px solid var(--scene-c, #3b5bc9); border-radius: 6px;
}
.nandemo-hero-ctas--scene a b { font-size: 14px; }
.nandemo-hero-ctas--scene a span { font-size: 11px; color: #777; font-weight: 500; }

.nandemo-section-sub { font-size: 12px; font-weight: 500; color: #888; margin-left: 10px; }
.nandemo-section-count { font-size: 13px; font-weight: 500; color: #888; margin-left: 10px; }

/* --- シーンカード --- */
.nandemo-scene-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.nandemo-scene-card {
    display: grid; grid-template-rows: auto auto 1fr auto; gap: 6px;
    background: #fff; border: 1px solid #e5e5e5; border-top: 4px solid var(--scene-c, #3b5bc9); border-radius: 6px;
    padding: 18px; text-decoration: none; color: #2c3e50; transition: all .2s;
}
.nandemo-scene-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,.08); }
.nandemo-scene-card-en { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--scene-c, #3b5bc9); font-weight: 700; margin: 0; }
.nandemo-scene-card-name { font-size: 17px; font-weight: 700; margin: 0; color: #2c3e50; }
.nandemo-scene-card-desc { font-size: 13px; color: #555; line-height: 1.6; margin: 0; }
.nandemo-scene-card-foot { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 12px; color: #888; border-top: 1px dashed #e5e5e5; padding-top: 8px; margin: 4px 0 0; }

/* --- デスクカード --- */
.nandemo-desk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.nandemo-desk-card { background: #fff; border: 1px solid #e5e5e5; border-top: 4px solid var(--desk-c, #3b5bc9); border-radius: 6px; padding: 16px; display: grid; gap: 8px; align-content: start; }
.nandemo-desk-card-who { display: flex; align-items: center; gap: 10px; }
.nandemo-desk-card-name { font-size: 15px; font-weight: 700; margin: 0; }
.nandemo-desk-card-name a { color: #2c3e50; text-decoration: none; }
.nandemo-desk-card-label { font-size: 11px; color: #888; margin: 0; }
.nandemo-desk-card-bio { font-size: 12.5px; color: #555; line-height: 1.65; margin: 0; }

/* --- 新着カードのデスク色 --- */
.nandemo-recent-item { border-left: 4px solid var(--desk-c, #e5e5e5); }
.nandemo-recent-item-dot { display: inline-block; width: 8px; height: 8px; border-radius: 2px; background: var(--desk-c, #3498db); margin-right: 6px; vertical-align: middle; }

/* --- 編集方針3点 --- */
.nandemo-policy-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; background: #f4f6fa; border-radius: 8px; padding: 22px 24px; margin: 40px 0; }
.nandemo-policy-strip div { font-size: 13px; color: #555; line-height: 1.6; }
.nandemo-policy-strip div b { display: block; color: #2c3e50; font-size: 14px; margin-bottom: 2px; }
.nandemo-policy-strip .nandemo-author-links { grid-column: 1 / -1; margin: 4px 0 0; }

/* --- シーンハブ --- */
.nandemo-scene-header { border-left-color: var(--scene-c, #3498db); }
.nandemo-scene-en { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--scene-c, #3498db); font-weight: 700; margin: 0 0 4px; }
.nandemo-scene-meta { display: flex; flex-wrap: wrap; gap: 16px; font-size: 12px; color: #666; margin: 10px 0 0; }
.nandemo-scene-meta a { display: inline-flex; align-items: center; gap: 6px; color: #2c3e50; font-weight: 700; text-decoration: none; }

/* --- デスクページ --- */
.nandemo-deskhead {
    display: grid; grid-template-columns: auto 1fr; gap: 22px; align-items: start;
    background: #f8fafc; border-left: 5px solid var(--desk-c, #3498db); border-radius: 0 6px 6px 0;
    padding: 28px 24px; margin: 0 0 32px;
}
.nandemo-deskhead-label { font-size: 12px; letter-spacing: .06em; color: var(--desk-c, #3498db); font-weight: 700; margin: 0 0 4px; }
.nandemo-deskhead-title { font-size: 26px; font-weight: 700; margin: 0 0 10px; color: #2c3e50; }
.nandemo-deskhead-bio { font-size: 14px; line-height: 1.8; color: #444; margin: 0 0 8px; max-width: 60em; }
.nandemo-desk-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.nandemo-desk-list { border: 1px solid #e5e5e5; border-radius: 6px; padding: 16px 18px; background: #fff; }
.nandemo-desk-list h2 { font-size: 14px; color: var(--desk-c, #3498db); margin: 0 0 8px; border: 0; padding: 0; }
.nandemo-desk-list ul { margin: 0; padding-left: 18px; font-size: 13px; color: #555; line-height: 1.7; }
.nandemo-desk-scene-link { font-size: 13px; color: #666; margin: 0; }
.nandemo-desk-scene-link a { font-weight: 700; color: #2c3e50; border-bottom: 2px solid var(--scene-c, #3498db); text-decoration: none; }
.nandemo-desk-empty { font-size: 13px; color: #666; background: #fafafa; border: 1px dashed #ddd; border-radius: 6px; padding: 14px 16px; }

@media screen and (max-width: 834px) {
    .nandemo-hero--editorial { grid-template-columns: 1fr; }
    .nandemo-hero--editorial .nandemo-hero-lead { font-size: 22px; }
    .nandemo-policy-strip { grid-template-columns: 1fr; }
    .nandemo-desk-two { grid-template-columns: 1fr; }
    .nandemo-deskhead { grid-template-columns: 1fr; }
}
@media screen and (max-width: 480px) {
    .nandemo-hero-ctas--scene { grid-template-columns: 1fr; }
}
