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

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

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

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

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

/* ===== jisalab 全ジャンル共通フッター（[jisalab_global_footer]） ===== */
/* wp_footer 自動出力時の外枠バー（Cocoonフッター下部に帯として表示） */
.jisalab-footer-bar{
  border-top:1px solid rgba(0,0,0,.08);
  background:rgba(0,0,0,.02);
  padding:20px 16px;
}
.jisalab-footer-bar .jisalab-global-footer{
  max-width:1080px;
  margin:0 auto;
}
.jisalab-global-footer{
  text-align:center;
  line-height:1.9;
  font-size:14px;
  padding:8px 0;
}
.jisalab-global-footer nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  justify-content:center;
  align-items:center;
  margin:6px 0;
}
.jisalab-global-footer .jgf-label{
  font-weight:700;
  opacity:.7;
  font-size:12px;
}
.jisalab-global-footer .jgf-genres a{
  font-weight:700;
}
.jisalab-global-footer a{
  text-decoration:none;
}
.jisalab-global-footer a:hover{
  text-decoration:underline;
}
.jisalab-global-footer .jgf-operator{
  font-size:12px;
  opacity:.75;
  margin:8px 0 0;
}

/* ===== jisalab ヘッダーロゴ（インラインSVG／currentColor） ===== */
.jisalab-logo-link{ display:inline-flex; align-items:center; text-decoration:none; }
.jisalab-logo{ display:inline-flex; line-height:0; color:inherit; }
.jisalab-logo svg{ height:32px; width:auto; display:block; }
/* ジャンル文字色は inline style の --jisalab-genre-color で決まる（SVG側で参照） */
@media screen and (max-width:768px){
  .jisalab-logo svg{ height:28px; }
}
@media screen and (max-width:480px){
  .jisalab-logo svg{ height:24px; max-width:72vw; }
}

