@charset "utf-8";

#keyVisual{
	background: url("../img/keyvisual_pc.jpg") no-repeat right center / cover;
}

#contentsBlock > section{
	margin: 100px 0;
}

section .contents{
	text-align: left;
}

.sec_detail .flexBox{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 40px;
}

.sec_detail .flexBox .swiperWrap{
	max-width: 475px;
	width: 40%;
	overflow: hidden;
}

.swiper-slide img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.swiper-slide figcaption{
	color: #fff;
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
	background: #4d4497;
	padding: 6px;
}

.sec_detail .cnt-detail{
	width: calc(100% - 40% - 40px);
}
.sec_detail .cnt-detail.sp{
	display: none;
}

	.sec_detail .cnt-detail > p{
		font-weight: 700;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		font-family: "Roboto", "Noto Sans JP", sans-serif;
	}

	.sec_detail .cnt-detail .tax{
		font-weight: 500;
		font-feature-settings: "palt";
	}

	.sec_detail .cnt-detail .member{
		font-size: 3.6rem;
	}
		.sec_detail .cnt-detail .member .yen{
			font-size: 0.666667em;
		}
		.sec_detail .cnt-detail .member .tax{
			font-size: 0.499999em;
		}

	.sec_detail .cnt-detail .general{
		font-size: 2.6rem;
		padding-left: 0;
	}
		.sec_detail .cnt-detail .general .yen{
			font-size: 0.923078em;
		}
		.sec_detail .cnt-detail .general .tax{
			font-size: 0.53846em;
		}

	.sec_detail .cnt-detail .label{
		font-size: 1.2rem;
		display: inline-block;
		text-align: center;
		color: #8847b3;
		border: solid 1px #8847b3;
		min-width: 64px;
		line-height: 28px;
		margin-right: 8px;
	}

	.sec_detail .cnt-detail .member .label{
		font-size: 1rem;
		background: #2fa77f;
		color: #fff;
		border-color: #2fa77f;
		line-height: 1.2;
		padding: 2px 0;
	}

.sec_detail .cnt-detail .txtBox{
	margin-top: 30px;
}

.sec_detail .thumbsWrap{
	margin-top: 30px;
}

.sec_detail .thumbsWrap .swiper-slide{
	cursor: pointer;
}
.thumbsWrap .swiper-slide figcaption{
	font-size: 1.2rem;
}

.sec_detail .contactBox{
	text-align: center;
	margin-top: 100px;
	border-top: solid 1px #001655;
	padding-top: 100px;
}

.sec_detail .contactBox a.tel{
	color: #001655;
	font-size: 2.4rem;
	font-weight: 700;
	margin-top: 10px;
	display: inline-block;
}
.sec_detail .contactBox a.tel::before{
	content: "\f095";
	font-family: 'FontAwesome';
	font-size: 0.941177em;
	margin-right: 5px;
}

.sec_detail .contactBox a.com-btn{
	margin-top: 30px;
}


/* フリー入力箇所のスタイル設定 */
.sec_detail .cnt-detail .txtBox p,
.sec_detail .cnt-detail .txtBox h1,
.sec_detail .cnt-detail .txtBox h2,
.sec_detail .cnt-detail .txtBox h3,
.sec_detail .cnt-detail .txtBox h4,
.sec_detail .cnt-detail .txtBox h5,
.sec_detail .cnt-detail .txtBox h6,
.sec_detail .cnt-detail .txtBox ul,
.sec_detail .cnt-detail .txtBox ol{
	margin-top: 10px;
	margin-bottom: 10px;
}
.sec_detail .cnt-detail .txtBox li{
	text-indent: -1em;
	padding-left: 1em;
}

.sec_detail .cnt-detail .txtBox li + li{
	margin-top: 5px;
}


@media screen and (max-width: 1024px){
	#keyVisual{
		background-position: 82% center;
	}
}
@media screen and (max-width: 768px){
	#keyVisual{
		background: url("../img/keyvisual_sp.jpg") no-repeat right center / cover;
	}
	#contentsBlock > section{
		margin-top: 60px;
	}
	.sec_detail .cnt-detail.sp{
		display: none;
	}

}
@media screen and (max-width: 767px){
	.sec_detail .cnt-detail.pc{
		display: none;
	}
	.sec_detail .cnt-detail.sp{
		display: block;
		margin-top: 30px;
		width: 100%;
	}
	
	.sec_detail .flexBox .swiperWrap{
		width: 100%;
	}
	.thumbsWrap .swiper-slide figcaption{
		font-size: 1rem;
	}
	
	.sec_detail .cnt-detail .member{
			font-size: 3rem;
		}
		.sec_detail .cnt-detail .general .yen{
			font-size: 2rem;
		}

		.sec_detail .cnt-detail .member .tax,
		.sec_detail .cnt-detail .general .tax{
			font-size: 14px;
		}
	
	.sec_detail .contactBox{
		margin-top: 60px;
		padding-top: 60px;
	}
}






