/*
Theme Name: Lightning Child Sample
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.0
*/

/* =================================
	フォント・基本設定
================================= */

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=Noto+Serif+JP:wght@600;700;800&display=swap');

/* safariで横向きにした時に文字が拡大しないようにする */
html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

html,
body,
button,
input,
select,
textarea {
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
}

/* =================================
共通：テキストリンク
================================= */

/* 通常・訪問済み */
.site-body a:not(.wp-block-button__link),
.site-body a:not(.wp-block-button__link):visited,
.breadcrumb a,
.breadcrumb a:visited {
	color: #333;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

/* ホバー */
.site-body a:not(.wp-block-button__link):hover,
.site-body a:not(.wp-block-button__link):visited:hover,
.breadcrumb a:hover,
.breadcrumb a:visited:hover {
	color: #c09b28;
	text-decoration: none;
}

/* リンク右側の黒丸矢印 */
.link-circle-arrow a {
	display: inline-flex;
	align-items: center;
}

.link-circle-arrow a::after {
	content: "";
	display: inline-block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin-left: 8px;
	background-image: url("assets/images/icon-arrow-circle.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px 16px;
}

/* =================================
	共通ヘッダー
================================= */

/* サイト名だけ明朝体 */
.site-header-logo,
.site-header-logo a,
.site-header-logo .site-title,
.site-header-logo .site-title a {
	font-family: "Noto Serif JP", serif !important;
	font-size: 36px;
	font-weight: 700;
	letter-spacing: 0.1em;
}

/* グローバルメニュー */
.global-nav-list > li > a,
.global-nav-list > li > a .global-nav-name {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
}

/* ヘッダー最上部の金色帯 */
#site-header::before {
	content: "大宝の街をつなぐ";
	display: block;
	width: 100%;
	height: 20px;
	padding-left: max(16px, calc((100% - 1054px) / 2 + 12px));
	box-sizing: border-box;
	background-color: #C09B28;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 20px;
	letter-spacing: 0.1em;
	text-align: left;
}

/* =================================
	PCヘッダー（992px以上）
================================= */
@media screen and (min-width: 992px) {
	/* グローバルメニュー：ホバー時 */
	#site-header .global-nav-list > li > a:hover,
	#site-header .global-nav-list > li > a:hover .global-nav-name {
		color: #C6AA4F;
	}

	/* グローバルメニュー：現在表示中のページ */
	#site-header .global-nav-list > li.current-menu-item > a,
	#site-header .global-nav-list > li.current-menu-item > a .global-nav-name,
	#site-header .global-nav-list > li.current-menu-ancestor > a,
	#site-header .global-nav-list > li.current-menu-ancestor > a .global-nav-name {
		color: #C6AA4F;
	}

	/* ヘッダー全体を幅1054pxで中央配置 */
	#site-header-container {
		max-width: 1054px;
		margin-right: auto;
		margin-left: auto;
		display: flex;
		flex-direction: column;
		align-items: stretch;
	}

	/* 1段目：サイトタイトル */
	#site-header .site-header-logo {
		position: relative;
		top: 8px;
		width: 100%;
		height: 84px;
		margin: 0;
		padding: 0;
		display: flex;
		align-items: center;
		text-align: left;
	}

	/* 2段目：グローバルメニュー */
	#site-header #global-nav {
		width: 100%;
		height: 84px;
		margin-left: 0;
	}

	/* 1054pxの中で文字とスラッシュを均等配置 */
	#site-header .global-nav-list {
		display: flex;
		width: 100%;
		height: 84px;
		align-items: center;
		justify-content: space-between;
	}

	/* 文字幅に合わせる */
	#site-header .global-nav-list > li {
		display: flex;
		flex: 0 0 auto;
		height: 84px;
		align-items: center;
	}

	/* Lightning標準の余白を除く */
	#site-header .global-nav-list > li > a {
		display: flex;
		width: auto;
		height: 84px;
		padding-right: 0;
		padding-left: 0;
		align-items: center;
	}

	/* メニュー間の金色スラッシュ */
	#site-header .global-nav-list > li:not(:last-child)::after {
		content: "";
		display: block;
		flex: 0 0 auto;
		width: 2px;
		height: 36px;
		margin-left: 35px;
		background-color: #C6AA4F;
		transform: rotate(15deg);
		pointer-events: none;
	}

	/* ホームはPCグローバルメニューでは非表示 */
	.global-nav-list .mobile-menu-only {
		display: none !important;
	}
}

