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

 #pageTitle {
	/*background-color: #003670;*/
	padding: 2em 0 3em;
	 background-image: url("../img/bg-title.jpg");
	 background-position: center center;
	 background-repeat: no-repeat;
	 background-size: cover;
}
#pageTitle h2 {
	font-size: 24px;
	font-size: clamp(18px, 2.0vw, 24px);
	color: #fff;
}
#pageTitle h2 .engTxt {
	display: block;
	width: 15em;
	margin: 0 auto;
	color: #b4a150;
	font-size: 140%;
	letter-spacing: 0.1em;
	border-bottom: #b4a150 solid 2px;
	margin-bottom: 0.5em;
	text-shadow: 2px 2px 5px #000,-2px 2px 5px #000,-2px -2px 5px #000,2px -2px 5px #000,0px 0px 10px #000,0px 0px 20px #000,0px 0px 30px #000;
	
}
@media screen and (max-width: 599px) {
	#pageTitle {
	 background-image: url("../img/bg-title_sp.jpg");
	}
	#pageTitle h2 {
		font-size: 16px;
		font-size: clamp(14px, 4.3vw, 17px);
	}
}



#txtWrap {
	background-color: #fffdf7;
}
#txtWrap .lead {
	text-align: center;
	font-size: clamp(18px, 2.0vw, 24px);
	padding: 1em 0;
}
#txtWrap .caption {
	font-size: 13px;
	text-align: center;
	padding: 1em 0;
}

.secTit {
	background-color: #b4a150;
	padding: 20px 0;
	
}
.secTit .h3Box {
	width: 52em;
	position: relative;
}
.secTit .h3Box h3 {
	text-align: center;
	color: #fff;
	font-size: 24px;
	border-bottom: #fff solid 1px;
}
.secTit .h3Box h3 span {
	font-size: 140%;
	margin-right: 0.6em;
	letter-spacing: 0.2em;
}
.secTit .h3Box h4 {
	color: #fff;
	text-align: center;
	font-size: 18px;
	padding-top: 0.5em;
}
.secTit .h3Box .ico {
	position: absolute;
	width: 150px;
	left: 0%;
	top: 50%;
	transform: translate(-100%,-50%);
}

#coloeSel {
	padding: 3% 0;
	background: #000;
background: linear-gradient(45deg, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 0) 100%);
}
#coloeSel #btnWrap {
	max-width: 1016px;
	margin: 0 auto;
	margin-bottom: 30px;
}
#coloeSel #btnWrap a {
	width: calc((100% / 4) - 1%);
	background-color: #61401d;
	border: rgba(0,0,0,0) solid 2px;
}
#coloeSel #btnWrap a._current {
	box-shadow: 2px 4px 6px rgba(0,0,0,0.6);
	border: #fff solid 2px;
	opacity: 1;
}
#coloeSel #btnWrap a:nth-child(1) {
	transition-delay: 0s
}
#coloeSel #btnWrap a:nth-child(2) {
	transition-delay: 0.3s
}
#coloeSel #btnWrap a:nth-child(3) {
	transition-delay: 0.6s
}
#coloeSel #btnWrap a:nth-child(4) {
	transition-delay: 0.9s
}
#coloeSel #btnWrap #bt02 {
	background-color: #a48a54;
}
#coloeSel #btnWrap #bt03 {
	background-color: #858882;
}
#coloeSel #btnWrap #bt04 {
	background-color: #9f9080;
}

#coloeSel #selBox {
	max-width: 1016px;
	margin: 0 auto 3%;
	position: relative;
}
#coloeSel #selBox #col01 {
	position: relative;
}
#coloeSel #selBox .colBox {
	position: absolute;
	width: 100%;
	left: 0;
	top: 0;
	opacity: 0;
	transition: 1s;
}
#coloeSel #selBox .colBox._show {
	opacity: 1;
}


#planSel {
	padding: 0 0 5%;
}
#planSel h3 {
	width: 90%;
	max-width: 950px;
	padding: 5% 0;
}
#planSel .flex {
	
}
#planSel .flex .zumenBox {
	width: 42%;
	max-width: 500px;
}
#planSel .flex .zumen1 {
	transition-delay: 0s;
}
#planSel .flex .zumenBox .houiBox {
	display: none;
	
}
#planSel .flex .zumen2 {
	transition-delay: 1s;
}
#planSel .flex .centerBox {
	width: 15%;
	display: flex;
justify-content: center;
align-items: flex-end;
	flex-wrap: wrap;
	padding: 10% 0 5%;
	transition-delay: 0.5s;
}
#planSel .flex .centerBox {
}
#planSel .flex .centerBox .henko {
	padding-top: 50%;
}
#planSel .flex .centerBox .houiBox {
	max-width: 140px;
}
#planSel .btWrap {
	padding-top: 3%;
	
}
#planSel .btWrap a {
	color: #000;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	width: 20em;
	height: 3em;
	border: #000 solid 1px;
	position: relative;
}
#planSel .btWrap a.try::after {
    content: '';
    position: absolute;
    right: 5%;
    width: 8px;
    height: 100%;
    background-image: url(../img/try_bk.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
}

#titOther.secTit {
	padding: 0;
}
#titOther.secTit .h3Box {
	padding: 2em 0;
}
#titOther.secTit .h3Box h3 {
	text-align: center;
	color: #fff;
	font-size: 24px;
	border:none;
}

