.ensb-period-views {
	box-sizing: border-box;
	width: 100%;
	max-width: 680px;
	margin: 2rem auto 1.5rem;
	padding: 0.9rem 1rem;
	border: 1px solid #e1e7e8;
	border-radius: 10px;
	background: #f7faf9;
	box-shadow: 0 3px 12px rgba(30, 65, 66, 0.04);
}

.ensb-period-views__title {
	position: relative;
	margin: 0 0 0.65rem;
	padding-left: 0.7rem;
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.4;
	color: #263c3d;
}

.ensb-period-views__title::before {
	position: absolute;
	top: 0.1rem;
	bottom: 0.1rem;
	left: 0;
	width: 3px;
	border-radius: 999px;
	background: #3f8581;
	content: "";
}

.ensb-period-views__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
}

.ensb-period-views__item {
	min-width: 0;
	padding: 0.2rem 0.55rem;
	text-align: center;
	border-left: 1px solid #dfe8e7;
}

.ensb-period-views__item:first-child {
	border-left: 0;
}

.ensb-period-views__item dt {
	margin: 0 0 0.15rem;
	font-size: 0.7rem;
	font-weight: 600;
	line-height: 1.5;
	color: #647374;
}

.ensb-period-views__item dd {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.25;
	font-variant-numeric: tabular-nums;
	color: #234f4d;
}

.ensb-period-views__item small {
	margin-left: 0.14rem;
	font-size: 0.64rem;
	font-weight: 500;
	color: #738081;
}

.ensb-period-views__note {
	margin: 0.55rem 0 0;
	font-size: 0.66rem;
	line-height: 1.6;
	text-align: right;
	color: #748182;
}

@media (max-width: 575px) {
	.ensb-period-views {
		margin-top: 1.6rem;
		padding: 0.8rem;
	}

	.ensb-period-views__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 0.6rem;
	}

	.ensb-period-views__item:nth-child(3) {
		border-left: 0;
	}

	.ensb-period-views__item:nth-child(n+3) {
		padding-top: 0.6rem;
		border-top: 1px solid #dfe8e7;
	}

	.ensb-period-views__note {
		text-align: left;
	}
}
