@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
*/

/************************************
** 狂犬の正体 カスタムデザイン
************************************/

:root{
  --kk-bg-dark:#181614;
  --kk-bg-cream:#f3ede1;
  --kk-orange:#d9772e;
  --kk-orange-light:#e8a05f;
  --kk-text-dark:#2a2620;
  --kk-muted:#8a8378;
}

body{
  background:var(--kk-bg-cream) !important;
}

/* ===== ヘッダー(バナー画像) ===== */
#header-container{
  background:#000;
}
#header-container-in{
  background:none;
}
#header{
  background-image:url('banner.jpg');
  background-size:cover;
  background-position:center;
  min-height:280px;
  display:flex;
  align-items:flex-end;
  border-bottom:3px solid var(--kk-orange);
}
#header-in{
  width:100%;
  max-width:1200px;
}
/* デフォルトのテキストロゴは非表示(バナー画像に文字が入っているため) */
.logo.logo-header.logo-text{
  position:absolute;
  width:1px;height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
}
.header-in .header-page-title,
.header-in .site-description{
  display:none;
}

/* ===== ナビゲーション ===== */
#navi{
  background:var(--kk-bg-dark) !important;
  border-top:none;
}
#navi .navi-in{
  max-width:1200px;
}
#navi a{
  color:#f3ede1 !important;
  font-weight:600;
  letter-spacing:.04em;
}
#navi li:hover > a,
#navi a:hover{
  color:var(--kk-orange-light) !important;
  background:rgba(217,119,46,.12) !important;
}
#navi .search-box-in input[type="text"]{
  background:#2a2620;
  color:#f3ede1;
  border:1px solid #444;
}

/* ===== コンテンツエリア全体 ===== */
.main{
  background:transparent;
}
.article{
  background:var(--kk-bg-cream);
  border:none;
  box-shadow:none;
}

/* ===== 記事タイトル・メタ情報 ===== */
.entry-header{
  border-bottom:none;
  padding-bottom:0;
}
.entry-title{
  color:var(--kk-text-dark);
  font-weight:800;
  font-size:1.9em;
  line-height:1.35;
}
.entry-card-cat-eyebrow{
  display:inline-block;
  color:var(--kk-orange);
  font-weight:700;
  letter-spacing:.15em;
  font-size:.78em;
  margin-bottom:.6em;
  text-transform:uppercase;
}
.entry-card-cat-eyebrow::before{
  content:"— ";
  color:var(--kk-orange);
}
.entry-date-author-box,
.time-author{
  color:var(--kk-muted);
}

/* ===== カテゴリーラベル ===== */
.cat-label{
  background:var(--kk-orange) !important;
  color:#fff !important;
  font-weight:700;
  letter-spacing:.05em;
}

/* ===== 目次(TOC) ===== */
.toc{
  background:var(--kk-bg-dark) !important;
  border:none !important;
  border-radius:6px;
  color:#f3ede1;
  padding:1.4em 1.6em;
}
.toc .toc-title{
  color:var(--kk-orange-light) !important;
  font-weight:700;
  font-size:1.05em;
  border-bottom:1px solid rgba(255,255,255,.15);
  padding-bottom:.5em;
  margin-bottom:.3em;
}
.toc-content{
  color:#f3ede1;
}
.toc-content ol,
.toc-content ul{
  columns:2;
  column-gap:2em;
}
.toc-content a{
  color:#f3ede1 !important;
}
.toc-content a:hover{
  color:var(--kk-orange-light) !important;
}
.toc.tnt-number .toc-content > ol > li,
.toc.tnt-number .toc-content > ul > li{
  counter-increment:kk-toc;
}
.toc.tnt-number .toc-content > ol,
.toc.tnt-number .toc-content > ul{
  counter-reset:kk-toc;
  list-style:none;
  padding-left:0;
}
.toc.tnt-number .toc-content > ol > li::before,
.toc.tnt-number .toc-content > ul > li::before{
  content:counter(kk-toc,decimal-leading-zero);
  color:var(--kk-orange);
  font-weight:800;
  margin-right:.5em;
  font-family:Georgia,serif;
}

/* ===== 見出し(h2)を「01」box風に ===== */
.entry-content h2{
  position:relative;
  background:transparent;
  border:none;
  border-left:6px solid var(--kk-orange);
  padding:.3em .3em .3em .8em;
  color:var(--kk-text-dark);
  font-weight:800;
  counter-increment:kk-h2;
}

/* ===== サイドバー ===== */
#sidebar .widget{
  background:#fff;
  border:1px solid #e5ddcc;
  border-radius:8px;
}
.kk-bell-widget{
  background:var(--kk-bg-dark);
  border-radius:8px;
  overflow:hidden;
  color:#f3ede1;
  text-align:center;
  padding:0 0 1.4em;
}
.kk-bell-widget img{
  width:100%;
  display:block;
}
.kk-bell-widget .kk-bell-name{
  color:var(--kk-orange-light);
  font-size:1.4em;
  font-weight:800;
  letter-spacing:.1em;
  margin:.6em 0 .2em;
}
.kk-bell-widget .kk-bell-sub{
  font-size:.85em;
  color:#cfc7b8;
  margin-bottom:1em;
}
.kk-bell-widget a{
  display:inline-block;
  margin-top:.8em;
  padding:.5em 1.4em;
  border:1px solid var(--kk-orange);
  color:var(--kk-orange-light) !important;
  border-radius:4px;
  font-size:.85em;
  letter-spacing:.05em;
}
.kk-bell-widget a:hover{
  background:var(--kk-orange);
  color:#fff !important;
}

/* ===== フッター ===== */
#footer, .footer-in{
  background:var(--kk-bg-dark);
  color:#cfc7b8;
}
.footer-bottom{
  background:var(--kk-bg-dark) !important;
}
.footer-bottom .site-name-text{
  color:var(--kk-orange-light) !important;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
@media screen and (max-width: 1023px){
  .entry-title{ font-size:1.5em; }
}

/* スマホ幅では「ロゴ+写真」を縦に並べた専用バナーに切り替える */
@media screen and (max-width: 834px){
  #header{
    min-height:0;
    aspect-ratio:1360/1156;
    background-image:url('banner-mobile.jpg');
    background-size:100% auto;
    background-position:top center;
  }
  .toc-content ol, .toc-content ul{ columns:1; }
}
