/* =====================================================================
   40 Pages — ページ・テンプレート固有
   記事詳細（コラム・セミナー・活用例・導入事例）／一覧／TOP／士業（professional）／会社概要
   新しいページ固有の調整はこのファイルの該当ブロックに追記する
   ===================================================================== */

/* コラム・セミナー・活用例 記事詳細：見出しの見せ方（easyforensics風・詳細ページのみ）
/* h2＝紺地×白文字の帯／h3＝紺の破線アンダーライン
/* --------------------------------------------------------------- */
body.single-column .entry-content h2.wp-block-heading,
body.single-seminar .entry-content h2.wp-block-heading {
	background: var(--ef-brand-navy);
	color: #fff;
	padding: .55rem .9rem;
	font-size: clamp(1.2rem, 1rem + 0.9vw, 1.45rem);
	line-height: 1.5;
	margin-block-start: clamp(2.5rem, 1.8rem + 2.5vw, 3.5rem);
}
body.single-column .entry-content h2.wp-block-heading::before,
body.single-seminar .entry-content h2.wp-block-heading::before { content: none; }
body.single-column .entry-content h3.wp-block-heading,
body.single-seminar .entry-content h3.wp-block-heading {
	color: var(--ef-brand-navy);
	border-bottom: 2px dashed var(--ef-brand-navy);
	padding-bottom: .4rem;
	font-size: clamp(1.05rem, 0.95rem + 0.5vw, 1.25rem);
	margin-block-start: clamp(2rem, 1.5rem + 1.5vw, 2.75rem);
}

/* カラムカード共通：内側パディング（きつきつ解消。機能/実績/解決策/本格調査など） */
.home .entry-content .wp-block-columns .wp-block-column { padding: clamp(1.4rem, 1rem + 1vw, 1.85rem) clamp(1.2rem, 1rem + .8vw, 1.55rem); }

/* 導入事例・コラムのカード（post-template grid）：画像は上端フル、テキストにパディング */
.home .wp-block-post-template.is-layout-grid > li > .wp-block-post-featured-image { margin: 0; }
.home .wp-block-post-template.is-layout-grid > li > *:not(.wp-block-post-featured-image) { padding-left: 1.1rem; padding-right: 1.1rem; }
.home .wp-block-post-template.is-layout-grid > li > .wp-block-post-featured-image + * { padding-top: 1rem; }
.home .wp-block-post-template.is-layout-grid > li > *:last-child { padding-bottom: 1.2rem; }

/* コラム：日付＋カテゴリを1行、カテゴリはラベル（チップ）表示 */
.home .kl-meta-row { display: flex; flex-wrap: nowrap; align-items: center; gap: .6rem; }
.home .kl-meta-row .wp-block-post-date { margin: 0; color: var(--ef-muted); font-size: .8rem; white-space: nowrap; }
.home .kl-cat-label { margin: 0; line-height: 1; }
.home .kl-cat-label a {
	display: inline-block; background: rgba(27,42,74,.08); color: var(--ef-brand-navy);
	font-size: .72rem; padding: .18rem .6rem; border-radius: 999px; text-decoration: none; white-space: nowrap;
}

/* ヘッダー直下のヒーロー(cover)に付く上マージンを除去（TOPのみ） */
body.home .entry-content > .wp-block-cover{ margin-block-start: 0 !important; }

