@charset "utf-8";
/* font
================================================== */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/* reset
================================================== */
*:where(:not(iframe,img,svg):not(svg *)){all:unset;display:revert;}
*,*::before,*::after{box-sizing:border-box;}
body{position:relative;width:100%;font-size:14px;line-height:1.25;color:#000;font-family:'Noto Sans JP',sans-serif;font-weight:300;font-optical-sizing:auto;font-feature-settings:'palt';-webkit-text-size-adjust:100%;background:#fff;}
footer,header,main{display:block;}
table{border-collapse:collapse;border-spacing:0;}
ol,ul{list-style:none;}
img{width:100%;height:auto;vertical-align:top;}
a{margin:0;padding:0;color:#DB222A;text-decoration:underline;vertical-align:bottom;background:transparent;cursor:pointer;}

/* header */
#header{
	padding:0 0 57px;
	background:#FFF;
}
#header .icon{
	margin-block-start:50px;
	writing-mode: horizontal-tb;
	width:fit-content;
	margin-inline:auto;
	padding:5px 40px 7px;
	font-size:17px;
	color:#FFF;
	border-radius:2px;
	background:#000;
}
#header .header_img{
	margin-block-end:50px;
	writing-mode: horizontal-tb;
}
#header .title{
	margin-block-start:38px;
	font-size:32px;
	font-weight:200;
	text-align:center;
}
/* main */
main{
/*	max-width:1000px;
	margin-inline:auto;
	padding:50px 35px 150px;
	background:#f5f5f5;*/
	background:#f5f5f5;
}
article{
	max-width:1000px;
	margin-inline:auto;
	padding:50px 35px 150px;
	background:#f5f5f5;
}
.notice{
	margin-block-end:51px;
	font-size:16px;
	line-height:1.6;
}
nav ul{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	width:fit-content;
}
nav li{
	display:none;
}
nav .button{
	display:block;
	padding:5px 15px 7px;
	font-size:16px;
	color:#FFF;
	text-decoration:none;
	border-radius:16px;
	background:#000;
	transition:opacity 0.3s;
}
main:has(#関東) li:has(a[href="#関東"]),
main:has(#北海道) li:has(a[href="#北海道"]),
main:has(#東北) li:has(a[href="#東北"]),
main:has(#中部) li:has(a[href="#中部"]),
main:has(#近畿) li:has(a[href="#近畿"]),
main:has(#中国) li:has(a[href="#中国"]),
main:has(#四国) li:has(a[href="#四国"]),
main:has(#九州) li:has(a[href="#九州"]){
	display:block;
}
.prefectures{
	margin-block-start:115px;
}
.prefectures:nth-of-type(1){
	margin-block-start:95px;
}
.prefectures .heading{
	margin-block-end:27px;
	font-size:28px;
	font-weight:200;
}
.prefectures table{
	width:100%;
}
.prefectures th,
.prefectures td{
	padding-block:10px;
	padding-inline-end:30px;
	vertical-align:middle;
}
.prefectures th{
	color:#FFF;
	background:#000;
}
.prefectures td{
	border-block-end:1px solid #000;
	background:#FAFAFA;
}
.prefectures th:nth-of-type(1),
.prefectures td:nth-of-type(1){
	width:calc(4em + 45px);
	padding-inline-start:15px;
	text-align:center;
	white-space:nowrap;
}
.prefectures th:nth-of-type(3),
.prefectures td:nth-of-type(3){
	width:186px;
	white-space:nowrap;
}
.prefectures th:nth-of-type(4),
.prefectures td:nth-of-type(4){
	width:122px;
	white-space:nowrap;
}
.prefectures th:nth-of-type(5),
.prefectures td:nth-of-type(5){
	width:163px;
	padding-inline-end:15px;
	white-space:nowrap;
}
@media screen and (max-width:999px){
	.prefectures th:nth-of-type(3),
	.prefectures td:nth-of-type(3){
		width:115px;
		white-space:unset;
	}
	.prefectures th:nth-of-type(4),
	.prefectures td:nth-of-type(4){
		width:92px;
		white-space:unset;
	}
}
@media screen and (max-width:799px){
	#header{
		padding:0 0 38px;
	}
	#header .icon{
		margin-block-start:40px;
		padding:5px 32px;
		font-size:14px;
	}
	#header .header_img{
		margin-block-end:40px;
		writing-mode: horizontal-tb;
	}
	#header .title{
		margin-block-start:28px;
		font-size:22px;
	}
	article{
		padding:30px 20px 80px;
	}
	.notice{
		margin-block-end:28px;
		font-size:14px;
	}
	nav .button{
		padding:5px 12px 7px;
		font-size:13px;
	}
	.prefectures{
		margin-block-start:76px;
	}
	.prefectures:nth-of-type(1){
		margin-block-start:61px;
	}
	.prefectures .heading{
		margin-block-end:23px;
		font-size:19px;
	}
	.prefectures th,
	.prefectures td{
		padding-block:10px;
		padding-inline:8px !important;
		font-size:13px;
		border:1px solid #666;
	}
	.prefectures th{
		color:#FFF;
		background:#000;
	}
	.prefectures td{
		border-block-end:1px solid #000;
		background:#FAFAFA;
	}
	.prefectures th:nth-of-type(1),
	.prefectures td:nth-of-type(1){
		width:calc(4em + 17px);
		white-space:nowrap;
	}
	.prefectures th:nth-of-type(3),
	.prefectures td:nth-of-type(3){
		width:96px;
	}
	.prefectures th:nth-of-type(4),
	.prefectures td:nth-of-type(4){
		width:75px;
	}
	.prefectures th:nth-of-type(5),
	.prefectures td:nth-of-type(5){
		width:154px;
		white-space:nowrap;
	}
}
@media screen and (max-width:699px){
	.prefectures th:nth-of-type(4),
	.prefectures td:nth-of-type(4){
		width:calc(4em + 17px);
	}
}
@media screen and (max-width:599px){
	#header{
		padding:0 0 29px;
	}
	#header .icon{
		padding:5px 25px 6px;
		font-size:12px;
	}
	#header .title{
		margin-block-start:22px;
		font-size:17px;
	}
	article{
		padding:21px 8px 55px;
	}
	.notice{
		margin-block-end:20px;
		font-size:13px;
	}
	nav .button{
		padding:5px 12px 7px;
		font-size:12px;
	}
	.prefectures{
		margin-block-start:53px;
	}
	.prefectures:nth-of-type(1){
		margin-block-start:43px;
	}
	.prefectures .heading{
		font-size:15px;
	}
	.prefectures table{
		table-layout:fixed;
	}
	.prefectures th,
	.prefectures td{
		padding-block:10px;
		padding-inline:3px !important;
		font-size:12px;
	}
	.prefectures th:nth-of-type(1),
	.prefectures td:nth-of-type(1){
		width:calc(4em + 7px);
	}
	.prefectures th:nth-of-type(3),
	.prefectures td:nth-of-type(3){
		width:80px;
	}
	.prefectures th:nth-of-type(4),
	.prefectures td:nth-of-type(4){
		width:calc(4em + 7px);
	}
	.prefectures th:nth-of-type(5),
	.prefectures td:nth-of-type(5){
		width:auto;
		white-space:unset;
	}
}
@media (any-hover:hover){
	a:hover{
		text-decoration:none;
	}
	nav .button:hover{
		opacity:0.65
	}
}