@charset "UTF-8";

/* ====================================
	共通スタイル
==================================== */

.board-table-wrapper {
	--border-spacing: 8px;
	margin-inline: calc(var(--border-spacing) * -1);
}

.board-table-wrapper:nth-of-type(n+2) {
	margin-top: 6rem;
}

.board-table {
	border-collapse: separate;
	border-spacing: var(--border-spacing) 0px;
	inline-size: 100%;
	--border-color: #d9d9d9;

	caption {
		font-size: 1.8rem;
		font-weight: 700;
		margin: 0 0 1rem var(--border-spacing);
	}

	.border-b {
		border-bottom: 1px solid var(--border-color);
	}

	tr:last-child td {
		border-bottom: 1px solid var(--border-color);
	}

	th,
	td {
		font-size: 1.5rem;
		line-height: 1.5;
		padding: 1.5rem 0;
		border-top: 1px solid var(--border-color);
	}

	th {
		font-weight: 400;
		inline-size: calc(100% / 3);
		vertical-align: top;
	}

	.board-title {
		font-size: 0.8em;
	}

	.board-name {
		display: inline-block;
		inline-size: 7em;
		text-align: justify;
		text-align-last: justify;
		-webkit-text-align-last: justify;
	}

	a {
		text-decoration: underline;
		text-underline-offset: 2px;
	}
}


/* ====================================
	ホバー、マウスポインタが有効なデバイス
==================================== */
@media (hover:hover) and (pointer: fine) {
	.board-table a:hover {
		text-decoration: none;
	}
}

/* ====================================
	768px未満専用スタイル
==================================== */
@media screen and (width <768px) {}

/* ====================================
	768px以上専用スタイル
==================================== */
@media screen and (width >=768px) {
	.board-table-wrapper {
		--border-spacing: 34px;
	}

	.board-table-wrapper:nth-of-type(n+2) {
		margin-top: 8rem;
	}

	.board-table {
		caption {
			font-size: 2.6rem;
			margin-bottom: 3rem;
		}

		th,
		td {
			padding: 2.5rem 0;
		}

		th {
			font-size: 2rem;
		}

		td {
			font-size: 1.8rem;
		}
	}
}