@charset "utf-8";
@import url("root.css");

#hero {
	margin-top: 70px;/*header height*/
	width: 100%;
	height: auto;
}

.main_img_wrap {
	width: calc(100% - min(6%, 60px));
	height: clamp(300px, 30vh, 450px);
	background: url(../img/bg_main.webp) no-repeat center center / cover;
	margin: 0 auto;
	position: relative;
	display: flex;
	align-items: center;
}
.main_text_wrap {
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
	width: min(94%, 1200px);
	margin: auto;
	h1 {
		color: #fff;
		font-size: clamp(2rem, 7.5vw, 3rem);
		letter-spacing: .1em;
		line-height: 1.0;
		text-align: left;
		margin-top: -45px;
		margin-right: auto;
	}
}
@media (max-width: 767px) {
	.main_img_wrap {
		height: clamp(160px, 20vh, 240px);
	}
	.main_text_wrap h1 { margin-top: 0; }
}
@media (min-width: 768px) {
	#navigation {
		margin-top: -60px;/*ナビ高さの1/2*/
		.nav_menu {
			box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
			border-radius: 8px;
		}
		.navi_item:nth-of-type(1) > a { border-radius: 8px 0 0 8px;}
		.navi_item:nth-of-type(6) > a { border-radius: 0 8px 8px 0;}
	}
}

section {
	padding-top: clamp(25px, 5vw, 50px);
	padding-bottom: clamp(25px, 5vw, 50px);
	h3 {
		text-align: center;
		width: 100%;
		font-size: clamp(1.3rem,2vw,1.75rem);
		padding-bottom: clamp(10px, 2vw, 20px);
		color: var(--base-color01);
		border-bottom: 2px solid var(--base-color01);
		margin-bottom: clamp(15px, 3vw, 30px);
	}
}
section#Breadcrumb,
section#navigation,
section#hero {
	padding: 0;
}

#main_contents {
	padding-top: clamp(25px, 5vw, 50px);
	padding-bottom: clamp(25px, 5vw, 50px);
	h2 {
		width: 100%;
		font-size: clamp(1.3rem,2vw,1.75rem);
		padding-bottom: clamp(10px, 2vw, 20px);
		color: var(--base-color01);
		border-bottom: 2px solid var(--base-color01);
		margin-bottom: clamp(15px, 3vw, 30px);
	}
	.page_description {
		text-align: center;
		width: min(90%, 1000px);
		margin: 0 auto clamp(25px, 5vw, 50px);
	}
}




.soudan {
	background-color: #f5f3ec;
	padding-top: clamp(25px, 5vw, 50px);
	padding-bottom: clamp(25px, 5vw, 50px);
}
.soudan_wrap {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: clamp(15px, 3vw, 30px) clamp(25px, 5vw, 50px);
	.soudan_img {
		width: calc((100% - clamp(25px, 5vw, 50px)) / 2);
	}
	.soudan_txt {
		width: calc((100% - clamp(25px, 5vw, 50px)) / 2);
		h3 {
			width: 100%;
			font-size: clamp(1.3rem,2vw,1.75rem);
			padding-bottom: .5rem;
			color: var(--base-color01);
			border-bottom: 2px solid var(--base-color01);
			margin-bottom: 1rem;
			text-align: left;
			line-height: 1.2;
		}
		p:not(:last-of-type) {
			margin-bottom: clamp(10px, 2vw, 20px);
		}
	}
}
@media (max-width: 599px) {
	.soudan_wrap {
		.soudan_txt,
		.soudan_img {
			width: 100%;
		}
	}
}