/* =================================
	タブレット・スマホヘッダー（991px以下）
================================= */
@media screen and (max-width: 991px) {
	.site-header-logo,
	.site-header-logo a,
	.site-header-logo .site-title,
	.site-header-logo .site-title a {
		font-size: 26px;
		align-items: center !important;
	}

	/* 金帯＋タイトル行を上部固定 */
	#site-header {
		position: fixed !important;
		top: 0 !important;
		right: 0;
		left: 0;
		z-index: 100 !important;
		width: 100%;
		min-height: 76px;
		background-color: #fff;
	}

	/* 固定ヘッダー分の高さを確保 */
	body {
		padding-top: 76px;
	}

	/* モバイルメニューを固定ヘッダーより手前に表示 */
	.vk-mobile-nav {
		z-index: 100000 !important;
	}

	/* 金帯の文字をタイトルの左端に合わせる */
	#site-header::before {
		padding-left: 20px;
	}

	/* ヘッダー内容を上のコンテンツ幅に合わせる */
	#site-header-container {
		position: relative;
		width: min(1054px, calc(100% - 40px));
		max-width: none;
		margin-right: auto;
		margin-left: auto;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	/* サイトタイトルを白帯の左側へ */
	#site-header .site-header-logo,
	#site-header .site-header-logo a {
		justify-content: flex-start;
		width: 100%;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 72px;
		padding-left: 0 !important;
		box-sizing: border-box;
		text-align: left;
	}

	/* ハンバーガーを白いタイトル帯の右端へ */
	.vk-mobile-nav-menu-btn {
		display: block !important;
		position: absolute !important;
		top: calc(50% + 3px) !important;
		right: 0 !important;
		left: auto !important;
		z-index: 10000 !important;
		width: 48px !important;
		height: 42px !important;
		overflow: visible !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: none !important;
		box-shadow: none !important;
		font-size: 0 !important;
		transform: translateY(-50%) !important;
	}

	/* 金色の二本線 */
	.vk-mobile-nav-menu-btn::before {
		content: "" !important;
		display: block !important;
		position: absolute !important;
		top: 6px !important;
		left: 8px !important;
		width: 32px !important;
		height: 2px !important;
		background-color: #C09B28 !important;
		box-shadow: 0 10px 0 #C09B28 !important;
	}

	/* JSで追加した「メニュー」 */
	.vk-mobile-nav-menu-btn .daiho-menu-label {
		display: block !important;
		position: absolute !important;
		right: 8px !important;
		bottom: 8px !important;
		left: 8px !important;
		z-index: 1 !important;
		width: 32px !important;
		height: 10px !important;
		overflow: visible !important;
		color: #333 !important;
		font-family: "Noto Sans JP", sans-serif !important;
		font-size: 9px !important;
		font-weight: 500 !important;
		line-height: 10px !important;
		letter-spacing: 0 !important;
		text-align: center !important;
		text-indent: 0 !important;
		white-space: nowrap !important;
		visibility: visible !important;
		opacity: 1 !important;
		transform: translateX(-1px) !important;
	}

	/* 以前の擬似要素による「メニュー」は使わない */
	.vk-mobile-nav-menu-btn::after {
		content: none !important;
		display: none !important;
	}

	/* メニュー展開中は右上に×を表示 */
	.vk-mobile-nav-menu-btn.menu-open,
	body.menu-open .vk-mobile-nav-menu-btn,
	body.vk-mobile-nav-open .vk-mobile-nav-menu-btn {
		position: fixed !important;
		top: 12px !important;
		right: 12px !important;
		left: auto !important;
		z-index: 1000000 !important;
		width: 48px !important;
		height: 48px !important;
		transform: none !important;
		background-image:
			linear-gradient(
				45deg,
				transparent 47%,
				#C09B28 47%,
				#C09B28 53%,
				transparent 53%
			),
			linear-gradient(
				-45deg,
				transparent 47%,
				#C09B28 47%,
				#C09B28 53%,
				transparent 53%
			) !important;
		background-position: center, center !important;
		background-repeat: no-repeat !important;
		background-size: 28px 28px !important;
	}

	/* 展開中は二本線と「メニュー」を消す */
	.vk-mobile-nav-menu-btn.menu-open::before,
	body.menu-open .vk-mobile-nav-menu-btn::before,
	body.vk-mobile-nav-open .vk-mobile-nav-menu-btn::before,
	.vk-mobile-nav-menu-btn.menu-open .daiho-menu-label,
	body.menu-open .vk-mobile-nav-menu-btn .daiho-menu-label,
	body.vk-mobile-nav-open .vk-mobile-nav-menu-btn .daiho-menu-label {
		content: none !important;
		display: none !important;
	}

	/* メニュー一覧を×の下まで下げる */
	.vk-mobile-nav-menu-outer {
		padding-top: 24px !important;
		box-sizing: border-box;
	}
}

/* ログイン中：固定ヘッダーを管理バーの下へ */
@media screen and (min-width: 783px) and (max-width: 991px) {
	body.admin-bar #site-header {
		top: 32px !important;
	}
}

@media screen and (max-width: 782px) {
	body.admin-bar #site-header {
		top: 46px !important;
	}
}

/* 576～991px：白帯を高くしてタイトルを上下中央にする */
@media screen and (min-width: 576px) and (max-width: 991px) {
	#site-header .site-header-logo {
		display: flex !important;
		align-items: center !important;
		height: 56px !important;
		min-height: 56px !important;
	}

	#site-header .site-header-logo a {
		display: flex !important;
		align-items: center !important;
		height: 100% !important;
	}
}

/* 576～700px：長いサイトタイトルを1行に収める */
@media screen and (min-width: 576px) and (max-width: 700px) {
	.site-header-logo,
	.site-header-logo a,
	.site-header-logo .site-title,
	.site-header-logo .site-title a {
		font-size: clamp(20px, 3.4vw, 23px) !important;
		letter-spacing: 0.03em;
		white-space: nowrap;
	}
}

/* 575px以下：スマホ */
@media screen and (max-width: 575px) {
	.site-header-logo,
	.site-header-logo a,
	.site-header-logo .site-title,
	.site-header-logo .site-title a {
		font-size: clamp(15px, 4.4vw, 17px);
		letter-spacing: 0.03em;
		white-space: nowrap;
	}

	#site-header .site-header-logo {
		display: flex !important;
		align-items: center !important;
		height: 56px !important;
		min-height: 56px !important;
	}

	#site-header .site-header-logo a {
		display: flex !important;
		align-items: center !important;
		height: 100% !important;
	}
}

/* 390px以下：ハンバーガーを少し右へ寄せる */
@media screen and (max-width: 390px) {
	.vk-mobile-nav-menu-btn {
		right: -8px !important;
	}
}

/* =================================
	共通フッター
================================= */

