@charset "utf-8";

/* コラム記事：共通（1カラムをデフォルト）。2カラムは k3-column-layout-2col.css */

/* マケフリ記事レイアウトに近い幅: 全体 max 1000px */
.c-k3-column-single-wrap {
	box-sizing: border-box;
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 32px 25px 64px;
}

@media (min-width: 1001px) {
	.c-k3-column-single-wrap {
		padding-left: 0;
		padding-right: 0;
	}
}

.c-k3-column-single-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	align-items: start;
}

.c-k3-column-single-main {
	min-width: 0;
}

.c-k3-column-single {
	padding-top: 0;
	padding-bottom: 0;
	max-width: none;
}

.c-k3-column-single__article {
	background: var(--pw);
	border-radius: 8px;
	padding: 24px 20px 40px;
}

@media (min-width: 1001px) {
	.c-k3-column-single__article {
		padding: 32px 16px 48px;
	}
}

.c-k3-column-single__header {
	margin-bottom: 24px;
}

.c-k3-column-single__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 0 0 12px;
	font-size: var(--fs-main-caption);
	color: var(--gd1);
}

.c-k3-column-single__cats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.c-k3-column-single__cat {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 4px;
	background: var(--gl1);
	color: var(--g);
	font-size: var(--fs-main-caption);
	font-weight: var(--fw-caption);
	text-decoration: none;
}

a.c-k3-column-single__cat:hover,
a.c-k3-column-single__cat:focus-visible {
	background: var(--mb100);
	color: var(--b);
	text-decoration: none;
}

.c-k3-column-single__title {
	margin: 0;
	font-size: var(--fs-main-h2);
	line-height: var(--lh-h2);
	font-weight: var(--fw-heading);
	color: var(--b);
}

.c-k3-column-single__thumb {
	margin: 0 0 28px;
	border-radius: 8px;
	overflow: hidden;
	background: var(--gl1);
}

.c-k3-column-single__thumb img {
	display: block;
	width: 100%;
	height: auto;
}

.c-k3-column-single__content {
	font-size: var(--fs-main-body);
	line-height: var(--lh-body);
	color: var(--gd2);
}

.c-k3-column-single__content > *:first-child {
	margin-top: 0;
}

.c-k3-column-single__content > *:last-child {
	margin-bottom: 0;
}

.c-k3-column-single__content h2,
.c-k3-column-single__content h3 {
	color: var(--b);
	margin-top: 1.5em;
}

.c-k3-column-single__content a {
	color: var(--b);
	text-decoration: underline;
}

.c-k3-column-single__content a:hover,
.c-k3-column-single__content a:focus-visible {
	text-decoration: none;
}

/* 本文内のフルサイズ画像（Classic の .size-full / ブロックの size-full）を記事カラム幅いっぱいに */
.c-k3-column-single__content img.size-full,
.c-k3-column-single__content img[class*="size-full"],
.c-k3-column-single__content .wp-block-image.size-full img,
.c-k3-column-single__content figure.wp-block-image.size-full img {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
}

.c-k3-column-single__content figure.wp-block-image.size-full,
.c-k3-column-single__content .wp-block-image.size-full {
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
	box-sizing: border-box;
}

.c-k3-column-single__content p > img.size-full,
.c-k3-column-single__content p > a > img.size-full {
	width: 100%;
	max-width: 100%;
	height: auto;
}

/* blockquote 直下の ul：先頭に余白 */
.c-k3-column-single__content blockquote > ul {
	padding-inline-start: 1rem;
	margin-inline-start: 0;
}

/* blockquote 内の入れ子 ul：さらに 1rem ずつ段を深く */
.c-k3-column-single__content blockquote ul ul {
	padding-inline-start: 1rem;
	margin-inline-start: 0;
}

/* 参考資料・関連リンク枠（マケフリ記事内 CTA 風） */
.c-k3-column-single__content .sanko {
	margin: 1.5em 0;
	padding: 24px 28px;
	box-sizing: border-box;
	background: var(--w);
	border: none;
	border-radius: 0;
	color: var(--k);
	font-size: var(--fs-main-body);
	line-height: var(--lh-body);
}

.c-k3-column-single__content .sanko > :first-child {
	margin-top: 0;
	margin-bottom: 16px;
	font-weight: var(--fw-heading);
	color: var(--k);
}

.c-k3-column-single__content .sanko > :last-child {
	margin-bottom: 0;
}

.c-k3-column-single__content .sanko ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.c-k3-column-single__content .sanko li {
	margin: 0 0 10px;
	padding: 0;
	line-height: var(--lh-body);
}

.c-k3-column-single__content .sanko li:last-child {
	margin-bottom: 0;
}

.c-k3-column-single__content .sanko a {
	color: var(--mb600);
	text-decoration: underline;
}

.c-k3-column-single__content .sanko a:hover,
.c-k3-column-single__content .sanko a:focus-visible {
	color: var(--mb700);
	text-decoration: underline;
}

.c-k3-column-single__content .sanko > a {
	display: block;
	margin-bottom: 10px;
}

.c-k3-column-single__content .sanko > a:last-child {
	margin-bottom: 0;
}
