@charset "UTF-8";
/* CSS Document */

#pageWrap {
	background-image: url("../img/bg.jpg");
	background-repeat: repeat-y;
	background-size: 100%;
}
#pageWrap > section {
	max-width: 900px;
	padding: 30px 0;
}

#h2Box {
	padding: 60px 0;
}
#h2Box h3 {
	font-size: 22px;
	text-align: center;
}
#h2Box h2 {
	color: #0b355e;
	letter-spacing: 0.2em;
	padding: 0.6em 0;
	font-size: 42px;
	font-weight: 700;
	text-align: center;
}
#h2Box h2 span {
	font-weight: 300;
}
#h2Box p {
	font-size: 16px;
	text-align: center;
}

#sec01 {
	position: relative;
}
#sec01 h3 {
	font-size: 16px;
	color: #a48462;
	border-bottom: #a48462 solid 1px;
	margin-bottom: 0.5em;
}
#sec01 h4,#sec02 h4 {
	font-size: 18px;
	padding: 0 0 0.7em 0;
}
#sec01 .mapBox {
	position: relative;
}
#sec01 dl {
	position: absolute;
	left: 0;
	top: 1em;
	width: 22em;
	font-size: 15px;
}
#sec01 dt {
	
}
#sec01 dd {
	font-size: 13px;
	padding-top: 1em;
}
#sec01 #gaikanBox {
	margin-top: 30px;
	
}
#sec01 #gaikanBox .itemBox {
	width: 32.2%;
	max-width: 290px;
	margin-bottom: 15px;
	position: relative;
}
#sec01 #gaikanBox .itemBox::after {
	content: attr(data-num);
	background-color: #000;
	color: #fff;
	display: flex;
justify-content: center;
align-items: center;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 1vw;
	width: 2em;
	height: 2em;
}
#sec01 #gaikanBox .itemBox p {
	text-align: center;
	padding: 0.6em 0 1.2em;
}
#sec01 #gaikanBox ul {}
#sec01 #gaikanBox li {
	width: 32.2%;
	max-width: 290px;
	position: relative;
	margin: 0.3em 0;
	padding-left: 1.8em;
	font-size: 13px;
	font-size: clamp(9px, 1.3vw, 13px);
	letter-spacing: -0.0em;
	
}
#sec01 #gaikanBox li::before {
	content: attr(data-num);
	background-color: #000;
	color: #fff;
	position: absolute;
	left: 0em;
	top: 0;
	font-size: 100%;
	width: 1.5em;
	height: 1.5em;
	display: flex;
	justify-content: center;
	align-items: center;
}

#sec02 {}
#sec02 h2 {
    text-align: center;
    padding-bottom: 2em;
    font-size: 18px;
    font-weight: 500;
}
#sec02 h3 {
	text-align: center;
	padding-bottom: 2em;
	font-size: 18px;
	font-weight: 500;
	position: relative;
	margin-top: 2em;
}
#sec02 h3::before,#sec02 h3::after {
	content: "";
	position: absolute;
	width: calc(50% - 3em);
	height: 1px;
	background-color: #777;
	left: 0;
	top: 0.6em;
}
#sec02 h3::after {
	left: auto;
	right: 0;
}
#sec02 h4 {
	text-align: center;
	font-size: 15px;
	padding-bottom: 1em;
}
#sec02 .flex {
	
}
#sec02 .flex .itemBox {
	width: 48%;
	max-width: 430px;
	padding-bottom: 30px;
}
#sec02 .flex .itemBox dt {
	font-size: 18px;
	padding: 0.6em 0 0.3em;
}


@media screen and (max-width: 959px) {
	#h2Box h3 {
		font-size: clamp(18px, 2.5vw, 20px);
	}
	#sec01 .mapBox {
		padding-top: 10%;
	}
	#sec01 #gaikanBox .itemBox {
		width:48%;
		max-width: 400px;
	}
	#sec01 #gaikanBox li {
		width:48%;
		max-width: 400px;
	}
	#sec01 #gaikanBox .itemBox::after {
		font-size: 1.5vw;
	}
	#sec01 #gaikanBox li {
		font-size: 1.8vw;
		font-size: clamp(11px, 1.8vw, 14px);
	}
	#sec01 #gaikanBox li::before {
	}
	
}
@media screen and (max-width: 599px) {
	#h2Box h3 {
		font-size: clamp(14px, 4vw, 16px);
	}
	#h2Box h2 {
		font-size: 8vw;
		letter-spacing: 0.1em;
	}
	#h2Box p {
		font-size: clamp(13px, 3.7vw, 15px);
	}
	#sec01 .mapBox {
		padding-top: 0%;
	}
	#sec01 h3,#sec02 h3 {
		font-size: clamp(14px, 4vw, 16px);
	}
	#sec01 h4,#sec01 dt,#sec02 .leftBox dt {
		font-size: clamp(14px, 4vw, 16px);
	}
	#sec01 h4,#sec01 dt,#sec02 .leftBox dt br {
		display: none;
	}
	#sec01 dd,#sec02 .leftBox dd {
		font-size: clamp(12px, 3.5vw, 14px);
	}
	#sec01 dl{
		position: static;
		width: 100%;
	}
	#sec01 #gaikanBox {
		max-width: 320px;
		margin: 30px auto 0;
	}
	#sec01 #gaikanBox .itemBox {
		width: 100%;
		max-width: 440px;
	}

	#sec01 #gaikanBox li {
		width:100%;
		max-width: 440px;
	}
	#sec01 #gaikanBox .itemBox::after {
		font-size: 3.5vw;
	}
	#sec01 #gaikanBox li {
		font-size: 3.4vw;
		font-size: clamp(11px, 3.4vw, 13px);
	}
	#sec01 #gaikanBox li::before {
	}
	#sec02 h2 {
font-size: clamp(14px, 4vw, 16px);
}
	#sec02 h3 {
		font-size: clamp(14px, 4vw, 16px);
	}
	#sec02 h4 {
		font-size: clamp(14px, 4vw, 16px);
	}
	#sec02 .flex {
		max-width: 400px;
    margin: 30px auto 0;
	}
	        
	#sec02 .flex .itemBox {
		width: 100%;
	}
	#sec02 .flex .itemBox dt {
		font-size: clamp(14px, 4vw, 16px);
	}
	

	
}