/* フッター全体 */
.site-footer {
	background-color: #C09B28;
	color: #fff;
	border-top: 0;
}

/* Lightning標準の外側余白・幅制限を除く */
.site-footer .site-footer-content,
.site-footer .site-footer-content .container {
	width: 100% !important;
	max-width: none !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.site-footer .site-footer-content {
	padding-top: 0;
	padding-bottom: 0;
}

.site-footer .site-footer-content .row {
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.site-footer .site-footer-content .row > * {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.site-footer .widget {
	margin-bottom: 0;
}

/* 自作したフッター内容 */
.daiho-footer-content {
	width: calc(100% - 32px);
	max-width: 1054px;
	margin: 0 auto;
	padding: 35px 0 45px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	line-height: 26px;
	letter-spacing: 0.1em;
}

/* 段落に付く標準余白を除く */
.daiho-footer-content p {
	margin: 0;
}

/* コピーライトと管理者ログイン */
.daiho-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/* 管理者ログイン */
.site-footer .daiho-footer-login {
	color: #fff;
	text-decoration: none;
}

.site-footer .daiho-footer-login:hover {
	color: #fff;
	text-decoration: underline;
}

/* Lightning標準のコピーライトを非表示 */
.site-footer-copyright {
	display: none;
}

/* PCではフッターの高さを234pxに固定 */
@media screen and (min-width: 992px) {
	.site-footer,
	.daiho-footer-content {
		height: 234px;
	}
}

/* タブレット・スマホフッター */
@media screen and (max-width: 991px) {
	/* フッターを上のコンテンツと同じ幅・左揃えにする */
	.daiho-footer-content {
		width: min(1054px, calc(100% - 64px));
		text-align: left;
		font-size: 13px;
		line-height: 24px;
	}
	
/* スマホフッター */
@media screen and (max-width: 575px) {
	.daiho-footer-content {
		font-size: 12px;
		line-height: 22px;
	}
}

	/* 管理者ログインをコピーライトの下へ */
	.daiho-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
	}

	.site-footer .daiho-footer-login {
		display: block;
		margin-top: 8px;
	}
}

/* スマホフッター */
@media screen and (max-width: 575px) {
	.daiho-footer-content {
		font-size: 12px;
		line-height: 22px;
	}
}

/* =================================
	TOPへ戻るボタン
================================= */

/* PC（992px以上） */
@media screen and (min-width: 992px) {
	/* Lightning標準ボタンの形を変更 */
	#page_top.page_top_btn {
		position: fixed;
		right: 80px;
		bottom: 80px;
		z-index: 1000;
		width: 80px;
		height: 80px;
		border-radius: 50%;
		background-color: rgba(0, 0, 0, 0.8);
		background-position: center 28%;
		background-repeat: no-repeat;
		color: #fff;
		box-shadow: none;
		text-indent: 0;
	}

	/* TOP文字を追加 */
	#page_top.page_top_btn::after {
		content: "TOP";
		position: absolute;
		right: 0;
		bottom: 20px;
		left: 0;
		color: #fff;
		font-family: "Noto Sans JP", sans-serif;
		font-size: 14px;
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0;
		text-align: center;
	}

	/* マウスを重ねた時 */
	#page_top.page_top_btn:hover {
		background-color: rgba(0, 0, 0, 0.9);
	}
}

/* タブレット・スマホ（991px以下） */
@media screen and (max-width: 991px) {
	#page_top.page_top_btn {
		right: 16px;
		bottom: 16px;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		background-position: center;
		background-color: rgba(0, 0, 0, 0.8);
		box-shadow: none;
	}

	/* タブレット・スマホでは「TOP」の文字を付けない */
	#page_top.page_top_btn::after {
		content: none;
	}
}

/* =================================
	固定ページ：自治連合会・地域活動協議会
================================= */

/* Lightning標準のページタイトルを非表示 */
body:has(.organization-page) .page-header {
	display: none !important;
}

/* パンくずと本文の幅を1054pxに揃える */
body:has(.organization-page) #breadcrumb .container,
body:has(.organization-page) .site-body-container.container {
	max-width: 1054px !important;
}

/* ページ内容は親コンテナいっぱいにする */
.organization-page {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-sizing: border-box;
}

/* パンくず */
body:has(.organization-page) #breadcrumb,
body:has(.organization-page) #breadcrumb .breadcrumb-list {
	line-height: 40px;
	font-size:10px;
}

/* パンくず：家アイコンを非表示 */
body:has(.organization-page)
.breadcrumb-list__item--home::before,
body:has(.organization-page)
.breadcrumb-list__item--home a::before,
body:has(.organization-page)
.breadcrumb-list__item--home i,
body:has(.organization-page)
.breadcrumb-list__item--home svg {
	content: none !important;
	display: none !important;
}

/* Lightning標準の「/」を消す */
body:has(.organization-page)
.breadcrumb-list__item::after {
	content: none !important;
	display: none !important;
}

/* 2項目目以降の前に「>」を入れる */
body:has(.organization-page)
.breadcrumb-list__item + .breadcrumb-list__item::before {
	content: ">" !important;
	display: inline-block !important;
	position: static !important;
	margin-right: 12px;
	margin-left: 12px;
}

/* パンくずから見出しまで24px */
body:has(.organization-page) .site-body {
	padding-top: 24px !important;
}

/* 見出し部分 */
.organization-page-heading {
	width: 100% !important;
	max-width: none !important;
	align-self: stretch;
	margin: 0 !important;
	padding: 0 0 20px !important;
	border-bottom: 1px solid #B1B1B1;
}

/* H2見出し */
.organization-page-title {
	display: flex;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
	font-family: "Noto Serif JP", serif;
	font-size: 26px;
	font-weight: 700;
	line-height: 46px;
}

