.ebssd-directory {
	margin-top: 36px;
}

.ebssd-region {
	margin: 0 0 52px;
}

.ebssd-region__title {
	margin: 0 0 22px;
	padding: 12px 16px;
	border-left: 5px solid #00bcbc;
	background: #f3f8f8;
	font-size: 1.45em;
}

.ebssd-prefecture {
	margin: 0 0 30px;
}

.ebssd-prefecture__title {
	margin: 0 0 10px;
	padding-bottom: 7px;
	border-bottom: 2px solid #00bcbc;
	font-size: 1.15em;
}

.ebssd-table-wrap {
	overflow-x: auto;
}

.ebssd-table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.ebssd-table th,
.ebssd-table td {
	padding: 12px 14px;
	border: 1px solid #dfe5e5;
	vertical-align: top;
	text-align: left;
	word-break: break-word;
}

.ebssd-table thead th {
	background: #f7f9f9;
	font-weight: 600;
}

.ebssd-table thead th:nth-child(1) { width: 32%; }
.ebssd-table thead th:nth-child(2) { width: 45%; }
.ebssd-table thead th:nth-child(3) { width: 23%; }

.ebssd-table tbody th {
	font-weight: 600;
}

.ebssd-table a {
	color: #008f8f;
	text-decoration: underline;
	text-underline-offset: 2px;
}

@media (max-width: 640px) {
	.ebssd-region {
		margin-bottom: 40px;
	}

	.ebssd-table,
	.ebssd-table tbody,
	.ebssd-table tr,
	.ebssd-table th,
	.ebssd-table td {
		display: block;
		width: 100%;
	}

	.ebssd-table thead {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
	}

	.ebssd-table tr {
		margin-bottom: 14px;
		border: 1px solid #dfe5e5;
		background: #fff;
	}

	.ebssd-table th,
	.ebssd-table td {
		padding: 10px 12px 10px 7.5em;
		border: 0;
		border-bottom: 1px solid #edf0f0;
		position: relative;
	}

	.ebssd-table th:last-child,
	.ebssd-table td:last-child {
		border-bottom: 0;
	}

	.ebssd-table th::before,
	.ebssd-table td::before {
		content: attr(data-label);
		position: absolute;
		left: 12px;
		top: 10px;
		width: 6em;
		font-weight: 600;
		color: #555;
	}
}

