/* World AI News v44 — 一覧=黒緑 / 記事=白地 / 固定ページ=コンパクト */
body {
	font-family: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Sans", sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

header a, .wan-catbar a {
	color: #dfe5ee !important;
}

header a:hover, .wan-catbar a:hover {
	color: #8cc63e !important;
}

.wan-catbar {
	border-top: 1px solid rgba(255,255,255,0.12);
	justify-content: center !important;
	column-gap: 34px !important;
}

.wan-catbar .wan-cat a {
	font-weight: 500 !important;
	text-decoration: none !important;
	letter-spacing: .07em !important;
}

p.wp-block-paragraph:has(> a:only-child) {
	font-size: 1.05rem !important;
	line-height: 1.9 !important;
	font-weight: 500 !important;
}

.wp-block-post-featured-image img {
	width: 100% !important;
	object-fit: cover;
	border-radius: 8px;
}

body:not(.single) {
	background-color: #15171c !important;
}

body:not(.single), body:not(.single) p, body:not(.single) li, body:not(.single) .wp-block-post-excerpt, body:not(.single) .wp-block-post-author-name, body:not(.single) .wp-block-post-date {
	color: #cdd2da !important;
	font-weight: 400 !important;
}

body:not(.single) h1, body:not(.single) h2, body:not(.single) h3, body:not(.single) h4, body:not(.single) .wp-block-heading, body:not(.single) .wp-block-post-title, body:not(.single) .wp-block-post-title a {
	color: #f1f3f6 !important;
	font-weight: 700;
}

body:not(.single) a {
	color: #8cc63e;
}

body:not(.single) .wp-block-post-terms a, body:not(.single) .wp-block-categories a {
	color: #8cc63e !important;
	font-weight: 600 !important;
	letter-spacing: .07em !important;
}

body:not(.single) .wp-block-post-featured-image img {
	max-height: 380px !important;
	border: 1px solid rgba(140,198,62,0.22) !important;
}

body:not(.single) .wp-block-post-author-name, body:not(.single) .wp-block-post-author {
	display: none !important;
}

body:not(.single) main .wp-block-heading {
	text-align: center !important;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	letter-spacing: .05em;
}

body:not(.single) main .wp-block-heading::before, body:not(.single) main .wp-block-heading::after {
	content: "";
	flex: 1;
	height: 2px;
	background: #8cc63e;
	max-width: 280px;
}

body.single {
	background-color: #ffffff !important;
}

body.single, body.single p, body.single li, body.single .wp-block-post-content, body.single .wp-block-post-author-name, body.single .wp-block-post-date {
	color: #23272e !important;
}

body.single h1, body.single h2, body.single h3, body.single h4, body.single .wp-block-heading, body.single .wp-block-post-title {
	color: #14181d !important;
}

body.single .wp-block-post-content a, body.single .wp-block-post-terms a, body.single .wp-block-categories a {
	color: #2f7d12 !important;
}

body.single .wp-block-post-content a {
	text-decoration: underline;
}

body.single .wp-block-group:has(.wp-block-post-title) {
	background-color: #ffffff !important;
	padding-top: 14px !important;
	padding-bottom: 8px !important;
}

body.single .wp-block-group:has(.wp-block-post-title) > * {
	margin-top: 12px !important;
	margin-block-start: 12px !important;
}

body.single .wp-block-post-excerpt {
	display: none !important;
}

body.single .wp-block-post-featured-image {
	max-width: 660px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-height: none !important;
	height: auto !important;
	aspect-ratio: auto !important;
	overflow: visible !important;
}

body.single .wp-block-post-featured-image img {
	max-height: none !important;
	height: auto !important;
	aspect-ratio: auto !important;
}

body.single .wp-block-query .wp-block-post-featured-image {
	max-width: none !important;
	max-height: none !important;
	margin-bottom: 0 !important;
}

body.single .wp-block-query .wp-block-post-featured-image img {
	max-height: none !important;
	aspect-ratio: 3/2 !important;
	object-fit: cover !important;
}

body.single .wp-block-query li.wp-block-post {
	margin-bottom: 30px !important;
}

body.single .wp-block-query li.wp-block-post .wp-block-group {
	padding-top: 0 !important;
	margin-top: 6px !important;
}

body.single .wp-block-query .wp-block-post-terms {
	margin-top: 2px !important;
}

body.single .wp-block-post-title {
	font-size: 2rem !important;
	line-height: 1.28 !important;
	margin: 6px 0 !important;
}

body.single .wp-block-query .wp-block-post-title, body.single .wp-block-query .wp-block-post-title a {
	font-size: .98rem !important;
	line-height: 1.45 !important;
	font-weight: 600 !important;
	margin: 4px 0 !important;
}

body.single .wp-block-post-date, body.single .wp-block-post-terms, body.single .wp-block-post-author-name {
	margin: 3px 0 !important;
}

body.single .wp-block-post-content {
	margin-top: 10px !important;
}

/* v22 追記 — 記事本文を細く読みやすく（丸ゴ→角ゴ・weight400・行間広め） */
body.single .wp-block-post-content, body.single .wp-block-post-content p, body.single .wp-block-post-content li {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", Arial, sans-serif !important;
	font-weight: 400 !important;
	line-height: 1.95 !important;
	letter-spacing: .01em !important;
	color: #2c3138 !important;
}

body.single .wp-block-post-content strong {
	font-weight: 600 !important;
	color: #14181d !important;
	background: linear-gradient(transparent 58%, rgba(140,198,62,0.45) 58%) !important;
	padding: 0 2px !important;
	border-radius: 2px !important;
}

/* v23 追記 — 記事ページのサイドバー「最近の投稿」からも著者名を消す（本文上の投稿者ボックスは残す） */
body.single .wp-block-query .wp-block-post-author-name, body.single .wp-block-query .wp-block-post-author {
	display: none !important;
}

/* v24 追記 — ヘッダーのタグラインは常にダーク背景なので明るい色に固定（記事ページの本文色に巻き込まれて黒に沈むのを修正） */
.wp-block-site-tagline, body.single .wp-block-site-tagline, body:not(.single) .wp-block-site-tagline {
	color: #9aa7b5 !important;
}

/* v25 追記 — 出典・リンク（リンク入りの箇条書き）は参照情報なので小さく・控えめに */
body.single .wp-block-post-content li:has(a) {
	font-size: .84em !important;
	line-height: 1.7 !important;
}

/* v26 追記 — 記事本文の図解画像を「文字幅(コラム幅)」に収める（1200pxのままはみ出しサイドバーと重なるのを修正） */
body.single .wp-block-post-content img {
	max-width: 100% !important;
	height: auto !important;
}

body.single .wp-block-post-content figure, body.single .wp-block-post-content p:has(img) {
	max-width: 100% !important;
	overflow: hidden !important;
}

/* v27 追記 — 記事の小見出しに左の緑バー飾り（段落のリズム） */
body.single .wp-block-post-content h3 {
	border-left: 6px solid #8cc63e !important;
	padding-left: 16px !important;
	margin-top: 2.1em !important;
	line-height: 1.5 !important;
}

/* v28 追記 — フッターに青いネットワーク網をうっすら（ブランドのノード網と同系・暗いオーバーレイで文字は読めるまま） */
footer.wp-block-template-part .has-black-background-color {
	background-image: linear-gradient(rgba(8,11,16,0.80), rgba(8,11,16,0.90)), url('https://world-ainews.com/wp-content/uploads/2026/06/footer_net.webp') !important;
	background-size: cover !important;
	background-position: center right !important;
	background-repeat: no-repeat !important;
}

/* v29 追記 — JSなしの"動き"（画像ホバーズーム＋カードの出現フェード） */
body:not(.single) .wp-block-post-featured-image {
	overflow: hidden;
	border-radius: 8px;
}

body:not(.single) .wp-block-post-featured-image img {
	transition: transform .45s ease;
}

body:not(.single) .wp-block-post-featured-image:hover img {
	transform: scale(1.05);
}

body:not(.single) li.wp-block-post, body:not(.single) .wp-block-post-template > * {
	animation: waNewsFadeUp .5s ease both;
}

@keyframes waNewsFadeUp {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	
	to {
		opacity: 1;
		transform: none;
	}
}

/* v32 追記 — 右サイドバー：背景を黒→ダークスレートのパネルに／見出しの線を緑→ティールに */
body.home main .wp-block-columns:last-of-type > .wp-block-column:last-child .wp-block-heading::before,
body.home main .wp-block-columns:last-of-type > .wp-block-column:last-child .wp-block-heading::after {
	background: #3fc8d6 !important;
}

/* v34 — ヒーロー右3カードを左の特集と同じ高さに。列→クエリ→テンプレへflexで高さを伝播し、3枚で左1枚分を等分 */
@media (min-width: 782px) {
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child {
		display: flex !important;
		flex-direction: column !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child > .wp-block-query {
		flex: 1 1 auto !important;
		display: flex !important;
		flex-direction: column !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-template {
		flex: 1 1 auto !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 16px !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-template > li {
		flex: 1 1 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border-bottom: none !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-template > li > .wp-block-group {
		height: 100% !important;
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 12px !important;
		align-items: stretch !important;
		margin: 0 !important;
		padding: 0 !important;
		border: none !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-featured-image, body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-featured-image a {
		height: 100% !important;
		display: block;
		margin: 0 !important;
		max-width: 100% !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-featured-image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}
	
	body.home main .wp-block-columns:first-of-type > .wp-block-column:last-child .wp-block-post-template > li > .wp-block-group > .wp-block-group {
		align-self: center;
		min-width: 0;
	}
}

/* v35 — トップの本文エリアを白地に（ヘッダー=独自ダーク／フッター=黒 はそのまま）。本文テキストは濃色へ */
body.home {
	background-color: #ffffff !important;
}

body.home main, body.home main p, body.home main li,
body.home main .wp-block-post-excerpt, body.home main .wp-block-post-date,
body.home main .wp-block-post-author-name {
	color: #2c3138 !important;
}

body.home main h1, body.home main h2, body.home main h3, body.home main h4,
body.home main .wp-block-heading,
body.home main .wp-block-post-title, body.home main .wp-block-post-title a {
	color: #14181d !important;
}

/* カテゴリ/タグの緑は白地だと薄いので少し濃い緑に */
body.home main .wp-block-post-terms a, body.home main .wp-block-categories a,
body.home main .wp-block-tag-cloud a {
	color: #2f7d12 !important;
}

/* v35-2 — 白bodyでもヘッダーはダーク固定（透明依存をやめる） */
body.home header.wp-block-template-part, body.home header {
	background-color: #15171c !important;
}

/* v36 — トップの見出し(新着記事/注目記事/人気タグ)の下の黒い線(border-bottom)を除去（緑/ティールの飾り線は残す） */
body.home main .wp-block-group:has(> h2.wp-block-heading) {
	border-bottom: 0 !important;
}

/* v37 — トップの余白を広げる（ledge.ai風）。コンテンツ幅を絞り左右余白UP＋上の余白＋セクション間隔 */
@media (min-width: 900px) {
	body.home main .alignwide {
		max-width: 1120px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	
	body.home main {
		padding-top: 28px !important;
		padding-bottom: 40px !important;
	}
	
	body.home main .wp-block-columns {
		margin-top: 56px !important;
		margin-bottom: 56px !important;
	}
}

/* v38 — 固定ページ(About/プライバシーポリシー等)をコンパクトに。本文を小さく・行間タイト・タイトルも控えめに。記事(.single)/トップ(.home)には影響しない */
body.page .wp-block-post-content {
	max-width: 760px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.page .wp-block-post-content p,
body.page .wp-block-post-content li {
	font-size: .9rem !important;
	line-height: 1.75 !important;
	letter-spacing: .005em !important;
}

body.page .wp-block-post-content h2,
body.page .wp-block-post-content h3 {
	font-size: 1.12rem !important;
	margin-top: 1.8em !important;
	margin-bottom: .5em !important;
	line-height: 1.5 !important;
}

body.page .wp-block-post-content h2 {
	border-left: 5px solid #8cc63e !important;
	padding-left: 13px !important;
}

body.page .wp-block-post-title {
	font-size: 1.7rem !important;
	line-height: 1.35 !important;
}

/* 固定ページにはアイキャッチ画像を置いていないので空の枠を出さない */
body.page .wp-block-post-featured-image:empty,
body.page .wp-block-post-featured-image:not(:has(img)) {
	display: none !important;
}

/* v40 — トップのページ送りを「ミニマル下線・黒」に（C案/上品・新聞調）。枠なし／現在ページは黒の下線／もっと見る→は黒文字リンク。JSなしのページ送り(?query-3-page=2) */
body.home .wp-block-query-pagination {
	gap: 20px !important;
	margin-top: var(--wp--preset--spacing--60) !important;
	align-items: center !important;
	justify-content: center !important;
}

body.home .wp-block-query-pagination a,
body.home .wp-block-query-pagination .page-numbers {
	border: none !important;
	background: transparent !important;
	padding: 4px 2px !important;
	color: #8a8f96 !important;
	text-decoration: none !important;
	letter-spacing: .06em !important;
	font-weight: 400 !important;
	border-radius: 0 !important;
	transition: color .2s ease, border-color .2s ease;
}

body.home .wp-block-query-pagination a:hover,
body.home .wp-block-query-pagination .page-numbers:hover {
	color: #15171c !important;
}

body.home .wp-block-query-pagination .page-numbers.current {
	color: #15171c !important;
	font-weight: 500 !important;
	border-bottom: 2px solid #15171c !important;
	padding-bottom: 4px !important;
}

body.home .wp-block-query-pagination .wp-block-query-pagination-next {
	color: #15171c !important;
	font-weight: 500 !important;
	border-bottom: 1.5px solid #15171c !important;
	padding-bottom: 3px !important;
}

body.home .wp-block-query-pagination .wp-block-query-pagination-next:hover {
	color: #555a61 !important;
	border-bottom-color: #555a61 !important;
}

body.home .wp-block-query-pagination .page-numbers.dots {
	color: #cfd3d8 !important;
	letter-spacing: 0 !important;
}

/* v42 — ヘッダー＋カテゴリバーをスクロール追従(sticky)固定／カテゴリ左端にHOME緑ボタン */
header.wp-block-template-part {
	position: sticky !important;
	top: 0 !important;
	z-index: 999 !important;
}

/* カテゴリバーは中央寄せ（HOMEも含めて全部まとめて中央に並ぶ） */
body .wan-catbar {
	justify-content: center !important;
}

/* HOME＝他カテゴリと同じ文字体裁／色だけ最初から緑 */
body .wan-catbar .wan-home a {
	color: #8cc63e !important;
}

body .wan-catbar .wan-home a:hover {
	color: #a2d957 !important;
}

/* === v43 文字サイズ調整（father要望 2026-06-25・このブロックを丸ごと削除すれば元のサイズに戻る） === */
/* サイト全体の文字を少し小さく。16px→約13.6px(85%)。トップ・記事・固定ページすべてのrem基準テキストが一律に縮む */
html {
	font-size: 85% !important;
}

/* === v43 ここまで === */
/* v44 — フッターの文字が暗い背景で薄く読みにくい→明るい色にして可読性を上げる */
footer.wp-block-template-part p,
footer.wp-block-template-part h1,
footer.wp-block-template-part h2,
footer.wp-block-template-part h3,
footer.wp-block-template-part .wp-block-heading,
footer.wp-block-template-part li {
	color: #e6eaf1 !important;
}

/* 購読フォームの入力欄プレースホルダも薄すぎないように */
footer.wp-block-template-part input::placeholder {
	color: #aab2c0 !important;
}

/* v45 — 比較表(table)を読みやすく：ヘッダー色・行線・余白・モバイル横スクロール（2026-06-29） */
.wp-block-post-content table {
	width: 100% !important;
	border-collapse: collapse !important;
	margin: 1.6em 0 !important;
	font-size: .95em !important;
	line-height: 1.6 !important;
}

.wp-block-post-content table th {
	background: #0f3d2e !important;
	color: #eafff3 !important;
	font-weight: 700 !important;
	text-align: left !important;
	padding: .7em .95em !important;
	border: 1px solid #d4d9e0 !important;
}

.wp-block-post-content table td {
	padding: .65em .95em !important;
	border: 1px solid #e2e6ec !important;
	vertical-align: top !important;
}

.wp-block-post-content table tbody tr:nth-child(even) {
	background: #f4f8f5 !important;
}

.wp-block-post-content table tbody tr:hover {
	background: #eef6f0 !important;
}

@media (max-width: 782px) {
	.wp-block-post-content figure.wp-block-table {
		overflow-x: auto !important;
	}
	
	.wp-block-post-content table {
		display: block !important;
		overflow-x: auto !important;
		white-space: nowrap !important;
	}
}

/* v49 — 記事ヘッダーのカテゴリラベルを非表示（カードは残す 2026-06-29） */
.taxonomy-category.wp-block-post-terms.has-text-align-center {
	display: none !important;
}