/* 見出しの家アイコン */
.organization-page-title img {
	flex: 0 0 46px;
	width: 46px !important;
	height: 46px !important;
	margin-right: 20px;
	object-fit: contain;
}

/* 横線から本文まで38px */
.organization-page-text {
	margin: 38px 0 0 !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 26px;
}

/* 本文からPDFリンクまで50px */
.organization-page-pdf {
	margin: 50px 0 0 !important;
}

/* PDFリンクの段落 */
.organization-page-pdf p {
	display: flex;
	align-items: center;
	margin: 0 !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 36px;
}

/* PDFアイコン */
.organization-page-pdf img {
	flex: 0 0 33px;
	width: 33px !important;
	height: 36px !important;
	margin-right: 20px;
	object-fit: contain;
	vertical-align: middle;
}

/* =================================
	固定ページ：タブレット・スマホ調整
================================= */

/* 991px以下 */
@media screen and (max-width: 991px) {
	.organization-page-title {
		font-size: 20px;
		line-height: 1.5;
	}

	.organization-page-title img {
		flex: 0 0 28px;
		width: 28px !important;
		height: 28px !important;
		margin-right: 10px;
	}
}

/* 575px以下 */
@media screen and (max-width: 575px) {
	.organization-page-title {
		font-size: 18px;
	}
}

/* =================================
	固定ページ：ページ内メニュー
================================= */

.page-anchor-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 46px 0 0 !important;
}

.page-anchor-nav .wp-block-button {
	margin: 0 !important;
}

.page-anchor-nav .wp-block-button__link {
	min-width: 0;
	padding: 6px 14px;
	border: none;
	border-radius: 999px;
	background-color: #000;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-decoration: none;
}

body .site-body .page-anchor-nav
.wp-block-button
.wp-block-button__link:hover {
	background: #DFBF56 !important;
	background-color: #DFBF56 !important;
	background-image: none !important;
	border-color: #DFBF56 !important;
	color: #fff !important;
	opacity: 1 !important;
	filter: none !important;
	box-shadow: none !important;
}

/* =================================
	固定ページ：各セクション
================================= */

.site-body .page-section {
	width: 100% !important;
	max-width: none !important;
	margin-top: 64px !important;
	margin-block-start: 64px !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	align-self: stretch;
	box-sizing: border-box;
}


/* 見出しと説明文を入れる行 */
.site-body .page-section > .page-section-heading {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 24px;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 0 18px !important;
	box-sizing: border-box;
}

.site-body .page-section:not(.daiho-contact-form-area) > .page-section-heading {
	border-bottom: 1px solid #B1B1B1;
}

/* セクション見出し */
.page-section-title {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	width: auto !important;
	max-width: none !important;
	gap: 16px;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	box-sizing: border-box;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.5;
}

/* 見出し横の説明文 */
.page-section-note {
	margin: 0 !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.8;
}

/* 見出し左側の金色四角 */
.page-section-title::before {
	content: "";
	display: block;
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	box-sizing: border-box;
	border: 8px solid #C09B28;
	background-color: #fff;
}

@media screen and (max-width: 991px) {
	.page-section-title::before {
		flex-basis: 20px;
		width: 20px;
		height: 20px;
		border-width: 6px;
	}
}

@media screen and (max-width: 575px) {
	.page-section-title::before {
		flex-basis: 17px;
		width: 17px;
		height: 17px;
		border-width: 5px;
	}
}

/* =================================
	固定ページ：地域の活動
================================= */

/* カード一覧：PCで3列 */
.site-body .page-section > .activities-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 300px));
	justify-content: space-between;
	align-items: start;
	row-gap: 28px;
	width: 100% !important;
	max-width: none !important;
	margin: 38px 0 0 !important;
	box-sizing: border-box;
}

/* カード */
.site-body .activities-card-grid > .activities-card {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	box-sizing: border-box;
}

/* カード画像 */
.activities-card-image img {
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 5 / 3;
	border-radius: 15px;
	object-fit: cover;
}

.activities-card-image img {
	display: block;
	width: 100% !important;
	aspect-ratio: 5 / 3;
	border-radius: 15px;
	object-fit: cover;
}

/* カード見出し */
.activities-card-title {
	margin: 18px 0 0 !important;
	padding: 0 !important;
	border: none !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.6;
}

/* カード説明文 */
.activities-card-text {
	margin: 12px 0 0 !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 26px;
}

/* タブレット：2列 */
@media screen and (max-width: 991px) {
	.site-body .page-section > .activities-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 32px;
		row-gap: 38px;
	}
}

/* スマホ：1列 */
@media screen and (max-width: 575px) {
	.site-body .page-section > .activities-card-grid {
		grid-template-columns: 1fr;
		row-gap: 38px;
	}
}

/* 写真2列の狭い範囲では、説明文を見出しの下へ */
@media screen and (min-width: 576px) and (max-width: 767px) {
	.site-body .page-section > .page-section-heading {
		flex-direction: column;
		align-items: flex-start;
	}

	.site-body .page-section > .page-section-heading > .page-section-note {
		width: 100% !important;
		max-width: none !important;
		align-self: stretch;
	}
}

/* =================================
	固定ページ：大宝地域の歴史
================================= */

/* 現在の大宝地域：地図と説明文 */
.site-body .history-map-layout {
	display: grid;
	grid-template-columns: 420px minmax(0, 1fr);
	align-items: start;
	gap: 60px;
	width: 100% !important;
	max-width: none !important;
	margin: 48px 0 0 !important;
	box-sizing: border-box;
}

