/* サイト全体の調整（子テーマ）。style.css はキャッシュが残りやすいのでこちらに書く */
/* フッターをヘッダーと同じ色に（2026-10-02） */
#footer-wrapper {
	background: linear-gradient(160deg, #0f3460 0%, #16537e 60%, #1a6fa0 100%) !important;
	border-top: 4px solid #f29a1f;
}
#footer-wrapper,
#footer-wrapper p,
#footer-wrapper h3,
#footer-wrapper .footermenust a,
#footer-wrapper a {
	color: #fff !important;
}
#footer-wrapper .footermenust li { border-color: rgba(255, 255, 255, .35) !important; }
#footer-wrapper .footermenust a:hover { color: #ffd08a !important; }

/* タブレット幅（600〜959px）で main の左右 -10px がはみ出し、横スクロールが出るのを防ぐ（2026-10-03） */
@media only screen and (min-width: 600px) and (max-width: 959px) {
	#contentInner main {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* 比較表（2026-10-07）
 * 見出し行 tr.fn-cmp-head と、ロゴ・社名のリンクは functions.php の the_content フィルタで差し込む */
.single-post .entry-content table tr.fn-cmp-head > th {
	background-color: #16537e !important;
	color: #fff !important;
}
.single-post .entry-content tr.fn-cmp-head .fn-cmp-link,
.single-post .entry-content tr.fn-cmp-head .fn-cmp-name {
	color: #fff !important;
}
th .fn-cmp-link { display: block; text-decoration: none; }
th .fn-cmp-link .fn-cmp-name {
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, .7);
	text-underline-offset: 3px;
}
th .fn-cmp-link:hover .fn-cmp-logo { opacity: .85; }
th .fn-cmp-name { display: block; }
/* 透明・黒文字のロゴも紺の上で見えるよう白い台紙に載せる */
th .fn-cmp-logo {
	display: block;
	box-sizing: border-box;
	width: auto;
	height: auto;
	max-width: min(150px, 100%);
	max-height: 56px;
	margin: 0 auto 6px;
	padding: 4px 8px;
	background: #fff;
	border-radius: 6px;
	object-fit: contain;
}

/* 1列目（項目名）は見出し行と違う薄い青（thead の見出し行は除く。白文字が見えなくなるため 2026-10-19） */
.single-post .entry-content table :not(thead) > tr:not(.fn-cmp-head) > th:first-child {
	background-color: #eef4fa !important;
}

/* 口コミ・評判記事：表の会社名をロゴ画像にしたもの（trademark/tools/logo_cells.py が入れる。2026-10-19） */
.single-post .entry-content table img.fn-tm-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: min(120px, 100%);
	max-height: 44px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 3px 5px;
	background: #fff;
	border-radius: 4px;
	object-fit: contain;
}

/* 表の中の文字は本文の90%（本文は 959px 以下 16px、960px 以上 15px） */
.single-post .entry-content table th,
.single-post .entry-content table td,
.single-post .entry-content table th p,
.single-post .entry-content table td p {
	font-size: 14.4px !important;
	line-height: 1.7 !important;
}
@media print, screen and (min-width: 960px) {
	.single-post .entry-content table th,
	.single-post .entry-content table td,
	.single-post .entry-content table th p,
	.single-post .entry-content table td p {
		font-size: 13.5px !important;
	}
}

/* 比較記事の各H2直上の公式サイトボタン（functions.php で差し込む）（2026-10-07）
 * スマホは縦に2行、600px 以上は2列。色はトップページのカードのボタンに合わせる */
.fn-cmp-btns {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	margin: 32px 0 36px;
}
@media only screen and (min-width: 600px) {
	.fn-cmp-btns { grid-template-columns: 1fr 1fr; }
}
.fn-cmp-btns .fn-cmp-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 56px;
	padding: 12px 14px;
	box-sizing: border-box;
	background: #f29a1f;
	border: 2px solid #0d2b4e;
	border-radius: 10px;
	box-shadow: 3px 3px 0 #0d2b4e;
	color: #0d2b4e !important;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.4;
	text-align: center;
	text-decoration: none !important;
	transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}
.fn-cmp-btns .fn-cmp-btn:hover,
.fn-cmp-btns .fn-cmp-btn:focus-visible {
	background: #ffb341;
	transform: translate(2px, 2px);
	box-shadow: 1px 1px 0 #0d2b4e;
}
.fn-cmp-btn__arrow { font-size: 20px; line-height: 1; transition: transform .12s ease; }
.fn-cmp-btn:hover .fn-cmp-btn__arrow { transform: translateX(3px); }
/* ボタン直上のマイクロコピー（＼ ／ で挟む） */
.fn-cmp-btnwrap { display: flex; flex-direction: column; }
.fn-cmp-btnwrap .fn-cmp-btn { flex: 1; }
.single-post .entry-content p.fn-cmp-micro {
	margin: 0 0 6px !important;
	padding: 0;
	color: #0d2b4e;
	font-size: 13.5px !important;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}
