.news-page{
	max-width:1100px;
	margin:0 auto;
}

/* 見出し（必要なら使う） */
.news-page__head{
	margin:0 0 24px;
	padding:0 0 18px;
	border-bottom:1px solid #e5e7eb;
}
.news-page__title{
	margin:0;
	font-size:28px;
	font-weight:900;
	letter-spacing:0.02em;
	color:#111;
	line-height:1.3;
}
.news-page__lead{
	margin:8px 0 0;
	color:#666;
	font-size:14px;
}

/* dl本体 */
.news-list{
	margin:0;
	padding:0;
}

/* dt（日時＋バッジ） */
.news-list__dt{
	display:flex;
	align-items:center;
	gap:12px;
	padding:16px 0 6px;
	border-top:1px solid #e5e7eb;
}

.news-list__date{
	font-weight:800;
	color:#111;
	min-width:120px;
}

.news-list__badge{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	height:28px;
	padding:0 12px;
	border-radius:999px;
	font-size:13px;
	font-weight:800;
	background:#fff;
	color:#777;
	border:1px solid #333;
}

/* dd（本文） */
.news-list__dd{
	margin:0;
	padding:0 0 16px;
	color:#333;
	line-height:1.9;
}

/* 既存の色クラスをそのまま利用 */
.news-list__badge.icon-bg1{background:#333;color:#fff;border-color:#333;}
.news-list__badge.icon-bg2{background:#ff0000;color:#fff;border-color:#ff0000;}

/* 1件目だけ上線消す（好み） */
.news-list__dt:first-of-type{
	border-top:none;
}

/* スマホ：日付とラベルを折り返し可に */
@media screen and (max-width:600px){
	.news-page__title{font-size:22px;}
	.news-list__dt{
		flex-wrap:wrap;
		gap:10px;
	}
	.news-list__date{
		min-width:auto;
	}
}

/* PC（1100px以上）：左（日時+バッジ） / 右（本文）を同一行に */
@media screen and (min-width:1100px){

	.news-list{
		display:grid;
		grid-template-columns:220px 1fr;
		column-gap:26px;
	}

	.news-list__dt{
		grid-column:1;
		justify-content:flex-start; /* 日付→バッジの順で左詰め */
		padding:18px 0;
	}

	.news-list__dd{
		grid-column:2;
		padding:18px 0;
		border-top:1px solid #e5e7eb; /* dtと揃える */
	}

	/* 1件目のddも上線を消す */
	.news-list__dd:first-of-type{
		border-top:none;
	}
}

/* 空表示 */
.news-empty{
	margin-top:20px;
	padding:18px;
	border:1px dashed #cbd5e1;
	border-radius:12px;
	background:#f8fafc;
	color:#475569;
}