@charset "utf-8";

/* コラム固定ページ一覧：メイン + サイド、マガジン型グリッド */

.c-k3-col-archive-layout-wrap {
	box-sizing: border-box;
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 0 16px 48px;
}

@media (min-width: 1001px) {
	.c-k3-col-archive-layout-wrap {
		padding-left: 0;
		padding-right: 0;
	}
}

.c-k3-col-archive-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	align-items: start;
}

@media (min-width: 1001px) {
	.c-k3-col-archive-layout {
		grid-template-columns: minmax(0, 1fr) 272px;
		gap: 40px 68px;
	}
}

.c-k3-col-archive-main {
	min-width: 0;
}

.c-k3-col-archive-layout__container {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.c-k3-col-archive__body--in-layout {
	max-width: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

/* 一覧サイドバーは .c-k3-column-single-aside（k3-column-layout-2col.css）と同一クラスで体裁を揃える */
/* メインのみ時のレイアウトグリッド上書きは k3-column-list-layout-1col.css（.c-k3-col-archive-layout-wrap--main-only） */

/* 固定ページ一覧：1件目フル幅＋2件目以降2列 */
.c-k3-col-archive__panels--magazine {
	grid-template-columns: 1fr;
	gap: 28px 20px;
}

@media (min-width: 768px) {
	.c-k3-col-archive__panels--magazine {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.c-k3-col-archive__panels--magazine .c-k3-col-archive__panel--featured {
	grid-column: 1 / -1;
}

/* マガジン: 767px 以下は1件目・2件目以降とも同一のタイトルフォントサイズ（--fs-main-h3） */
@media (max-width: 767px) {
	.c-k3-col-archive__panels--magazine .c-k3-col-archive__card-title--featured,
	.c-k3-col-archive__panels--magazine .c-k3-col-archive__panel:not(.c-k3-col-archive__panel--featured) .c-k3-col-archive__card-title {
		margin: 0 0 12px;
		font-size: var(--fs-main-h3);
		line-height: var(--lh-h3);
		font-weight: var(--fw-heading);
		color: var(--b);
		min-height: 0;
		display: block;
		-webkit-line-clamp: unset;
		overflow: visible;
	}
}

/* マガジン768px以上: 2件目以降のタイトルは1件目（--fs-main-h3）の半分 */
@media (min-width: 768px) {
	.c-k3-col-archive__panels--magazine .c-k3-col-archive__panel:not(.c-k3-col-archive__panel--featured) .c-k3-col-archive__card-title {
		margin: 0 0 12px;
		font-size: calc(var(--fs-main-h3) / 2);
		line-height: 1.3;
		font-weight: var(--fw-heading);
		color: var(--k);
		min-height: 2.6em;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
}

/* マガジン2列カード：タグを枠線のみに */
.c-k3-col-archive__panels--magazine .c-k3-col-archive__panel:not(.c-k3-col-archive__panel--featured) .c-k3-col-archive__tag {
	background: transparent;
	border: 1px solid var(--b);
	color: var(--b);
	border-radius: 2px;
}

/* 1件目：全幅＋タイトル・抜粋（帯なし） */
.c-k3-col-archive__panel--featured .c-k3-col-archive__link {
	display: flex;
	flex-direction: column;
}

.c-k3-col-archive__panel--featured .c-k3-col-archive__tag {
	background: transparent;
	border: 1px solid var(--b);
	color: var(--b);
}

.c-k3-col-archive__txtBox--featured {
	margin: 0;
	padding: 16px 4px 0;
	background: transparent;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.c-k3-col-archive__txtBox--featured {
		padding-top: 20px;
	}
}

.c-k3-col-archive__card-title--featured {
	margin: 0 0 12px;
	font-size: var(--fs-main-h3);
	line-height: var(--lh-h3);
	font-weight: var(--fw-heading);
	color: var(--b);
	-webkit-line-clamp: unset;
	min-height: 0;
	display: block;
}

.c-k3-col-archive__metaRow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 12px;
	margin-bottom: 10px;
}

@media (min-width: 768px) {
	.c-k3-col-archive__metaRow {
		flex-wrap: nowrap;
		font-size: var(--fs-main-cap-min);
	}

	.c-k3-col-archive__metaRow .c-k3-col-archive__date {
		font-size: inherit;
		flex-shrink: 0;
	}

	.c-k3-col-archive__metaRow .c-k3-col-archive__tags {
		flex: 1;
		min-width: 0;
		flex-wrap: nowrap;
		overflow: hidden;
	}

	.c-k3-col-archive__metaRow .c-k3-col-archive__tag {
		font-size: inherit;
	}
}

.c-k3-col-archive__metaRow .c-k3-col-archive__date {
	margin: 0;
}

.c-k3-col-archive__metaRow .c-k3-col-archive__tags {
	margin: 0;
}

.c-k3-col-archive__txtBox--magazine-card {
	padding-top: 16px;
}

@media (min-width: 768px) {
	.c-k3-col-archive__txtBox--magazine-card {
		padding-top: 12px;
	}
}

.c-k3-col-archive__excerpt--featured {
	margin: 0;
	font-size: var(--fs-main-body);
	line-height: var(--lh-body);
	color: var(--gd2);
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
