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

body {
	overflow-x:visible;
}
#pageWrap {
    padding: 0px;
}
.notes-area {
    margin: 0 auto 0;
}

.h3Box h3 {
	width: 100%;
	text-align: center;
	font-size: clamp(20px, 2.2vw, 45px);
	font-weight: 300;
	letter-spacing: 0.1em;
}
.h3Box .lead {
	text-align: center;
	font-size: clamp(13px, 0.9vw, 18px);
	letter-spacing: 0.1em;
	line-height: 2.6;
	rgba(0,0,0,0.6);
}

#sec01 {
	position: relative;
}
#sec01 .imgBox {}
#sec01 .h3Box {
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
}
#sec01 .h3Box h3 {
		padding-bottom: 3em;
}
#sec01 .h3Box .lead {
	text-shadow: 0px 0px 10px rgba(0,0,0,0.6), 1px 0px 10px rgba(0,0,0,0.6), -1px 0px 10px rgba(0,0,0,0.6), 0px 1px 10px rgba(0,0,0,0.6), 0px -1px 10px 
}
#sec01 .cap {
	position: absolute;
	font-size: clamp(13px, 0.85vw, 16px);
	background-color: #7c6c63;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 8em;
	height: 1.6em;
	top: 10%;
	left: 25%;
	transform: translateX(-50%);
	
}
#sec01 .cap02 {
	left: 75%;
}

#sec02 {
	background-image: url("../images/bg02.jpg");
	background-size: cover;
	background-position: left top;
	background-repeat: no-repeat;
	position: relative;
	padding: 5% 0;
}
#sec02 .flex {
	display: flex;
	justify-content: center;
	align-items: center;
	
}
#sec02 .gaikanBox {
	width: 50%;
	
}
#sec02 .gaikanBox .capPs {
	text-align: right;
	margin-right: 2em;
}
#sec02 .h3Box {
width: 50%;
	padding-left: 8%;
}
#sec02 .h3Box h3 {
	text-align: left;
	padding-bottom: 1em;
}
#sec02 .h3Box .lead {
	text-align: justify;
}
.capPs {
	font-size:clamp(13px, 1.5vw, 20px);
}

#sec03 {
	background: linear-gradient(135deg, rgba(0, 78, 126, 1) 0%, rgba(0, 27, 59, 1) 100%);
	position: relative;
	position: sticky;
	top: 0px;
	
}
#sec03 .capPs {
	position: absolute;
	left: 2em;
	bottom: 0.5em;
	color: #fff;
}
#sec04 {
	background: #004E7E;
background: linear-gradient(135deg, rgba(0, 78, 126, 1) 0%, rgba(0, 27, 59, 1) 100%);
	padding: 5% 0;
	position: relative;
	top: 0px;
z-index: 1;
}
#sec04::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 101%;
	background-image: url("../images/tx04-1.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
#sec04 .h3Box {
	color: #fff;
}
#sec04 .h3Box h3 {
	padding-bottom: 1em;
}

#sec05 {
	background: linear-gradient(135deg, rgba(0, 78, 126, 1) 0%, rgba(0, 27, 59, 1) 100%);
	position: relative;
	z-index: 1;
}
#sec05 .imgBox {
	width: 50%;
	position: relative;
}
#sec05 .imgBox .capPs {
	position: absolute;
	right: 1em;
	bottom: 0.3em;
	color: #fff;
}

#sec06 {
	background: linear-gradient(135deg, rgba(0, 78, 126, 1) 0%, rgba(0, 27, 59, 1) 100%);
	position: relative;
	z-index: 2;
	padding: 5% 0;
}
#sec06 .boxWidth {
	background-color: #fff;
	padding: 15px 30px;
}
#sec06 .h3Box {
container-type: inline-size;
	align-items: center;
	padding-bottom: 1em;
}
#sec06 .h3Box h3 {
	font-size: 2.1cqw;
	text-align: left;
	width: 64%;
	letter-spacing: 0em;
}
#sec06 .h3Box p.caption {
	font-size: 1cqw;
	width: 36%;
	text-align: right;
}
#sec06 .flex .itemBox {
	width: calc((100% / 6) - 2%);
	transition-duration: 0.6s;
	transition-timing-function: ease-out;
	transition-delay: calc(0.15s * var(--idx));
}
#sec06 .flex .itemBox p {
	text-align: left;
}

@media screen and (max-width: 959px){
	#sec01 .h3Box {
		position: static;
		width: 100%;
		transform: translateY(0%);
		color: #fff;
		background-color: #000;
		padding: 5% 0;
	}
	#sec01 .h3Box h3 {
			padding-bottom: 3em;
	}
	#sec01 .h3Box .lead {
		text-shadow: 0px 0px 10px rgba(0,0,0,0.6), 1px 0px 10px rgba(0,0,0,0.6), -1px 0px 10px rgba(0,0,0,0.6), 0px 1px 10px rgba(0,0,0,0.6), 0px -1px 10px 
	}
}

@media screen and (max-width: 599px){
	#sec01 .cap {
    top: 2%;
    font-size: clamp(12px, 0.85vw, 16px);
	}
	#sec01 .h3Box {
		padding: 50px 0;
	}
	#sec01 .h3Box h3 {
		
	}
	.h3Box h3 {
		font-size: clamp(17px, 4.8vw, 19px);
		letter-spacing: 0.1em;
		padding: 0;
	}
	.h3Box .lead {
		text-align: center;
		font-size: clamp(12px, 3.5vw, 14px);
		letter-spacing: 0em;
		line-height: 2.0;
		padding: 1em 0;
	}
	 #sec01 .h3Box h3 {
     padding-bottom: 1em;
  }
	#sec02 .gaikanBox {
		width: 100%;

	}
	#sec02 .gaikanBox .capPs {
		text-align: right;
		margin-right: 2em;
	}
	#sec02 .h3Box {
	width: 90%;
		padding-left: 0;
		padding: 2em 0;
	}
	#sec02 .h3Box h3 {
		text-align: center;
		padding-bottom: 1em;
	}
	#sec02 .h3Box .lead {
		text-align: center;
	}
	#sec03 .capPs {
    left: 1em;
	}
	#sec04 {
		padding: 50px 0;
	}
	#sec05 .imgBox {
    width: 100%;
	}
	#sec06 .boxWidth {
    padding: 30px 15px 15px;
	}
	#sec06 .h3Box {
		display: block;
	}
	#sec06 .h3Box h3 {
		font-size: clamp(15px, 4.3vw, 17px);
		text-align: center;
		width: 100%;
		letter-spacing: 0em;
		line-height: 1.3;
	}
	#sec06 .h3Box p.caption {
		font-size: 10px;
		width: 100%;
		text-align: center;
		line-height: 1.3;
		padding-top: 1em;
	}
	#sec06 .flex {
		width: 86%;
		max-width: 350px;
		margin: 0 auto;
	}
	#sec06 .flex .itemBox {
		width: calc((100% / 2) - 3%);
	}
	
}
