/* =========================================
   お役立ち情報 共通
========================================= */

.column-page {
	color: #2b2b2b;
	background: #faf9f5;
}

.column-page *,
.column-page *::before,
.column-page *::after {
	box-sizing: border-box;
}


.column-container {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
/* 	padding-left: 20px;
	padding-right: 20px; */
}


/* =========================================
   パンくず
========================================= */

.column-breadcrumb-wrap {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 20px 0 0;
}

.column-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;

	margin: 0;
	padding: 0;

	list-style: none;

	font-size: 12px;
	color: #777;
}

.column-breadcrumb li {
	display: flex;
	align-items: center;
	gap: 8px;
}

.column-breadcrumb li:not(:last-child)::after {
	content: "›";
	color: #aaa;
}

.column-breadcrumb a {
	color: #1f5c45;
}

.column-breadcrumb a:hover {
	text-decoration: underline;
}


/* =========================================
   一覧
========================================= */

.column-archive-section {
	padding: 24px 0 80px;
}


.column-archive-header {
	margin-bottom: 28px;
}


.column-archive-title {
	margin: 0 0 12px;

	color: #15422f;

	font-size: clamp(
		24px,
		3vw,
		32px
	);

	font-weight: 800;
	line-height: 1.5;
}


.column-archive-lead {
	margin: 0;

	color: #666;

	font-size: 15px;
	line-height: 1.9;
}


/* =========================================
   記事一覧
========================================= */

.column-page .column-grid {
	display: grid;

	grid-template-columns:
		repeat(3, minmax(0, 1fr));

	gap: 24px;

	margin-top: 28px;
}


/* カード */

.column-page .column-card {
	display: flex;
	flex-direction: column;

	overflow: hidden;

	background: #fff;

	border: 1px solid #dcdcd4;
	border-radius: 10px;

	color: #2b2b2b;
	text-decoration: none;

	box-shadow:
		0 2px 10px rgba(0, 0, 0, .08);

	transition:
		transform .18s,
		box-shadow .18s;
}


.column-page .column-card:hover {
	color: #2b2b2b;

	transform:
		translateY(-3px);

	box-shadow:
		0 6px 18px rgba(0, 0, 0, .12);
}


/* =========================================
   アイキャッチ
========================================= */

.column-page .column-thumb {
	position: relative;

	width: 100%;
	aspect-ratio: 16 / 9;

	margin: 0;

	overflow: hidden;
}


.column-page .column-thumb img {
	width: 100%;
	height: 100%;

	display: block;

	object-fit: cover;

	transition:
		transform .3s;
}


.column-page .column-card:hover
.column-thumb img {
	transform:
		scale(1.05);
}


/* アイキャッチ未設定時 */

.column-page .column-thumb-placeholder {
	width: 100%;
	height: 100%;

	display: flex;
	align-items: center;
	justify-content: center;

	background: #e8f3ee;

	color: #1f5c45;

	font-size: 13px;
	font-weight: 700;
}


/* カテゴリー */

.column-page .column-cat {
	position: absolute;

	top: 0;
	left: 0;

	padding: 4px 12px;

	background: #1f5c45;

	border-bottom-right-radius: 8px;

	color: #fff;

	font-size: .68rem;
	font-weight: 800;
	line-height: 1.6;
}


/* =========================================
   カード本文
========================================= */

.column-page .column-card-body {
	display: flex;
	flex: 1;
	flex-direction: column;

	padding: 16px 18px 18px;
}


.column-page .column-card-title {
	margin: 0 0 8px;

	color: #15422f;

	font-size: .98rem;
	font-weight: 800;
	line-height: 1.55;
}


.column-page .column-card:hover
.column-card-title {
	color: #1f5c45;
}


.column-page .column-card-excerpt {
	flex: 1;

	margin: 0;

	color: #666;

	font-size: .82rem;
	line-height: 1.7;
}


/* =========================================
   日付・続きを読む
========================================= */

.column-page .column-card-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;

	margin-top: 12px;
	padding-top: 10px;

	border-top:
		1px dashed #dcdcd4;

	color: #666;

	font-size: .74rem;
}


.column-page .column-card-more {
	display: inline-flex;
	align-items: center;
	gap: 5px;

	color: #c95f05;

	font-weight: 700;
}


.column-page .column-card-more span {
	font-size: 18px;
	line-height: 1;
}


/* =========================================
   記事なし
========================================= */

