@charset "utf-8";

.inner-section { padding-top: 0;}
section { font-size: clamp( 14px, 3vw, 18px );}
section, .f_km { font-family: 'Kiwi Maru', serif;}
section .inner { width: 94%; margin: auto;}
.lp_bg01 { background: #fef1e1;}
h3 { font-size: 1.75rem; font-weight: bold; margin-bottom: 1em;}
.tit.bg_blue { width: 100%; height: 40vw; max-height: 200px; position: relative; margin-bottom: 40px; background-color: #3fbdd7;}
.tit.bg_blue h2 { color: #fff; position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); margin: auto; width: 100%; font-size: clamp( 24px, 6vw, 48px ); line-height: 1.4;}

@media (max-width: 799px) {
	.inner-section { padding: 0 0 30px;}
	.box02 .img_area { width: 80%;}
}

@media (max-width: 499px) {
	#main { margin-top: 50px;}
}




.main_img { position: relative; font-size: clamp(12px, 3vw, 21px);}
.main_img .main_txt { color: #fff; position: absolute; top: 50%; left: 2.5em; transform: translateY(-50%) translateX(0); -webkit- transform: translateY(-50%) translateX(0); margin: auto;}
.main_img .main_txt h1 { display: inline-block; background: #3fbdd7; color: #fff; font-size: 120%; padding: .25em .5em; letter-spacing: .5em; margin-bottom: .5em; font-weight: bold;}
.main_img .main_txt h2 { font-size: 120%; text-shadow: 0px 0px 15px #000; text-align: left; margin: 0 0 1em; color: #fff;}
.main_img .main_txt p { font-size: 100%; text-shadow: 0px 0px 15px #000;}

@media (max-width: 899px) {
	.main_img .main_txt h1 { letter-spacing: 0.1em;}
}

@media (max-width: 599px) {
	.main_img .main_txt { left: 1em; right: 1em;}
	.main_img .main_txt h1 { letter-spacing: .25em; background: rgba(63, 189, 215, 0.7);}
}








.lp_intro .box01 { background: #eee6d7; border-radius: 1em; padding: 1.5em 2em; gap: 1em clamp( 1em, 3vw, 2em ); align-items: center;}
.lp_intro .box01 .img_area { width: 30%; margin-inline: auto;}
.lp_intro .box01 .list_check { font-size: 130%; width: calc( 70% - clamp( 1em, 3vw, 2em ) ); min-width: 19em; margin-inline: auto;}
.lp_intro .box01 .list_check li { padding-left: 1em; position: relative;}
.lp_intro .box01 .list_check li:not(:last-child) { margin-bottom: .8em;}
.lp_intro .box01 .list_check li::before { content: "\02714"; color: #9ec30c; position: absolute; left: 0; top: 0;}
.lp_intro .box02 .txt01 { font-size: 150%; text-align: center;}
.lp_intro .box02 .txt01 span { color: #06b4e9;}
.lp_intro .box03 { padding: 2em clamp( 1.5em, 5vw, 3em ); background: #fff; margin-top: 2em;}
.lp_intro .box03 .img_area { width: 30%; float: right; margin: 0 0 1em clamp( 1em, 3vw, 2em );}

@media (max-width: 799px) {
	.lp_intro .box01 .img_area { width: clamp( 180px, 40vw, 300px );}
	.lp_intro .box01 .list_check { width: auto; min-width: unset; max-width: 19em;}
	.lp_intro .box03 .img_area { width: clamp( 180px, 40vw, 300px ); float: none; margin: 0 auto 1em;}
}




.lp_color .tit { background: url(../lp_img/lp_color_bg.jpg) center; background-size: cover; width: 100%; height: 40vw; max-height: 200px; position: relative; margin-bottom: 40px;}
.lp_color .tit h2 { font-size: clamp( 16px, 8vw, 48px ); line-height: 1.4; font-weight: bold; text-shadow: 0px 0px 15px #fff; color: #333; position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); margin: auto; width: 100%;}
.lp_color .box02 dl { margin-bottom: 1em;}
.lp_color .box02 dl dt { font-size: 150%; font-weight: bold;}
.hikaku_list li { border: solid 1px beige; margin: 0 0 1em;}
.hikaku_list dt { background-color: #634100; color: #fff; padding: 5px 1em;}
.hikaku_list dd { padding: 2px 0.7em; background-color: #fff;}
.hikaku_list dd p { display: flex; margin: 0; height: 4.2em; align-items: center;}
.hikaku_list dd p:not(:last-child) { border-bottom: dotted 2px;}

@media (min-width: 600px) {
	.hikaku_list { display: flex; flex-wrap: wrap; max-width: 860px; margin: 3em auto;}
	.hikaku_list li { width: 50%; background-color: #fff;}
}







.voice_list { display: flex; flex-wrap: wrap; gap: 1rem; width: 90%; margin: 0 auto;}
.voice_list li { background-color: #fff; border-radius: 10px; width: 100%;}
.voice_list dt { position: relative; padding: 4em 1em 1em; color: #3fbdd7; text-align: center;}
.voice_list dt:before { position: absolute; content: ''; display: block; width: 3em; height: 3em; background-image: url(../kaizen-color/voice_icon.png); background-size: contain; background-repeat: no-repeat; top: 0.6em; left: 50%; transform: translateX(-50%);}
.voice_list dd { padding: 0 1em 1em;}

/*900px以上*/
@media (min-width: 900px) {
	.voice_list { justify-content: center;}
	.voice_list li { width: 48%;}
}

















.reserve_btn { width: 100%; max-width: 300px; margin: 3rem auto;}
.reserve_btn a { display: block; background: #3fbdd7; border-radius: 20px; color: #fff; font-size: 1.5rem; padding: .25em; text-align: center;}

@media (max-width:799px) {
	.reserve_btn a { font-size: 1.35rem;}
}

@media (max-width:599px) {
	.reserve_btn a { font-size: 1.125rem;}
}




.faq_list {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 1rem;
	width: 90%;
	margin: 0 auto;
}

.faq_list li {
	background-color: #fff;
	padding: 1em;
	border-radius: 5px;
}

.faq_list dl {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	flex-direction: column;
}

.faq_list dt {
	padding-left: 2em;
	text-indent: -2em;
	border-bottom: dotted 2px #3fbdd7;
	padding-bottom: 0.9em;
}

.faq_list dt:before {
	content: "Q";
	background-color: #3fbdd7;
	color: #fff;
	border-radius: 50%;
	padding: 4px 9px;
	line-height: 1;
	margin: 0 3px 0 0;
}


.faq_list dd {
	line-height: 1.9;
	padding-left: 2em;
	text-indent: -2em;
}

.faq_list dd:before {
	content: "A";
	background-color: #df5b86;
	color: #fff;
	border-radius: 50%;
	padding: 4px 9px;
	line-height: 1;
	margin: 0 3px 0 0;
}