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

/* ================================
   Webフォント読み込み
   ================================ */
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Klee+One:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;1,400&display=swap');

/* ================================
   カラー変数
   ================================ */
:root {
  --color-text:        #333333;
  --color-text-soft:   #3a3530;
  --color-text-muted:  #888888;
  --color-link:        #44546A;
  --color-link-dark:   #2F4560;
  --color-gold:        #c9a84c;
  --color-gold-dark:   #b89c5a;
  --color-brown:       #4b3a2f;
  --color-bg:          #F7F5F0;
  --color-bg-card:     rgba(245,242,234,0.88);
  --color-border-gold: rgba(201,168,76,0.3);
}

/* ================================
   ベース
   ================================ */
html {
  color-scheme: light;
}

body,
.entry-content {
  color: var(--color-text);
}

/* テキストレンダリング改善（Cocoon既定を上書き） */
.entry-content {
  transform: rotate(0.05deg);
  }

/* ================================
   リンク
   ================================ */
.entry-content a,
.article a {
  color: var(--color-link);
  text-decoration: underline;
  text-decoration-color: rgba(68,84,106,0.4);
  text-underline-offset: 3px;
}

.entry-content a:visited,
.article a:visited {
  color: var(--color-link-dark);
}

.entry-content a:hover,
.article a:hover {
  color: var(--color-link-dark);
  text-decoration-color: var(--color-link);
}

/* ================================
   メタ情報（日付・カテゴリ等）
   ================================ */
.entry-meta,
.post-meta,
.meta-item {
  color: var(--color-text-muted);
}

/* 日付：公開日を表示 */
.post-date {
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  color: var(--color-text-muted);
  font-size: 0.85em;
}

.post-date time,
.post-date .entry-date,
.post-date .published {
  display: inline;
  color: var(--color-text-muted);
  font-size: 1em;
}

/* ================================
   コンテンツ幅
   ================================ */
#container {
  max-width: 100%;
}

#content {
  max-width: 1150px;
  margin: 0 auto;
}

/* ================================
   背景：格子パターン（コンテナ全体）
   ================================ */
.container {
  background-color: var(--color-bg) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,0) 95%, rgba(200,190,170,0.12) 100%),
    linear-gradient(90deg,  rgba(255,255,255,0) 95%, rgba(200,190,170,0.12) 100%) !important;
  background-size: 25px 25px !important;
}

/* メイン・サイドバー・記事エリアを透過 */
.article,
#content,
.entry-content,
.single .main,
.page .main,
.error404 .main,
.list,
.main,
.sidebar {
  background-color: transparent !important;
  background: transparent !important;
}

/* ================================
   ヘッダー
   ================================ */
#header-container {
  background-color: var(--color-bg);
  background-image:
    repeating-linear-gradient(to right,  rgba(120,130,140,0.15) 0, rgba(120,130,140,0.15) 1px, transparent 1px, transparent 100px),
    repeating-linear-gradient(to bottom, rgba(120,130,140,0.15) 0, rgba(120,130,140,0.15) 1px, transparent 1px, transparent 100px),
    repeating-linear-gradient(to right,  rgba(120,130,140,0.07) 0, rgba(120,130,140,0.07) 1px, transparent 1px, transparent 20px),
    repeating-linear-gradient(to bottom, rgba(120,130,140,0.07) 0, rgba(120,130,140,0.07) 1px, transparent 1px, transparent 20px);
  box-shadow:
    inset 0 -1px 0 rgba(0,0,0,0.08),
    inset 0  1px 0 rgba(255,255,255,0.6);
  margin-bottom: 30px;
}

/* ヘッダー内コンテナを透過 */
#header,
.header-container,
.header-container-in,
.logo-header,
.site-name-text {
  background-color: transparent !important;
  background-image: none !important;
}

.header-container-in {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 10px 0 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

.logo-header {
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  width: auto !important;
}

.logo-header img {
  max-height: 120px !important;
  width: auto !important;
  display: block !important;
  margin: 0 !important;
}

/* ================================
   ナビゲーション
   ================================ */
#navi,
#navi-in,
#navi .navi-in,
#navi .navi-wrap,
#navi .navi {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

#navi .navi-in,
#navi-in ul.menu-top {
  display: flex !important;
  justify-content: center !important;
  float: none !important;
  margin: 0 auto !important;
  padding: 0;
  align-items: center;
  gap: 18px;
}