/* 地図画像 */
.site-body .history-map-layout figure {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.site-body .history-map-layout img {
	display: block;
	width: 100%;
	height: auto;
}

/* 説明文 */
.site-body .history-map-layout p {
	max-width: none !important;
	margin: 0 !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 26px;
}

/* 歴史ページ：地図と説明文をスマホ・小型画面で縦並びにする */
@media screen and (max-width: 767px) {
	.site-body .history-map-layout {
		grid-template-columns: 1fr;
		gap: 24px;
	}
}

/* 歴史ページ：古写真一覧 */
.site-body .history-photo-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	row-gap: clamp(38px, 8vw, 84px);
	column-gap: clamp(38px, 8%, 84px);
	width: 100% !important;
	max-width: none !important;
	margin-top: 48px !important;
	padding: 0 !important;
	box-sizing: border-box;
}

/* 写真グループ間の余白 */
.site-body .history-photo-grid + .history-photo-grid {
	margin-top: clamp(38px, 8vw, 84px) !important;
}

/* 歴史写真：3列 */
.site-body .history-photo-grid.col-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* 画像ブロック */
.site-body .history-photo-grid > figure {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.site-body .history-photo-grid img {
	display: block;
	width: 100%;
	height: auto;
}

/* スマホ：すべて1列 */
@media screen and (max-width: 575px) {
	.site-body .history-photo-grid,
	.site-body .history-photo-grid.col-3 {
		grid-template-columns: 1fr;
		row-gap: 38px;
	}

	.site-body .history-photo-grid + .history-photo-grid {
		margin-top: 38px !important;
	}
}

/* =================================
	防災情報ページ
================================= */

/* ---------------------------------
	地域別災害対応マップ
--------------------------------- */

/* マップ2列 */
.site-body .page-section > .bousai-map-columns {
	align-items: flex-start;
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	gap: 40px;
	padding-top: 28px !important;
}

/* マップ画像 */
.bousai-map-columns .wp-block-image {
	margin: 0;
}

.bousai-map-columns .wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
}

/* ---------------------------------
	PDFリンク共通
--------------------------------- */

.site-body p.bousai-map-pdf {
	display: flex;
	align-items: center;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	margin-block-start: 0 !important;
	padding-top: 16px;
	gap: 12px;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
}

/* PDFアイコン */
.site-body p.bousai-map-pdf img {
	display: block;
	flex: 0 0 33px;
	width: 33px;
	height: 36px;
	margin: 0;
	object-fit: contain;
}

/* PDFリンク文字 */
.site-body p.bousai-map-pdf a {
	color: #333;
}

/* ---------------------------------
	出典共通
--------------------------------- */

.site-body p.bousai-map-source {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	margin-block-start: 0 !important;
	padding-top: 22px;
	color: #777;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 10px;
	font-weight: 400;
	line-height: 18px;
	letter-spacing: 0.05em;
	overflow-wrap: anywhere;
}

.site-body p.bousai-map-source a {
	color: inherit;
}

/* ---------------------------------
	中央区防災マップ
--------------------------------- */

/* 画像・PDF・出典をまとめた親グループ */
.site-body .page-section > .bousai-chuo-content {
	width: 100% !important;
	max-width: 800px !important;
	margin-right: auto !important;
	margin-left: 0 !important;
	padding-top: 28px;
}

