@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){
  /*必要ならばここにコードを書く*/
}


/* ============================================================
   旧テーマ AFFINGER4 の記事内装飾クラスを復元
   追記 2026-09-03
   出典 /wp-content/themes/affinger4/style.css（サーバー残存の旧テーマから採取）
   対象 のべ約4,900箇所 / 552記事。記事本文は一切書き換えていない
   戻し方 この「ここから」〜「ここまで」を削除すれば元に戻る
   -------------------------- ここから --------------------------
   ============================================================ */

/* 黄色ボックス（記念日リスト・問題）714箇所 / 449記事 */
.entry-content .yellowbox{
  padding:20px;
  margin-bottom:20px;
  background-color:#ffffe0;
}
.entry-content .yellowbox:not(.noborder){ border:solid 1px #fffacd; }

/* 赤ボックス（答え）642箇所 / 316記事 */
.entry-content .redbox{
  padding:20px;
  margin-bottom:20px;
  background-color:#ffebee;
}
.entry-content .redbox:not(.noborder){ border:solid 1px #ef5350; }

/* グレーボックス（補足）33箇所 / 24記事 */
.entry-content .graybox{
  padding:20px;
  margin-bottom:20px;
  background-color:#f3f3f3;
}
.entry-content .graybox:not(.noborder){ border:solid 1px #ccc; }

/* ボックス内の最後の要素の余白を詰める（旧テーマと同じ） */
.entry-content .yellowbox p:last-child,
.entry-content .yellowbox ol:last-child,
.entry-content .yellowbox ul:last-child,
.entry-content .redbox p:last-child,
.entry-content .redbox ol:last-child,
.entry-content .redbox ul:last-child,
.entry-content .graybox p:last-child,
.entry-content .graybox ol:last-child,
.entry-content .graybox ul:last-child{
  margin-bottom:0;
  padding-bottom:0;
}

/* 赤い太字（最頻出）3,179箇所 / 537記事 */
.entry-content .hutoaka{ font-weight:bold; color:#ff0000; }

/* 太字 96箇所 / 36記事 */
.entry-content .huto{ font-weight:bold; }

/* 大きい文字 105箇所 / 41記事 */
.entry-content .oomozi{ font-size:18pt; line-height:35px; font-weight:bold; }

/* 吹き出し風の見出し 54箇所 / 33記事 */
.entry-content .h2fuu{
  position:relative;
  background:#f3f3f3;
  color:#1a1a1a;
  font-size:24px;
  line-height:35px;
  margin-bottom:20px;
  padding:10px 20px;
  font-weight:bold;
}
.entry-content .h2fuu::before,
.entry-content .h2fuu::after{
  content:'';
  position:absolute;
  border-top:10px solid #f3f3f3;
  border-right:10px solid transparent;
  border-left:10px solid transparent;
  bottom:-10px;
  left:50px;
}
.entry-content .h2fuu::after{ border-radius:2px; }

/* 下線 46箇所 / 6記事 */
.entry-content .dotline{ border-bottom:1px dotted #212121; }
.entry-content .dotline-s{ border-bottom:1px solid #212121; }
.entry-content .dotline-sr{ border-bottom:1px solid #ff0000; }

/* 赤マーカー */
.entry-content .rmarker{ background:#ffcdd2; padding:0 2px; }

/* スマホではボックスの内側余白を少し詰める */
@media screen and (max-width:480px){
  .entry-content .yellowbox,
  .entry-content .redbox,
  .entry-content .graybox{ padding:15px; }
  .entry-content .h2fuu{ font-size:20px; line-height:30px; }
}
/* -------------------------- ここまで -------------------------- */


/* ============================================================
   「答えはこちら」アコーディオン（HTML標準の details を使用）
   追記 2026-09-03
   使い方（記事側）:
     <details class="fs-answer">
     <summary>答えはこちら</summary>
     <div class="fs-answer-body">
     <p>本文</p>
     </div>
     </details>
   ※ CSSが無くても開閉は動く（JavaScript不要・テーマ非依存）
   ============================================================ */
.entry-content details.fs-answer{
  border:1px solid #ef5350;
  border-radius:6px;
  background:#fff;
  margin:0 0 24px;
  overflow:hidden;
}
.entry-content details.fs-answer > summary{
  cursor:pointer;
  list-style:none;
  display:block;
  padding:12px 16px;
  font-weight:bold;
  color:#c62828;
  background:#ffebee;
  -webkit-user-select:none;
  user-select:none;
}
.entry-content details.fs-answer > summary::-webkit-details-marker{ display:none; }
.entry-content details.fs-answer > summary::before{
  content:"\25B6";
  display:inline-block;
  margin-right:10px;
  font-size:.8em;
  transition:transform .15s ease;
}
.entry-content details.fs-answer[open] > summary::before{ transform:rotate(90deg); }
.entry-content details.fs-answer > summary:hover{ background:#ffdfe3; }
.entry-content details.fs-answer .fs-answer-body{ padding:16px; }
.entry-content details.fs-answer .fs-answer-body > p:last-child{ margin-bottom:0; }


/* ============================================================
   前の日 / 次の日 ナビゲーション（366記事の数珠つなぎ）
   追記 2026-09-03
   ============================================================ */
.entry-content .fs-daynav{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin:36px 0 14px;
}
.entry-content .fs-daynav a{
  flex:1 1 240px;
  display:block;
  padding:14px 18px;
  border:1px solid #EDE3D0;
  border-radius:10px;
  background:#FFFDF8;
  text-decoration:none;
  color:#2B2621;
  line-height:1.6;
  transition:background .15s;
}
.entry-content .fs-daynav a:hover{ background:#FFF4DF; }
.entry-content .fs-daynav .fs-daynav-label{
  display:block;
  font-size:12px;
  font-weight:bold;
  color:#8A5A00;
  margin-bottom:4px;
}
.entry-content .fs-daynav .fs-daynav-title{
  display:block;
  font-size:15px;
  font-weight:bold;
}
.entry-content .fs-daynav a.fs-daynav-next{ text-align:right; }
.entry-content .fs-daynav-all{
  text-align:center;
  margin:0 0 34px;
}
.entry-content .fs-daynav-all a{
  display:inline-block;
  padding:10px 24px;
  border-radius:999px;
  background:#F0A500;
  color:#3A2A00;
  font-weight:bold;
  font-size:14px;
  text-decoration:none;
}
@media screen and (max-width:480px){
  .entry-content .fs-daynav a{ flex:1 1 100%; }
  .entry-content .fs-daynav a.fs-daynav-next{ text-align:left; }
}


/* ===== この記事を書いた人（著者ボックス） 20260903 ===== */
.fs-author{ margin:32px 0; border:1px solid #e4e0d8; border-radius:8px; background:#fffdf8; overflow:hidden; }
.fs-author-label{ margin:0; padding:8px 16px; background:#F0A500; color:#3A2A00; font-weight:bold; font-size:14px; letter-spacing:.04em; }
.fs-author-body{ display:flex; gap:18px; padding:18px 16px; align-items:flex-start; }
.fs-author-photo{ flex:0 0 108px; }
.fs-author-photo img{ width:108px; height:108px; border-radius:50%; object-fit:cover; display:block; border:3px solid #fff; box-shadow:0 1px 4px rgba(0,0,0,.15); }
.fs-author-text{ flex:1 1 auto; min-width:0; }
.fs-author-name{ margin:0 0 4px; font-size:20px; font-weight:bold; line-height:1.3; }
.fs-author-name a{ text-decoration:none; color:#333; }
.fs-author-kana{ margin-left:10px; font-size:12px; font-weight:normal; color:#888; }
.fs-author-title{ margin:0 0 10px; font-size:13px; line-height:1.6; color:#666; }
.fs-author-bio{ margin:0 0 10px; font-size:14px; line-height:1.8; }
.fs-author-facts{ margin:0 0 12px; padding:0; list-style:none; font-size:13px; line-height:1.7; }
.fs-author-facts li{ margin:0; padding-left:18px; position:relative; }
.fs-author-facts li:before{ content:""; position:absolute; left:4px; top:.7em; width:6px; height:6px; border-radius:50%; background:#F0A500; }
.fs-author-links{ margin:0; display:flex; flex-wrap:wrap; gap:8px; }
.fs-author-links .fs-al{ display:inline-block; padding:7px 14px; border:1px solid #d9d3c6; border-radius:999px; background:#fff; font-size:13px; font-weight:bold; text-decoration:none; color:#5a5348; }
.fs-author-links .fs-al-main{ background:#F0A500; border-color:#F0A500; color:#3A2A00; }
@media screen and (max-width:480px){
  .fs-author-body{ flex-direction:column; align-items:center; text-align:center; }
  .fs-author-photo{ flex:none; }
  .fs-author-facts{ text-align:left; }
  .fs-author-links{ justify-content:center; }
}

/* ===== フッター 運営者・関連サイト 20260903 ===== */
.fs-footlinks{ font-size:14px; line-height:1.8; }
.fs-fl-lead{ margin:0 0 12px; }
.fs-fl-list{ margin:0; padding:0; list-style:none; }
.fs-fl-list li{ margin:0 0 8px; }
.fs-fl-list li a{ font-weight:bold; text-decoration:none; }
.fs-fl-list li span{ display:block; font-size:12px; color:#888; }
