@charset "UTF-8";
/* CSS Document */
.notes-area {
    margin: 0 auto;
}
#pageTit {
	position: relative;
}
#pageTit h2 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background: none;
}

#pageWrap {
	background-image: url("../images/bg.jpg");
	background-position: top center;
	background-repeat: repeat-y;
	background-size: 100%;
}

#h3Box {
	padding-top: 1%;
	padding-bottom: 5%;
}
#h3Box h3 {
	font-size: 30px;
	padding-bottom: 0.5em;
	letter-spacing: 0.1em;
}
#h3Box .lead {
	font-size: 22px;
}

#sec01 {}
#sec01 .box01,#sec01 .box03 {
	width: 29%;
}
#sec01 .box02 {
	width: 39.7%;
}

#sec02 {
	padding-top: 5%;
}
.sec {
	container-type: inline-size;
}
.h4Box {
	padding-top: 3%;
	padding-bottom: 0;
	position: relative;
	margin-bottom: 1%;
}
.h4Box .engTxt {
	display: inline-block;
	width: auto;
	font-size: 24px;
	font-size: clamp(13px, 2cqw, 24px);
	letter-spacing: 0.1em;
	color: #888467;
}
.h4Box h4 {
	text-align: right;
	font-size: clamp(13px, 1.7cqw, 20px);
	position: relative;
}
.h4Box::after {
	content: "";
	position: absolute;
	width: 80%;
	height: 2px;
	right: 0;
	bottom: 0.6em;
	background-color: #888467;
}
#sec03 .h4Box::after {
	width: 82%;
}
#sec04 .h4Box::after {
	width: 80%;
}
#sec05 .h4Box::after {
	width: 76%;
}
#sec06 .h4Box::after {
	width: 75%;
}
#sec07 .h4Box::after {
	width: 83%;
}
#sec08 .h4Box::after {
	width: 83%;
}



#sec03 {}
.flex01 {}
.flex01 .leftBox {
	width: 65.4%;
}
.flex03 {
	background-color: #efeddf;
	position: relative;
}
.flex03:nth-child(2) {
	margin: 30px 0;
}
.flex03::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: #dcdbce solid 2px;
}
.flex03 .imgBox {
	width: 68%;
}
.flex03 .minBox {
	width: 32%;
	padding: 1%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.flex01 .rightBox {
	width: 31%;
}

.flex02 .itemBox {
	width: 32%;
	max-width: 370px;
	
	
}
.itemBox {
	padding-bottom: 20px;
	container-type: inline-size;
}
.itemBox p {
	font-size: clamp(13px, 5cqw, 20px);
	line-height: 1.3;
	padding-top: 0.3em;
}
.itemBox p span {
	display: block;
	font-size: 75%;
}
#sec04 .flex02 {
	padding-top: 20px;
}
#sec05 .h4Box .engTxt,#sec06 .h4Box .engTxt{
	letter-spacing: 0em;
}
#sec05 .h4Box h4,#sec06 .h4Box h4 {
	/*width: calc(100% - 15em);*/
}

#sec08 {
	padding-bottom: 5%;
}
#sec09 {
	padding: 5% 0;
	background-color: #f2ede3;
}
#sec09 h4 {
	font-size: 26px;
	border-bottom: #000 solid 1px;
	margin-bottom: 30px;
}
#sec09 .tableBox {
	width: 48%;
}
#sec09 table {
	width: 100%;
	container-type: inline-size;
	margin-top: 20px;
}
#sec09 th,#sec09 td {
	font-size: 16px;
	font-size: clamp(12px, 1.2cqw, 15px);
	text-align: left;
	letter-spacing: -0.02em;
	font-weight: normal;
	padding: 0.3em 0;
}
#sec09 th {
	text-align: left;
}
#sec09 td {
	text-align: right;
}


#sec09 td:nth-child(2) {
	width: 3.2em;
}
#sec09 td:nth-child(3) {
	width: 2.2em;
}
#sec09 td:nth-child(4) {
	width: 1.8em;
}
#sec09 td:nth-child(5) {
	width: 4.2em;
}
#sec09 th.category {
	font-size: 130%;
	border-bottom: #000 solid 1px;
	
}


@media screen and (max-width: 959px){
	#h3Box h3 {
		font-size: clamp(22px, 3.0vw, 24px);
	}
	#h3Box .lead {
		font-size: clamp(16px, 2.2vw, 18px);
	}
	.h4Box .engTxt {
		font-size: 3cqw;
	}
	.h4Box h4 {
    font-size: 2.4cqw;
		position: relative;
		top: 0.2em;
	}
	.h4Box::after {
		width: 100%!important;
		bottom: 0.2em;
	}
	#sec09 .tableBox {
    width: 100%;
		max-width: 500px;
		margin: 0 auto;
}
	#sec09 table {
	}
	#sec09 th,#sec09 td {
		font-size: clamp(13px, 1cqw, 16px);
	}
}

@media screen and (max-width: 599px){
	#sec01 .box01,#sec01 .box03 {
	width: 49.5%;
}
#sec01 .box02 {
	width: 100%;
	order: -1;
	padding-bottom: 1%;
}
	#h3Box h3 {
        font-size: clamp(15px, 5.0vw, 24px);
    }
	#h3Box .lead {
		font-size: clamp(13px, 3.6vw, 18px);
	}
	.h4Box {
		margin-bottom: 10px;
	}
	.h4Box .engTxt {
		font-size: 5cqw;
	}
	.h4Box h4 {
    font-size: 4.2cqw;
		position: relative;
		top: 0.2em;
	}
	.h4Box::after {
		width: 100%!important;
		bottom: 0.2em;
	}
	#sec02 {
		padding-bottom: 30px;
	}
	.flex01 .leftBox {
		width: 100%;
	}
	.flex01 .rightBox,.flex02 .itemBox {
		width: 80%;
		max-width: 300px;
		margin: 0 auto;
		padding-top: 30px;
	}
	.flex02 .itemBox {
		padding-top: 0px;
	}
	.flex03 .imgBox {
		width: 100%;
	}
	.flex03 .minBox {
		width: 100%;
		padding: 1%;
	}
	.flex03:nth-child(2) {
    margin: 10px 0;
	}
	.flex01 .rightBox {
		
	}
	#sec04 .flex02 {
    padding-top: 0px;
	}
	#sec09 h4 {
    font-size: clamp(16px, 4.6vw, 18px);
}
	#sec09 th.category {
    font-size: 130%;
    border-top: #fff solid 1px;
		border-bottom: #ccc solid 1px;
		background-color: rgba(255,255,255,0.3);
		text-align: center;
}
}
	
	