@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/* ==========================================================
   案B ネイビー×セージ（2026-10-07）
   置き場所: 子テーマ cocoon-child-master/style.css の末尾
   前提: Cocoon設定のスキン「なし」＋サイトキーカラー等は設定側で指定
   外すとき: このブロックを消し、設定とスキンを控え（backups/cocoon-settings-2026-10-07-before.txt）どおりに戻す
   ========================================================== */
:root{
  --b-ivory:#faf8f4; --b-band:#f4f1ea; --b-navy:#26314d; --b-ink:#2b2b2b; --b-sub:#5f5c54;
  --b-muted:#8a8578; --b-line:#ece7dc; --b-sage:#4c7a5d; --b-sage-raw:#5a8f6f; --b-sage-light:#b9d4c2;
  --b-sage-bg:#f3f6f3; --b-sage-line:#d6e3da; --b-gold:#c8a24a;
  --b-serif:'Noto Serif JP','Hiragino Mincho ProN','Yu Mincho','YuMincho',serif;
}

/* ---- 全体 ---- */
body{ background-color:var(--b-ivory); color:var(--b-ink); }
.body a{ color:var(--b-sage); }
.body a:hover{ color:var(--b-navy); }

/* ---- ヘッダー・ロゴ・キャッチフレーズ ---- */
#header-container{ background-color:var(--b-navy); color:#fff; box-shadow:none; }
#header-container .header-container-in{ background:none; }
.header-container::after{ display:none; }
.logo-text .site-name-text{ font-family:var(--b-serif); font-weight:600; letter-spacing:.02em; color:#fff; }
.logo-text a.site-name-text-link, .logo-text a.site-name-text-link:hover{ color:#fff; }
.tagline{ display:none; }

/* ---- グローバルナビ ---- */
#navi{ background-color:var(--b-navy); border:0; }
#navi .navi-in > .menu-header .menu-item > a{ color:#fff; font-size:14px; font-weight:500; }
#navi .navi-in > .menu-header > .menu-item > a:hover,
#navi .navi-in > .menu-header > .current-menu-item > a,
#navi .navi-in > .menu-header > .current-menu-parent > a{ background:transparent; color:#fff; box-shadow:inset 0 -3px 0 var(--b-sage-raw); }
#navi .navi-in > .menu-header .sub-menu{ background-color:#fff; border:1px solid var(--b-line); box-shadow:0 6px 18px rgba(38,49,77,.12); }
#navi .navi-in > .menu-header .sub-menu .menu-item > a{ color:var(--b-ink); font-weight:400; }
#navi .navi-in > .menu-header .sub-menu .menu-item > a:hover{ background-color:var(--b-band); color:var(--b-navy); box-shadow:none; }

/* ---- 本文エリア・サイドバーの器 ---- */
.main{ background-color:#fff; border:1px solid var(--b-line); border-radius:0; box-shadow:none; }
.sidebar{ background:transparent; border:0; box-shadow:none; }
.sidebar .widget{ margin-bottom:36px; }

/* ---- 見出し（記事） ---- */
.article h1.entry-title, h1.entry-title, h1.archive-title{
  font-family:var(--b-serif); font-weight:600; font-size:1.75em; line-height:1.5; color:var(--b-navy);
  padding:0 0 .6em; margin:0 0 .6em; border:0; border-bottom:1px solid var(--b-line); background:transparent; box-shadow:none;
}
h1.entry-title::before, h1.entry-title::after, h1.archive-title::before, h1.archive-title::after{ display:none; }
.article h2{
  position:relative; background:transparent; border:0; border-bottom:1px solid var(--b-line); border-radius:0; box-shadow:none;
  padding:18px 0 10px; margin:2.4em 0 1.2em; font-family:var(--b-serif); font-weight:600; font-size:1.45em; line-height:1.5; color:var(--b-navy);
}
.article h2::before{ content:""; position:absolute; left:0; top:0; width:40px; height:3px; background:var(--b-navy); }
.article h3{
  position:relative; background:transparent; border:0; border-radius:0; box-shadow:none;
  padding:4px 0 4px 20px; margin:2em 0 1em; font-family:var(--b-serif); font-weight:600; font-size:1.2em; color:var(--b-navy);
}
.article h3::before{ content:""; position:absolute; left:0; top:.62em; width:10px; height:10px; background:var(--b-sage-raw); }
.article h4{ background:transparent; border:0; border-bottom:1px solid var(--b-line); padding:4px 0; font-family:var(--b-serif); font-weight:600; color:var(--b-navy); }

/* ---- 目次 ---- */
.article .toc{ background-color:var(--b-band); border:0; border-radius:0; padding:22px 26px; }
.toc-title{ background:transparent; font-family:var(--b-serif); font-weight:600; letter-spacing:.1em; color:var(--b-navy); }
.toc-title::after{ color:var(--b-sage); font-size:.75em; }
.toc .toc-list a{ color:var(--b-ink); }
.toc .toc-list a:hover{ color:var(--b-sage); }

/* ---- 吹き出し（角型・しっぽなし） ---- */
.speech-balloon{ background-color:var(--b-ivory); border:1px solid var(--b-line); border-radius:4px; box-shadow:none; }
.speech-balloon::before, .speech-balloon::after{ display:none; }
.sbp-l .speech-balloon{ background-color:var(--b-sage-bg); border-color:var(--b-sage-line); }
.speech-icon img{ border:1px solid var(--b-line); box-shadow:none; }
.speech-name{ color:var(--b-sub); font-size:11px; }

/* ---- シェアボタン（線だけ） ---- */
.sns-share-buttons a{ background-color:transparent !important; color:var(--b-navy) !important; border:1px solid var(--b-line) !important; border-radius:0 !important; box-shadow:none !important; }
.sns-share-buttons a:hover{ background-color:var(--b-band) !important; }
.sns-share-message{ color:var(--b-muted); font-size:12px; letter-spacing:.08em; }

/* ---- 記事カード（一覧・関連・ウィジェット） ---- */
.entry-card-wrap{ border:0; border-bottom:1px solid var(--b-line); border-radius:0; box-shadow:none; }
.entry-card-title, .related-entry-card-title{ font-family:var(--b-serif); font-weight:600; color:var(--b-navy); line-height:1.5; }
.entry-card-snippet, .related-entry-card-snippet{ color:var(--b-sub); }
.entry-card-thumb img, .related-entry-card-thumb img, .popular-entry-card-thumb img, .new-entry-card-thumb img,
.widget-entry-card-thumb img, .eye-catch img, .navi-entry-card-thumb img{ border:1px solid var(--b-line); border-radius:4px; box-shadow:none; }
.cat-label{ background-color:rgba(255,255,255,.94); color:var(--b-navy); border:0; border-radius:2px; font-size:11px; letter-spacing:.06em; font-weight:500; }
.entry-card-meta, .entry-card-info{ color:var(--b-muted); }

/* ---- トップの見出し（新着記事・カテゴリ列） ---- */
.list-title{ font-family:var(--b-serif); font-weight:600; font-size:1.3em; color:var(--b-navy); text-align:left; border-top:2px solid var(--b-navy); padding-top:12px; margin-bottom:12px; }
.list-title::before, .list-title::after{ display:none; }
.list-title-in{ background:transparent; padding:0; }
.list-more-button{ background:transparent; color:var(--b-sage); border:1px solid var(--b-sage); border-radius:4px; box-shadow:none; font-weight:500; }
.list-more-button:hover{ background-color:var(--b-sage-bg); color:var(--b-navy); }

/* ---- サイドバーのウィジェット ---- */
.widget-sidebar-title, h3.widget-title, h3.footer-title{
  background:transparent; border:0; border-bottom:1px solid var(--b-line); border-radius:0; box-shadow:none;
  padding:0 0 8px; margin:0 0 12px; font-family:var(--b-serif); font-weight:600; font-size:1em; color:var(--b-navy);
}
.widget ul li a::before{ content:none; }
.widget_custom_html ul{ list-style:none; padding:0; margin:0; }
.widget_custom_html .cat-item > a{ display:block; padding:7px 0; border-bottom:1px solid var(--b-line); font-family:var(--b-serif); font-weight:600; color:var(--b-navy); }
.widget_custom_html .children{ margin:0 0 6px; padding:0; }
.widget_custom_html .children .cat-item > a{ font-family:inherit; font-weight:400; color:var(--b-sub); padding:6px 0 6px 16px; font-size:.95em; }
.popular-entry-card-title, .new-entry-card-title, .widget-entry-card-title{ color:var(--b-ink); font-weight:500; }
.author-box{ border:0; border-radius:0; box-shadow:none; background:transparent; padding:0; }
.author-box .author-name a{ font-family:var(--b-serif); font-weight:600; color:var(--b-navy); }
.author-thumb img{ border:1px solid var(--b-line); }

/* ---- 検索窓（下線だけ） ---- */
.search-box{ border:0; }
.search-edit{ border:0; border-bottom:1px solid var(--b-navy); border-radius:0; background:transparent; box-shadow:none; }
.search-edit:focus{ outline:none; border-bottom-color:var(--b-sage); }
.search-submit{ background:transparent; color:var(--b-navy); }

/* ---- 関連記事・前後の記事 ---- */
h2.related-entry-heading{ background:transparent; border:0; border-top:2px solid var(--b-navy); border-bottom:0; padding:12px 0; margin:40px 0 0; font-family:var(--b-serif); font-weight:600; color:var(--b-navy); }
h2.related-entry-heading::before{ display:none; }
.related-entry-card-wrap{ border:0; }
.pager-post-navi{ background:transparent; border:0; border-top:1px solid var(--b-navy); padding:14px 0; }
.pager-post-navi a.a-wrap{ background:transparent; border:0; }
.pager-post-navi .prev-post-title, .pager-post-navi .next-post-title{ font-family:var(--b-serif); font-weight:600; color:var(--b-navy); }
.pager-post-navi a.a-wrap:hover{ background-color:var(--b-band); }

/* ---- 内部リンクカード（ブログカード） ---- */
.blogcard{ border:1px solid var(--b-line); border-radius:0; box-shadow:none; }
.blogcard-title{ font-family:var(--b-serif); font-weight:600; color:var(--b-navy); }
.blogcard-label{ color:var(--b-sage); }

/* ---- パンくず・日付 ---- */
.breadcrumb{ font-size:12px; letter-spacing:.04em; color:var(--b-muted); }
.breadcrumb a, .breadcrumb .breadcrumb-caption{ color:var(--b-muted); }
.date-tags, .post-date, .post-update{ color:var(--b-muted); }

/* ---- フッター ---- */
.footer{ background-color:var(--b-navy); color:#fff; box-shadow:none; }
.footer::before{ display:none; }
.footer a, .footer .site-name-text{ color:#fff; }
.footer-bottom-logo .site-name-text{ font-family:var(--b-serif); font-weight:600; }
.navi-footer{ border-top:1px solid rgba(255,255,255,.18); }
.navi-footer-in > .menu-footer li.menu-item a{ background:transparent; border:0; color:#fff; }
.copyright{ color:var(--b-sage-light); font-size:12px; }

/* ---- スマホのメニューボタン ---- */
.mobile-menu-buttons{ background-color:#fff; border-top:1px solid var(--b-line); box-shadow:none; }
.menu-button{ color:var(--b-navy); }
.menu-caption{ color:var(--b-navy); }
.navi-menu-content, .sidebar-menu-content{ background-color:#fff; }

/* ---- ページ上部へ ---- */
.go-to-top-button{ background-color:var(--b-navy); color:#fff; border-radius:4px; }

/* ---- スマホ幅の調整 ---- */
@media screen and (max-width:834px){
  .article h2{ font-size:1.3em; padding-top:16px; }
  .article h3{ font-size:1.12em; }
  .main{ border-left:0; border-right:0; }
}

/* ---- 補足（2026-10-07 反映後の調整） ---- */
.recommended{ background:transparent; }
.recommended-in{ max-width:1240px; margin:12px auto 0; padding:0 16px; box-sizing:border-box; }
.list-title{ margin-top:0; }

/* ---- 補足2（2026-10-07 メニューを1行に・列見出しの線を消す） ---- */
.list-title-in::before, .list-title-in::after{ display:none; }
@media screen and (min-width:1024px){
  .hlt-top-menu-wrap .logo-header .site-name-text{ font-size:1.2em; }
  #navi .navi-in > .menu-header > .menu-item > a{ font-size:13px; padding:0 12px; }
}