#navi-in ul.menu-top {
  padding: 8px 0;
  display: inline-flex !important;
}

#navi-in ul.menu-top > li {
  margin: 0 !important;
}

#navi-in ul.menu-top a,
#navi .menu a {
  background: transparent !important;
}

#navi-in ul.menu-top > li > a {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--color-text-soft);
  text-decoration: none;
  text-underline-offset: 6px;
  text-decoration-thickness: 2px;
}

#navi-in ul.menu-top > li > a:hover {
  text-decoration: underline;
  text-decoration-color: #1f2f4a;
}

/* ================================
   サイドバー
   ================================ */
.sidebar h3,
.widget h2,
.sidebar h3.widget-title,
.sidebar h3.widget-sidebar-title {
  background-color: #dfc9a0 !important;
  border-bottom: 2px solid var(--color-gold) !important;
  padding: 0.4em 0.6em !important;
  font-family: "Zen Kaku Gothic Antique", sans-serif !important;
  font-weight: 500 !important;
  font-size: 1.1em !important;
}

.sidebar a,
.sidebar a:visited {
  color: var(--color-text-soft) !important;
}

#sidebar a {
  display: block;
  padding: 8px 10px;
  transition: all 0.2s ease;
}

#sidebar a:hover {
  background: rgba(184,156,90,0.08);
  border-left: 3px solid rgba(184,156,90,0.55);
  padding-left: 12px;
}

#sidebar .widget ul li,
#sidebar .widget ul li a {
  font-family: 'Klee One', cursive !important;
  font-weight: 600 !important;
}

/* ================================
   検索ボタン
   ================================ */
.search-submit,
.wp-block-search__button,
button.wp-block-search__button,
.wp-element-button.wp-block-search__button,
button.wp-element-button[type="submit"] {
  background: #dfc9a0 !important;
  font-family: "Zen Kaku Gothic Antique", sans-serif !important;
  font-weight: 500 !important;
  font-size: 18px !important;
}

.search-submit:hover,
.wp-block-search__button:hover {
  background: var(--color-gold-dark) !important;
  color: #1f2e45 !important;
  font-weight: 600;
  cursor: pointer;
}

.wp-block-search__label {
  display: none !important;
}

/* ================================
   記事見出し h1
   ================================ */
.entry-title {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-size: 1.9em !important;
  font-weight: 700 !important;
  border-bottom: 2px solid #c9a84c;
  padding-bottom: 0.3em;
}

/* ================================
   記事見出し h2 / h3 / h4–h6
   ================================ */
body .article h2,
body .entry-content h2,
body .singular-entry-content h2,
body .wp-block-heading.is-style-default {
  background: rgba(75, 58, 47, 0.06) !important;
  color: var(--color-text) !important;
  border-left: 4px solid var(--color-gold) !important;
  border-bottom: none !important;
  border-top: none !important;
  border-right: none !important;
  padding: 0.4em 0.75em !important;
  margin-top: 2em !important;
  margin-bottom: 0.4em !important;
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-size: 1.2em !important;
  font-weight: 600 !important;
}

body .article h3,
body .entry-content h3 {
  color: var(--color-text) !important;
  border-left: 3px solid #b8960c !important;
  padding-left: 0.6em !important;
  margin-top: 1.0em !important;
  margin-bottom: 0.0em !important;
  background: none !important;
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-weight: 600 !important;
}

body .article h4,
body .entry-content h4 {
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 500 !important;
  font-size: 1.1em !important;
  color: #6b4f3a !important;
  border: none !important;
  padding-left: 0 !important;
  margin-top: 1.8em !important;
  margin-bottom: 0.4em !important;
  background: none !important;
}

body .article h5,
body .entry-content h5,
body .article h6,
body .entry-content h6 {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-weight: 600 !important;
  color: var(--color-text) !important;
}

/* ================================
   記事本文
   ================================ */