.column-page .column-no-posts {
	padding: 40px 0;

	text-align: center;

	color: #666;
}


/* =========================================
   Tablet / SP
========================================= */

@media (max-width: 900px) {

	.column-page .column-grid {
		grid-template-columns: 1fr;

		max-width: 480px;

		margin-left: auto;
		margin-right: auto;

		gap: 16px;
	}

}


@media (max-width: 640px) {

	.column-container {
/* 		padding-left: 20px;
		padding-right: 20px; */
	}


	.column-breadcrumb-wrap {
		padding:
			16px 0 0;
	}


	.column-breadcrumb ol {
		font-size: 11px;
	}


	.column-archive-section {
		padding:
			18px 0 56px;
	}


	.column-archive-header {
		margin-bottom: 24px;
	}


	.column-archive-title {
		font-size: 22px;
	}


	.column-archive-lead {
		font-size: 14px;
	}


	.column-page .column-card-body {
		padding:
			14px 15px 16px;
	}

}

/* =========================================
   共通CTA 外側
========================================= */

.column-page .column-cv-section {
	width: 100vw;

	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding: 56px 0;

	background:
		linear-gradient(
			160deg,
			#15422f,
			#1f5c45
		);

	color: #fff;
}


.column-page .column-cv-section-title {
	margin: 0 0 8px;

	color: #fff;

	font-size: clamp(
		24px,
		3vw,
		32px
	);

	font-weight: 800;
	line-height: 1.5;
	text-align: center;
}


.column-page .column-cv-section-lead {
	margin: 0 0 28px;

	color:
		rgba(255, 255, 255, .85);

	font-size: 15px;
	line-height: 1.9;
	text-align: center;
}


/* =========================================
   CTA パネル
========================================= */

.column-page .column-cv-panel {
	width: 100%;
	max-width: 820px;

	margin: 0 auto;

	overflow: hidden;

	background: #fff;

	border-radius: 16px;

	box-shadow:
		0 8px 30px rgba(0, 0, 0, .22);
}


/* =========================================
   赤帯
========================================= */

.column-page .column-cv-panel-head {
	padding: 14px 18px;

	background:
		linear-gradient(
			90deg,
			#b7402c,
			#c0392b
		);

	color: #fff;
	text-align: center;
}


.column-page .column-cv-limited {
	display: inline-block;

	margin-bottom: 6px;
	padding: 2px 14px;

	background: #ffd764;

	border-radius: 999px;

	color: #8a2f1e;

	font-size: .78rem;
	font-weight: 800;
}


.column-page .column-cv-panel-head h3 {
	margin: 0;

	color: #fff;

	font-size: clamp(
		1.05rem,
		2.6vw,
		1.35rem
	);

	font-weight: 800;
	line-height: 1.5;
}


.column-page .column-cv-panel-body {
	padding: 20px 20px 24px;
}


/* =========================================
   電話CTA
========================================= */

.column-page .column-cv-tel {
	display: block;

	padding: 20px 20px 18px;

	background:
		linear-gradient(
			180deg,
			#ff9a2e,
			#e8710a
		);

	border-radius: 14px;

	color: #fff;
	text-align: center;
	text-decoration: none;

	box-shadow:
		0 6px 20px rgba(232, 113, 10, .5),
		inset 0 -4px 0 rgba(0, 0, 0, .15);

	transition:
		transform .15s,
		box-shadow .15s;
}


.column-page .column-cv-tel:hover {
	color: #fff;

	transform: translateY(-2px);

	box-shadow:
		0 8px 24px rgba(232, 113, 10, .58),
		inset 0 -4px 0 rgba(0, 0, 0, .15);
}


.column-page .column-cv-tel-label {
	display: inline-block;

	margin-bottom: 8px;
	padding: 4px 18px;

	background: #fff;

	border-radius: 999px;

	color: #c95f05;

	font-size: .84rem;
	font-weight: 800;

	box-shadow:
		0 2px 6px rgba(0, 0, 0, .15);
}


.column-page .column-cv-tel-label i {
	margin-right: 5px;
}


.column-page .column-cv-tel-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	gap: 10px;

	color: #fff;

	font-size: clamp(
		2.1rem,
		7vw,
		3rem
	);

	font-weight: 900;
	line-height: 1.2;
	letter-spacing: .02em;

	text-shadow:
		0 2px 6px rgba(0, 0, 0, .2);
}


/* 電話アイコン振動 */

