/*
  Theme Name: Cocoon Child
  Template: cocoon-master
  */

  /* ===============================
     転職ReBorn - プロフェッショナルデザイン
     =============================== */

  :root {
    --clr-primary:  #1a2744;
    --clr-accent:   #2c6fad;
    --clr-bg:       #f4f6f9;
    --clr-white:    #ffffff;
    --clr-text:     #2d3436;
    --clr-muted:    #636e72;
    --clr-border:   #dce3eb;
  }

  /* ─── ヘッダー ─── */
  #header, .header-container, .header-container-in {
    background: var(--clr-primary) !important;
    border-bottom: 3px solid var(--clr-accent) !important;
  }
  #site-name a, .site-name-text { color: #fff !important; }
  .tagline { color: rgba(255,255,255,0.72) !important; }

  /* ─── ナビゲーション ─── */
  #navi, .navi-in { background: var(--clr-primary) !important; }
  .navi-in > ul > li > a {
    color: rgba(255,255,255,0.88) !important;
    font-weight: 500;
  }
  .navi-in > ul > li > a:hover,
  .navi-in > ul > li.current-menu-item > a {
    background: var(--clr-accent) !important;
    color: #fff !important;
  }

  /* ─── ボディ ─── */
  body {
    background: var(--clr-bg) !important;
    color: var(--clr-text) !important;
    font-family: 'Hiragino Kaku Gothic ProN','Noto Sans JP',Meiryo,sans-serif !important;
    line-height: 1.85 !important;
  }

  /* ─── メインカラム ─── */
  #main, .main {
    background: var(--clr-white) !important;
    border-radius: 6px !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07) !important;
    padding: 2rem !important;
  }

  /* ─── 記事一覧カード ─── */
  .article-card-wrap, .a-wrap {
    background: var(--clr-white) !important;
    border: 1px solid var(--clr-border) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05) !important;
    transition: box-shadow .2s, transform .2s !important;
  }
  .article-card-wrap:hover, .a-wrap:hover {
    box-shadow: 0 6px 20px rgba(0,0,0,0.11) !important;
    transform: translateY(-3px) !important;
  }
  .card-title {
    color: var(--clr-text) !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
  }
  .card-excerpt { color: var(--clr-muted) !important; font-size: 0.875rem !important; }

  /* ─── カテゴリラベル ─── */
  .cat-label, .card-cat-label {
    background: var(--clr-accent) !important;
    color: #fff !important;
    border-radius: 3px !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
  }

  /* ─── 記事タイトル（個別ページ）─── */
  .entry-title {
    color: var(--clr-primary) !important;
    font-size: 1.65rem !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    border-left: 5px solid var(--clr-accent) !important;
    padding-left: 0.8rem !important;
    margin-bottom: 1.5rem !important;
  }

  /* ─── 本文見出し ─── */
  .entry-content h2 {
    color: var(--clr-primary) !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    border-left: 4px solid var(--clr-accent) !important;
    background: #f0f4fa !important;
    padding: 0.55rem 0.9rem !important;
    border-radius: 0 4px 4px 0 !important;
    margin-top: 2.5rem !important;
    margin-bottom: 1rem !important;
  }
  .entry-content h3 {
    color: var(--clr-primary) !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    border-bottom: 2px solid var(--clr-border) !important;
    padding-bottom: 0.35rem !important;
    margin-top: 2rem !important;
  }

  /* ─── 比較テーブル ─── */
  .entry-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 0.9rem !important;
    margin: 1.5rem 0 !important;
  }
  .entry-content table th {
    background: var(--clr-primary) !important;
    color: #fff !important;
    padding: 0.65rem 1rem !important;
    font-weight: 600 !important;
    text-align: left !important;
  }
  .entry-content table td {
    padding: 0.65rem 1rem !important;
    border-bottom: 1px solid var(--clr-border) !important;
  }
  .entry-content table tr:nth-child(even) td { background: #f8fafc !important; }
  .entry-content table tr:hover td { background: #eef3fa !important; }

  /* ─── 引用 ─── */
  blockquote {
    border-left: 4px solid var(--clr-accent) !important;
    background: #f0f4fa !important;
    padding: 1rem 1.25rem !important;
    border-radius: 0 6px 6px 0 !important;
    color: var(--clr-muted) !important;
  }

  /* ─── サイドバー ─── */
  #sidebar { background: transparent !important; }
  .widget {
    background: var(--clr-white) !important;
    border: 1px solid var(--clr-border) !important;
    border-radius: 8px !important;
    margin-bottom: 1.2rem !important;
    overflow: hidden !important;
  }
  .widget-title {
    background: var(--clr-primary) !important;
    color: #fff !important;
    padding: 0.45rem 0.9rem !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    margin: 0 !important;
  }

  /* ─── ウィジェット内リスト共通 ─── */
  .widget ul {
    margin: 0 !important;
    padding: 0.3rem 0 !important;
    list-style: none !important;
  }
  .widget ul li {
    border-bottom: 1px solid var(--clr-border) !important;
    margin: 0 !important;
  }
  .widget ul li:last-child { border-bottom: none !important; }
  .widget ul li a {
    display: block !important;
    padding: 0.45rem 0.9rem !important;
    font-size: 0.78rem !important;
    line-height: 1.5 !important;
    color: var(--clr-text) !important;
    text-decoration: none !important;
    transition: background 0.15s !important;
  }
  .widget ul li a:hover {
    background: #f0f4fa !important;
    color: var(--clr-accent) !important;
  }

  /* ─── Recent Posts（最近の投稿）─── */
  .widget_recent_entries ul li a {
    padding-left: 1.4rem !important;
    position: relative !important;
  }
  .widget_recent_entries ul li a::before {
    content: "›" !important;
    position: absolute !important;
    left: 0.65rem !important;
    color: var(--clr-accent) !important;
    font-weight: 700 !important;
  }
  .widget_recent_entries .post-date {
    display: block !important;
    padding: 0 0.9rem 0.3rem 1.4rem !important;
    font-size: 0.68rem !important;
    color: var(--clr-muted) !important;
    margin-top: -0.2rem !important;
  }

  /* ─── Recent Comments（最近のコメント）─── */
  .widget_recent_comments ul li {
    font-size: 0.78rem !important;
    color: var(--clr-text) !important;
    line-height: 1.5 !important;
    padding: 0.45rem 0.9rem 0.45rem 1.4rem !important;
    position: relative !important;
  }
  .widget_recent_comments ul li::before {
    content: "›" !important;
    position: absolute !important;
    left: 0.65rem !important;
    color: var(--clr-accent) !important;
    font-weight: 700 !important;
  }
  .widget_recent_comments ul li a {
    font-size: 0.78rem !important;
    color: var(--clr-accent) !important;
    padding: 0 !important;
    display: inline !important;
  }
  .widget_recent_comments ul li a::before {
    display: none !important;
  }

  /* ─── カテゴリー・アーカイブ ─── */
  .widget_categories ul li a,
  .widget_archive ul li a {
    padding-left: 1.4rem !important;
    position: relative !important;
  }
  .widget_categories ul li a::before,
  .widget_archive ul li a::before {
    content: "›" !important;
    position: absolute !important;
    left: 0.65rem !important;
    color: var(--clr-accent) !important;
    font-weight: 700 !important;
  }

  /* ─── 検索ウィジェット ─── */
  .widget_search .search-form {
    padding: 0.6rem 0.9rem !important;
  }
  .widget_search input[type="search"] {
    width: 100% !important;
    padding: 0.4rem 0.6rem !important;
    font-size: 0.8rem !important;
    border: 1px solid var(--clr-border) !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
  }

  /* ─── ページネーション ─── */
  .pagination a, .pagination span {
    border: 1px solid var(--clr-border) !important;
    border-radius: 5px !important;
    color: var(--clr-accent) !important;
  }
  .pagination .current {
    background: var(--clr-accent) !important;
    color: #fff !important;
    border-color: var(--clr-accent) !important;
  }

  /* ─── リンク ─── */
  a { color: var(--clr-accent) !important; }
  a:hover { color: var(--clr-primary) !important; }

  /* ─── フッター ─── */
  #footer, .footer {
    background: var(--clr-primary) !important;
    color: rgba(255,255,255,0.8) !important;
    border-top: none !important;
  }
  #footer a, .footer a { color: rgba(255,255,255,0.7) !important; }
  #footer a:hover, .footer a:hover { color: #fff !important; }