.entry-content p {
  font-family: 'Klee One', cursive !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  line-height: 1.9;
  letter-spacing: 0.01em;
  margin-top: 0 !important;
  margin-bottom: 1.2em !important;
}

/* ================================
   記事ページ：不要な装飾を除去
   ================================ */
.single .main::before,
.single .main::after,
.page .main::before,
.page .main::after,
.error404 .main::before,
.error404 .main::after {
  display: none !important;
}

.single .eye-catch img,
.page .eye-catch img {
  padding: 0 !important;
  background-image: none !important;
  box-shadow: none !important;
}

.single .a-wrap,
.page .a-wrap,
.single .border-element,
.page .border-element {
  border: none !important;
}

/* ================================
   カード共通
   ================================ */

/* 枠線・影をリセット */
.a-wrap,
.entry-card-wrap,
.related-entry-card-wrap,
.blogcard-wrap,
.widget-entry-card-link,
.entry-card,
.related-entry-card,
.blogcard,
.e-card,
.border-element {
  border: none !important;
  box-shadow: none !important;
}

.a-wrap:hover {
  box-shadow: none !important;
}

/* カードタイトル */
.site-name-text,
.entry-card-title,
.widget-title,
.author-box .author-name {
  font-family: "Zen Kaku Gothic Antique", sans-serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
}

.author-box .author-name {
  font-size: 22px !important;
}

.entry-card-title {
  font-size: 1.2em;
  font-weight: 600;
  letter-spacing: 0.05em;
}

/* カード抜粋テキスト */
.entry-card-snippet,
.related-entry-card-snippet,
.card-snippet,
.e-card-snippet {
  font-family: 'Klee One', cursive !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

/* カード背景 */
.entry-card-content,
.related-entry-card-content {
  background-color: rgba(247, 245, 240, 0.9) !important;
}

.entry-card-large {
  border-left: 4px solid var(--color-gold-dark);
}

/* ================================
   一覧ページ：カード背景
   ================================ */
#list,
#list .a-wrap,
#list .entry-card-wrap,
#list .entry-card-wrap > .a-wrap,
#list .entry-card,
#list .e-card,
#list article {
  background-color: var(--color-bg) !important;
}

#list .entry-card,
#list .e-card,
#list article {
  background: var(--color-bg-card) !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
}

#list > a.entry-card-wrap {
  background: transparent !important;
}

#list .entry-card::before {
  background-color: var(--color-bg) !important;
}

/* ================================
   ヒーローカード（先頭カード）
   ================================ */