.column-page .column-cv-tel-number i {
	font-size: .72em;

	animation:
		column-tel-shake
		2.4s
		ease-in-out
		infinite;
}


@keyframes column-tel-shake {

	0%,
	84%,
	100% {
		transform: rotate(0);
	}

	86% {
		transform: rotate(-14deg);
	}

	88% {
		transform: rotate(12deg);
	}

	90% {
		transform: rotate(-10deg);
	}

	92% {
		transform: rotate(8deg);
	}

	94% {
		transform: rotate(-4deg);
	}

	96% {
		transform: rotate(0);
	}

}


.column-page .column-cv-tel-hours {
	display: block;

	margin-top: 4px;

	color: #fff;

	font-size: .9rem;
	font-weight: 800;
}


.column-page .column-cv-tel-hours strong {
	color: #ffe9a8;
}


.column-page .column-cv-tel-tap {
	display: none;

	margin-top: 2px;

	font-size: .78rem;
	font-weight: 700;

	opacity: .95;
}


/* =========================================
   区切り
========================================= */

.column-page .column-cv-divider {
	display: flex;
	align-items: center;

	gap: 14px;

	margin: 20px 0;

	color: #666;

	font-size: .82rem;
	font-weight: 700;
	text-align: center;
}


.column-page .column-cv-divider::before,
.column-page .column-cv-divider::after {
	content: "";

	flex: 1;

	height: 1px;

	background: #dcdcd4;
}


/* =========================================
   Webボタン
========================================= */

.column-page .column-cv-buttons {
	display: grid;

	grid-template-columns:
		1.2fr 1fr;

	gap: 14px;
}


.column-page .column-cv-button {
	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	gap: 2px;

	padding: 18px 32px 18px 14px;

	border-radius: 12px;

	color: #fff;
	text-align: center;
	text-decoration: none;

	font-size: clamp(
		.95rem,
		2.2vw,
		1.1rem
	);

	font-weight: 800;
	line-height: 1.4;

	transition:
		transform .15s,
		box-shadow .15s;
}


.column-page .column-cv-button:hover {
	color: #fff;

	transform: translateY(-2px);
}


.column-page .column-cv-button-main i {
	margin-right: 5px;
}


.column-page .column-cv-button-sub {
	font-size: .72rem;
	font-weight: 700;

	opacity: .95;
}


.column-page .column-cv-arrow {
	position: absolute;

	top: 50%;
	right: 14px;

	transform:
		translateY(-50%);

	font-size: .85rem;
}


/* 見積もり */

.column-page .column-cv-estimate {
	background:
		linear-gradient(
			180deg,
			#f5851f,
			#e8710a
		);

	box-shadow:
		0 4px 14px rgba(232, 113, 10, .45),
		inset 0 -3px 0 rgba(0, 0, 0, .15);
}


.column-page .column-cv-estimate:hover {
	box-shadow:
		0 6px 18px rgba(232, 113, 10, .55),
		inset 0 -3px 0 rgba(0, 0, 0, .15);
}


/* 資料請求 */

.column-page .column-cv-document {
	background:
		linear-gradient(
			180deg,
			#2e7d5b,
			#1f5c45
		);

	box-shadow:
		0 4px 14px rgba(31, 92, 69, .4),
		inset 0 -3px 0 rgba(0, 0, 0, .18);
}


.column-page .column-cv-document:hover {
	box-shadow:
		0 6px 18px rgba(31, 92, 69, .5),
		inset 0 -3px 0 rgba(0, 0, 0, .18);
}


/* =========================================
   SP
========================================= */

@media (max-width: 640px) {

	.column-page .column-cv-section {
		padding: 40px 14px;
	}


	.column-page .column-cv-section-title {
		font-size: 20px;
	}


	.column-page .column-cv-section-lead {
		margin-bottom: 22px;

		font-size: 13px;
	}


	.column-page .column-cv-panel {
		border-radius: 12px;
	}


	.column-page .column-cv-panel-head {
		padding: 12px 14px;
	}


	.column-page .column-cv-limited {
		font-size: .72rem;
	}


	.column-page .column-cv-panel-head h3 {
		font-size: 1rem;
	}


	.column-page .column-cv-panel-body {
		padding: 20px 16px 24px;
	}


	.column-page .column-cv-tel {
		padding: 14px 10px;
	}


	.column-page .column-cv-tel-label {
		padding: 3px 12px;

		font-size: .72rem;
	}


	.column-page .column-cv-tel-number {
		font-size:
			clamp(
				1.55rem,
				8.5vw,
				1.6rem
			);
	}
	.single-column .column-cv-tel-number {
		font-size:
			clamp(
				1.55rem,
				8.5vw,
				1.5rem
			);
	}


	.column-page .column-cv-tel-hours {
		font-size: .76rem;
	}


	.column-page .column-cv-tel-tap {
		display: block;
	}


	.column-page .column-cv-divider {
		margin: 16px 0;

		font-size: .76rem;
	}


	.column-page .column-cv-buttons {
		grid-template-columns: 1fr;

		gap: 10px;
	}


	.column-page .column-cv-button {
		padding:
			15px 30px
			15px 14px;
	}

}

