/* bz-office 実務Q&A / AI活用事例  共通スタイル
   すべて .bzqa- 接頭辞。既存記事のデザインには干渉しません。 */
.bzqa{
  --bz-ink:#0A2E3B; --bz-brand:#04384c; --bz-teal:#12788F; --bz-teal-soft:#E7F0F2;
  --bz-paper:#F1F4F4; --bz-rule:#D9E1E2; --bz-rule-soft:#EAEFEF; --bz-muted:#5E7178;
  --bz-open:#A85A15; --bz-open-bg:#FBF1E6; --bz-solved:#1B6349; --bz-solved-bg:#E8F2ED;
  --bz-lose:#4A5C7A; --bz-lose-bg:#EDF0F5;
  --bz-mincho:"Hiragino Mincho ProN","Yu Mincho","YuMincho",serif;
  color:var(--bz-ink); line-height:1.75;
}
.bzqa *{box-sizing:border-box}
.bzqa a{text-decoration:none}

/* 見出し */
.bzqa-head{margin-bottom:26px}
.bzqa-head h1{font-family:var(--bz-mincho);font-size:26px;line-height:1.5;margin:0 0 8px;font-weight:600}
.bzqa-head .bzqa-lede{margin:0;color:var(--bz-muted);font-size:14.5px;line-height:1.85;max-width:62ch}
.bzqa-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}
.bzqa-btn{background:var(--bz-brand);color:#fff!important;border:0;padding:11px 22px;border-radius:5px;
  font-weight:700;font-size:14px;display:inline-block}