.ect-vertical-card-3 {
  align-items: stretch !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child {
  width: 100% !important;
  align-items: center !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child article {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  align-self: center !important;
  border-left: 4px solid rgba(201,162,77,0.8) !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-thumb {
  flex: 0 0 50% !important;
  width: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding-top: 0 !important;
  height: auto !important;
  min-height: 200px !important;
  overflow: hidden !important;
  align-self: stretch !important;
  position: relative !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-thumb img {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  display: block !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-content {
  width: 50% !important;
  padding: 1.5em !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-title {
  font-size: 1.4em !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-snippet {
  display: block !important;
  font-size: 1.0em !important;
  line-height: 1.75 !important;
  color: var(--color-text-soft) !important;
  letter-spacing: 0.01em !important;
  margin-top: 0.6em !important;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .a-wrap {
  background-color: rgba(250,250,248,0.5) !important;
  box-shadow: 0 4px 16px rgba(58,53,48,0.18) !important;
}

/* 小カードの高さを揃える */
.ect-vertical-card-3 .entry-card-wrap:not(:first-child),
.ect-vertical-card-3 .entry-card-wrap:not(:first-child) .a-wrap,
.ect-vertical-card-3 .entry-card-wrap:not(:first-child) article {
  display: flex !important;
  flex-direction: column !important;
}

.ect-vertical-card-3 .entry-card-wrap:not(:first-child) .a-wrap,
.ect-vertical-card-3 .entry-card-wrap:not(:first-child) article {
  flex: 1 !important;
}

/* ================================
   ホバー演出
   ================================ */

/* ヒーローカード */
#list > a:first-child {
  transition: all 0.25s ease;
}

#list > a:first-child:hover {
  filter: none !important;
  transform: translateY(-5px) scale(1.005);
  box-shadow:
    0 16px 36px rgba(0,0,0,0.14),
    0 0 0 2px rgba(184,156,90,0.25);
}

#list > a:first-child:hover img {
  transform: scale(1.03);
  filter: brightness(1.06);
  transition: 0.25s ease;
}

.ect-vertical-card-3 .entry-card-wrap:first-child .a-wrap:hover,
.ect-vertical-card-3 .entry-card-wrap:first-child .a-wrap:hover article {
  background: rgba(201,162,77,1) !important;
}

/* 小カード（2枚目以降） */
#list > a.entry-card-wrap:not(:first-child) {
  transition: all 0.2s ease;
}

#list > a.entry-card-wrap:not(:first-child):hover {
  filter: none !important;
  transform: translateY(-2px);
  background: rgba(184,156,90,0.06);
  box-shadow:
    0 8px 18px rgba(0,0,0,0.10),
    0 0 0 1px rgba(184,156,90,0.18);
}

#list > a.entry-card-wrap:not(:first-child):hover img {
  transform: scale(1.01);
  filter: brightness(1.03);
  transition: 0.2s ease;
}

/* ================================
   ブログカード
   ================================ */
.blogcard-wrap,
.blogcard {
  background-color: rgba(247,245,240,0.8) !important;
  border: 1px solid var(--color-border-gold) !important;
}

.blogcard-wrap:hover,
.blogcard:hover {
  background-color: rgba(201,168,76,0.25) !important;
  border-color: var(--color-gold) !important;
}

/* ================================
   カテゴリラベル
   ================================ */

/* カード上のラベル */
.cat-label,
.entry-card-category,
.cat-name,
.post-cat-label,
[class*="cat-label"] {
  background-color: #722F37 !important;
  color: #ffffff !important;
  border: none !important;
  font-weight: 600 !important;
  font-size: 0.78em !important;
  letter-spacing: 0.05em !important;
  padding: 3px 8px !important;
  border-radius: 2px !important;
  text-shadow: none !important;
}

/* 記事フッターのカテゴリラベル */
.entry-footer,
.post-footer,
.cat-box,
.entry-cats,
.post-cats,
.cats-and-tags,
.entry-categories,
.entry-categories-tags {
  background: transparent !important;
}

.entry-categories a.cat-link,
.entry-categories-tags a.cat-link {
  background-color: var(--color-brown) !important;
  color: #ffffff !important;
  font-size: 0.78em !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  padding: 3px 8px !important;
  border-radius: 2px !important;
  text-decoration: none !important;
}

.entry-categories a.cat-link .fa-folder,
.entry-categories a.cat-link .cat-icon,
.entry-categories-tags a.cat-link .fa-folder,
.entry-categories-tags a.cat-link .cat-icon {
  display: none !important;
}

/* ================================
   タグリンク
   ================================ */
.entry-tags a,
.post-tags a,
.tag-link,
a.tag-link {
  color: var(--color-link) !important;
  font-size: 1em !important;
}

.entry-tags a:visited,
.post-tags a:visited,
a.tag-link:visited {
  color: var(--color-link-dark) !important;
}

/* ================================
   著者ボックス
   ================================ */
.widget.author-box,
aside.author-box,
#author-box-2 {
  width: 100% !important;
  box-sizing: border-box !important;
  --cocoon-basic-font-size: 18px;
  --cocoon-default-text-size: 18px;
}

.widget.author-box .author-content,
aside.author-box .author-content {
  width: 100% !important;
  box-sizing: border-box !important;
}

.nwa .author-box .author-name {
  font-size: 1.2em;
}

.author-widget-name a,
.author-name a {
  font-family: 'Libre Baskerville', serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: var(--color-text-soft) !important;
}

.author-widget-name a:visited,
.author-name a:visited {
  color: var(--color-text-soft) !important;
}

body .author-description,
body .nwa .author-box .author-description,
body .author-box .author-description,
body #sidebar .author-description,
body .author-box .author-description p,
body .author-box p {
  font-family: 'Klee One', cursive !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  line-height: 2.0 !important;
  letter-spacing: 0.01em !important;
  color: var(--color-text-soft) !important;
}

body .author-box .author-description p,
body .author-box p {
  margin-bottom: 1em !important;
}

.author-box .author-description p:last-child,
.author-box p:last-child {
  margin-bottom: 0 !important;
}

.author-box .author-home,
.author-box .sns-follow-home,
.author-box .author-follows,
.author-box .sns-follow-buttons {
  display: none !important;
}

.author-name a,
.post-author a,
.author a,
.entry-footer .author {
  color: var(--color-text-soft) !important;
  font-size: 0.9em !important;
}

/* ================================
   アーカイブタイトル
   ================================ */
#archive-title {
  font-family: 'Libre Baskerville', serif !important;
  font-weight: 400 !important;
}