/* =========================================
   記事詳細
========================================= */

.column-page .column-article {
	padding: 24px 0 80px;
}


.column-page .column-article-container {
	width: 100%;
	max-width: 820px;

	margin: 0 auto;

/* 	padding-left: 20px;
	padding-right: 20px;
 */
	box-sizing: border-box;
}


/* =========================================
   H1
========================================= */

.column-page .article-h1 {
	margin: 0 0 14px;

	color: #15422f;

	font-size:
		clamp(
			1.35rem,
			3vw,
			1.75rem
		);

	font-weight: 800;
	line-height: 1.5;
}


/* =========================================
   記事情報
========================================= */

.column-page .article-meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;

	gap: 10px;

	margin-bottom: 20px;

	color: #666;

	font-size: .78rem;
}


.column-page .article-meta-row span {
	display: inline-flex;
	align-items: center;

	gap: 4px;
}


.column-page .article-meta-row .cat-badge {
	padding: 3px 12px;

	background: #1f5c45;

	border-radius: 4px;

	color: #fff;

	font-size: .7rem;
	font-weight: 800;
}


/* =========================================
   アイキャッチ
========================================= */

.column-page .article-eyecatch-wrap {
	margin-bottom: 26px;
}


.column-page .article-eyecatch {
	width: 100%;
	height: auto;

	display: block;

	margin: 0;

	border-radius: 10px;

	box-shadow:
		0 2px 10px rgba(0, 0, 0, .08);
}


/* =========================================
   本文
========================================= */

.column-page .article-body {
	max-width: none;

	margin: 0;

	color: #2b2b2b;

	font-size: 17px;
	line-height: 1.85;
}


.column-page .article-body p {
	margin-bottom: 1.4em;
}


.column-page .article-body ul,
.column-page .article-body ol {
	margin: 0 0 1.5em;

	padding-left: 1.4em;
}


.column-page .article-body li {
	margin-bottom: .4em;
}


/* =========================================
   記事リード
========================================= */

.column-page .article-lead {
	margin-bottom: 30px;

	padding: 20px 24px;

	background: #fff;

	border-left: 5px solid #1f5c45;

	border-radius:
		0 10px 10px 0;

	font-size: .95rem;

	box-shadow:
		0 2px 10px rgba(0, 0, 0, .08);
}


.column-page .article-lead p:last-child {
	margin-bottom: 0;
}


/* =========================================
   H2
========================================= */

.column-page .article-body
.section-title-bar,
.column-page .column-related
.section-title-bar {

	margin: 44px 0 18px;

	padding-left: 14px;

	border-left:
		6px solid #1f5c45;

	color: #15422f;

	font-size:
		clamp(
			1.15rem,
			2.6vw,
			1.4rem
		);

	font-weight: 800;
	line-height: 1.5;
}


/* =========================================
   目次
========================================= */

.column-page .toc-box {
	margin-bottom: 36px;

	padding: 20px 26px;

	background: #fff;

	border: 1px solid #dcdcd4;
	border-radius: 10px;

	box-shadow:
		0 2px 10px rgba(0, 0, 0, .08);
}


.column-page .toc-box h2 {
	margin: 0 0 10px;

	color: #15422f;

	font-size: 1rem;
	font-weight: 800;
}


.column-page .toc-box ol {
	margin-bottom: 0;

	font-size: .9rem;
	font-weight: 600;
}


.column-page .toc-box li {
	margin-bottom: 5px;
}


.column-page .toc-box a {
	color: #1f5c45;
}


/* =========================================
   POINT
========================================= */

.column-page .point-box {
	margin: 18px 0;

	padding: 18px 22px;

	background: #e8f3ee;

	border-radius: 10px;

	font-size: .92rem;
}