.bzqa-btn:hover{background:var(--bz-ink);color:#fff!important}
.bzqa-note{font-size:12.5px;color:var(--bz-muted)}

/* 索引・絞り込み */
.bzqa-idx{padding-bottom:10px;border-bottom:1px solid var(--bz-rule);margin-bottom:14px;
  display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.bzqa-idx h2{font-family:var(--bz-mincho);font-size:17px;margin:0;font-weight:600}
.bzqa-idx .bzqa-sub{color:var(--bz-muted);font-size:12.5px}
.bzqa-fbar{margin-bottom:16px}
.bzqa-fbar .bzqa-fl{font-size:12.5px;color:var(--bz-muted);font-weight:700;margin-bottom:7px}
.bzqa-chips{display:flex;flex-wrap:wrap;gap:6px}
.bzqa-chip{border:1px solid var(--bz-rule);border-radius:100px;padding:6px 14px;font-size:12.5px;
  background:#fff;color:var(--bz-muted)!important;display:inline-block}
.bzqa-chip:hover{border-color:var(--bz-teal);color:var(--bz-teal)!important}
.bzqa-chip.is-on{background:var(--bz-brand);border-color:var(--bz-brand);color:#fff!important;font-weight:700}

/* カテゴリ索引（台帳の背表紙） */
.bzqa-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:0 26px;margin-bottom:30px}
@media(max-width:900px){.bzqa-cats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.bzqa-cats{grid-template-columns:1fr}}
.bzqa-cat{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--bz-rule-soft);
  padding:11px 6px 11px 0;color:var(--bz-ink)!important}
.bzqa-cat:hover{background:var(--bz-teal-soft)}
.bzqa-cat .bzqa-spine{width:4px;height:26px;border-radius:2px;flex:none;background:#9BB3BA}
.bzqa-cat .bzqa-nm{flex:1;font-size:14px;font-weight:600}
.bzqa-cat .bzqa-ct{font-size:14.5px;font-weight:700;flex:none;font-variant-numeric:tabular-nums}
.bzqa-cat.is-on{background:var(--bz-teal-soft)}
.bzqa-cat.is-on .bzqa-nm{color:var(--bz-brand)}
.bzqa-catgrp{grid-column:1/-1;font-size:12px;color:var(--bz-muted);font-weight:700;
  margin:14px 0 2px;padding-bottom:4px;border-bottom:1px solid var(--bz-rule)}
.bzqa-catgrp:first-child{margin-top:0}

/* 一覧 */
.bzqa-cnt{font-size:13.5px;color:var(--bz-muted);margin-bottom:14px}
.bzqa-cnt b{color:var(--bz-ink);font-size:16px;font-variant-numeric:tabular-nums}
.bzqa-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.bzqa-item{background:#fff;border:1px solid var(--bz-rule);border-radius:6px;padding:15px 16px;display:block;
  color:var(--bz-ink)!important}
.bzqa-item:hover{border-color:var(--bz-teal)}
.bzqa-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:7px}
.bzqa-tag{font-size:11.5px;padding:2px 8px;border-radius:3px;background:var(--bz-paper);
  color:var(--bz-muted);border-left:3px solid #9BB3BA}
.bzqa-st{font-size:11.5px;padding:2px 8px;border-radius:3px;font-weight:700}
.bzqa-st.is-open{background:var(--bz-open-bg);color:var(--bz-open)}
.bzqa-st.is-solved{background:var(--bz-solved-bg);color:var(--bz-solved)}
.bzqa-title{font-size:15.5px;font-weight:700;line-height:1.6;margin:0 0 6px}
.bzqa-ex{font-size:13.5px;color:var(--bz-muted);margin:0;line-height:1.7}
.bzqa-foot{display:flex;gap:14px;margin-top:9px;font-size:12px;color:var(--bz-muted)}

/* AI事例カード */
.bzqa-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none}
@media(max-width:760px){.bzqa-cards{grid-template-columns:1fr}}
.bzqa-card{border:1px solid var(--bz-rule);border-left:4px solid #4A6A8A;border-radius:0 7px 7px 0;
  padding:16px 17px;background:#fff;display:block;height:100%;color:var(--bz-ink)!important}
.bzqa-card:hover{border-color:var(--bz-teal);border-left-color:#4A6A8A}
.bzqa-res{font-size:11.5px;padding:2px 9px;border-radius:3px;font-weight:700}
.bzqa-res.is-win{background:var(--bz-solved-bg);color:var(--bz-solved)}
.bzqa-res.is-part{background:var(--bz-open-bg);color:var(--bz-open)}
.bzqa-res.is-lose{background:var(--bz-lose-bg);color:var(--bz-lose)}
.bzqa-area{font-size:11.5px;padding:2px 8px;border-radius:3px;background:#EDF1F5;color:#3A5670;font-weight:700}
.bzqa-gain{font-size:11.5px;padding:2px 8px;border-radius:3px;background:var(--bz-paper);color:var(--bz-muted);font-weight:700}
.bzqa-tools{display:flex;flex-wrap:wrap;gap:4px;margin-top:9px}
.bzqa-tool{font-size:11px;padding:2px 8px;border-radius:3px;border:1px solid var(--bz-rule);color:var(--bz-muted)}

/* 詳細 */
.bzqa-sec{margin-bottom:22px}
.bzqa-sec h2{font-size:15px!important;margin:0 0 8px!important;color:var(--bz-brand)!important;
  padding:0 0 6px!important;border:0!important;border-bottom:1px solid var(--bz-rule-soft)!important;
  background:none!important;font-family:inherit!important}
.bzqa-sec h2::before,.bzqa-sec h2::after{display:none!important}
.bzqa-sec p{margin:0;font-size:15px;line-height:1.9}
.bzqa-steps{margin:0;padding-left:22px;font-size:15px;line-height:1.95}
.bzqa-steps li{margin-bottom:7px}
.bzqa-caution{border-left:3px solid var(--bz-open);background:var(--bz-open-bg);
  padding:15px 17px;border-radius:0 5px 5px 0;margin-bottom:22px}
.bzqa-caution h2{font-size:14px!important;margin:0 0 6px!important;color:var(--bz-open)!important;
  border:0!important;padding:0!important;background:none!important;font-family:inherit!important}
.bzqa-caution h2::before,.bzqa-caution h2::after{display:none!important}
.bzqa-caution p{margin:0;font-size:14.5px;line-height:1.85;color:#6B4A17}
.bzqa-answer{border-left:3px solid var(--bz-solved);background:var(--bz-solved-bg);
  padding:16px 18px;border-radius:0 5px 5px 0;margin-bottom:20px}
.bzqa-by{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.bzqa-av{width:32px;height:32px;border-radius:50%;background:var(--bz-brand);color:#fff;
  display:grid;place-items:center;font-size:13px;font-weight:700;flex:none}
.bzqa-byname{font-size:13.5px;font-weight:700}
.bzqa-byrole{font-size:11.5px;color:var(--bz-muted)}
.bzqa-disc{background:var(--bz-paper);border-radius:6px;padding:14px 16px;
  font-size:12.5px;color:var(--bz-muted);line-height:1.8;margin-top:24px}
.bzqa-empty{background:#fff;border:1px dashed var(--bz-rule);border-radius:6px;padding:36px 20px;text-align:center}
.bzqa-empty p{margin:0 0 6px;font-size:14px}
.bzqa-empty .bzqa-s{color:var(--bz-muted);font-size:13px}
.bzqa-back{display:inline-block;margin-top:26px;font-size:13.5px}

/* Q&A・AI事例の一覧と詳細はサイドバーを出さず全幅にする */
.post-type-archive-qa #sidebar,
.post-type-archive-ai_case #sidebar,
.single-qa #sidebar,
.single-ai_case #sidebar,
.tax-qa_cat #sidebar,
.tax-ai_area #sidebar,
.tax-ai_tool #sidebar,
.tax-ai_result #sidebar{
	display:none;
}
.post-type-archive-qa .l-mainContent,
.post-type-archive-ai_case .l-mainContent,
.single-qa .l-mainContent,
.single-ai_case .l-mainContent,
.tax-qa_cat .l-mainContent,
.tax-ai_area .l-mainContent,
.tax-ai_tool .l-mainContent,
.tax-ai_result .l-mainContent{
	width:100%;
	max-width:100%;
	margin-right:0;
}

/* フォームの入力欄を整える */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 select,
.wpcf7 textarea{
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	padding:10px 12px;
	border:1px solid #D9E1E2;
	border-radius:5px;
	font-size:15px;
	font-family:inherit;
}
.wpcf7 textarea{ min-height:160px; }
.wpcf7 label{
	display:block;
	font-weight:700;
	font-size:14px;
	margin:18px 0 6px;
}
.wpcf7 .wpcf7-list-item{
	display:block;
	margin:0 0 6px;
}
.wpcf7 .wpcf7-submit{
	background:#04384c;
	color:#fff;
	border:0;
	padding:12px 28px;
	border-radius:5px;
	font-weight:700;
	font-size:15px;
	margin-top:20px;
}

/* 質問ページのコメント見出しを「回答」に読み替える */
.single-qa .c-secTitle{ font-size:0; }
.single-qa .c-secTitle::after{
	content:"回答";
	font-size:20px;
}
.single-qa .comment-list-title{ font-size:0; }
.single-qa .comment-list-title::after{
	content:"寄せられた回答";
	font-size:16px;
}

/* 質問ページのコメント関連の見出しを「回答」に読み替える */
.single-qa .c-secTitle,
.single-qa .comment-list-title,
.single-qa .comment-reply-title{
	font-size:0 !important;
	line-height:1.6;
}
.single-qa .c-secTitle::before{
	content:"回答";
	font-size:20px;
	font-weight:700;
}
.single-qa .comment-list-title::before{
	content:"寄せられた回答";
	font-size:16px;
	font-weight:700;
}
.single-qa .comment-reply-title::before{
	content:"この質問に回答する";
	font-size:17px;
	font-weight:700;
}
/* ===== 専門家登録ページ ===== */
.bzf-lead{
	font-size:15px; line-height:1.9; margin:0 0 24px; color:#0A2E3B;
}
.bzf-points{
	display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:20px;
}
@media(max-width:760px){ .bzf-points{ grid-template-columns:1fr; } }
.bzf-point{
	border:1px solid #D9E1E2; border-top:3px solid #04384c;
	border-radius:0 0 7px 7px; padding:16px 17px; background:#fff;
}
.bzf-pt{ font-size:14.5px; font-weight:700; line-height:1.6; margin-bottom:7px; }
.bzf-pd{ font-size:13px; color:#5E7178; line-height:1.8; }

.bzf-more{
	border:1px solid #D9E1E2; border-radius:7px; background:#FBFCFC;
	padding:0; margin-bottom:34px;
}
.bzf-more summary{
	cursor:pointer; padding:14px 18px; font-size:14px; font-weight:700;
	list-style:none; position:relative;
}
.bzf-more summary::-webkit-details-marker{ display:none; }
.bzf-more summary::after{
	content:"＋"; position:absolute; right:18px; color:#12788F; font-weight:700;
}
.bzf-more[open] summary::after{ content:"−"; }
.bzf-more summary:hover{ color:#12788F; }
.bzf-more p{
	margin:0 18px 14px; font-size:13.5px; color:#5E7178; line-height:1.85;
}
.bzf-more[open] summary{ border-bottom:1px solid #EAEFEF; margin-bottom:14px; }

.bzf-divider{
	font-size:12.5px; color:#5E7178; line-height:1.75;
	border-top:1px solid #EAEFEF; padding-top:16px; margin:6px 0 20px;
}