#archive-title .fa.fa-user {
  display: none;
}

#archive-title::before {
  content: "";
  display: inline-block;
  width: 36px;
  height: 36px;
  margin-right: 8px;
  vertical-align: -4px;
  border-radius: 50%;
  background: url("http://giju-c.chu.jp/BT01.png") center / cover no-repeat;
}

/* ================================
   コメント欄
   ================================ */
.comment-list .avatar,
.commentlist .avatar,
#comments img.avatar {
  display: none !important;
}

.comment-author a,
.comment-metadata a,
#comments .comment-author a,
#comments .comment-metadata a {
  color: var(--color-link) !important;
}

.comment-author a:visited,
.comment-metadata a:visited {
  color: var(--color-link-dark) !important;
}

.comment-author .fn,
.comment-author .fn a,
.comment-author a,
#comments .comment-author b,
#comments .comment-author b a {
  font-style: normal !important;
}

/* コメント送信ボタン */
#submit,
.comment-form input[type="submit"],
input#submit {
  background-color: #dfc9a0 !important;
  color: var(--color-text-soft) !important;
  border: 1px solid var(--color-gold) !important;
  font-family: "Zen Kaku Gothic Antique", sans-serif !important;
  font-weight: 500 !important;
  font-size: 17px !important;
  letter-spacing: 0.05em !important;
  padding: 0.6em 2em !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}

#submit:hover,
.comment-form input[type="submit"]:hover {
  background-color: var(--color-gold-dark) !important;
  color: #1f2e45 !important;
  font-weight: 600 !important;
}

/* コメントボタン */
.comment-btn {
  color: #4a3728 !important;
  border-color: rgba(184,156,90,0.6) !important;
  background: transparent !important;
}

.comment-btn::before {
  background-color: rgba(184,156,90,0.15) !important;
}

.comment-btn:hover {
  color: #4a3728 !important;
}

.comment-btn:hover::before {
  background-color: rgba(184,156,90,0.5) !important;
}

/* ================================
   最近のコメント（サイドバー）
   ================================ */
.recentcomments a,
.widget_recent_comments a,
.wp-block-latest-comments a,
.wp-block-latest-comments__comment-author,
.wp-block-latest-comments__comment-link {
  color: var(--color-link) !important;
  font-style: normal !important;
}

.wp-block-latest-comments,
.wp-block-latest-comments__comment-meta {
  font-size: 14px !important;
  display: block !important;
  line-height: 1.8 !important;
}

.wp-block-latest-comments__comment-link,
.wp-block-latest-comments__comment-author {
  font-size: 14px !important;
  display: inline !important;
}

.no-comments.wp-block-latest-comments,
.wp-block-latest-comments .no-comments,
.no-comments {
  font-family: 'Klee One', cursive !important;
  font-weight: 600 !important;
}

/* ================================
   フッター
   ================================ */
.footer {
  background-color: transparent;
  color: #4A3728;
}

#footer a {
  font-size: 18px;
}

.footer-menu {
  font-size: 16px;
}

#footer .footer-menu,
#footer .navi-footer {
  border-bottom: 1px solid rgba(0,0,0,.12);
  padding-bottom: 10px;
  margin-bottom: 10px;
}

/* ================================
   記事冒頭：リード文・グループ説明
   ================================ */
.article-summary {
  font-family: "Klee One", cursive;
  background: rgba(201,168,76,0.12) !important;
  border-left: 3px solid var(--color-gold) !important;
  padding: 0.7em 1em;
  border-radius: 0 6px 6px 0;
  margin-bottom: 1.2em;
}