/* =============================================================== */
/* 活用例(casestudy)：一覧カード＆詳細の統一（画像なしでも密度と統一感）*/
/* --------------------------------------------------------------- */
/* 一覧カード：フレックス縦・業種チップ・詳細CTAを下部に固定 */
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li{ display:flex; flex-direction:column; border-top:4px solid var(--ef-brand-navy) !important; padding:1.5rem 1.6rem !important; }
body.post-type-archive-casestudy .wp-block-post-terms.taxonomy-casestudy_industry{ align-self:flex-start; margin:0 0 .9rem !important; background:var(--ef-brand-navy); border-radius:999px; padding:.22rem .8rem; text-align:left; }
body.post-type-archive-casestudy .wp-block-post-terms.taxonomy-casestudy_industry,
body.post-type-archive-casestudy .wp-block-post-terms.taxonomy-casestudy_industry a{ color:#fff !important; text-decoration:none; font-size:.72rem; font-weight:700; }
body.post-type-archive-casestudy .wp-block-post-excerpt{ color:var(--ef-muted); }
body.post-type-archive-casestudy .wp-block-post-excerpt__excerpt{ margin:0; line-height:1.75; }
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li::after{ content:"詳細を見る →"; margin-top:auto; color:var(--ef-gold); font-weight:700; font-size:.85rem; }

/* 詳細：業種＝ゴールドのエイブロー（左寄せ）／シーン＝チップ */
body.single-casestudy .taxonomy-casestudy_industry,
body.single-casestudy .taxonomy-casestudy_industry a{ color:var(--ef-gold) !important; font-weight:700; letter-spacing:.12em; text-decoration:none; }
body.single-casestudy .taxonomy-casestudy_industry{ text-align:left !important; margin-bottom:.3rem !important; }
body.single-casestudy .taxonomy-casestudy_industry a{ display:inline-block !important; text-align:left !important; }
body.single-casestudy .taxonomy-casestudy_scene{ text-align:left !important; margin-top:.4rem !important; }
body.single-casestudy .taxonomy-casestudy_scene a{ display:inline-block; background:rgba(27,42,74,.08); color:var(--ef-brand-navy) !important; border-radius:999px; padding:.2rem .8rem; font-size:.78rem; text-decoration:none; }

/* casestudy一覧：間延び解消（内容高さにフィット）＋タイトル拡大 */
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid{ grid-auto-rows:auto !important; align-items:start !important; }
body.post-type-archive-casestudy .wp-block-post-title{ font-size:1.4rem !important; line-height:1.5 !important; margin:.25rem 0 .7rem !important; }
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li::after{ padding-top:1.2rem !important; }

/* ===== コラム詳細：メタ行・アイキャッチ・前後記事ナビ ===== */
/* 日付＋カテゴリを1行に */
body.single-column .kl-entry-meta{align-items:center;gap:8px 14px;margin-bottom:10px}
body.single-column .kl-entry-meta .wp-block-post-date{margin:0;color:var(--ef-slate-500);font-size:14px;line-height:1.4}
body.single-column .kl-entry-meta .wp-block-post-terms{margin:0;font-size:0}
body.single-column .kl-entry-meta .wp-block-post-terms a{display:inline-block;background:var(--ef-cyan-100);color:var(--ef-cyan-700);font-size:12px;font-weight:700;letter-spacing:.02em;padding:3px 12px;border-radius:999px;text-decoration:none;line-height:1.6}
body.single-column .kl-entry-meta .wp-block-post-terms a:hover{background:var(--ef-cyan);color:#fff}
/* アイキャッチを約2/3に縮小（鮮明化）・中央寄せ */
body.single-column .kl-entry-thumb{max-width:66%;margin-left:auto;margin-right:auto}
@media(max-width:782px){ body.single-column .kl-entry-thumb{max-width:100%} }
/* 前後記事ナビ */
.kl-post-nav{border-top:1px solid var(--ef-line);border-bottom:1px solid var(--ef-line);padding:18px 4px;margin-top:40px;gap:16px}
.kl-post-nav .wp-block-post-navigation-link{font-size:14px;max-width:48%}
.kl-post-nav .wp-block-post-navigation-link:last-child{text-align:right}
.kl-post-nav .wp-block-post-navigation-link a{color:var(--ef-cyan);text-decoration:none;font-weight:700}
.kl-post-nav .wp-block-post-navigation-link a:hover{text-decoration:underline}

/* ===== セミナー/コラム アーカイブ：見出しまわりの余白（窮屈感の解消） ===== */
/* アーカイブ見出しの余白 */
body.post-type-archive-seminar main > .wp-block-heading,
body.post-type-archive-column main > .wp-block-heading{margin-top:64px;margin-bottom:28px}
/* ナビ―ヒーロー直後の最初の見出しにも十分な間隔 */
body.post-type-archive-seminar main > .alignfull.ef-section + .wp-block-heading,
body.post-type-archive-column main > .alignfull.ef-section + .wp-block-heading{margin-top:56px}
/* 見出し直下のクエリ／段落の上マージンを詰めすぎない */
body.post-type-archive-seminar main > .wp-block-query,
body.post-type-archive-column main > .wp-block-query{margin-top:8px}


/* ===== professional サービス：カードグリッド（2×2）でリッチ化 ===== */
.ef-svc-grid{gap:24px}
.entry-content .ef-svc-grid .ef-svc-card{position:relative;background:#fff !important;border:1px solid var(--ef-line) !important;border-radius:12px;padding:28px 26px 24px;transition:.2s;overflow:hidden;height:100%}
.ef-svc-card .ef-svc-num{position:absolute;top:12px;right:18px;margin:0 !important;font-family:Arial,Helvetica,sans-serif;font-size:46px;font-weight:800;line-height:1;color:var(--ef-cyan-100);pointer-events:none}
.ef-svc-card h3{font-size:19px;margin:0 0 14px !important;padding-right:52px;color:var(--ef-brand-navy);line-height:1.5}
.ef-svc-card h3::before{content:"";display:block;width:36px;height:3px;background:var(--ef-cyan-500);border-radius:2px;margin-bottom:12px}
.ef-svc-card ul{margin:0 0 14px;padding-left:1.1em}
.ef-svc-card ul li{font-size:14px;line-height:1.75;color:var(--ef-slate-600);margin-bottom:4px}
.ef-svc-card > p{margin:0;font-size:14.5px;line-height:1.8}
.ef-svc-card p strong{color:var(--ef-cyan-700)}
@media(max-width:781px){ .ef-svc-grid{grid-template-columns:1fr !important} }

/* ===================================================================== */
/* 会社概要（/company/）：静謐・誠実・確実のトーン                          */
/* ゴシック（中字・字間広め）見出し／ヘアライン区切り／抑えたゴールドのアクセント／読み幅880px      */
/* ===================================================================== */
body.page.company{--co-body:#3F4B5E;--co-mute:#7B8798;--co-line:#DDE2EA}

/* 英字キッカー：シアン→落ち着いたグレー＋ゴールドの細線 */
body.page.company .entry-content > .ef-section:not(.has-ef-navy-background-color) p.is-style-ef-kicker{color:var(--co-mute) !important;font-size:11.5px;font-weight:600;letter-spacing:.28em;gap:12px}
body.page.company .entry-content > .ef-section:not(.has-ef-navy-background-color) p.is-style-ef-kicker::before{width:20px;height:1px;background:var(--ef-gold)}

/* ヒーロー（FV）は他ページと共通のスタイルに統一（会社概要独自の上書きはしない） */

/* セクション見出し h2：帯をやめ、中字・字間広め＋下に短いゴールドの細線 */
body.page.company .entry-content h2.wp-block-heading{background:none !important;color:var(--ef-brand-navy) !important;padding:0 !important;border-radius:0 !important;font-family:var(--ef-font-sans);font-weight:500;font-size:clamp(22px,1.2rem + .9vw,28px);letter-spacing:.1em;line-height:1.6;margin-block-end:48px !important}
body.page.company .entry-content h2.wp-block-heading::before{content:none !important}
body.page.company .entry-content h2.wp-block-heading::after{content:"";display:block;width:40px;height:1px;background:var(--ef-gold);margin:22px auto 0}
body.page.company .entry-content h2.wp-block-heading:not(.has-text-align-center)::after{margin-left:0}

/* 読み幅：本文系は880pxに（図版は従来幅） */
body.page.company .entry-content > .ef-section:not(.has-ef-navy-background-color) > :is(h3,p:not(.is-style-ef-kicker),ul,ol,.wp-block-table,.wp-block-media-text,.wp-block-buttons){max-width:880px}

/* 小見出し h3：破線をやめ、上ヘアラインで区切る「行」の表現に */
body.page.company .entry-content .ef-section > h3.wp-block-heading{border:0 !important;border-top:1px solid var(--co-line) !important;padding:28px 0 0 !important;margin-block-start:28px !important;font-size:18px;font-weight:600;letter-spacing:.04em;line-height:1.7;color:var(--ef-brand-navy)}
body.page.company .entry-content .ef-section > h2 + h3.wp-block-heading{margin-block-start:0 !important}
body.page.company .entry-content .ef-section > h3 + p{margin-block-start:10px !important;color:var(--co-body);line-height:2}
body.page.company .entry-content .ef-section > h3 + p:not(:has(~ h3)){padding-bottom:28px;border-bottom:1px solid var(--co-line)}
body.page.company .entry-content .ef-section > h3 + :is(ul,ol,.wp-block-media-text){margin-block-start:16px !important}

/* 選ばれる理由：01〜の通し番号（他ページの番号と同じ欧文・ゴールド） */
body.page.company .kl-co-why{counter-reset:coWhy}
body.page.company .entry-content .kl-co-why > h3.wp-block-heading{counter-increment:coWhy}
body.page.company .entry-content .kl-co-why > h3.wp-block-heading::before{content:counter(coWhy,decimal-leading-zero);display:block;font-family:var(--ef-font-num);font-size:13px;font-weight:600;letter-spacing:.2em;color:var(--ef-gold);margin-bottom:6px}

/* よくあるご質問：Q／A を他ページの番号と同じ欧文で */
body.page.company .entry-content .kl-co-faq > h3.wp-block-heading,
body.page.company .entry-content .kl-co-faq > h3 + p{position:relative;padding-left:40px !important}
body.page.company .entry-content .kl-co-faq > h3.wp-block-heading::before{content:"Q";position:absolute;left:4px;top:25px;font-family:var(--ef-font-num);font-size:21px;font-weight:600;color:var(--ef-gold)}
body.page.company .entry-content .kl-co-faq > h3 + p::before{content:"A";position:absolute;left:5px;top:-1px;font-family:var(--ef-font-num);font-size:19px;font-weight:600;color:var(--co-mute)}
body.page.company .entry-content .kl-co-faq > .wp-block-buttons{margin-block-start:48px !important}

/* 箇条書き：丸アイコン→小さなゴールドの角点＋ヘアライン区切り */
body.page.company .entry-content ul.wp-block-list:not(.is-style-none) > li{padding:14px 0 14px 26px !important;margin:0 !important;border-bottom:1px solid var(--co-line);line-height:1.9;color:var(--co-body)}
body.page.company .entry-content ul.wp-block-list:not(.is-style-none) > li:first-child{border-top:1px solid var(--co-line)}
body.page.company .entry-content ul.wp-block-list:not(.is-style-none) > li::before{background:var(--ef-gold) !important;width:6px !important;height:6px !important;border-radius:0 !important;left:4px !important;top:calc(14px + .72em) !important;-webkit-mask:none !important;mask:none !important;box-shadow:none !important}
/* 番号付き：他ページの番号と同じ欧文の 01〜 */
body.page.company .entry-content ol.wp-block-list{list-style:none;counter-reset:coStep;padding-left:0 !important}
body.page.company .entry-content ol.wp-block-list > li{counter-increment:coStep;position:relative;padding:16px 0 16px 52px !important;margin:0 !important;border-bottom:1px solid var(--co-line);line-height:1.9;color:var(--co-body)}
body.page.company .entry-content ol.wp-block-list > li:first-child{border-top:1px solid var(--co-line)}
body.page.company .entry-content ol.wp-block-list > li::before{content:counter(coStep,decimal-leading-zero);position:absolute;left:4px;top:16px;font-family:var(--ef-font-num);font-size:15px;font-weight:600;letter-spacing:.08em;color:var(--ef-gold)}
body.page.company .entry-content ol.wp-block-list > li::marker{content:none}
body.page.company .entry-content :is(ul,ol) + :is(ul,ol){margin-block-start:32px !important}

/* 会社情報テーブル：縦罫をなくし、上辺だけ濃いラインの端正な表組みに */
body.page.company .entry-content .wp-block-table table{border-collapse:collapse;border-top:1px solid var(--ef-navy)}
body.page.company .entry-content .wp-block-table :is(th,td){border:0 !important;border-bottom:1px solid var(--co-line) !important;padding:22px 24px !important;font-size:15px;line-height:1.9}
body.page.company .entry-content .wp-block-table th{background:transparent !important;color:var(--ef-navy);font-weight:600;letter-spacing:.06em;width:13em}
body.page.company .entry-content .wp-block-table td{color:var(--co-body)}
@media(max-width:600px){
 body.page.company .entry-content .wp-block-table :is(th,td){display:block;width:auto}
 body.page.company .entry-content .wp-block-table th{padding:18px 4px 2px !important;border-bottom:0 !important}
 body.page.company .entry-content .wp-block-table td{padding:2px 4px 18px !important}
}

/* ===== professional：CASE（企業でいつでも起こり得ること）6カード ===== */
.entry-content .ef-case{counter-reset:efcase}
.entry-content .ef-case .wp-block-column{counter-increment:efcase}
.entry-content .ef-case .wp-block-column > h3.wp-block-heading:first-child::before{content:"CASE " counter(efcase,decimal-leading-zero);display:block;font:700 11px/1 Arial,Helvetica,sans-serif;letter-spacing:.16em;color:var(--ef-cyan);margin-bottom:10px}
.entry-content .ef-case .wp-block-columns + .wp-block-columns{margin-block-start:24px !important}
.entry-content .ef-case .wp-block-column > p{color:var(--ef-slate-600)}
.entry-content .ef-case .wp-block-column > h3.wp-block-heading{font-size:19px;line-height:1.55;letter-spacing:.02em}
.entry-content .ef-case .wp-block-column > h3 + p{margin-block-start:10px !important;font-size:15px;line-height:1.8}

/* ===== professional：SOLUTION（CASEの受け皿＝EASY Forensicsの3機能＋仕様ピル） ===== */
.entry-content .ef-solution .wp-block-column > h3.wp-block-heading{font-size:19px;line-height:1.55;letter-spacing:.02em}
.entry-content .ef-solution .wp-block-column > h3 + p{margin-block-start:10px !important;font-size:15px;line-height:1.8;color:var(--ef-slate-600)}
.entry-content .ef-solution .ef-spec{gap:12px;margin-block-start:36px !important}
.entry-content .ef-solution .ef-spec > p{margin:0 !important;padding:8px 18px;border:1px solid var(--ef-cyan-200);background:var(--ef-cyan-50);border-radius:999px;font-size:14px;font-weight:700;line-height:1.5;color:var(--ef-cyan-700)}
.entry-content .ef-solution .wp-block-buttons{margin-block-start:36px !important}

/* ---- 導入事例 記事詳細（single-case）：リード／企業プロフィール／導入のポイント／目次／本文 ---- */
body.single-case main,body.single-casestudy main{--wp--style--global--content-size:840px}
body.single-case .wp-block-post-content,body.single-casestudy .wp-block-post-content{font-size:15.5px;line-height:2}
body.single-case .wp-block-post-content h2.ef-case-sec,body.single-casestudy .wp-block-post-content h2.ef-case-sec{font-size:clamp(21px,2.4vw,26px);line-height:1.55;margin-block:64px 20px !important;scroll-margin-top:24px}
body.single-case .wp-block-post-content h2.ef-case-h2s{font-size:20px;line-height:1.5;margin:0 0 18px !important}
body.single-case .wp-block-post-content h3.ef-case-sub,body.single-casestudy .wp-block-post-content h3.ef-case-sub{font-size:17px;line-height:1.6;margin-block:32px 10px !important;padding-left:12px;border-left:3px solid var(--ef-cyan-500)}

/* lead */
.ef-case-lead{margin-block:8px 40px !important}
.ef-case-lead > .ef-case-lead__label{font-size:13px;font-weight:700;color:var(--ef-cyan-700);letter-spacing:.04em;line-height:1.6;margin:0 0 12px !important}
.ef-case-lead > .ef-case-lead__catch{font-size:clamp(19px,2.2vw,23px);font-weight:800;line-height:1.65;color:var(--ef-ink);margin:0 0 20px !important;padding-left:16px;border-left:4px solid var(--ef-cyan-500)}

/* company profile */
.ef-case-company{background:var(--ef-tint);border:1px solid var(--ef-line);border-radius:12px;padding:28px 32px;margin-block:40px !important;display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);column-gap:32px;align-items:start}
.ef-case-company > *{margin:0 !important}
.ef-case-company > .ef-case-company__kicker{grid-column:1/-1;font-size:12px;font-weight:700;color:var(--ef-slate-500);letter-spacing:.08em;line-height:1.6}
.ef-case-company > .ef-case-company__name{grid-column:1/-1;font-size:19px;font-weight:800;color:var(--ef-ink);line-height:1.5;margin-bottom:16px !important}
.ef-case-company > .ef-case-company__meta{grid-column:1;grid-row:3;list-style:none;padding:0 !important}
.ef-case-company__meta li{font-size:14px;line-height:1.6;padding:9px 0 !important;border-top:1px solid var(--ef-line);display:flex;gap:12px}
.ef-case-company__meta li:last-child{border-bottom:1px solid var(--ef-line)}
.ef-case-company__meta li::before{display:none !important}
.ef-case-company__meta strong{flex:0 0 5.5em;color:var(--ef-slate-600)}
.ef-case-company > .ef-case-company__desc{grid-column:2;grid-row:3;font-size:14.5px;line-height:1.9}
@media(max-width:700px){
  .ef-case-company{grid-template-columns:minmax(0,1fr);padding:22px 20px}
  .ef-case-company > .ef-case-company__meta,.ef-case-company > .ef-case-company__desc{grid-column:1;grid-row:auto}
  .ef-case-company > .ef-case-company__desc{margin-top:16px !important}
}

/* summary */
.ef-case-summary{margin-block:48px !important}
.ef-case-summary__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ef-case-summary__grid:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
.ef-case-sumcard{background:#fff;border:1px solid var(--ef-line);border-top:4px solid var(--ef-cyan-500);border-radius:10px;padding:18px 20px 14px;margin:0 !important}
.ef-case-sumcard > *{margin:0 !important}
.ef-case-sumcard > .ef-case-sumcard__label{font-size:15px;font-weight:800;color:var(--ef-ink);line-height:1.5;margin-bottom:10px !important}
.ef-case-sumcard li{font-size:14px;line-height:1.7;padding-block:3px !important}
@media(max-width:700px){.ef-case-summary__grid,.ef-case-summary__grid:has(> :nth-child(3):last-child){grid-template-columns:minmax(0,1fr)}}

/* table of contents */
.ef-case-toc{border:1px solid var(--ef-line);border-radius:10px;padding:20px 26px;margin-block:40px 8px !important}
.ef-case-toc > *{margin:0 !important}
.ef-case-toc > .ef-case-toc__title{font-size:14px;font-weight:800;color:var(--ef-brand-navy);line-height:1.6;margin-bottom:8px !important}
.ef-case-toc ol{list-style:decimal !important;padding-left:1.5em !important}
.ef-case-toc li{font-size:14.5px;line-height:1.7;padding:3px 0 3px 2px !important}
.ef-case-toc li::before{display:none !important}
.ef-case-toc li::marker{color:var(--ef-cyan-700);font-weight:700}
.ef-case-toc a{color:var(--ef-cyan-700);text-decoration:none}
.ef-case-toc a:hover{text-decoration:underline}

/* interview body */
body.single-case .wp-block-post-content p.ef-case-q{font-weight:700;color:var(--ef-ink);line-height:1.8;background:var(--ef-cyan-50);border-left:4px solid var(--ef-cyan-500);border-radius:0 8px 8px 0;padding:12px 16px;margin-block:28px 16px !important}
body.single-case .ef-case-img{margin-block:32px !important}
body.single-case .ef-case-img img{border-radius:10px}

/* 業種・活用シーンのラベル（リンクなし：inc/ef-term-labels.php） */
.ef-term-label{display:inline-block;font-size:12.5px;font-weight:700;line-height:1.5;padding:4px 12px;border-radius:999px;white-space:nowrap}
body.single-case .ef-case-terms{gap:8px !important;margin-bottom:14px !important}
body.single-case .ef-case-terms .wp-block-post-terms{display:flex;flex-wrap:wrap;gap:8px;margin:0 !important;text-align:left !important}
body.single-case .ef-case-terms .is-industry .ef-term-label{background:#0F2A4A;color:#fff}
body.single-case .ef-case-terms .is-scene .ef-term-label{background:var(--ef-cyan-100);color:var(--ef-cyan-800)}
body.single-case h1.wp-block-post-title{margin-top:0 !important}
.kl-cat-label .ef-term-label{background:rgba(27,42,74,.08);color:var(--ef-brand-navy);font-size:.72rem;font-weight:500;padding:.18rem .6rem;line-height:1.4}
/* back to list */
body.single-case .ef-back-to-list{margin-top:48px !important;padding-top:32px;border-top:1px solid var(--ef-line)}
body.single-case .ef-back-to-list .wp-block-button__link{min-width:240px}
.wp-block-post-terms .ef-term-label{display:inline-block !important;width:auto !important}

/* 活用例 記事詳細：導入事例と同じラベル・一覧へ戻る */
body.single-casestudy .ef-case-terms{gap:8px !important;margin-bottom:14px !important}
body.single-casestudy .ef-case-terms .wp-block-post-terms{display:flex;flex-wrap:wrap;gap:8px;margin:0 !important;text-align:left !important}
body.single-casestudy .ef-case-terms .is-industry .ef-term-label{background:#0F2A4A;color:#fff !important;letter-spacing:normal}
body.single-casestudy .ef-case-terms .is-scene .ef-term-label{background:var(--ef-cyan-100);color:var(--ef-cyan-800) !important}
body.single-casestudy h1.wp-block-post-title{margin-top:0 !important}
body.single-casestudy .ef-back-to-list{margin-top:48px !important;padding-top:32px;border-top:1px solid var(--ef-line)}
body.single-casestudy .ef-back-to-list .wp-block-button__link{min-width:240px}
/* 活用例 記事詳細の本文（見出し・目次は inc/ef-casestudy.php が表示時に付与。導入事例と同じ体裁） */
body.single-casestudy .ef-cs-lead{margin-block:8px 12px !important}
body.single-casestudy .ef-cs-lead .wp-block-post-excerpt__excerpt{font-size:clamp(19px,2.2vw,23px);font-weight:800;line-height:1.65;color:var(--ef-ink);margin:0 !important;padding-left:16px;border-left:4px solid var(--ef-cyan-500)}
body.single-casestudy .ef-cs-note{color:var(--ef-slate-500);margin-block:0 8px !important}
body.single-casestudy .wp-block-post-content p.ef-cs-point{background:var(--ef-tint);border:1px solid var(--ef-line);border-left:4px solid var(--ef-cyan-500);border-radius:0 8px 8px 0;padding:12px 16px;margin-block:10px 0 !important;font-size:14.5px;line-height:1.8}
body.single-casestudy .wp-block-post-content p.ef-cs-point > strong:first-child{display:block;color:var(--ef-ink);font-size:15px;margin-bottom:2px}
body.single-casestudy .wp-block-post-content p.ef-cs-point + p:not(.ef-cs-point){margin-top:20px !important}
body.single-casestudy .wp-block-post-content p.ef-cs-tip{background:var(--ef-cyan-50);border-radius:8px;padding:14px 18px;font-size:14.5px;line-height:1.85}
body.single-casestudy .wp-block-post-content h4.wp-block-heading{font-size:16px;line-height:1.6;color:var(--ef-brand-navy);margin-block:24px 4px !important}
body.single-casestudy .wp-block-post-content h4.wp-block-heading + p{margin-top:0 !important}
body.single-casestudy .wp-block-post-content p.ef-cs-fact{position:relative;padding-left:28px;margin-block:8px 0 !important;font-size:15px;line-height:1.8}
body.single-casestudy .wp-block-post-content p.ef-cs-fact::before{content:"";position:absolute;left:4px;top:.45em;width:14px;height:8px;border-left:2.5px solid var(--ef-cyan-500);border-bottom:2.5px solid var(--ef-cyan-500);transform:rotate(-45deg)}
body.single-casestudy .wp-block-post-content p.ef-cs-fact + p:not(.ef-cs-fact){margin-top:20px !important}
body.single-casestudy .ef-case-toc{margin-top:0 !important}
/* 活用例 一覧：業種ラベルは外側が紺のピルなので内側は装飾なし */
body.post-type-archive-casestudy .taxonomy-casestudy_industry .ef-term-label{background:none;color:#fff;padding:0;font-size:inherit;font-weight:inherit;line-height:inherit}

/* ---- TOP 課題（ISSUE：columns.ef-issue）：カードを広く、見出しは1行 ----
   TOP共通の「カラム内パディング」を外してカード自体の余白だけにする（二重余白の解消） */
.home .entry-content .wp-block-columns.ef-issue{gap:24px}
.home .entry-content .wp-block-columns.ef-issue > .wp-block-column{padding:0}
.home .entry-content .ef-issue .is-style-ef-card{padding:24px 22px}
/* 1200px以上は1行固定（4枚とも収まる幅）。それ未満は折り返しを許可してはみ出しを防ぐ */
@media(min-width:1200px){
 .home .entry-content .ef-issue .is-style-ef-card h3{white-space:nowrap}
}

/* ---- お知らせ（投稿）記事詳細：コラム詳細と同じメタ行・前後ナビ・一覧へ戻る ---- */
body.single-post .kl-entry-meta{align-items:center;gap:8px 14px;margin-bottom:10px}
body.single-post .kl-entry-meta .wp-block-post-date{margin:0;color:var(--ef-slate-500);font-size:14px;line-height:1.4}
body.single-post .kl-entry-meta .wp-block-post-terms{margin:0;font-size:0}
body.single-post .kl-entry-meta .wp-block-post-terms a{display:inline-block;background:var(--ef-cyan-100);color:var(--ef-cyan-700);font-size:12px;font-weight:700;letter-spacing:.02em;padding:3px 12px;border-radius:999px;text-decoration:none;line-height:1.6}
body.single-post .kl-entry-meta .wp-block-post-terms a:hover{background:var(--ef-cyan);color:#fff}
body.single-post .ef-back-to-list{margin-top:48px !important}
body.single-post .ef-back-to-list .wp-block-button__link{min-width:240px}

/* ===== 規約・個人情報ページ（/privacy-policy/・/privacy-detail/・/privacy-procedure/・/easyforensics-terms-of-use/） ===== */
/* 制定日・改定日など：右寄せの小さな注記 */
.entry-content p.ef-legal-meta{text-align:right;font-size:14px;line-height:1.8;color:var(--ef-slate-600);margin-block-start:clamp(2rem,1.5rem + 2vw,3rem) !important}
/* お問い合わせ窓口のカード */
.entry-content .ef-legal-contact{background:var(--ef-tint);margin-block-start:24px !important;padding:24px 28px}
.entry-content .ef-legal-contact > p{margin:0 !important;line-height:1.9}
.entry-content .ef-legal-contact > p + p{margin-top:8px !important}
.entry-content .ef-legal-contact__title{color:var(--ef-brand-navy)}
/* 必要書類の表：スマホは横スクロール */
.entry-content .wp-block-table.ef-legal-table{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-block-start:24px !important}
.entry-content .wp-block-table.ef-legal-table table{min-width:760px;font-size:14px;line-height:1.75}
.entry-content .wp-block-table.ef-legal-table thead th{background:var(--ef-brand-navy);color:#fff;width:auto;text-align:center;border-color:var(--ef-brand-navy)}
.entry-content .wp-block-table.ef-legal-table tbody th{width:13em;background:var(--ef-tint-soft);font-weight:700}
.entry-content .wp-block-table.ef-legal-table a{color:var(--ef-cyan);font-weight:700}
.entry-content .wp-block-table.ef-legal-table figcaption{text-align:left;font-size:13px;color:var(--ef-slate-600);margin:8px 0 0}
/* 条項が多いページ・サポート記事のため、見出しは本文寄りのサイズに（ef-legal-*／ef-support-* の部品を含むページのみ） */
.entry-content:has(> :is(.ef-legal-hero,.ef-legal-meta,.ef-legal-contact,.ef-legal-table,.ef-support-figure)) h2.wp-block-heading{font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem);margin-block-start:clamp(2.5rem,2rem + 2vw,3.5rem) !important}
.entry-content:has(> :is(.ef-legal-hero,.ef-legal-meta,.ef-legal-contact,.ef-legal-table,.ef-support-figure)) h3.wp-block-heading{font-size:1.0625rem;margin-block-start:2rem !important}
.entry-content:has(> :is(.ef-legal-hero,.ef-legal-meta,.ef-legal-contact,.ef-legal-table,.ef-support-figure)) h2.wp-block-heading + *,.entry-content:has(> :is(.ef-legal-hero,.ef-legal-meta,.ef-legal-contact,.ef-legal-table,.ef-support-figure)) h3.wp-block-heading + *{margin-block-start:.9rem !important}

/* =====================================================================
   備え度チェック（/info-leak-selfcheck/）— JS は assets/js/ef-check.js
   ===================================================================== */
.ef-check{max-width:760px;margin-inline:auto}
.ef-check__card{background:#fff;border:1px solid var(--ef-line);border-radius:8px;box-shadow:0 10px 30px -12px rgba(10,25,47,.18);padding:32px 32px 28px;scroll-margin-top:96px}
.ef-check__bar{height:6px;background:var(--ef-line);border-radius:3px;overflow:hidden;margin-bottom:8px}
.ef-check__bar i{display:block;height:100%;background:var(--ef-cyan);width:0;transition:width .3s}
.ef-check__count{font:700 12px/1 Arial,sans-serif;color:var(--ef-slate-500);letter-spacing:.08em}
.ef-check .ef-check__q{font-size:20px;line-height:1.5;margin:14px 0 6px;color:var(--ef-brand-navy)}
.ef-check .ef-check__q:focus{outline:none}
.ef-check__help{font-size:13.5px;color:var(--ef-slate-500);margin:0 0 12px}
.ef-check .ef-check__opts{display:grid;gap:10px;margin:16px 0 0;padding:0;list-style:none}
.ef-check .ef-check__opts li{margin:0;padding:0}
.ef-check .ef-check__opts li::before{content:none}
.ef-check__opt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1.5px solid var(--ef-line);border-radius:8px;padding:13px 16px;font:inherit;font-size:15px;line-height:1.5;color:var(--ef-ink);cursor:pointer;transition:border-color .15s,background-color .15s}
.ef-check__opt:hover{border-color:var(--ef-cyan);background:var(--ef-cyan-50)}
.ef-check__opt:focus-visible{outline:2px solid var(--ef-cyan);outline-offset:2px}
.ef-check__opt[aria-pressed="true"]{border-color:var(--ef-cyan);background:var(--ef-cyan-50);box-shadow:inset 0 0 0 1px var(--ef-cyan)}
.ef-check__box{flex:0 0 18px;height:18px;border:1.5px solid #94A3B8;border-radius:50%}
.ef-check__opt.is-multi .ef-check__box{border-radius:4px}
.ef-check__opt[aria-pressed="true"] .ef-check__box{border-color:var(--ef-cyan);background:var(--ef-cyan);box-shadow:inset 0 0 0 3px #fff}
.ef-check__nav{display:flex;justify-content:space-between;align-items:center;margin-top:22px;gap:12px}
.ef-check__btn{appearance:none;border:0;border-radius:6px;padding:12px 22px;font-family:inherit;font-weight:700;font-size:15px;line-height:1;cursor:pointer}
.ef-check__btn[hidden]{display:none}
.ef-check__btn--pri{background:var(--ef-cyan);color:#fff;margin-left:auto}
.ef-check__btn--pri:hover{background:var(--ef-cyan-700)}
.ef-check__btn--pri:disabled{background:var(--ef-slate-300);cursor:not-allowed}
.ef-check__btn--ghost{background:transparent;color:var(--ef-slate-600);padding-left:0}
.ef-check .ef-check__pro{font-size:13px;color:var(--ef-slate-600);margin:12px 0 0;text-align:center}
.ef-check__pro a{color:var(--ef-cyan)}
/* 結果 */
.ef-res__badge{display:inline-block;font:700 12px/1 Arial,sans-serif;letter-spacing:.12em;padding:6px 10px;border-radius:999px;color:#fff;background:var(--ef-cyan)}
.ef-res--urgent .ef-res__badge{background:var(--ef-red)}
.ef-res--warm .ef-res__badge{background:var(--ef-cyan-700)}
.ef-res--calm .ef-res__badge{background:var(--ef-green)}
.ef-res--out .ef-res__badge{background:var(--ef-slate-500)}
.ef-check .ef-res__title{font-size:24px;line-height:1.45;margin:14px 0 10px;color:var(--ef-brand-navy)}
.ef-check .ef-res__title:focus{outline:none}
.ef-check .ef-res__lead{margin:0 0 18px;color:var(--ef-slate-600)}
.ef-res__why{background:var(--ef-tint);border:1px solid var(--ef-line);border-radius:8px;padding:14px 18px;margin:0 0 18px}
.ef-check .ef-res__why h3{font-size:14px;margin:0 0 6px;color:var(--ef-brand-navy)}
.ef-check .ef-res__why ul{margin:0;padding-left:1.2em;font-size:14px;color:var(--ef-slate-600)}
.ef-check .ef-res__fact{font-size:13.5px;color:var(--ef-slate-600);border-left:3px solid var(--ef-amber);padding:4px 0 4px 12px;margin:0 0 20px}
.ef-res__cta{display:grid;gap:10px}
.ef-check .ef-res__cta a{display:block;text-align:center;text-decoration:none;border-radius:6px;padding:15px 18px;font-weight:700;line-height:1.5}
.ef-check .ef-res__cta .pri{background:var(--ef-cyan);color:#fff}
.ef-check .ef-res__cta .pri:hover{background:var(--ef-cyan-700)}
.ef-check .ef-res__cta .pri.is-red{background:var(--ef-red)}
.ef-check .ef-res__cta .pri.is-red:hover{background:var(--ef-red-700)}
.ef-check .ef-res__cta .sec{background:#fff;color:var(--ef-cyan);border:1.5px solid var(--ef-cyan)}
.ef-res__retry{margin-top:16px;text-align:center}
.ef-res__retry button{background:none;border:0;color:var(--ef-slate-500);text-decoration:underline;cursor:pointer;font:inherit;font-size:13px}
/* 確認用：営業に引き継ぐ内容（公開前に本文から削除する） */
.ef-check-demo{max-width:760px;margin:32px auto 0;font-size:13px;color:var(--ef-slate-600)}
.ef-check-demo[hidden]{display:none}
.ef-check-demo pre{background:var(--ef-ink);color:#E2E8F0;padding:14px;border-radius:6px;white-space:pre-wrap;font-size:13px;line-height:1.7}
@media (max-width:600px){
	.ef-check__card{padding:24px 18px}
	.ef-check .ef-check__q{font-size:18px}
	.ef-check .ef-res__title{font-size:20px}
}

/* 会社概要：代表挨拶（.ef-ceo は media-text に付ける） */
.ef-ceo .wp-block-media-text__media img{border-radius:50%;max-width:200px;margin-inline:auto;display:block}
.ef-ceo-prof-title{margin-block-start:2rem !important;margin-block-end:.25rem !important}

/* ---- 活用例マトリクス（/casestudy/ 冒頭。[ef_casestudy_matrix]、inc/ef-casestudy.php）。TOP の各ブロックと同じ見出し・カードの作り ---- */
.ef-cs-matrix{margin-top:var(--wp--preset--spacing--48-80) !important}
.ef-cs-matrix .is-style-ef-kicker{margin:0 0 8px}
.ef-cs-matrix__title{font-size:clamp(24px,3vw,32px);color:var(--ef-brand-navy);margin:0 0 12px !important}
.ef-cs-matrix__sub{text-align:center;color:var(--ef-muted);font-size:15px;line-height:1.8;margin:0 0 28px}
.ef-cs-matrix__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}
.ef-cs-matrix__axis{margin:0;text-align:center;font-weight:700;font-size:14px;letter-spacing:.08em;padding:6px 0;border-radius:999px}
.ef-cs-matrix__axis.is-company{background:rgba(27,42,74,.08);color:var(--ef-brand-navy)}
.ef-cs-matrix__axis.is-employee{background:var(--ef-cyan-50);color:var(--ef-cyan-800)}
.ef-cs-matrix__card{background:var(--ef-white);border:1px solid var(--ef-border);border-radius:var(--ef-radius);padding:20px 22px;box-shadow:var(--ef-shadow)}
/* 有事／平時のラベル（マトリクスと一覧カードで共通。inc/ef-casestudy.php の ef_casestudy_quadrant_tags）：有事＝赤＋警告、平時＝緑＋盾 */
.ef-cs-qtags{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.ef-cs-qtag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;line-height:1;padding:5px 10px;border-radius:999px;white-space:nowrap}
.ef-cs-qtag svg{flex-shrink:0}
.ef-cs-qtag.is-emergency{background:var(--ef-red);color:#fff}
.ef-cs-qtag.is-normal{background:#047857;color:#fff} /* --ef-green より一段濃く（白文字のコントラスト確保） */
.ef-cs-qtag.is-who.is-company{background:rgba(27,42,74,.08);color:var(--ef-brand-navy)}
.ef-cs-qtag.is-who.is-employee{background:var(--ef-cyan-100);color:var(--ef-cyan-800)}
.ef-cs-qtag.is-count{margin-left:auto;padding-right:0;color:var(--ef-muted);font-weight:500}
.ef-cs-matrix__more{text-align:center;margin:24px 0 0}
.ef-cs-matrix__more a{color:var(--ef-brand-navy);font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.ef-cs-matrix__more a::after{content:" →";color:var(--ef-gold)}
.ef-cs-matrix__lead{font-weight:700;color:var(--ef-brand-navy);font-size:16px;line-height:1.6;margin:0 0 12px}
.ef-cs-matrix__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ef-line)}
.ef-cs-matrix__list li{border-bottom:1px solid var(--ef-line);margin:0}
.ef-cs-matrix__list a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 2px;font-size:14.5px;line-height:1.6;color:var(--ef-ink);text-decoration:none}
.ef-cs-matrix__list a::after{content:"›";color:var(--ef-cyan);font-weight:700;font-size:18px;line-height:1}
.ef-cs-matrix__list a:hover{color:var(--ef-cyan-700)}
.ef-cs-matrix__list .is-empty{padding:10px 2px;color:var(--ef-muted);font-size:14px}
@media (max-width:781px){
	.ef-cs-matrix__grid{grid-template-columns:1fr}
	.ef-cs-matrix__axis{display:none}
}

/* 一覧の見出し（すべての活用例）とカード：中身に合わせた高さのコンパクトなカード */
.ef-cs-all-kicker{margin-top:var(--wp--preset--spacing--48-80) !important;margin-bottom:8px !important;text-align:center !important}
.ef-cs-all-title{font-size:clamp(24px,3vw,32px) !important;color:var(--ef-brand-navy);margin-top:0 !important;margin-bottom:28px !important;text-align:center !important}
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid{gap:20px !important;align-items:stretch !important;grid-auto-rows:1fr !important} /* 全カードの高さを揃える（一番高いカードに合わせる。「詳細を見る」は下端にそろう） */
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li{position:relative;border:1px solid var(--ef-border) !important;border-top:3px solid var(--ef-brand-navy) !important;border-radius:var(--ef-radius);padding:18px 20px 16px !important;box-shadow:var(--ef-shadow);background:var(--ef-white);gap:0 !important;transition:box-shadow .2s,transform .2s}
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li:hover{box-shadow:var(--ef-shadow-hover);transform:translateY(-2px)}
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li > *{margin:0 !important}
body.post-type-archive-casestudy .wp-block-post-terms.taxonomy-casestudy_industry{margin:0 0 10px !important;padding:.2rem .7rem !important}
body.post-type-archive-casestudy .wp-block-post-title{font-size:17px !important;line-height:1.55 !important;margin:0 0 8px !important;padding:0 !important}
body.post-type-archive-casestudy .wp-block-post-title a::before{content:"";position:absolute;inset:0}
body.post-type-archive-casestudy .wp-block-post-excerpt,body.post-type-archive-casestudy .wp-block-post-excerpt__excerpt{padding-left:0 !important;padding-right:0 !important}
body.post-type-archive-casestudy .wp-block-post-excerpt{font-size:14px}
body.post-type-archive-casestudy .wp-block-post-excerpt__excerpt{line-height:1.7 !important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden} /* 抜粋は3行まで（長い抜粋で段の高さが伸びすぎないように） */
body.post-type-archive-casestudy .wp-block-post-terms.taxonomy-casestudy_quadrant{margin:0 !important;padding:0 0 10px !important;text-align:left;height:auto !important;line-height:normal !important;align-self:stretch !important}
body.post-type-archive-casestudy .taxonomy-casestudy_quadrant .ef-cs-qtags{margin:0;line-height:1.2;height:auto !important;width:auto !important}
body.post-type-archive-casestudy .taxonomy-casestudy_quadrant .ef-cs-qtag{display:inline-flex !important;width:auto !important;height:auto !important;line-height:1 !important;padding:5px 10px !important;margin:0 !important;flex:0 0 auto !important;min-width:0 !important}
body.post-type-archive-casestudy .wp-block-post-template.is-layout-grid > li::after{padding-top:12px !important;font-size:13px !important}

/* サポート記事（/easyforensics-startup-error/ など）の図版：枠付き・キャプション */
.entry-content .ef-support-figure{margin-block:20px 28px !important}
.entry-content .ef-support-figure img{border:1px solid var(--ef-border);border-radius:var(--ef-radius);box-shadow:var(--ef-shadow)}
.entry-content .ef-support-figure figcaption{text-align:left;font-size:13px;color:var(--ef-slate-600);margin-top:8px}

/* 検索結果（templates/search.html）と 404 */
.ef-search-form{max-width:560px;margin-left:auto !important;margin-right:auto !important}
.ef-search-form .wp-block-search__input{border-radius:var(--ef-radius) 0 0 var(--ef-radius);border:1px solid var(--ef-border);padding:10px 14px}
.ef-search-form .wp-block-search__button{background:var(--ef-cyan);color:#fff;border:0;border-radius:0 var(--ef-radius) var(--ef-radius) 0;padding:10px 20px;font-weight:700}
.ef-search-results .ef-search-item{padding:20px 0;border-bottom:1px solid var(--ef-line)}
.ef-search-results .ef-search-item .wp-block-post-title{margin:0 0 6px !important;font-size:1.05rem !important;line-height:1.6}
.ef-search-results .ef-search-item .wp-block-post-title a{color:var(--ef-brand-navy);text-decoration:none}
.ef-search-results .ef-search-item .wp-block-post-title a:hover{color:var(--ef-cyan-700);text-decoration:underline}
.ef-search-results .ef-search-item .wp-block-post-excerpt{color:var(--ef-muted);margin:0 !important}
.ef-search-results .ef-search-item .wp-block-post-excerpt__excerpt{margin:0;line-height:1.75}
.ef-404-links a{color:var(--ef-brand-navy);font-weight:700;text-decoration:underline;text-underline-offset:3px}