#other {
	padding-top: 3%;
}
#other .flex {}
#other .flex h4 {
	background: rgb(0,113,164);
background: radial-gradient(circle, rgba(0,113,164,1) 0%, rgba(26,44,122,1) 100%);
	box-shadow: 10px 10px 0px #3e3a39;
	width: 17%;
	max-width: 200px;
	display: flex;
justify-content: center;
align-items: center;
	padding: 0 2%;
	margin-bottom: 10px;
	transition-delay: 0s;
}
#other .flex dl {
	width: 38%;
	border: #000 solid 1px;
	background-color: #fffded;
	font-size: 16px;
}
#other .flex dl01 {
	transition-delay: 0.3s;
}
#other .flex dl02 {
	transition-delay: 0.6s;
}
#other .flex dt {
	background: rgb(0,113,164);
background: radial-gradient(circle, rgba(0,113,164,1) 0%, rgba(26,44,122,1) 100%);
	color: #fff;
	text-align: center;
	padding: 1em 0;
	font-size: 1.5vw;
	font-size: clamp(12px, 1.5vw, 20px);
	line-height: 1.4;
}
#other .flex dd {
	padding: 1em 0;
	padding-left: 5%;
	font-size: 1.4vw;
	font-size: clamp(12px, 1.4vw, 17px);

}
#other .flex dd p::before {
content: "●";
	margin-right: 0.3em;
}
#other .cap02 {
	padding-top: 2em;
}

@media screen and (max-width: 959px) {
	#txtWrap .lead {
    font-size: clamp(14px, 2.1vw, 18px);
		letter-spacing: 0.05em;
	}
	.secTit .h3Box {
			width: 70%;
	}
	.secTit .h3Box h3 {
		font-size: clamp(16px, 2.2vw, 18px);
	}
	.secTit .h3Box h4 {
		font-size: clamp(12px, 1.7vw, 14px);
	}
	.secTit .h3Box .ico {
    position: absolute;
    width: 18%;
    left: auto;
		right: 100%;
    top: 50%;
    transform: translate(0%, -50%);
	}
	#titOther.secTit .h3Box h3 {
		font-size: clamp(16px, 2.2vw, 18px);
	
	}
	#planSel .btWrap a {
		font-size: clamp(14px, 2vw, 16px);
	}
}

@media screen and (max-width: 599px) {
	#txtWrap .lead {
    font-size: 3.7vw;
		font-size: clamp(13px, 3.7vw, 15px);
	}
	.secTit .h3Box {
		width: 70%;
		position: relative;
		margin-left: 26%;
	}
	.secTit .h3Box h3 {
		font-size: 4.3vw;
		font-size: clamp(15px, 4.3vw, 17px);
		text-align: left;
		line-height: 1;
		padding-bottom: 0.5em;
	}
	.secTit .h3Box h3 span {
		display: block;
	}
	.secTit .h3Box h4 {
		font-size: clamp(12px, 1.7vw, 14px);
		text-align: left;
	}
	.secTit .h3Box h4 br {
		display: none;
	}
	.secTit .h3Box .ico {
    position: absolute;
    width: 33%;
		max-width: 100px;
    left: 0%;
    top: 0%;
    transform: translate(-108%, 0%);
	}
	#titOther.secTit .h3Box h3 {
		font-size: 4.3vw;
		font-size: clamp(15px, 4.3vw, 17px);
	
	}
	#planSel .btWrap {
		padding: 10% 0;
	}
	#planSel .btWrap a {
		font-size: 3.7vw;
		font-size: clamp(13px, 3.7vw, 15px);
	}
	#txtWrap .caption {
    font-size: 11px;
    text-align: center;
    padding: 1em 2em;
	}
	#coloeSel {
		background: none;
	}
	#coloeSel #btnWrap a {
    width: calc((100% / 2) - 1%);
    background-color: #61401d;
    border: rgba(0,0,0,0) solid 2px;
		margin-bottom: 5px;
	}
	#planSel h3 {
		width: 100%;
	}
	#planSel .flex .zumenBox {
		width: 100%;
		max-width: 500px;
	}
	#planSel .flex .centerBox {
		width: 100%;
		display: flex;
	justify-content: center;
	align-items: flex-end;
		flex-wrap: wrap;
		padding: 10% 0 5%;
	}
	#planSel .flex .centerBox .henko {
padding-top: 0%;
}
	#planSel .flex .zumenBox .houiBox {
		display: block;
		width: 85%;
		margin: 0 auto;
	}
	#planSel .flex .centerBox .houiBox {
		display: none;
	}
	#titOther.secTit  .h3Box .ico {
		transform: translate(-108%, 10%);
  }
	#other .flex h4 {
		box-shadow: 0px 0px 0px #3e3a39;
		width: 100%;
		max-width: 600px;
		padding: 5%;
		margin-bottom: 10px;
		text-align: center;
	}
	#other .flex h4 img {
		width: 70%;
	}
	#other .flex dl {
		width: 100%;
		margin-bottom: 10px;
	}
	#other .flex dt {
		font-size: 4vw;
		font-size: clamp(14px, 4vw, 16px);
	}
	#other .flex dd {
		font-size: 3.5vw;
		font-size: clamp(12px, 3.5vw, 14px);

	}

}