.intro-list {
  display: flex;
  align-items: flex-start;
  gap: 0.4em;
  margin-top: 0 !important;
  margin-bottom: 5px !important;
  padding: 0.5em 0.8em;
  border-left: 4px solid #999;
  background: rgba(0,0,0,0.02);
}

.intro-label { flex: 0 0 4.5em; white-space: nowrap; font-weight: 500; }
.intro-text   { flex: 1; line-height: 1.9; }

.intro-list:nth-child(1) { border-left-color: #2b7ab5; }
.intro-list:nth-child(2) { border-left-color: #3a915e; }
.intro-list:nth-child(3) { border-left-color: #c07d28; }

/* ================================
   関連記事との境界
   ================================ */
.related-entries {
  border-top: 2px solid #ddd;
  margin-top: 2.5em;
  padding-top: 1.5em;
}

/* ================================
   冒頭比較表
   ================================ */
.comparison-table-wrap {
  overflow-x: auto;
  margin: 1.5em 0;
}

.comparison-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.85em;
  table-layout: fixed;
}

.comparison-table th:nth-child(1) { width: 10%; white-space: nowrap; }
.comparison-table th:nth-child(2) { width: 40%; }
.comparison-table th:nth-child(3) { width: 50%; }

.comparison-table th,
.comparison-table td {
  border: 1px solid #ddd;
  padding: 0.4em 0.7em;
  text-align: left;
  vertical-align: middle;
}

.comparison-table thead tr {
  background: var(--color-brown) !important;
  color: #f3ead7 !important;
}

.comparison-table tbody tr:nth-child(odd) {
  background: rgba(75,58,47,0.05) !important;
}

/* ================================
   レスポンシブ
   ================================ */

/* 2150px以上：ナビを絶対中央に */
@media (min-width: 2150px) {
  .header-container-in {
    position: relative;
  }
  #navi {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto;
  }
}

/* 768px〜2149px：ロゴ・ナビを縦積み中央に */
@media (max-width: 2149px) and (min-width: 768px) {
  .header-container-in {
    flex-direction: column !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 8px !important;
    justify-content: center !important;
  }
  .logo-header {
    margin: 0 auto !important;
    text-align: center !important;
    width: 100% !important;
  }
  .logo-header img {
    margin: 0 auto !important;
  }
  #navi {
    position: static !important;
    transform: none !important;
    width: 100% !important;
  }
  #navi-in ul.menu-top {
    justify-content: center !important;
  }
}

/* 1080px以下：モバイル用ロゴ */
@media screen and (max-width: 1080px) {
  .logo-header img {
    content: url('https://giju-c.chu.jp/wp-content/uploads/2026/02/title06m.png');
    max-height: 80px !important;
    margin: 0 auto !important;
    display: block;
  }
}

/* 834px以下：ヒーローカード縦積み・ナビ非表示 */
@media screen and (max-width: 834px) {
  #navi,
  #navi-in,
  .navi-in,
  .header-navi,
  #header-navi {
    display: none !important;
  }

  .ect-vertical-card-3 .entry-card-wrap:first-child article {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-thumb {
    width: 100% !important;
    flex: 0 0 auto !important;
    padding-top: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    position: static !important;
    overflow: visible !important;
  }

  .ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-thumb img {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
  }

  .ect-vertical-card-3 .entry-card-wrap:first-child .entry-card-content {
    width: 100% !important;
    min-height: 0 !important;
    padding: 0.8em 1em 1em !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
  }

  /* JSで挿入される抜粋・日付 */
  .ect-vertical-card-3 .entry-card-wrap:first-child .hero-snippet-injected {
    display: block !important;
    font-family: 'Klee One', cursive !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: var(--color-text-soft) !important;
    letter-spacing: 0.01em !important;
    margin: 0 0 0.8em !important;
  }

  .ect-vertical-card-3 .entry-card-wrap:first-child .hero-meta-injected {
    position: static !important;
    margin-top: 0 !important;
    text-align: right !important;
  }
}

/* 480px以下：必要に応じて追記 */
@media screen and (max-width: 480px) {}


