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

/************************************
** 記事ページのデザイン v2（2026-09-24 暖色）
** 元に戻すときは、この「記事ページのデザイン」から下を丸ごと削除する
************************************/
.article{ background:#fffdf9; }
.article .entry-content{ color:#3a342e; line-height:1.98; letter-spacing:.012em; }
.article .entry-content p{ margin:0 0 1.55em; }
.article .entry-content > p:first-of-type{ font-size:1.03em; color:#4a4038; }
.article .entry-content a{ color:#b5562d; text-decoration:underline; text-underline-offset:.22em; text-decoration-thickness:1px; text-decoration-color:#e3b590; }
.article .entry-content a:hover{ color:#8d3f1d; text-decoration-color:#b5562d; text-decoration-thickness:2px; }
.article .entry-content strong{ font-weight:700; background:linear-gradient(transparent 60%, #ffe3b0 60%); }

.article .entry-title{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
font-size:1.78em; line-height:1.5; letter-spacing:.02em; color:#4a3527; margin:.2em 0 .45em;
}
.article .post-date, .article .post-update, .article .date-tags{ color:#9a8b7c; font-size:.86em; }
.article .eye-catch img, .article .entry-content img{ border-radius:12px; }
.article .entry-content figure img{ box-shadow:0 2px 10px rgba(122,74,43,.10); }
.article .entry-content figcaption{ color:#9a8b7c; font-size:.82em; text-align:center; margin-top:.55em; }

.article .entry-content h2{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
position:relative; font-size:1.36em; line-height:1.55; letter-spacing:.03em; color:#4a3527;
background:#fbf1e4; border:0; border-left:6px solid #b5562d; border-radius:0 10px 10px 0;
padding:.72em .95em; margin:2.7em 0 1.15em;
}
.article .entry-content h3{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
position:relative; font-size:1.2em; line-height:1.6; letter-spacing:.02em; color:#4a3527;
border:0; border-bottom:1px solid #f0e2d0; padding:.1em 0 .35em .8em; margin:2.1em 0 .85em;
}
.article .entry-content h3::before{
content:""; position:absolute; left:0; top:.3em; height:1.05em; width:4px;
background:#d99a2b; border-radius:2px;
}
.article .entry-content h4{
font-size:1.05em; color:#6b4a30; border:0; border-bottom:2px dotted #ecdcc8;
padding:0 0 .3em; margin:1.9em 0 .7em;
}

.article .entry-content ul:not(.toc-list){ list-style:none; padding-left:1.45em; }
.article .entry-content ul:not(.toc-list) > li{ position:relative; margin:.55em 0; }
.article .entry-content ul:not(.toc-list) > li::before{
content:""; position:absolute; left:-1em; top:.78em; width:7px; height:7px;
background:#d99a2b; border-radius:2px; transform:rotate(45deg);
}
.article .entry-content ol{ list-style:none; counter-reset:dpol; padding-left:2.3em; }
.article .entry-content ol > li{ position:relative; margin:.55em 0; counter-increment:dpol; }
.article .entry-content ol > li::before{
content:counter(dpol); position:absolute; left:-2.1em; top:.3em;
width:1.6em; height:1.6em; line-height:1.6em; text-align:center;
background:#b5562d; color:#fff; border-radius:50%; font-size:.72em; font-weight:700;
}

.article .entry-content table{
border-collapse:separate; border-spacing:0; width:100%; background:#fff;
border:1px solid #ead9c6; border-radius:10px; overflow:hidden; font-size:.95em;
}
.article .entry-content table th{
background:#7b4a2e; color:#fff; font-weight:700; border:0;
border-bottom:1px solid #ead9c6; padding:.72em .9em; text-align:left; letter-spacing:.02em;
}
.article .entry-content table td{ border:0; border-bottom:1px solid #f0e4d6; padding:.72em .9em; }
.article .entry-content table tr:last-child td{ border-bottom:0; }
.article .entry-content table tbody tr:nth-child(even){ background:#fdf7ef; }

.article .entry-content blockquote{
position:relative; background:#fdf6ec; border:0; border-left:4px solid #e8c48a;
border-radius:0 10px 10px 0; padding:1.1em 1.3em 1.1em 2.6em; margin:1.9em 0; color:#4a4038;
}
.article .entry-content blockquote::before{
content:"\201C"; position:absolute; left:.45em; top:.1em;
font-family:Georgia,serif; font-size:2.6em; line-height:1; color:#e8c48a;
}
.article .entry-content blockquote p:last-child{ margin-bottom:0; }

.article .toc{
background:#fdf8f1; border:1px solid #ecdcc8; border-top:3px solid #b5562d;
border-radius:4px 4px 12px 12px; padding:1.25em 1.5em; margin:2.2em auto;
box-shadow:0 2px 8px rgba(122,74,43,.06);
}
.article .toc .toc-title{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
font-weight:700; color:#4a3527; font-size:1.06em; letter-spacing:.06em;
border-bottom:1px solid #ecdcc8; padding-bottom:.55em; margin-bottom:.75em; text-align:left;
}
.article .toc a{ color:#3a342e; text-decoration:none; }
.article .toc a:hover{ color:#b5562d; text-decoration:underline; }
.article .toc-list > li{ margin:.4em 0; }
.article .toc-list > li > a{ font-weight:600; }

.article .blogcard{
background:#fffdf9; border:1px solid #ecdcc8; border-radius:12px; box-shadow:none;
transition:box-shadow .15s ease, transform .15s ease;
}
.article .blogcard:hover{ box-shadow:0 4px 14px rgba(122,74,43,.12); transform:translateY(-1px); }
.article .blogcard-title{ color:#4a3527; font-weight:700; }

@media screen and (max-width:834px){
.article .entry-content{ line-height:1.92; }
.article .entry-title{ font-size:1.45em; }
.article .entry-content h2{ font-size:1.21em; padding:.62em .8em; margin:2.2em 0 .95em; }
.article .entry-content h3{ font-size:1.12em; margin:1.8em 0 .75em; }
.article .toc{ padding:1.05em 1.15em; }
.article .entry-content .wp-block-table,
.article .entry-content .scrollable-table,
.article .entry-content figure.wp-block-table{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.article .entry-content table{ min-width:520px; font-size:.9em; }
.article .entry-content table th, .article .entry-content table td{ padding:.6em .7em; }
}

/************************************
** 一覧・サイドバーのデザイン（2026-09-24 暖色。トップページ〈body.home〉には効かない）
** 元に戻すときは、この「一覧ページのデザイン」から下を丸ごと削除する
************************************/
body:not(.home){ background:#f7f3ec; }
body:not(.home) .main,
body:not(.home) #sidebar{ background:#fffdf9; border:1px solid #ecdcc8; border-radius:10px; }
body:not(.home) #header, body:not(.home) .header-container{ background:#fffdf9; }
body:not(.home) .footer{ background:#f4ece1; color:#6b5b4c; }

/* 記事カード（一覧） */
body:not(.home) .entry-card{ border-bottom:1px solid #f0e4d6; border-radius:8px; transition:background .15s ease; }
body:not(.home) .entry-card:hover{ background:#fdf8f1; }
body:not(.home) .entry-card-title{ color:#4a3527; font-weight:700; letter-spacing:.01em; }
body:not(.home) .entry-card:hover .entry-card-title{ color:#b5562d; }
body:not(.home) .entry-card-snippet{ color:#5b5348; }
body:not(.home) .entry-card-meta, body:not(.home) .post-date, body:not(.home) .post-update{ color:#9a8b7c; }
body:not(.home) .entry-card-thumb img, body:not(.home) .card-thumb img{ border-radius:8px; }
body:not(.home) .cat-label{ background:#b5562d; border:0; border-radius:4px; font-weight:700; }

/* 見出し・サイドバー */
body:not(.home) .archive-title, body:not(.home) .page-title{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
color:#4a3527; letter-spacing:.03em; border-bottom:2px solid #ecdcc8; padding-bottom:.4em;
}
body:not(.home) .widget-sidebar-title, body:not(.home) #sidebar h3{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
background:#fbf1e4; color:#4a3527; border:0; border-left:5px solid #b5562d;
border-radius:0 6px 6px 0; padding:.5em .8em; letter-spacing:.03em;
}
body:not(.home) #sidebar a{ color:#3a342e; }
body:not(.home) #sidebar a:hover{ color:#b5562d; }

/* ページ送り */
body:not(.home) .page-numbers{ border-radius:6px; border-color:#ecdcc8; color:#4a3527; }
body:not(.home) .page-numbers.current, body:not(.home) .pagination .current{ background:#b5562d; border-color:#b5562d; color:#fff; }
body:not(.home) .page-numbers:hover{ background:#fbf1e4; }

/* 関連記事・前後の記事 */
body:not(.home) .related-entry-card-title, body:not(.home) .navi-entry-card-title{ color:#4a3527; }
body:not(.home) .related-entry-card:hover, body:not(.home) .navi-entry-card:hover{ background:#fdf8f1; }
body:not(.home) .related-entry-heading, body:not(.home) .recommended-title{
font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;
color:#4a3527; letter-spacing:.03em;
}

/************************************
** 記事ページのデザイン v3（2026-09-28）
** 見出し・結論ボックス・ポイント/注意ボックス・商品カード・次に読む1本
** 元に戻すときは、この「記事ページのデザイン v3」から下を丸ごと削除する（v2の指定に戻る）
************************************/

/* 大見出し：縦の印＋下線（v2の帯を上書き）。記事側で「1．」などの番号を付けている見出しが多いため、自動の番号は付けない */
.article .entry-content > h2{
  background:none; border:0; border-bottom:3px solid #b5562d; border-radius:0;
  padding:.3em 0 .45em 1.05em; margin:2.9em 0 1.1em;
}
.article .entry-content > h2::before{
  content:""; position:absolute; left:0; top:.42em; bottom:.62em;
  width:7px; background:#b5562d; border-radius:4px;
}
/* 小見出し：点つき・控えめ */
.article .entry-content > h3{ border-bottom:0; padding:.1em 0 .2em 1.1em; }
.article .entry-content > h3::before{ top:.72em; width:8px; height:8px; border-radius:50%; background:#e9aa3d; }

/* 結論ボックス */
.article .entry-content .dp-summary{
  border:2px solid #183448; border-radius:10px; overflow:hidden; margin:1.6em 0 2em; background:#fffdf9;
}
.article .entry-content .dp-summary__title{
  background:#183448; color:#fffdf9; font-weight:700; font-size:.95em; padding:.6em 1em; margin:0;
  display:flex; align-items:center; gap:.5em;
}
.article .entry-content .dp-summary__title::before{ content:"\2713"; color:#e9aa3d; font-weight:700; }
.article .entry-content .dp-summary ol{ counter-reset:dpsum; margin:0; padding:.9em 1em 1em 3em; }
.article .entry-content .dp-summary ol > li{ counter-increment:dpsum; margin:.35em 0; line-height:1.75; }
.article .entry-content .dp-summary ol > li::before{ content:counter(dpsum); background:#e9aa3d; color:#2b1d12; }

/* ポイント・注意 */
.article .entry-content .dp-point,
.article .entry-content .dp-caution{
  border-radius:8px; padding:.9em 1.1em .9em 3em; margin:1.6em 0; position:relative; line-height:1.8;
}
.article .entry-content .dp-point{ background:#eaf4f1; }
.article .entry-content .dp-caution{ background:#fdf3dc; }
.article .entry-content .dp-point::before,
.article .entry-content .dp-caution::before{
  position:absolute; left:1em; top:.95em; width:1.4em; height:1.4em; line-height:1.4em; text-align:center;
  border-radius:50%; color:#fff; font-weight:700; font-size:.85em;
}
.article .entry-content .dp-point::before{ content:"i"; background:#1f6b62; }
.article .entry-content .dp-caution::before{ content:"!"; background:#8a5a00; }
.article .entry-content .dp-point__label,
.article .entry-content .dp-caution__label{ display:block; font-weight:700; font-size:.9em; margin-bottom:.2em; }
.article .entry-content .dp-point__label{ color:#1f6b62; }
.article .entry-content .dp-caution__label{ color:#8a5a00; }
.article .entry-content .dp-point p:last-child,
.article .entry-content .dp-caution p:last-child{ margin-bottom:0; }

/* 商品カード */
.article .entry-content .dp-product{
  position:relative; border:1px solid #e8dccb; border-radius:10px; background:#fff;
  padding:1.6em 1.1em 1.1em; margin:2em 0 1.6em;
}
.article .entry-content .dp-product__tag{
  position:absolute; top:-.85em; left:1em; background:#f4c9c4; color:#3e2a1e;
  font-size:.78em; font-weight:700; padding:.3em .9em; transform:rotate(-2deg);
}
.article .entry-content .dp-product__body{ display:flex; gap:1em; align-items:center; }
.article .entry-content .dp-product__img{ flex:0 0 120px; }
.article .entry-content .dp-product__img img{ width:120px; height:auto; border-radius:8px; box-shadow:none; }
.article .entry-content .dp-product__name{ font-weight:700; font-size:1.05em; line-height:1.5; margin:0 0 .3em; }
.article .entry-content .dp-product__fit{ font-size:.92em; line-height:1.7; color:#3e3a36; margin:0; }
.article .entry-content .dp-product__btns{ display:flex; flex-direction:column; gap:.5em; margin-top:1em; }
.article .entry-content .dp-product__btns a{
  display:flex; align-items:center; justify-content:center; min-height:46px; border-radius:8px;
  font-weight:700; font-size:.95em; text-decoration:none;
}
.article .entry-content .dp-btn-amazon{ background:#f2b544; color:#2b1d12 !important; }
.article .entry-content .dp-btn-rakuten{ background:#b8141b; color:#fff !important; }
.article .entry-content .dp-btn-yahoo{ background:#fff; color:#a80d26 !important; border:2px solid #c8102e; }
.article .entry-content .dp-btn-other{ background:#183448; color:#fff !important; }
.article .entry-content .dp-product__btns a:hover{ opacity:.88; }

/* 次に読むならこの1本 */
.article .entry-content .dp-next{
  display:block; border:2px solid #183448; border-radius:10px; overflow:hidden; background:#fff;
  margin:2em 0; text-decoration:none !important;
}
.article .entry-content .dp-next__label{
  display:block; background:#183448; color:#fffdf9; font-size:.88em; font-weight:700; padding:.55em 1em;
}
.article .entry-content .dp-next__label::after{ content:" \2192"; color:#e9aa3d; }
.article .entry-content .dp-next__inner{ display:flex; gap:1em; padding:1em; align-items:center; }
.article .entry-content .dp-next__inner img{ width:180px; flex:0 0 180px; height:auto; border-radius:6px; box-shadow:none; }
.article .entry-content .dp-next__title{ display:block; font-weight:700; font-size:1.05em; line-height:1.55; color:#2e2118; }
.article .entry-content .dp-next__desc{ display:block; font-size:.9em; line-height:1.7; color:#5a4d42; margin-top:.3em; }

@media screen and (max-width:834px){
  .article .entry-content > h2{ margin:2.3em 0 .95em; }
  .article .entry-content .dp-product__img, .article .entry-content .dp-product__img img{ flex-basis:96px; width:96px; }
  .article .entry-content .dp-next__inner{ flex-direction:column; align-items:stretch; }
  .article .entry-content .dp-next__inner img{ width:100%; flex:none; }
}