/* マップ画像 */
.site-body .bousai-chuo-content > .bousai-chuo-map {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.bousai-chuo-content .bousai-chuo-map img {
	display: block;
	width: 100%;
	height: auto;
}

/* 中央区防災マップのPDFリンクから出典まで */
.site-body .bousai-chuo-content > p.bousai-map-source {
	margin: 18px 0 0 !important;
	margin-block-start: 18px !important;
	padding-top: 0 !important;
}

/* ---------------------------------
	避難所一覧：表共通
--------------------------------- */

/* スマホ横スクロール用の外枠 */
.shelter-table-scroll {
	width: 100%;
	margin-top: 48px;
	overflow-x: visible;
}

/* 表本体 */
.site-body .shelter-table {
	width: 100%;
	min-width: 0;
	margin: 0;
	border-collapse: collapse;
	table-layout: fixed;
	color: #333;
	font-family: "Noto Sans JP", sans-serif;
}

/* セル共通 */
.site-body .shelter-table th,
.site-body .shelter-table td {
	box-sizing: border-box;
	height: 58px;
	padding: 12px 20px;
	border: 1px solid #ccc;
	vertical-align: middle;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

/* 表のカテゴリー行 */
.site-body .shelter-table .shelter-table-category th {
	height: 58px;
	padding: 12px 20px;
	background-color: #eee6cd;
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
	text-align: left !important;
}

/* 名称・所在地・避難可能人員 */
.site-body .shelter-table thead tr:not(.shelter-table-category) th {
	background-color: #f7f7f7;
	font-weight: 400 !important;
	text-align: left;
}

/* 人数列：右揃え・狭ければ改行 */
.site-body .shelter-table th.number,
.site-body .shelter-table td.number {
	text-align: right !important;
	white-space: normal;
	overflow-wrap: anywhere;
}

/* 広域避難場所：3列の幅 */
.site-body .shelter-table.is-3col col:nth-child(1) {
	width: 38%;
}

.site-body .shelter-table.is-3col col:nth-child(2) {
	width: 31%;
}

.site-body .shelter-table.is-3col col:nth-child(3) {
	width: 31%;
}

/* 災害時避難所：4列の幅 */
.site-body .shelter-table.is-4col col:nth-child(1) {
	width: 37%;
}

.site-body .shelter-table.is-4col col:nth-child(2) {
	width: 25%;
}

.site-body .shelter-table.is-4col col:nth-child(3),
.site-body .shelter-table.is-4col col:nth-child(4) {
	width: 19%;
}

/* ---------------------------------
	タブレット・スマホ
--------------------------------- */

@media screen and (max-width: 781px) {
	.site-body .page-section > .bousai-map-columns {
		gap: 48px;
		padding-top: 24px !important;
	}
}

@media screen and (max-width: 575px) {
	/* 長いセクション見出しを折り返す */
	.site-body .page-section-title {
		flex: 1 1 auto !important;
		box-sizing: border-box;
		width: 100% !important;
		min-width: 0 !important;
		align-items: flex-start;
		gap: 12px;
		font-size: 16px;
		white-space: normal !important;
		overflow-wrap: anywhere;
	}

	
	.site-body .page-section-title::before {
		flex: 0 0 17px;
		width: 17px;
		height: 17px;
		margin-top: 4px;
		border-width: 5px;
	}

	/* 中央区防災マップ */
	.site-body .page-section > .bousai-chuo-content {
		padding-top: 24px;
	}

	/* 出典 */
	.site-body p.bousai-map-source {
		font-size: 11px;
		line-height: 20px;
	}
	

	.site-body .shelter-table {
		width: 100%;
		min-width: 0;
		max-width: 100%;
		table-layout: fixed;
	}

	
	/* スマホの表セル */
	.site-body .shelter-table th,
	.site-body .shelter-table td {
		height: 58px;
		padding: 8px 6px;
		font-size: 12px;
		line-height: 18px;
		overflow-wrap: anywhere;
	}

	/* カテゴリー行 */
	.site-body .shelter-table .shelter-table-category th {
		height: 48px;
		padding: 8px;
		font-size: 14px;
		line-height: 24px;
	}
	
}

/* =================================
	固定ページ：お問合せ
================================= */

/* PC：左に説明文・フォーム、右に注意事項 */
.site-body .daiho-contact-layout {
	display: grid;
	grid-template-columns: minmax(0, 760px) minmax(240px, 270px);
	grid-template-areas:
		"intro notice"
		"form  notice";
	column-gap: 24px;
	align-items: start;
	width: 100% !important;
	max-width: none !important;
	margin: 38px 0 0 !important;
	box-sizing: border-box;
}

/* Gutenberg標準のコンテンツ幅を解除 */
.site-body .daiho-contact-layout > .daiho-contact-intro,
.site-body .daiho-contact-layout > .daiho-contact-notice,
.site-body .daiho-contact-layout > .daiho-contact-form-area {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-sizing: border-box;
}

/* =================================
	説明文
================================= */

.site-body .daiho-contact-intro {
	grid-area: intro;
}

.site-body .daiho-contact-intro > * {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.site-body .daiho-contact-intro p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 26px;
}

/* =================================
	お問い合わせの前に
================================= */

.site-body .daiho-contact-notice {
	grid-area: notice;
	padding: 24px 20px;
	border: 1px solid #C09B28;
	border-radius: 12px;
	text-align: left;
}

.site-body .daiho-contact-notice > * {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-sizing: border-box;
}

/* カード見出し */
.site-body .daiho-contact-notice h3 {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 0;
	margin-bottom: 18px;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.5;
}

.site-body .daiho-contact-notice h3::before {
	content: "";
	display: block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	border: 5px solid #C09B28;
	background-color: #fff;
	box-sizing: border-box;
}

/* 注意事項リスト */
.site-body .daiho-contact-notice ul {
	width: 100% !important;
	margin: 0 !important;
	padding-left: 0;
	list-style: none;
	box-sizing: border-box;
}

.site-body .daiho-contact-notice li {
	position: relative;
	margin: 0 0 10px;
	padding-left: 1.2em;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.8;
	text-align: left;
}

.site-body .daiho-contact-notice li::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}

.site-body .daiho-contact-notice li:last-child {
	margin-bottom: 0;
}

/* =================================
	お問い合わせフォーム
================================= */

.site-body .page-section.daiho-contact-form-area {
	grid-area: form;
	width: 100% !important;
	max-width: none !important;
	margin-top: 46px !important;
	margin-block-start: 46px !important;
}

/* Gutenberg標準のフォーム内部幅を解除 */
.site-body .daiho-contact-form-area > *,
.site-body .daiho-contact-form-area .page-section-heading,
.site-body .daiho-contact-form-area .wpcf7 {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-sizing: border-box;
}

.site-body .daiho-contact-form-area .wpcf7 {
	margin-top: 20px;
}

.site-body .daiho-contact-form {
	width: 100%;
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
}

/* 各入力行 */
.site-body .daiho-form-row {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	align-items: center;
	min-height: 90px;
	padding: 20px;
	border-bottom: 1px solid #D8D8D8;
	box-sizing: border-box;
}

.site-body .daiho-form-row:first-child {
	border-top: 1px solid #D8D8D8;
}

/* 項目名 */
.site-body .daiho-form-label {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-right: 20px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
}

.site-body .daiho-form-label label {
	margin: 0;
}

/* 必須・任意 */
.site-body .daiho-required,
.site-body .daiho-optional {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 35px;
	height: 22px;
	padding: 0 5px;
	border-radius: 2px;
	color: #fff;
	font-size: 10px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.05em;
	box-sizing: border-box;
}

.site-body .daiho-required {
	background-color: #C95349;
}

.site-body .daiho-optional {
	background-color: #929292;
}

/* 入力欄 */
.site-body .daiho-form-control,
.site-body .daiho-form-control .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.site-body .daiho-form-control input,
.site-body .daiho-form-control textarea {
	width: 100%;
	margin: 0;
	padding: 12px 16px;
	border: 1px solid #CFCBC3;
	border-radius: 3px;
	background-color: #fff;
	color: #333;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.05em;
	box-sizing: border-box;
}

.site-body .daiho-form-control input {
	height: 50px;
}

.site-body .daiho-form-control textarea {
	height: 190px;
	min-height: 190px;
	resize: vertical;
}

.site-body .daiho-form-control input:focus,
.site-body .daiho-form-control textarea:focus {
	border-color: #C09B28;
	outline: 2px solid rgba(192, 155, 40, 0.18);
	outline-offset: 1px;
}

.site-body .daiho-form-control input::placeholder,
.site-body .daiho-form-control textarea::placeholder {
	color: #A6A6A6;
	opacity: 1;
}

/* お問い合わせ内容 */
.site-body .daiho-form-message {
	align-items: start;
}

.site-body .daiho-form-message .daiho-form-label {
	padding-top: 13px;
}

/* 個人情報の同意 */
.site-body .daiho-form-consent {
	margin: 30px 0 0;
	font-size: 12px;
	line-height: 1.8;
	text-align: center;
}

.site-body .daiho-form-consent .wpcf7-list-item {
	margin: 0;
}

.site-body .daiho-form-consent label {
	display: inline-flex;
	align-items: flex-start;
	gap: 10px;
	text-align: left;
}

.site-body .daiho-form-consent input[type="checkbox"] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 3px 0 0;
	accent-color: #C09B28;
}