.fn-cmp-micro::before { content: "＼ "; color: #f29a1f; }
.fn-cmp-micro::after { content: " ／"; color: #f29a1f; }
/* ボタン直下の「公式サイト：URL」 */
.single-post .entry-content p.fn-cmp-official {
	margin: 8px 0 0 !important;
	padding: 0;
	color: #555;
	font-size: 12.5px !important;
	line-height: 1.5;
	text-align: center;
	word-break: break-all;
}

/* H2直下の図解（functions.php で差し込む）（2026-10-07） */
.fn-diagram { margin: 0 0 24px; }
.fn-diagram img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
}

/* 追従ボタン（2026-10-14 地域記事の試験。投稿メタ fn_sticky がある記事だけ） */
.fn-sticky{position:fixed;left:0;right:0;bottom:0;z-index:9990;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);box-shadow:0 -4px 14px rgba(13,43,78,.15);transform:translateY(110%);transition:transform .25s ease;text-align:center}
.fn-sticky.is-on{transform:none}
.fn-sticky__micro{margin:0 0 3px!important;padding:0!important;font-size:10px;font-weight:700;color:#c06a00;line-height:1.3}
.fn-sticky__btn{display:block;max-width:480px;margin:0 auto;padding:12px 16px;border-radius:999px;background:linear-gradient(180deg,#f6b55a,#e08a12);color:#fff!important;font-weight:700;font-size:16px;line-height:1.3;text-decoration:none!important;box-shadow:0 3px 0 #b86d06}
.fn-sticky__arrow{margin-left:8px}
/* 追従ボタン右上のバッジ（2026-11-02 オーナー指示。全記事・全社） */
.fn-sticky__btn{position:relative}
.fn-sticky__badge{position:absolute;right:-2px;top:-40px;transform:rotate(4deg);background:#fff;border:1.5px solid #f5b3aa;border-radius:8px;padding:3px 7px 2px;text-align:center;line-height:1.05;box-shadow:0 2px 0 #eaa79e;color:#e53935;font-weight:900;white-space:nowrap;pointer-events:none}
.fn-sticky__badge small{display:block;font-size:7.5px;font-weight:800;color:#c62828}
.fn-sticky__badge b{display:block;font-size:14px;letter-spacing:.02em}
@media (max-width:599px){.fn-sticky__badge{right:-10px;top:-47px}}
/* テーマの「目次」「↑（ページの上へ）」の丸ボタンは、全記事で出さない（2026-11-02 オーナー指示。追従ボタンのバッジに重なり邪魔なため） */
body.single #page-top,body.single .st_toc_back{display:none!important}

/* ヘッダー下のメニュー帯（PC）をヘッダーと同じ背景に（2026-10-16） */
#st-menuwide,
#st-menuwide-fixed,
#st-menubox,
#gazou-wide #st-menuwide {
	background: linear-gradient(160deg, #0f3460 0%, #16537e 60%, #1a6fa0 100%) !important;
	border: none !important;
	box-shadow: none !important;
}
#st-menuwide nav.smanone,
#st-menuwide .menu,
#st-menuwide .menu > li { background: transparent !important; border-color: rgba(255, 255, 255, .25) !important; }
#st-menuwide .menu > li > a { color: #fff !important; }
#st-menuwide .menu > li > a:hover { color: #ffd08a !important; background: transparent !important; }

/* 口コミ・評判記事：ロゴのリンクと、4列以上の表の横スライド（1列目を固定）。trademark/tools/logo_cells.py が class を付ける（2026-10-24） */
.single-post .entry-content table a.fn-tm-logo-link {
	display: block;
	text-decoration: none !important;
	border: none !important;
}
.single-post .entry-content table a.fn-tm-logo-link:hover img.fn-tm-logo {
	opacity: .85;
}
.single-post .entry-content .fn-tm-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin: 0 0 20px;
}
.single-post .entry-content .fn-tm-scroll > table {
	margin-bottom: 0;
}
.single-post .entry-content table.fn-tm-wide {
	width: 100%;
	min-width: 560px;
}
.single-post .entry-content table.fn-tm-wide.fn-tm-c5 {
	min-width: 680px;
}
.single-post .entry-content table.fn-tm-wide th:first-child,
.single-post .entry-content table.fn-tm-wide td:first-child {
	position: sticky;
	left: -1px;
	z-index: 2;
	min-width: 72px;
	box-shadow: -2px 0 0 #fff, 3px 0 4px -2px rgba(0, 0, 0, .18);
}
.single-post .entry-content table.fn-tm-wide td:first-child {
	background-color: #fff;
}
/* テーマが thead th 全部を sticky（top）・z-index 99997 にしているため、見出し行の1マス目をそれより上に重ねる */
.single-post .entry-content table.fn-tm-wide thead th:first-child,
.single-post .entry-content table.fn-tm-wide tr:first-child > th:first-child {
	z-index: 99998;
}

/* 目次を途中（約180px）まで見せて「目次をすべて見る」で開く（2026-11-02 オーナー指示。全記事。JS は functions.php の fn-toc-fold） */
#st_toc_container.fn-toc-fold .st_toc_list{max-height:180px;overflow:hidden;position:relative}
#st_toc_container.fn-toc-fold .st_toc_list::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(to bottom,transparent,var(--fn-toc-bg,#fff) 85%);pointer-events:none}
.fn-toc-more{display:block;margin:10px auto 0;padding:8px 22px;border:1.5px solid #1e88e5;border-radius:999px;background:#fff;color:#1e88e5;font-size:14px;font-weight:700;line-height:1.4;cursor:pointer}
.fn-toc-more:hover{background:#e3f2fd}