/* ===== jisalab 記事フォーマット（Part2【D】の独自パーツ） ===== */
/* パーツ2: PR表記の冒頭バナー */
.pr-banner{
  margin:0 0 1.2em;
  padding:8px 14px;
  font-size:13px;
  line-height:1.6;
  background:#f3f4f6;
  border-left:4px solid #9ca3af;
  border-radius:4px;
  color:#4b5563;
}
.pr-banner strong{
  display:inline-block;
  margin-right:6px;
  padding:1px 6px;
  font-size:11px;
  background:#6b7280;
  color:#fff;
  border-radius:3px;
  letter-spacing:.05em;
}
/* パーツ3: 円換算料金表（横スクロール＋キャプション） */
.price-table{
  margin:1em 0;
  overflow-x:auto;
}
.price-table table{ width:100%; }
.price-table caption{
  caption-side:top;
  text-align:left;
  font-size:12px;
  color:#6b7280;
  padding:0 0 6px;
}
/* パーツ4: 検証スクリーンショット枠 */
.verify-shot{
  margin:1.2em 0;
  padding:8px;
  border:1px solid #e5e7eb;
  border-radius:8px;
  background:#fafafa;
}
.verify-shot img{
  display:block;
  width:100%;
  height:auto;
  border-radius:4px;
}
.verify-shot figcaption{
  margin-top:8px;
  font-size:12px;
  color:#6b7280;
  line-height:1.6;
}
/* 補足小テキスト（換算日・免責など） */
.micro-note{
  font-size:12px;
  color:#6b7280;
  line-height:1.6;
}
/* パーツ7: あわせて読みたい（文脈付き1〜2本・interlink追記対象） */
.also-read{ margin:.4em 0 0; padding:10px 14px; background:#f6f7f9; border-radius:8px; }
.also-read p{ margin:.3em 0; font-size:14px; line-height:1.7; }
.dark-mode .also-read{ background:#20242b; }

/* ダークスキン対応（Cocoonの暗背景時） */
.dark-mode .pr-banner{ background:#2b2f36; border-left-color:#6b7280; color:#c9ced6; }
.dark-mode .verify-shot{ background:#20242b; border-color:#333a44; }
.dark-mode .pr-banner strong{ background:#8a919c; }

/* ============================================================
** jisalab 記事の読みやすさ基準（全記事共通・2026-07-31）
** 本文の段落・見出し・リスト・表に余白リズムと視認性を与え、
** 「テキストが流し込まれただけ」の状態を防ぐ。
** .entry-content = Cocoonの本文ラッパ。アクセントはジャンル色
** （--jisalab-genre-color、無ければAI青 #2563eb）にフォールバック。
** ============================================================ */
.entry-content{
  font-size:16px;
  line-height:1.95;
  color:#2b2f36;
  overflow-wrap:break-word;
}
/* 段落: 行間と段落間マージンで“文の塊”を作る */
.entry-content p{ margin:0 0 1.5em; }
/* リード文（導入の最初の段落）は少し大きく */
.entry-content > p:first-of-type{ font-size:17px; }

/* 見出しH2: 上に大きな余白＋下線＋ジャンル色のアクセントバー */
.entry-content h2{
  font-size:1.5em;
  font-weight:700;
  line-height:1.5;
  margin:2.4em 0 .9em;
  padding:0 0 .45em .7em;
  border-bottom:2px solid #e6e8eb;
  position:relative;
}
.entry-content h2::before{
  content:"";
  position:absolute;
  left:0; top:.15em; bottom:.5em;
  width:5px; border-radius:3px;
  background:var(--jisalab-genre-color,#2563eb);
}
/* 見出しH3: 左のアクセントバー */
.entry-content h3{
  font-size:1.18em;
  font-weight:700;
  line-height:1.55;
  margin:1.9em 0 .6em;
  padding-left:.6em;
  border-left:4px solid var(--jisalab-genre-color,#2563eb);
}

/* リスト: インデント・行間・項目間の余白、マーカー色 */
.entry-content ul,
.entry-content ol{ margin:1.2em 0; padding-left:1.5em; }
.entry-content li{ margin:0 0 .55em; line-height:1.85; }
.entry-content ul > li::marker{ color:var(--jisalab-genre-color,#2563eb); }
.entry-content ol > li::marker{ color:var(--jisalab-genre-color,#2563eb); font-weight:700; }
.entry-content li > ul,
.entry-content li > ol{ margin:.5em 0; }

/* 強調・リンクの視認性 */
.entry-content a{ text-decoration:underline; text-underline-offset:2px; }

/* 表: 罫線・ヘッダ背景・余白で“読める表”に（price-table内の表にも適用） */
.entry-content table{
  border-collapse:collapse;
  width:100%;
  margin:1em 0;
  font-size:15px;
  line-height:1.7;
}
.entry-content th,
.entry-content td{
  border:1px solid #e5e7eb;
  padding:8px 12px;
  text-align:left;
  vertical-align:top;
}
.entry-content thead th{ background:#f3f4f6; font-weight:700; }

/* 図・枠まわりの縦リズム */
.entry-content figure{ margin:1.4em 0; }
.entry-content .blank-box{ margin:1.4em 0; }

/* モバイル */
@media screen and (max-width:480px){
  .entry-content{ font-size:15.5px; line-height:1.9; }
  .entry-content h2{ font-size:1.3em; margin:2em 0 .7em; }
  .entry-content h3{ font-size:1.1em; }
  .entry-content table{ font-size:14px; }
  .entry-content th, .entry-content td{ padding:6px 9px; }
}

/* ダークスキン */
.dark-mode .entry-content{ color:#d4d9e0; }
.dark-mode .entry-content h2{ border-bottom-color:#333a44; }
.dark-mode .entry-content th,
.dark-mode .entry-content td{ border-color:#333a44; }
.dark-mode .entry-content thead th{ background:#20242b; }

/* =====================================================================
 * jisalab デザインシステム v2（Part4確定 / docs/design のモックアップが正）
 *  - 重複する既存定義があっても本ブロックが後勝ちで優先される（Part4【5】5項）。
 *  - ジャンル色は functions.php が .genre-{slug} に --genre を出力して切替（Part1【2】接続）。
 * ===================================================================== */

/* 【2】1. デザイントークン（モックアップ :root と同一） */
:root{
  --paper:#FFFFFF;
  --paper-tint:#F6F7F9;
  --ink:#1A1D24;
  --ink-soft:#4A5060;
  --ink-faint:#7C8494;
  --line:#E5E7EB;
  --rule:#1A1D24;
  --indigo:#1D3A5F;        /* 基調色（藍） */
  --indigo-soft:#EDF2F8;
  --seal:#E51825;          /* 検証印の朱（印画像の実測色） */
  --genre:var(--indigo);   /* ジャンル色。ジャンル配下では functions.php が上書き */
}

/* 【2】3. 基本タイポグラフィ（本文16px / 行間1.9 / Noto Sans JP、見出しは明朝） */
.jisalab-body,
.entry-content{
  font-family:"Noto Sans JP",sans-serif;
  font-size:16px;
  line-height:1.9;
  color:var(--ink);
}
/* 見出しは Shippori Mincho（記事本文とjisalab独自テンプレート内に限定してCocoon全体との衝突を回避） */
.entry-content h1,.entry-content h2,.entry-content h3,
.jisalab-body h1,.jisalab-body h2,.jisalab-body h3{
  font-family:"Shippori Mincho",serif;
  font-weight:700;
}
/* h2 はモックアップどおり左4px縦ボーダー（色は --genre、非ジャンルは藍） */
.entry-content h2{
  border-left:4px solid var(--genre);
  border-bottom:none;          /* Cocoon既定の下線見出しを打ち消す */
  padding-left:14px;
  font-size:21.5px;
  line-height:1.6;
  margin:46px 0 14px;
}
.entry-content h3{
  font-size:17.5px;
  margin:30px 0 10px;
}
/* 本文リンクは藍（ジャンル配下は functions.php が --genre で上書き） */
.entry-content a{ color:var(--indigo); }

/* 【2】既存(別セッション)装飾との整合: Part4モックの見出し表現に統一する。
 *  - 旧h2の疑似要素アクセントバー(::before)と下線を無効化し、Part4の左ボーダーのみに。
 *  - 旧h3の左ボーダーは無くし、明朝ボールドのみに(モックアップ準拠)。 */
.entry-content h2::before{ content:none !important; }
.entry-content h3{ border-left:none; padding-left:0; }

/* 検証スクリーンショット枠(モック .shot)。Part2の .verify-shot と併存可 */
.shot{ margin:24px 0 28px; border:1px solid var(--line); }
.shot .img{ height:300px; background:var(--paper-tint); display:flex; align-items:center; justify-content:center; color:var(--ink-faint); font-size:12.5px; letter-spacing:.1em; }
.shot img{ display:block; width:100%; height:auto; }
.shot figcaption{ display:flex; justify-content:space-between; align-items:center; padding:10px 16px; font-size:12.5px; color:var(--ink-faint); border-top:1px solid var(--line); background:#fff; }
.shot figcaption .vdate{ display:inline-flex; align-items:center; gap:6px; color:var(--seal); font-weight:700; }

/* =====================================================================
 * 【5】記事ページ・ブロック（docs/design/jisalab_article_page.html が正）
 *  - 本文ブロックは .entry-content 配下にスコープしCocoon全体との衝突を防ぐ。
 *  - クラス名はモックアップと完全一致（write.md がこのクラスで出力する）。
 * ===================================================================== */

/* 要点(3行でわかる) */
.entry-content .summary{ border:1px solid var(--line); border-top:3px solid var(--indigo); padding:22px 26px; margin:0 0 28px; }
.entry-content .summary .label{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:14.5px; letter-spacing:.1em; margin-bottom:10px; color:var(--indigo); }
.entry-content .summary ul{ list-style:none; margin:0; padding:0; }
.entry-content .summary li{ font-size:15px; padding:7px 0 7px 20px; position:relative; border-bottom:1px dotted var(--line); }
.entry-content .summary li:last-child{ border-bottom:none; }
.entry-content .summary li::before{ content:""; position:absolute; left:2px; top:17px; width:8px; height:8px; background:var(--indigo); }

/* 目次(Cocoon自動目次に寄せる) */
.entry-content .toc{ background:var(--paper-tint); border:1px solid var(--line); padding:20px 26px; margin:0 0 40px; font-size:14.5px; }
.entry-content .toc .label{ font-family:"Shippori Mincho",serif; font-weight:700; letter-spacing:.14em; margin-bottom:10px; font-size:14px; }
.entry-content .toc ol{ margin-left:22px; }
.entry-content .toc ol ol{ margin:4px 0 6px; font-size:13.5px; }
.entry-content .toc li{ padding:2.5px 0; }
.entry-content .toc a{ text-decoration:none; }

/* 結論帯 */
.entry-content .kicker-answer{ font-size:15px; font-weight:700; color:var(--ink); background:var(--indigo-soft); padding:12px 16px; margin-bottom:18px; }

/* データ表 */
.entry-content table.data{ width:100%; border-collapse:collapse; margin:20px 0 8px; font-size:14.5px; }
.entry-content table.data th{ font-weight:700; text-align:left; font-size:13px; letter-spacing:.04em; border-top:2px solid var(--rule); border-bottom:1px solid var(--rule); padding:10px 12px; background:var(--paper-tint); }
.entry-content table.data td{ padding:11px 12px; border-bottom:1px solid var(--line); }
.entry-content table.data tr:last-child td{ border-bottom:2px solid var(--rule); }
.entry-content .table-note{ font-size:12.5px; color:var(--ink-faint); margin-bottom:24px; }

/* 日本の読者にとって(注記枠) */
.entry-content .jp-context{ border:1px solid var(--line); padding:24px 26px; margin:40px 0; background:var(--paper-tint); }
.entry-content .jp-context h2{ margin:0 0 12px; border-left-color:var(--seal); }
.entry-content .jp-context p{ margin-bottom:0; font-size:15.5px; }

/* 次に取る行動(チェックリスト) */
.entry-content .action{ border:1px solid var(--indigo); margin:36px 0; }
.entry-content .action .label{ background:var(--indigo); color:#fff; font-family:"Shippori Mincho",serif; font-weight:700; letter-spacing:.14em; font-size:14px; padding:10px 20px; }
.entry-content .action ul{ list-style:none; padding:16px 24px; margin:0; }
.entry-content .action li{ font-size:15px; padding:8px 0 8px 32px; position:relative; border-bottom:1px dotted var(--line); }
.entry-content .action li:last-child{ border-bottom:none; }
.entry-content .action li::before{ content:""; position:absolute; left:2px; top:16px; width:15px; height:15px; border:2px solid var(--indigo); border-radius:2px; }

/* FAQ(問答) — CocoonのFAQブロックCSS(.faq-item{display:flex})を打ち消し、Q/Aを縦積みにする */
.entry-content .faq-item{ display:block !important; border-bottom:1px solid var(--line); padding:18px 0; }
.entry-content .faq-item .q,
.entry-content .faq-item .a{ width:100%; }
.entry-content .faq-item .q span,
.entry-content .faq-item .a span{ min-width:0; }
.entry-content .faq-item .q{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:16px; margin-bottom:8px; display:flex; gap:10px; }
.entry-content .faq-item .q::before{ content:"問"; color:#fff; background:var(--indigo); flex:0 0 24px; height:24px; display:inline-flex; align-items:center; justify-content:center; font-size:13px; margin-top:4px; }
.entry-content .faq-item .a{ font-size:15px; color:var(--ink-soft); display:flex; gap:10px; }
.entry-content .faq-item .a::before{ content:"答"; color:var(--indigo); border:1px solid var(--indigo); flex:0 0 24px; height:24px; display:inline-flex; align-items:center; justify-content:center; font-size:13px; margin-top:4px; }
.entry-content .faq-item .a span{ flex:1; }

/* 出典・検証情報 */
.entry-content .sources{ margin-top:48px; border-top:2px solid var(--rule); padding-top:18px; }
.entry-content .sources .label{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:15px; letter-spacing:.12em; margin-bottom:12px; }
.entry-content .sources ul{ list-style:none; margin:0; font-size:13.5px; color:var(--ink-soft); }
.entry-content .sources li{ padding:5px 0; border-bottom:1px dotted var(--line); }
.entry-content .sources .vinfo{ display:flex; gap:26px; flex-wrap:wrap; margin-top:14px; font-size:12.5px; color:var(--ink-faint); background:var(--paper-tint); padding:12px 16px; }
.entry-content .sources .vinfo b{ color:var(--ink-soft); }

/* あわせて読みたい */
/* related-item の中は span(valid)。wpautopが項目を<p>で包み<br>を挿入するので、
   pの余白と<br>を無効化し、context/title の span を縦積みにする。 */
.entry-content p:empty{ display:none; }
.entry-content .related > p{ margin:0; }                    /* wpautopラッパpの余白を消す(隠さない) */
.entry-content .related br{ display:none; }                 /* wpautopの余分な<br>を除去 */
.entry-content .related-item .context,
.entry-content .related-item .title{ display:block; }       /* span を縦積み */
.entry-content .related{ margin-top:48px; }
.entry-content .related h2{ margin-top:0; }
.entry-content .related-item{ display:block; border:1px solid var(--line); padding:18px 22px; margin-bottom:14px; text-decoration:none; color:inherit; }
.entry-content .related-item .context{ font-size:13px; color:var(--ink-faint); margin-bottom:6px; }
.entry-content .related-item .title{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:16px; line-height:1.6; color:var(--ink); }
.entry-content .related-item .title::after{ content:" →"; color:var(--indigo); }

/* 【7】PR表記(冒頭・グレー12px・1行。景表法ステマ規制対応で末尾移動は不可) */
.entry-content .pr-note{ font-size:12px; color:var(--ink-faint); padding:8px 0 0; margin:0 0 26px; }
.entry-content .pr-note a{ color:var(--ink-faint); text-decoration:underline; }

/* 【6】検証済印(記事ヘッダー・verified_dateがある記事のみ /publish が出力) */
.jisalab-verified{ display:flex; align-items:center; gap:10px; margin:0 0 22px; padding:12px 0; border-top:1px solid var(--rule); border-bottom:1px solid var(--line); font-size:13px; color:var(--ink-soft); }
.jisalab-verified .seal{ width:44px; height:42px; flex:0 0 44px; display:block; }
.jisalab-verified .vdate{ color:var(--seal); font-weight:700; }
/* 一覧・サイドバー用の朱テキストラベル(画像は使わない) */
.jisalab-verified-text{ color:var(--seal); font-weight:700; font-size:12px; }

/* 【8】日本語初ラベル(既定オフ。JISALAB_SHOW_FIRST_JP=true のときのみ出力される) */
.entry-content .first-jp-label,
.jisalab-first-jp{ color:var(--seal); font-weight:700; font-size:12px; letter-spacing:.08em; margin-left:10px; }

/* =====================================================================
 * 【3】カスタムヘッダー（題字型 / コンパクト型）＋パンくず
 *  - PCは独自ヘッダー、Cocoon既定ヘッダー/パンくずを非表示。
 *  - モバイル(≤800px)は独自ヘッダーを隠しCocoonのハンバーガーに委ねる。
 * ===================================================================== */
.jisalab-header{ font-family:"Noto Sans JP",sans-serif; }

/* 題字型（TOP・ジャンルトップ） */
.jisalab-header.is-masthead{ max-width:1140px; margin:0 auto; padding:36px 24px 0; text-align:left; }
.jh-dateline{ font-size:12px; color:var(--ink-faint); letter-spacing:.12em; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); padding-bottom:10px; margin-bottom:26px; }
.jh-brand{ font-family:"Shippori Mincho",serif; font-size:46px; font-weight:800; letter-spacing:.06em; color:var(--ink); text-decoration:none; display:inline-block; }
.jh-brand em{ font-style:normal; color:var(--genre); }
.jh-tagline{ font-size:13.5px; color:var(--ink-soft); letter-spacing:.28em; margin-top:8px; }
.jh-nav{ max-width:1140px; margin:26px auto 0; border-top:3px double var(--rule); border-bottom:1px solid var(--rule); display:flex; justify-content:flex-start; flex-wrap:wrap; }
.jh-nav a{ font-family:"Shippori Mincho",serif; font-size:15px; font-weight:700; color:var(--ink); text-decoration:none; padding:12px 30px; letter-spacing:.14em; border-left:1px solid var(--line); }
.jh-nav a:first-child{ border-left:none; }
.jh-nav a.active{ color:var(--genre); }

/* コンパクト型（記事・下層ページ） */
.jisalab-header.is-compact{ border-bottom:1px solid var(--rule); }
.jisalab-header.is-compact .jh-inner{ max-width:1140px; margin:0 auto; padding:16px 24px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.jisalab-header.is-compact .jh-brand{ font-size:24px; }
/* 全体トップ("jisalab")への小リンク。看板がセクションTOPを指すジャンル配下でのみ表示。 */
.jh-home{ color:var(--ink-faint); text-decoration:none; }
.jh-home:hover{ text-decoration:underline; }
.jisalab-header.is-compact .jh-home-wrap{ font-size:12px; letter-spacing:.1em; margin-right:2px; white-space:nowrap; }
.jh-compact-nav{ display:flex; gap:26px; flex-wrap:wrap; }
.jh-compact-nav a{ font-family:"Shippori Mincho",serif; font-size:14px; font-weight:700; color:var(--ink); text-decoration:none; letter-spacing:.1em; }
.jh-compact-nav a.active{ color:var(--genre); border-bottom:2px solid var(--genre); padding-bottom:2px; }

/* パンくず */
.jh-breadcrumb{ max-width:1140px; margin:0 auto; padding:14px 24px 0; font-size:12.5px; color:var(--ink-faint); }
.jh-breadcrumb a{ color:var(--ink-faint); text-decoration:none; }
.jh-breadcrumb a:hover{ text-decoration:underline; }
.jh-breadcrumb .sep{ margin:0 7px; color:#C5CAD4; }

/* Cocoon既定ヘッダー/パンくずの制御（PCのみ独自ヘッダーに置換） */
@media screen and (min-width:801px){
  #header-container, #navi-in, #navi, .breadcrumb, #breadcrumb, .breadcrumbs{ display:none !important; }
}
/* モバイルは独自ヘッダーを隠し、Cocoonのモバイルメニュー（ハンバーガー）に委ねる */
@media screen and (max-width:800px){
  .jisalab-header{ display:none !important; }
}

/* =====================================================================
 * 【4】TOP / ジャンルトップ 一面構成（docs/design/jisalab_ui_v2.html が正）
 *  - .jisalab-front-sections にスコープ。front-page/ジャンルトップで Cocoon一覧(#content)は隠す。
 * ===================================================================== */
.jisalab-front #content{ display:none !important; }   /* Cocoon既定の一覧を隠し独自一面へ */

.jisalab-front-sections{ font-family:"Noto Sans JP",sans-serif; color:var(--ink); }
.jisalab-front-sections .seal-img{ width:44px; height:42px; display:inline-block; }
.jisalab-front-sections .seal-img.small{ width:34px; height:33px; }

/* 一面 */
.jisalab-front-sections .front{ max-width:1140px; margin:0 auto; padding:40px 24px 56px; display:grid; grid-template-columns:1.55fr 1fr; gap:0; }
.jisalab-front-sections .lead{ padding-right:36px; border-right:1px solid var(--line); }
.jisalab-front-sections .lead .cat{ font-size:12px; letter-spacing:.18em; color:var(--genre); font-weight:700; margin-bottom:12px; }
.jisalab-front-sections .lead h1{ font-family:"Shippori Mincho",serif; font-size:30px; font-weight:700; line-height:1.6; margin-bottom:16px; border:none; padding:0; }
.jisalab-front-sections .lead h1 a{ color:inherit; text-decoration:none; }
.jisalab-front-sections .lead .lede{ font-size:15.5px; color:var(--ink-soft); margin-bottom:18px; }
.jisalab-front-sections .lead .byline{ display:flex; align-items:center; gap:14px; font-size:12.5px; color:var(--ink-faint); }
.jisalab-front-sections .lead .thumb{ margin-top:24px; }
.jisalab-front-sections .lead .thumb img{ width:100%; height:auto; display:block; border:1px solid var(--line); }
.jisalab-front-sections .side{ padding-left:32px; }
.jisalab-front-sections .side h2{ font-family:"Shippori Mincho",serif; font-size:16px; font-weight:700; letter-spacing:.1em; border:none; border-bottom:1px solid var(--rule); padding:0 0 8px; margin:0 0 4px; }
.jisalab-front-sections .side-item{ display:flex; gap:14px; align-items:flex-start; padding:16px 0; border-bottom:1px solid var(--line); }
.jisalab-front-sections .side-item .txt h3{ font-family:"Shippori Mincho",serif; font-size:15.5px; font-weight:700; line-height:1.65; margin:0 0 6px; }
.jisalab-front-sections .side-item .txt h3 a{ color:inherit; text-decoration:none; }
.jisalab-front-sections .side-item .meta{ font-size:12px; color:var(--ink-faint); }
.jisalab-front-sections .side-item .meta .cat-ai{ color:var(--ai,#1D4E89); font-weight:700; }
.jisalab-front-sections .side-item .meta .cat-saas{ color:#0F5F58; font-weight:700; }
.jisalab-front-sections .side-item .meta .v{ color:var(--seal); font-weight:700; }

/* 編集方針バー */
.jisalab-front-sections .policy-bar{ background:var(--paper-tint); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.jisalab-front-sections .policy-inner{ max-width:1140px; margin:0 auto; padding:22px 24px; display:flex; align-items:center; gap:24px; }
.jisalab-front-sections .policy-inner p{ font-size:13.5px; color:var(--ink-soft); line-height:1.8; margin:0; }
.jisalab-front-sections .policy-inner p strong{ color:var(--ink); }
.jisalab-front-sections .policy-inner a{ color:var(--indigo); }

/* 下層ゾーン共通 */
.jisalab-front-sections .zone{ max-width:1140px; margin:0 auto; padding:46px 24px 6px; }
.jisalab-front-sections .zone-head{ display:flex; justify-content:space-between; align-items:baseline; border-bottom:2px solid var(--rule); padding-bottom:8px; margin-bottom:24px; }
.jisalab-front-sections .zone-head h2{ font-family:"Shippori Mincho",serif; font-size:20px; font-weight:700; letter-spacing:.08em; border:none; padding:0; margin:0; }
.jisalab-front-sections .zone-head .more{ font-size:12.5px; color:var(--ink-faint); text-decoration:none; }
.jisalab-front-sections .zone-head .tag{ font-size:12px; color:var(--ink-faint); letter-spacing:.04em; font-weight:400; }

/* カード */
.jisalab-front-sections .cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.jisalab-front-sections .card{ display:block; text-decoration:none; color:inherit; }
.jisalab-front-sections .card .thumb{ position:relative; min-height:152px; background:var(--paper-tint); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; color:var(--ink-faint); font-size:11.5px; letter-spacing:.08em; overflow:hidden; }
.jisalab-front-sections .card .thumb img:not(.seal-img){ width:100%; height:auto; display:block; }
/* 検証印は固定サイズ（サムネ100%ルールに巻き込まれないよう明示・右下） */
.jisalab-front-sections .card .thumb .seal-img{ width:44px; height:42px; max-width:44px; }
.jisalab-front-sections .card .thumb .seal-img.small{ width:34px; height:33px; max-width:34px; }
.jisalab-front-sections .card .thumb .seal-img{ position:absolute; right:8px; bottom:8px; }
.jisalab-front-sections .card .c-cat{ font-size:11.5px; letter-spacing:.16em; color:var(--genre); font-weight:700; margin:13px 0 4px; }
.jisalab-front-sections .card h3{ font-family:"Shippori Mincho",serif; font-size:16px; font-weight:700; line-height:1.6; margin:0; }
.jisalab-front-sections .card .c-meta{ font-size:12px; color:var(--ink-faint); margin-top:7px; }

/* ニュース + ランキング */
.jisalab-front-sections .split{ display:grid; grid-template-columns:1.6fr 1fr; gap:52px; align-items:start; }
.jisalab-front-sections .col-head{ font-family:"Shippori Mincho",serif; font-size:16px; font-weight:700; letter-spacing:.1em; border-bottom:1px solid var(--rule); padding-bottom:8px; margin-bottom:6px; }
.jisalab-front-sections .news-list{ list-style:none; margin:0; padding:0; }
.jisalab-front-sections .news-list li{ border-bottom:1px solid var(--line); }
.jisalab-front-sections .news-list a{ display:flex; gap:18px; align-items:baseline; padding:14px 0; text-decoration:none; color:inherit; }
.jisalab-front-sections .news-list .date{ font-size:12.5px; color:var(--ink-faint); flex:0 0 74px; }
.jisalab-front-sections .news-list .t{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:15.5px; line-height:1.7; }
.jisalab-front-sections .rank-list{ list-style:none; counter-reset:rk; margin:0; padding:0; }
.jisalab-front-sections .rank-list li{ border-bottom:1px solid var(--line); }
.jisalab-front-sections .rank-list a{ display:flex; gap:14px; padding:13px 0; text-decoration:none; color:inherit; align-items:flex-start; counter-increment:rk; }
.jisalab-front-sections .rank-list a::before{ content:counter(rk); font-family:"Shippori Mincho",serif; font-weight:800; font-size:21px; color:var(--indigo); flex:0 0 24px; line-height:1.35; }
.jisalab-front-sections .rank-list .t{ font-size:14px; font-weight:500; line-height:1.7; }
.jisalab-front-sections .rank-list .m{ font-size:11.5px; color:var(--ink-faint); }
.jisalab-front-sections .rank-list .m .v{ color:var(--seal); font-weight:700; }
/* 一面: 左カラム下部「ジャンルから探す」導線(余白活用・回遊/内部リンク強化) */
.jisalab-front-sections .front-disc{ margin-top:22px; padding-top:18px; border-top:1px solid var(--rule); }
.jisalab-front-sections .disc-head{ font-size:12px; letter-spacing:.14em; color:var(--ink-faint); font-weight:700; margin-bottom:12px; }
.jisalab-front-sections .disc-chips{ display:flex; flex-wrap:wrap; gap:10px; }
.jisalab-front-sections .disc-chip{ display:inline-block; padding:7px 14px; border:1px solid var(--genre); border-radius:999px; font-size:13px; font-weight:700; color:var(--genre); text-decoration:none; line-height:1.4; transition:background .15s, color .15s; }
.jisalab-front-sections .disc-chip:hover{ background:var(--genre); color:#fff; }

/* ニュースレター */
.jisalab-front-sections .newsletter{ max-width:1140px; margin:56px auto 0; padding:0 24px; }
.jisalab-front-sections .newsletter-inner{ border:1px solid var(--rule); padding:34px 42px; display:flex; justify-content:space-between; align-items:center; gap:32px; flex-wrap:wrap; }
.jisalab-front-sections .newsletter h2{ font-family:"Shippori Mincho",serif; font-size:23px; font-weight:800; letter-spacing:.1em; margin:0 0 6px; border:none; padding:0; }
.jisalab-front-sections .newsletter p{ font-size:13.5px; color:var(--ink-soft); line-height:1.8; margin:0; }
.jisalab-front-sections .nl-form{ display:flex; }
.jisalab-front-sections .nl-form input{ border:1px solid var(--rule); border-right:none; padding:12px 16px; font-size:14px; width:260px; font-family:inherit; }
.jisalab-front-sections .nl-form button{ background:var(--indigo); color:#fff; border:1px solid var(--indigo); padding:12px 28px; font-size:14px; cursor:not-allowed; font-family:"Shippori Mincho",serif; font-weight:700; letter-spacing:.12em; }
.jisalab-front-sections .nl-note{ max-width:1140px; margin:8px auto 0; padding:0 24px; font-size:12px; color:var(--ink-faint); }

/* 姉妹ジャンルゾーン */
.jisalab-front-sections .saas-zone{ padding-bottom:56px; }
.jisalab-front-sections .saas-zone .zone-head{ border-bottom-color:var(--genre); }
.jisalab-front-sections .saas-zone .zone-head h2{ color:var(--genre); }
.jisalab-front-sections .saas-zone .c-cat{ color:var(--genre); }

@media screen and (max-width:800px){
  .jisalab-front-sections .front{ grid-template-columns:1fr; }
  .jisalab-front-sections .lead{ padding-right:0; border-right:none; border-bottom:1px solid var(--line); padding-bottom:32px; }
  .jisalab-front-sections .side{ padding-left:0; padding-top:24px; }
  .jisalab-front-sections .cards{ grid-template-columns:1fr; }
  .jisalab-front-sections .split{ grid-template-columns:1fr; gap:36px; }
  .jisalab-front-sections .newsletter-inner{ flex-direction:column; align-items:stretch; text-align:center; }
  .jisalab-front-sections .nl-form input{ width:100%; }
}

/* ※旧「モバイルの並び順修正」ブロックは、【3】3で独自モバイルヘッダーへ全面移行し
 *   Cocoon既定ヘッダー(#header-container)をモバイルでも隠すため撤去（自然なDOM順で正しく並ぶ）。 */

/* =====================================================================
 * 【3】3 モバイルUI（ヘッダー/ドロワー/下部バー） docs/design/jisalab_mobile.html
 *  - Cocoon既定のモバイルヘッダー・下部バーを隠し、独自UIへ統一（ロゴ画像→明朝題字）。
 * ===================================================================== */
/* Cocoon既定ヘッダーは全幅で非表示（PC=独自題字, スマホ=独自モバイルヘッダーへ全面置換） */
#header-container{ display:none !important; }
/* Cocoon既定パンくずも非表示（独自 .jh-breadcrumb を使用） */
.breadcrumb, #breadcrumb, .breadcrumbs{ display:none !important; }
/* 既定は非表示。モバイルでのみ表示 */
.jisalab-mheader, .jisalab-overlay, .jisalab-drawer, .jisalab-bottombar{ display:none; }

@media screen and (max-width:800px){
  /* Cocoonのモバイル下部バー等を隠す */
  .mobile-menu-buttons, .mobile-footer-menu-buttons, #go-to-top{ display:none !important; }

  /* 上部ヘッダー(sticky) */
  .jisalab-mheader{
    display:flex; position:sticky; top:0; z-index:1000;
    background:rgba(255,255,255,.96); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
    border-bottom:1px solid var(--rule); align-items:center; justify-content:space-between; padding:12px 16px;
  }
  .jm-brand{ font-family:"Shippori Mincho",serif; font-size:21px; font-weight:800; letter-spacing:.05em; color:var(--ink); text-decoration:none; }
  .jm-brand em{ font-style:normal; color:var(--genre); }
  .jm-actions{ display:flex; gap:6px; }
  .jm-icon{ width:42px; height:42px; border:none; background:none; cursor:pointer; display:flex; flex-direction:column; align-items:center; justify-content:center; color:var(--ink); }
  .jm-icon svg{ width:22px; height:22px; }
  .jm-burger span{ display:block; width:22px; height:2px; background:var(--ink); margin:3.5px 0; }
  .jm-burger span:nth-child(2){ width:14px; margin-left:8px; }

  /* 下部固定バー */
  .jisalab-bottombar{
    display:grid; grid-template-columns:repeat(4,1fr); position:fixed; left:0; right:0; bottom:0; z-index:1000;
    background:rgba(255,255,255,.97); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); border-top:1px solid var(--rule);
  }
  .jisalab-bottombar a, .jisalab-bottombar button{
    border:none; background:none; cursor:pointer; text-decoration:none;
    display:flex; flex-direction:column; align-items:center; gap:2px; padding:9px 0 10px; color:var(--ink-soft);
  }
  .jisalab-bottombar svg{ width:21px; height:21px; }
  .jisalab-bottombar .bl{ font-family:"Shippori Mincho",serif; font-size:10px; font-weight:700; letter-spacing:.1em; }
  .jisalab-bottombar .jb-menu{ color:var(--indigo); }
  /* 本文が下部バーに隠れないよう余白 */
  #container{ padding-bottom:66px; }

  /* オーバーレイ＋ドロワー */
  .jisalab-overlay{ display:block; position:fixed; inset:0; background:rgba(20,29,36,.42); z-index:1100; opacity:0; pointer-events:none; transition:opacity .25s; }
  .jisalab-drawer{
    display:flex; position:fixed; top:0; right:0; bottom:0; width:84%; max-width:330px; z-index:1200;
    background:var(--paper); flex-direction:column; border-left:1px solid var(--rule);
    transform:translateX(102%); transition:transform .28s cubic-bezier(.2,.7,.2,1);
  }
  body.jisalab-menu-open .jisalab-overlay{ opacity:1; pointer-events:auto; }
  body.jisalab-menu-open .jisalab-drawer{ transform:translateX(0); }
  .jd-head{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px 12px; border-bottom:2px solid var(--rule); }
  .jd-brand{ font-family:"Shippori Mincho",serif; font-size:19px; font-weight:800; letter-spacing:.05em; }
  .jd-brand em{ font-style:normal; color:var(--genre); }
  .jd-tag{ font-size:10.5px; color:var(--ink-faint); letter-spacing:.14em; margin-top:2px; }
  .jd-close{ width:38px; height:38px; border:none; background:none; cursor:pointer; color:var(--ink); display:flex; align-items:center; justify-content:center; }
  .jd-close svg{ width:20px; height:20px; }
  .jd-scroll{ flex:1; overflow-y:auto; }
  .jd-search{ display:flex; margin:16px 16px 6px; }
  .jd-search input{ flex:1; border:1px solid var(--rule); border-right:none; padding:10px 14px; font-size:13.5px; font-family:inherit; min-width:0; }
  .jd-search button{ background:var(--indigo); color:#fff; border:1px solid var(--indigo); padding:10px 16px; font-family:"Shippori Mincho",serif; font-weight:700; font-size:13px; letter-spacing:.1em; cursor:pointer; }
  .jd-sec{ padding:14px 16px 4px; }
  .jd-label{ font-size:10.5px; letter-spacing:.2em; color:var(--ink-faint); font-weight:700; margin-bottom:2px; }
  .jd-nav{ list-style:none; margin:0; padding:0; }
  .jd-nav li{ border-bottom:1px solid var(--line); }
  .jd-nav a{ display:flex; align-items:center; justify-content:space-between; padding:14px 2px; text-decoration:none; color:var(--ink); }
  .jd-nav .t{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:16.5px; letter-spacing:.08em; }
  .jd-nav .c{ font-size:11px; color:var(--ink-faint); }
  .jd-nav .arrow{ color:var(--line); font-size:14px; }
  .jd-nav a.active .t{ color:var(--genre); }
  .jd-nav a.active{ box-shadow:inset 3px 0 0 var(--genre); padding-left:12px; }
  .jd-saas{ display:flex; align-items:center; justify-content:space-between; margin:14px 16px 0; border:1px solid var(--genre); padding:13px 16px; text-decoration:none; }
  .jd-saas .n{ font-family:"Shippori Mincho",serif; font-weight:800; font-size:15px; color:var(--genre); letter-spacing:.06em; display:block; }
  .jd-saas .d{ font-size:10.5px; color:var(--ink-faint); margin-top:1px; display:block; }
  .jd-saas .arrow{ color:var(--genre); }
  .jd-sub{ padding:18px 16px 8px; display:grid; grid-template-columns:1fr 1fr; gap:2px 14px; }
  .jd-sub a{ font-size:12.5px; color:var(--ink-soft); text-decoration:none; padding:7px 0; }
  .jd-foot{ border-top:1px solid var(--line); padding:14px 16px; display:flex; align-items:center; gap:12px; background:var(--paper-tint); }
  .jd-foot .seal-img{ width:38px; height:37px; }
  .jd-foot p{ font-size:11.5px; color:var(--ink-soft); line-height:1.65; margin:0; }
  .jd-foot b{ font-family:"Shippori Mincho",serif; letter-spacing:.06em; }
}

@media screen and (max-width:800px){
  /* 下部固定バーに最終要素が隠れないよう余白 */
  .jisalab-footer-bar{ margin-bottom:60px; }
}

/* =====================================================================
 * 【5】3 サイドバーウィジェット / 【5b】下層テンプレ（jisalab_subpages.html 準拠）
 * ===================================================================== */

/* --- サイドバーウィジェット（#sidebar 配下・child sidebar.php が出力） --- */
#sidebar .widget{ border:1px solid var(--line); margin-bottom:24px; background:#fff; }
#sidebar .widget .w-label{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:14px; letter-spacing:.12em; padding:11px 18px; border-bottom:1px solid var(--rule); background:var(--paper-tint); }
#sidebar .w-list{ list-style:none; margin:0; padding:0; }
#sidebar .w-list li{ border-bottom:1px solid var(--line); }
#sidebar .w-list li:last-child{ border-bottom:none; }
#sidebar .w-list a{ display:block; padding:13px 18px; text-decoration:none; color:var(--ink); }
#sidebar .w-list .w-title{ font-family:"Shippori Mincho",serif; font-weight:700; font-size:14px; line-height:1.65; display:block; }
#sidebar .w-list .w-meta{ font-size:11.5px; color:var(--ink-faint); }
#sidebar .w-list .w-meta .v{ color:var(--seal); font-weight:700; }
#sidebar .w-cats{ list-style:none; margin:0; padding:0; }
#sidebar .w-cats li{ border-bottom:1px solid var(--line); }
#sidebar .w-cats li:last-child{ border-bottom:none; }
#sidebar .w-cats a{ display:flex; justify-content:space-between; align-items:center; padding:11px 18px; text-decoration:none; color:var(--ink); font-size:14px; }
#sidebar .w-cats .count{ font-size:12px; color:var(--ink-faint); }
#sidebar .widget-policy{ border:1px solid var(--line); padding:16px 18px; margin-bottom:24px; display:flex; gap:14px; align-items:flex-start; font-size:12.5px; color:var(--ink-soft); line-height:1.7; background:#fff; }
#sidebar .widget-policy .seal-img{ width:34px; height:33px; flex:0 0 34px; }
#sidebar .widget-cross{ display:block; border:1px solid var(--line); padding:14px 18px; margin-bottom:24px; text-decoration:none; font-size:13px; color:var(--ink-soft); background:#fff; }
#sidebar .widget-cross b{ font-family:"Shippori Mincho",serif; color:var(--genre); font-size:15px; display:block; letter-spacing:.06em; margin-bottom:2px; }

/* --- 【5b】2 固定ページ：1カラム（最大768px）・サイドバーなし --- */
body.page #sidebar{ display:none !important; }
body.page #main, body.page .main{ width:100% !important; float:none !important; }
body.page .entry-content{ max-width:768px; margin-left:auto; margin-right:auto; }
body.page .entry-title{ font-family:"Shippori Mincho",serif; font-size:28px; font-weight:800; letter-spacing:.04em; max-width:768px; margin:0 auto; padding-bottom:16px; border-bottom:2px solid var(--rule); }

/* --- 【5b】1/3 アーカイブ・検索：見出しとエントリの整形（Cocoon .ect-entry-card を踏襲） --- */
.archive .archive-title, .search .archive-title, .page-title{ font-family:"Shippori Mincho",serif; font-weight:800; letter-spacing:.04em; }
#list.ect-entry-card .entry-card-wrap{ border:none; border-bottom:1px solid var(--line); border-radius:0; padding:22px 0; }
#list.ect-entry-card .entry-card-title, #list.ect-entry-card .card-title{ font-family:"Shippori Mincho",serif; font-weight:700; line-height:1.6; }
#list.ect-entry-card .entry-card-snippet{ color:var(--ink-soft); }
#list.ect-entry-card .cat-label, #list.ect-entry-card .category-label{ font-weight:700; }
/* 【5b】1/3 追補(2026-09-22): 一覧カードをモックアップ(docs/design/jisalab_subpages.html .row-list)に合わせる。
   サムネ上の「AI」ラベルがアイキャッチの見出し文字に重なる/抜粋12.8px・行間1.3で詰まる/日付が右下に離れる、を修正 */
#list.ect-entry-card .entry-card-thumb .cat-label{ display:none; }
#list.ect-entry-card .entry-card-thumb{ width:240px; }
#list.ect-entry-card .entry-card-content{ margin-left:262px; padding-bottom:0; }
#list.ect-entry-card .entry-card-title{ font-size:18px; margin-bottom:6px; }
#list.ect-entry-card .entry-card-snippet{ font-size:13.5px; line-height:1.75; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
#list.ect-entry-card .entry-card-meta{ position:static; clear:none; text-align:left; margin-top:8px; font-size:12px; }
#list.ect-entry-card .entry-card-info{ justify-content:flex-start; }
@media (max-width:834px){
  #list.ect-entry-card .entry-card-thumb{ width:38%; }
  #list.ect-entry-card .entry-card-content{ margin-left:calc(38% + 14px); }
  #list.ect-entry-card .entry-card-title{ font-size:15px; }
  #list.ect-entry-card .entry-card-snippet{ display:none; }
}

/* --- 【5b】4 404 --- */
.jisalab-404{ max-width:640px; margin:0 auto; padding:72px 24px 96px; text-align:center; }
.jisalab-404 .code{ font-family:"Shippori Mincho",serif; font-size:64px; font-weight:800; color:var(--indigo); letter-spacing:.1em; line-height:1; }
.jisalab-404 h1{ font-family:"Shippori Mincho",serif; font-size:22px; font-weight:700; margin:18px 0 10px; border:none; padding:0; }
.jisalab-404 p{ font-size:14.5px; color:var(--ink-soft); margin-bottom:28px; }
.jisalab-404 .search-form{ display:flex; max-width:420px; margin:0 auto 32px; }
.jisalab-404 .search-form input{ flex:1; border:1px solid var(--rule); border-right:none; padding:11px 16px; font-size:14px; font-family:inherit; min-width:0; }
.jisalab-404 .search-form button{ background:var(--indigo); color:#fff; border:1px solid var(--indigo); padding:11px 24px; font-size:14px; cursor:pointer; font-family:"Shippori Mincho",serif; font-weight:700; letter-spacing:.12em; }
.jisalab-404 .links{ display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
.jisalab-404 .links a{ border:1px solid var(--line); padding:10px 22px; text-decoration:none; color:var(--ink); font-family:"Shippori Mincho",serif; font-weight:700; font-size:14px; letter-spacing:.08em; }
.jisalab-404 .links a:hover{ border-color:var(--indigo); color:var(--indigo); }

/* 【5b】4 404 は1カラム（サイドバー非表示） */
body.error404 #sidebar{ display:none !important; }
body.error404 #main, body.error404 .main{ width:100% !important; float:none !important; }

/* =====================================================================
 * Part4 ダークフッター（jisalab_render_global_footer が出力）
 *  - Cocoon既定フッターは隠し、独自ダークフッターに統一。
 * ===================================================================== */
#footer{ display:none !important; }   /* Cocoon既定フッターを隠す */

.jisalab-site-footer{ background:var(--ink); color:#AEB4C2; padding:44px 24px; font-size:13px; }
.jisalab-site-footer .footer-inner{ max-width:1140px; margin:0 auto; display:flex; justify-content:space-between; align-items:flex-start; gap:40px; flex-wrap:wrap; }
.jisalab-site-footer .fbrand{ font-family:"Shippori Mincho",serif; font-size:22px; font-weight:700; color:#fff; letter-spacing:.06em; margin-bottom:10px; display:inline-block; text-decoration:none; }
.jisalab-site-footer a{ color:#AEB4C2; text-decoration:none; margin-right:18px; line-height:2.2; }
.jisalab-site-footer a:hover{ color:#fff; }
.jisalab-site-footer .genres{ margin-bottom:6px; }
.jisalab-site-footer .genres a{ color:#fff; font-family:"Shippori Mincho",serif; letter-spacing:.08em; }
.jisalab-site-footer .fpolicies{ margin-top:8px; }
.jisalab-site-footer .corp{ text-align:right; color:#8A93A6; line-height:1.9; }

@media screen and (max-width:800px){
  .jisalab-site-footer{ margin-bottom:60px; }   /* 下部固定バー分の余白 */
  .jisalab-site-footer .footer-inner{ gap:24px; }
  .jisalab-site-footer .corp{ text-align:left; }
}

/* =====================================================================
 * カテゴリ一覧の記事カードに「検証済」表示（jisalab-verified-post）
 * ===================================================================== */
/* サムネイル右下に検証済印を重ねる */
.jisalab-verified-post .entry-card-thumb,
.jisalab-verified-post .card-thumb{ position:relative; }
.jisalab-verified-post .entry-card-thumb::after{
  content:""; position:absolute; right:6px; bottom:6px; width:38px; height:36px; z-index:3;
  background:url("assets/seal_kensho.svg") center/contain no-repeat;
  filter:drop-shadow(0 0 2px rgba(255,255,255,.9));
}
/* メタ行の先頭に朱の「検証済」ラベル */
.jisalab-verified-post .entry-card-meta::before,
.jisalab-verified-post .card-meta::before{
  content:"検証済"; color:var(--seal); font-weight:700; margin-right:8px;
}