/* 送信ボタン */
.site-body .daiho-form-submit {
	position: relative;
	margin: 30px 0 0;
	text-align: center;
}

.site-body .daiho-form-submit input[type="submit"] {
	width: 320px;
	max-width: 100%;
	min-height: 58px;
	padding: 14px 24px;
	border: 1px solid #C09B28;
	border-radius: 2px;
	background-color: #C09B28;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.1em;
	box-shadow: none;
}

.site-body .daiho-form-submit input[type="submit"]:hover {
	border-color: #B18D20;
	background-color: #B18D20;
	color: #fff;
	opacity: 1;
}

/* Contact Form 7の送信中スピナー */
.site-body .daiho-form-submit .wpcf7-spinner {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: 0;
	transform: translate(125px, -50%);
}

/* エラー表示 */
.site-body .daiho-contact-form .wpcf7-not-valid-tip {
	margin-top: 6px;
	font-size: 12px;
	line-height: 1.5;
}

.site-body .daiho-contact-form-area .wpcf7-response-output {
	margin: 24px 0 0;
	padding: 12px 16px;
	font-size: 13px;
	line-height: 1.8;
}

/* =================================
	お問合せ：タブレット・スマホ
================================= */

@media screen and (max-width: 991px) {
	.site-body .daiho-contact-layout {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"intro"
			"notice"
			"form";
		column-gap: 0;
		margin-top: 38px !important;
	}

	.site-body .daiho-contact-notice {
		margin-top: 32px !important;
	}

	.site-body .page-section.daiho-contact-form-area {
		margin-top: 64px !important;
		margin-block-start: 64px !important;
	}
}

@media screen and (max-width: 575px) {
	.site-body .daiho-contact-layout {
		margin-top: 30px !important;
	}

	.site-body .daiho-contact-notice {
		padding: 20px 18px;
	}

	.site-body .daiho-form-row {
		display: block;
		min-height: 0;
		padding: 20px 0;
	}

	.site-body .daiho-form-label {
		gap: 10px;
		margin-bottom: 12px;
		padding-right: 0;
	}

	.site-body .daiho-form-message .daiho-form-label {
		padding-top: 0;
	}

	.site-body .daiho-form-control input {
		height: 48px;
	}

	.site-body .daiho-form-control textarea {
		height: 180px;
		min-height: 180px;
	}

	.site-body .daiho-form-consent {
		margin-top: 24px;
		text-align: left;
	}

	.site-body .daiho-form-submit {
		margin-top: 24px;
	}

	.site-body .daiho-form-submit input[type="submit"] {
		width: 280px;
		max-width: 100%;
	}
}

/* =================================
お知らせ個別ページ：不要項目を非表示
================================= */

/* 投稿者・更新日 */
.single-post .entry-meta-item-author,
.single-post .entry-meta-item-updated {
	display: none !important;
}

/* 記事下のカテゴリー */
.single-post .entry-meta-data-list--category {
	display: none !important;
}

/* 前の記事・次の記事 */
.single-post .vk_posts.next-prev {
	display: none !important;
}

/* パンくずの「未分類」を非表示 */
.single-post.category-uncategorized
#breadcrumb .breadcrumb-list__item:nth-child(3) {
	display: none !important;
}

/* =================================
お知らせ個別ページ：アイキャッチ画像・本文画像
================================= */

.single-post .wp-block-post-featured-image img,
.single-post .entry-body .wp-block-image img {
	display: block;
	width: auto !important;
	max-width: min(100%, 800px);
	height: auto;
	margin-right: auto;
	margin-left: 0;
}

/* =================================
お知らせ一覧ページ：不要項目を非表示
================================= */

/* 「未分類」と「新着!!」を非表示 */
.vk_post_imgOuter_singleTermLabel,
.vk_post_title_new {
	display: none !important;
}

/* お知らせ一覧：「続きを読む」ボタン */
body.blog .post-list.vk_posts-mainSection
.vk_post_btnOuter .btn {
	min-width: 0;
	padding: 6px 14px;
	color: #fff !important;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-decoration: none !important;
	background-color: #000;
	border: none;
	border-radius: 999px;
}

