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

#sec01 {
	text-align: right;
	padding: 5% 0;
	position: relative;
	justify-content: flex-end;
}
#sec01 .titBox {
	position: absolute;
	right: 50%;
	width: 50%;
	max-width: 600px;
	z-index: 1;
	top: 40%;
	transform: translateY(-50%);
}
#sec01 .titBox .eng {
	color: #86784B;
	font-size: 26px;
	font-size: 1.8vw;
	font-size: clamp(15px, 1.8vw, 26px);
	text-align: center;
	letter-spacing: 0.2em;
	padding-bottom: 3%;
}
#sec01 .titBox h3 {
	font-size: 24px;
	font-size: 1.8vw;
	font-size: clamp(15px, 1.8vw, 24px);
	text-align: center;
	padding: 1em;
	letter-spacing: 0.2em;
	line-height: 2;
}
#sec01 .titBox .lead {
	font-size: 16px;
	text-align: center;
	line-height: 2.4
}

#sec01 .imgBox {
	width: 60%;
	position: relative;
}
#sec01 .imgBox p {
	position: absolute;
	left: 1em;
	bottom: 0;
}

#sec02 {
	padding-bottom: 5%;
}
#sec02 .flex {}
#sec02 .flex .imgBox {
	width: 49%;
	max-width: 590px;
	position: relative;
}
#sec02 .flex .imgBox p {
	color: #fff;
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 0.2em 0.5em;
}

#sec03 {
	background-color: #EAEBE9;
	padding: 5% 0;
}
#sec03 .titBox {}
#sec03 .titBox p.eng {
	font-size: 26px;
	text-align: center;
	color: #86784B;
	letter-spacing: 0.2em;
	border-bottom: #86784B solid 1px;
}
#sec03 .titBox h3 {
	text-align: center;
	font-size: 22px;
	letter-spacing: 0.2em;
	padding-top: 0.5em;
}
#sec03 .sikchi {
	max-width: 1000px;
	
}
#sec03 .itemWrap {
	padding-top: 5%;
	gap:50px 0;
}
#sec03 .itemWrap .itemBox {
	width: calc(100% / 3 - 1%);
	align-items: flex-start;
}
#sec03 .itemWrap .itemBox .imgBox {
	width: 53%;
	max-width: 190px;
}
#sec03 .itemWrap .itemBox dl {
	flex: 1;
	margin-left: 1em;
	width: 100%;
}
#sec03 .itemWrap .itemBox dt {
	font-size: 15px;
	padding-bottom: 1em;
}
#sec03 .itemWrap .itemBox dt sup {
	padding-bottom: 1em;
	font-size: 80%;
}
#sec03 .itemWrap .itemBox dd {
	font-size: 12px;
	line-height: 1.3;
}
#sec03 .itemWrap .itemBox dd .caption {
	font-size: 10px;
	padding-bottom: 0;
}

@media screen and (max-width: 959px) {
	#sec01 {
		display: block;
	}
	#sec01 .titBox {
		position: static;
		width: 100%;
		max-width: 100%;
		transform: translateY(0);
		padding-bottom: 3%;
		
	}
		#sec01 .titBox .eng {
		font-size: clamp(20px, 2.7vw, 22px);
	}
	#sec01 .titBox h3 {
		font-size: clamp(22px, 3.0vw, 24px);
	}
	#sec01 .titBox .lead {
		font-size: clamp(14px, 2vw, 16px);
	}
	#sec01 .imgBox {
		width: 100%;
	}
	#sec02 .flex {
		max-width: 590px;
	}
	#sec02 .flex .imgBox {
		width: 100%;
		max-width: 590px;
		margin-bottom: 3%;
	}
	#sec03 .itemWrap .itemBox {
		display: block;
		width: 30%;
	}
	#sec03 .itemWrap .itemBox .imgBox {
	width: 100%;
	max-width: 100%;
}
#sec03 .itemWrap .itemBox dl {
	flex:initial;
	width: 100%;
	margin-left: 0;
	width: 100%;
}
	#sec03 .itemWrap .itemBox dt {
		padding-top: 1em;
		text-align: center;
	}
	
}

@media screen and (max-width: 599px) {
	#sec01 {
		overflow: hidden;
	}
	#sec01 .titBox .eng,#sec03 .titBox p.eng {
		font-size: 4.6vw;
		font-size: clamp(16px, 4.6vw, 18px);
	}
	#sec01 .titBox h3,#sec03 .titBox h3 {
		font-size: 4.6vw;
		font-size: clamp(16px, 4.6vw, 18px);
	}
	#sec01 .titBox .lead {
		font-size: 3.5vw;
		font-size: clamp(12px, 3.5vw, 14px);
		text-align: justify;
		padding: 1em 2em;
		
	}
	#sec01 .titBox .lead br {
		display: none;
	}
	#sec01 .imgBox {
		width: 120%;
		margin-left: -10%;
	}
	#sec01 .imgBox p,#sec02 .imgBox p {
		font-size: 2.6vw;
		font-size: clamp(9px, 3.5vw, 11px);
	}
	#sec01 .imgBox p {
		bottom: -1.2em;
		left: 11%;
	}
	#sec02 .flex {
		width: 100%;
		padding-top: 5%;
	}
	#sec03 .sikchi {
		width: 100%;
	}
	#sec03 .itemWrap {
		max-width: 350px;
		padding-top: 8%;
	}
	#sec03 .itemWrap .itemBox {
	width: 100%;
	}
	#sec03 .itemWrap .itemBox .imgBox {
		width: 75%;
		max-width: 280px;
		margin: 0 auto;
	}
}