.column-page .point-box
.point-title {
	display: block;

	margin-bottom: 6px;

	color: #15422f;

	font-weight: 800;
}


.column-page .point-box p:last-child {
	margin-bottom: 0;
}


/* 注意 */

.column-page .point-box.warning {
	background: #fdf0ec;
}


.column-page .point-box.warning
.point-title {
	color: #c0392b;
}


/* =========================================
   比較表
========================================= */

.column-page .compare-table-wrap {
	overflow-x: auto;

	-webkit-overflow-scrolling: touch;
}


.column-page .compare-table {
	width: 100%;

	margin: 18px 0;

	border-collapse: collapse;

	background: #fff;

	font-size: .88rem;

	box-shadow:
		0 2px 10px rgba(0, 0, 0, .08);
}


.column-page .compare-table th,
.column-page .compare-table td {
	padding: 10px 12px;

	border: 1px solid #dcdcd4;

	text-align: left;
	vertical-align: top;
}


.column-page .compare-table thead th {
	background: #1f5c45;

	color: #fff;

	font-size: .84rem;
}


.column-page .compare-table tbody th {
	background: #e8f3ee;

	font-weight: 700;
}


/* =========================================
   記事内CTA
========================================= */

.column-page
.column-cv-section.is-article {
	width: 100%;

	margin:
		48px 0 0;

	padding:
		40px 24px;

	background:
		linear-gradient(
			160deg,
			#15422f,
			#1f5c45
		);

	border-radius: 14px;
}


.column-page
.column-cv-section.is-article
.column-container {
	max-width: none;

	padding: 0;
}


.column-page
.column-cv-section.is-article
.column-cv-section-title {
	font-size: 24px;
}


/* =========================================
   関連記事
========================================= */

.column-page .column-related {
	margin-top: 48px;
}


.column-page
.column-related
.section-title-bar {
	margin-top: 0;
}


.column-page
.column-related-grid {
	grid-template-columns:
		repeat(
			2,
			minmax(0, 1fr)
		);

	margin-top: 0;
}


/* =========================================
   一覧へ戻る
========================================= */

.column-page .column-back-wrap {
	margin: 20px 0 0;
}


.column-page .column-back-link {
	display: inline-flex;
	align-items: center;

	gap: 8px;

	color: #1f5c45;

	font-size: .9rem;
	font-weight: 700;

	text-decoration: none;
}


.column-page .column-back-link:hover {
	text-decoration: underline;
}


/* =========================================
   SP
========================================= */

@media (max-width: 640px) {

	.column-page .column-article {
		padding:
			18px 0 56px;
	}


	.column-page .article-h1 {
		font-size: 1.35rem;
	}


	.column-page .article-meta-row {
		font-size: .72rem;
	}


	.column-page .article-lead {
		padding: 16px;

		font-size: .88rem;
	}


	.column-page .toc-box {
		padding: 16px 18px;
	}


	.column-page .toc-box ol {
		font-size: .84rem;
	}


	.column-page .point-box {
		padding: 14px 16px;

		font-size: .86rem;
	}


	.column-page .article-body
	.section-title-bar,
	.column-page .column-related
	.section-title-bar {
		margin:
			34px 0 14px;

		padding-left: 10px;

		border-left-width: 5px;

		font-size: 1.1rem;
	}


	.column-page .compare-table {
		min-width: 560px;
	}


	.column-page
	.column-cv-section.is-article {
		margin-top: 36px;

		padding:
			30px 14px;

		border-radius: 12px;
	}


	.column-page
	.column-cv-section.is-article
	.column-cv-section-title {
		font-size: 20px;
	}


	.column-page .column-related {
		margin-top: 36px;
	}


	.column-page
	.column-related-grid {
		grid-template-columns: 1fr;
	}

}

/* =========================================
   Gutenberg 記事本文
========================================= */


/* -----------------------------------------
   H2
----------------------------------------- */

.column-page
.column-article-content
> h2:not(.section-title-bar) {

	margin: 44px 0 18px;

	padding-left: 14px;

	border-left:
		6px solid #1f5c45;

	color: #15422f;

	font-size:
		clamp(
			1.15rem,
			2.6vw,
			1.4rem
		);

	font-weight: 800;
	line-height: 1.5;
}


/* -----------------------------------------
   H3
----------------------------------------- */