/* 「続きを読む」ホバー・フォーカス */
body.blog .post-list.vk_posts-mainSection
.vk_post_btnOuter .btn:hover,
body.blog .post-list.vk_posts-mainSection
.vk_post_btnOuter .btn:focus {
	color: #fff !important;
	text-decoration: none !important;
	background: #dfbf56 !important;
	background-color: #dfbf56 !important;
	background-image: none !important;
	border-color: #dfbf56 !important;
	opacity: 1 !important;
	filter: none !important;
	box-shadow: none !important;
}

/* ページ送り：現在のページ */
.navigation.pagination .page-numbers.current {
	color: #fff !important;
	background-color: #C6AA4F !important;
	border-color: #C6AA4F !important;
}

/* ページ送り：通常 */
.navigation.pagination a.page-numbers {
	color: #333 !important;
}

/* ページ送り：ホバー */
.navigation.pagination a.page-numbers:hover,
.navigation.pagination a.page-numbers:focus {
	color: #fff !important;
	text-decoration: none !important;
	background-color: #dfbf56 !important;
	border-color: #dfbf56 !important;
}

/* お知らせ一覧：画像をトップページと同じサイズに統一 */
body.blog .post-list.vk_posts-mainSection
.vk_post_imgOuter {
	flex: 0 0 214px;
	width: 214px;
	max-width: 214px;
	height: 130px;
	padding: 0 !important;
	overflow: hidden;
	border: 1px solid #E1DFD3;
	border-radius: 10px;
}

/* お知らせ一覧：画像ホバーを明るくする */
body.blog .post-list.vk_posts-mainSection
.vk_post_imgOuter > a:hover::after {
	background: rgba(255, 255, 255, 0.3) !important;
}

/* Lightning標準の画像比率を解除 */
body.blog .post-list.vk_posts-mainSection
.vk_post_imgOuter::before {
	content: none !important;
}

/* アイキャッチ画像・NO IMAGE */
body.blog .post-list.vk_posts-mainSection
.vk_post_img,
body.blog .post-list.vk_posts-mainSection
.vk_post_imgOuter img {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	background-position: center;
	background-size: cover;
}

@media screen and (max-width: 575px) {
	body.blog .post-list.vk_posts-mainSection
	.vk_post_imgOuter {
		flex-basis: 100px;
		width: 100px;
		max-width: 100px;
		height: auto;
		aspect-ratio: 214 / 130;
		border-radius: 6px;
	}
}

/* お知らせ一覧・個別：タブレット以下の本文 */
@media screen and (max-width: 991px) {
	body.blog .vk_post_excerpt,
	body.single-post .entry-body {
		font-size: 13px;
		line-height: 1.8;
	}
}

/* お知らせ一覧・個別：スマホの本文 */
@media screen and (max-width: 575px) {
	body.blog .vk_post_excerpt,
	body.single-post .entry-body {
		font-size: 12px;
		line-height: 1.8;
	}
}

/* =================================
お知らせ一覧・個別：見出しとパンくず
================================= */

/* Lightning標準の見出しを非表示 */
body:is(.blog, .single-post) .page-header {
	display: none !important;
}

/* パンくずと本文を固定ページと同じ幅にする */
body:is(.blog, .single-post) #breadcrumb .container,
body:is(.blog, .single-post) .site-body-container.container {
	max-width: 1054px !important;
}

/* パンくず */
body:is(.blog, .single-post) #breadcrumb,
body:is(.blog, .single-post) #breadcrumb .breadcrumb-list {
	font-size: 10px;
	line-height: 40px;
}

/* ホーム前の家アイコンを消す */
body:is(.blog, .single-post)
.breadcrumb-list__item--home::before,
body:is(.blog, .single-post)
.breadcrumb-list__item--home a::before,
body:is(.blog, .single-post)
.breadcrumb-list__item--home i,
body:is(.blog, .single-post)
.breadcrumb-list__item--home svg {
	content: none !important;
	display: none !important;
}

/* Lightning標準の区切り「/」を消す */
body:is(.blog, .single-post)
.breadcrumb-list__item::after {
	content: none !important;
	display: none !important;
}

/* 2項目目以降の前を「>」にする */
body:is(.blog, .single-post)
.breadcrumb-list__item + .breadcrumb-list__item::before {
	content: ">" !important;
	display: inline-block !important;
	position: static !important;
	margin-right: 12px;
	margin-left: 12px;
}

/* パンくずから見出しまでの余白 */
body:is(.blog, .single-post) .site-body {
	padding-top: 24px !important;
}

/* 見出しの下から本文・記事一覧まで */
body:is(.blog, .single-post) .news-page-heading {
	margin: 0 0 38px !important;
}

/* =================================
お知らせ一覧：記事の区切り線を消す
================================= */

body.blog .post-list.vk_posts-mainSection {
	border: none !important;
}

body.blog .post-list.vk_posts-mainSection > .vk_post {
	border: none !important;
	box-shadow: none !important;
}

body.blog .post-list.vk_posts-mainSection > .vk_post::before,
body.blog .post-list.vk_posts-mainSection > .vk_post::after {
	content: none !important;
	display: none !important;
}


/* =================================
お知らせ個別：記事タイトル
================================= */

.single-post .entry-title {
	margin-bottom: 12px;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
}

@media screen and (max-width: 991px) {
	.single-post .entry-title {
		font-size: 18px;
	}
}

@media screen and (max-width: 575px) {
	.single-post .entry-title {
		font-size: 14px;
		line-height: 1.6;
	}
}
/* お知らせ一覧：見出し線から最初の記事まで38px */
body.blog .news-page-heading {
	margin-bottom: 38px !important;
}

body.blog .news-page-heading + .post-list.vk_posts-mainSection {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.blog .post-list.vk_posts-mainSection > .vk_post:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}