.column-page
.column-article-content
> h3 {

	margin: 32px 0 14px;

	padding-bottom: 8px;

	border-bottom:
		2px solid #d7e5df;

	color: #15422f;

	font-size:
		clamp(
			1.05rem,
			2.3vw,
			1.2rem
		);

	font-weight: 800;
	line-height: 1.6;
}


/* -----------------------------------------
   H4
----------------------------------------- */

.column-page
.column-article-content
> h4 {

	margin: 26px 0 12px;

	color: #1f5c45;

	font-size: 1rem;
	font-weight: 800;
	line-height: 1.6;
}


/* -----------------------------------------
   リンク
----------------------------------------- */

.column-page
.column-article-content
a {

	color: #1f5c45;

	text-decoration:
		underline;

	text-underline-offset:
		3px;
}


.column-page
.column-article-content
a:hover {

	color: #c95f05;
}


/* -----------------------------------------
   太字
----------------------------------------- */

.column-page
.column-article-content
strong {

	color: #15422f;

	font-weight: 800;
}


/* -----------------------------------------
   Gutenberg画像
----------------------------------------- */

.column-page
.column-article-content
.wp-block-image {

	margin:
		28px 0;
}


.column-page
.column-article-content
.wp-block-image img {

	max-width: 100%;
	height: auto;

	border-radius: 10px;

	box-shadow:
		0 2px 10px
		rgba(0, 0, 0, .08);
}


.column-page
.column-article-content
.wp-block-image figcaption {

	margin-top: 8px;

	color: #777;

	font-size: .78rem;
	line-height: 1.6;

	text-align: center;
}


/* -----------------------------------------
   引用
----------------------------------------- */

.column-page
.column-article-content
.wp-block-quote {

	margin:
		28px 0;

	padding:
		18px 22px;

	background:
		#f5f5f1;

	border-left:
		5px solid #1f5c45;

	border-radius:
		0 8px 8px 0;

	color: #444;
}


.column-page
.column-article-content
.wp-block-quote p:last-child {

	margin-bottom: 0;
}


.column-page
.column-article-content
.wp-block-quote cite {

	display: block;

	margin-top: 10px;

	color: #777;

	font-size: .78rem;
}


/* -----------------------------------------
   Gutenbergテーブル
----------------------------------------- */

.column-page
.column-article-content
.wp-block-table {

	margin:
		28px 0;

	overflow-x: auto;

	-webkit-overflow-scrolling:
		touch;
}


.column-page
.column-article-content
.wp-block-table table {

	width: 100%;

	border-collapse:
		collapse;

	background:
		#fff;

	font-size: .88rem;

	box-shadow:
		0 2px 10px
		rgba(0, 0, 0, .08);
}


.column-page
.column-article-content
.wp-block-table th,
.column-page
.column-article-content
.wp-block-table td {

	padding:
		10px 12px;

	border:
		1px solid #dcdcd4;

	text-align: left;
	vertical-align: top;
}


.column-page
.column-article-content
.wp-block-table thead th {

	background:
		#1f5c45;

	color: #fff;

	font-weight: 700;
}


/* -----------------------------------------
   ボタン
----------------------------------------- */

.column-page
.column-article-content
.wp-block-buttons {

	margin:
		28px 0;
}


.column-page
.column-article-content
.wp-block-button__link {

	display:
		inline-flex;

	align-items:
		center;

	justify-content:
		center;

	padding:
		12px 24px;

	background:
		#1f5c45;

	border-radius:
		8px;

	color:
		#fff;

	font-weight:
		700;

	line-height:
		1.5;

	text-decoration:
		none;

	transition:
		background .2s,
		transform .2s;
}


.column-page
.column-article-content
.wp-block-button__link:hover {

	background:
		#15422f;

	color:
		#fff;

	transform:
		translateY(-2px);
}


/* -----------------------------------------
   区切り線
----------------------------------------- */

.column-page
.column-article-content
.wp-block-separator {

	margin:
		36px 0;

	border: 0;

	border-top:
		1px solid #dcdcd4;
}


/* -----------------------------------------
   SP
----------------------------------------- */

@media (max-width: 640px) {

	.column-page
	.column-article-content
	> h2:not(.section-title-bar) {

		margin:
			34px 0 14px;

		padding-left:
			10px;

		border-left-width:
			5px;

		font-size:
			1.1rem;
	}


	.column-page
	.column-article-content
	> h3 {

		margin:
			28px 0 12px;

		font-size:
			1.05rem;
	}


	.column-page
	.column-article-content
	.wp-block-table table {

		min-width:
			560px;
	}

}