@charset "utf-8";
/* CSS Document */
.inner1{
	width:1000px;
	margin:0 auto;
}
.inner2{
	width:1000px;
	margin:0 auto;
}
.inner3{
	width:550px;
	margin:0 auto;
}
.remodal h2{
	font-size:1rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:900;
	margin-bottom:20px;

}
.remodal .tel a{
	display:block;
	padding:1rem;
	margin-bottom:0.2rem;
	background:#024075;
	color:#ffffff;
	border-radius:5px;
	font-size:1.2rem;
	line-height:1.5rem;
	border:3px solid #000000;
}

.remodal .mail a{
	display:block;
	padding:1rem;
	background:#000000;
	color:#ffffff;
	border-radius:5px;
	font-size:1rem;
	margin-bottom:0.2rem;
	line-height:1.5rem;
	border:3px solid #000000;
	font-weight:700;
}
.remodal .line a{
	display:block;
	padding:1rem;

	background:#3C3;
	color:#ffffff;
	border-radius:5px;
	font-size:1rem;
	border:3px solid #000000;
	font-weight:700;
}

.remodal .exp{
	display:block;
	font-size:0.8rem;
	font-weight:300;
}

.remodal .exp1{
	font-size:0.9rem;
	font-weight:500;
	margin-bottom:1rem;
}
.remodal .exp2{
	font-size:1rem;
	font-weight:300;
}

.remodal .exp3{
	font-size:1rem;
	font-weight:700;
	font-family: 'Noto Sans JP', sans-serif;
	white-space:pre-wrap;
	line-height:1.5;
	text-align:center;
	color: #ff3600;
	padding: 0.2rem;

}
.remodal_cam p{margin-bottom:1rem;}

.spbr{
	display:none;
}

.center{
	text-align:center;
}
h2{
	font-family: 'Noto Sans JP', sans-serif;
	font-size:2rem;
	font-weight:700;
	text-align:center;
	color: #434343;

}
.emphasis{
	font-weight:700;
	
}
.orange{
	color:#ff5401;
}
.blue{
	color: #458e99;
}
.small{
	font-size:0.9rem;
	color:#666;
}

.big{
	font-size:1.5rem;
	font-weight:500;
}
.mid{
	font-size:1.5rem;
}
.center{
	text-align:center;
}
.serif{
	font-family: 'Noto Serif JP', serif;
}

.main_paragraph{
	font-weight:500;
	font-size:1.2rem;
	white-space:pre-wrap;
	margin-bottom:1rem;
	line-height:2;
	padding:0 1.5rem;
	font-family: 'Noto Sans JP', sans-serif;
}

.mb1{
margin-bottom:1rem;
}
.mb2{
margin-bottom:2rem;
}
.mb3{
margin-bottom:3rem;
}

.mb5{
margin-bottom:5rem;
}

.mb8{
margin-bottom:8rem;
}
.pd1{
padding:1rem 0;
}

.pd2{
padding:2rem 0;
}

.pd3{
padding:3rem 0;
}

.pd5{
padding:5rem 0;
}
.pd8{
padding:8rem 0;
}



	

.mv{
	width:100%;
	box-sizing:border-box;
	background:url(../images/mv_bg.jpg) bottom center no-repeat;
	background-size: cover;
	text-align:center;
	padding-bottom: 8rem;

}

header{
	background:rgba(255,255,255,0.9);
	height:100px;
	margin-bottom: 2rem;
}
header .inner{
	position:relative;
}
header h1{
	position:absolute;
	top:12px;
	left:0;
	
}
header a{
	color:#000000;
}


header .tel_num{
	position:absolute;
	top:12px;
	right:0;
	text-align:right;
	line-height:1.2;
	font-size:0.9rem;
	color:#666;
}
header .tel_num span{
	display:block;
	font-size:1.8rem;
	font-weight:500;
	font-family: 'Noto Sans JP', sans-serif;
	color:#404040;
	padding-top:0.3rem;
	
}


.mv .mv_copy{
	width: 800px;
	margin: 0 auto;
	display:flex;
	justify-content:space-between;
	gap:20px;
	align-items: stretch;
	
}
.mv .mv_copy li{

	background: #5ec0cf;
	display: flex;
	flex-wrap:wrap;
	justify-content: center;
    align-items: center;
	padding: 2rem 1rem;
	text-align: center;
	text-shadow: 1px 1px 1px #378a97;
	border-radius: 10px;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 2.2rem;
	width: 100%;
}
.mv .mv_copy li span{
	color: #ffe3a6;
	
}
.mv .inner{
	width: 980px;
	margin: 0 auto;
}




.campaign{
	text-align:center;
	background: url(../images/form_bg.png);
}
.campaign h2{
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.2;
	color: #458e99;
	
} 
.campaign h2 span{
	font-size: 2.9rem;
}

.time{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	font-size:1.5rem;
	color: #458e99;
}
.campaign_copy{
	background: #5ec0cf;
	color: #ffffff;
	width: 520px;
	margin: 0 auto 5rem;
	padding: 1rem 0;
	font-size: 1.5rem;
	border: 2px solid #ffffff;
	box-sizing: border-box;
	line-height: 1.2;
}
.campaign_copy span{
	font-size: 2rem;
}

.caution{
	text-align:left;
	padding:0rem 1.5rem;
	box-sizing:border-box;
	border-radius:5px;
}
.caution li{
	font-weight:500;
	font-size:1rem;
	white-space:pre-wrap;
	margin-bottom:1rem;
	line-height:2;
	padding:0 1.5rem;
	font-family: 'Noto Sans JP', sans-serif;
	margin-bottom:0.5rem;
}


.cover{
	background: #e4f3f9;
	color: #434343;
	text-align:center;
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.cover ul{
	display: flex;
	justify-content: space-between;
	margin-bottom: 5rem;
}
.cover ul li{
	background: #fffcf8;
	border:3px solid #808080;
	border-radius: 20px;
	padding: 1rem;
	color: #434343;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	font-size: 1.2rem;
}
.cover .promise{
	white-space:pre-wrap;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	font-size:1.8rem;
	line-height:1.3;	
}
.cover_p{
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.5;
	height: 3.6rem;
}
.exception{
	background: #e4f3f9;
	color: #434343;
	padding-bottom: 5rem;
	
}
.exception_box{
	background:#ffffff;
	border: 3px solid #a2a2a2;
	border-radius: 10px;
	width: 620px;
	margin: 0 auto;
	padding: 2rem 3rem;
	box-sizing: border-box;
}
.exception_box h3{
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid #a2a2a2;
}
.exception_box li{
	font-size: 1.2rem;
	line-height: 2;
	font-weight: 700;
	
}
.items{
	background: #fafafa;
}
.steps{
	background:#ffffff;
}
.steps h2{
	color: #458e99;
}
.step_list{
	display:flex;
	justify-content:space-between;
	align-items: center;

}

.step_list li{
	text-align:center;
	width:280px;
}
.step_list li.guide_line{
	width:80px;
}
.step_list h3{
	font-weight:400;
	font-size:1.8rem;
	font-family: 'Jost', sans-serif;
	color:#458e99;
	margin-bottom:1rem;
}
.step_list li p{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	white-space:pre-wrap;
	font-size:1rem;
	line-height:1.5;
	color: #000000;
}
.step_list li figure{
	margin-bottom:1.5rem;
}

.step_list li.guide_line hr{
	width:80px;
}

.step_copy{
	white-space:pre-wrap;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	font-size:1.5rem;
	line-height:1.5;	
	text-align: center;
	margin-bottom: 5rem;
}


.worrys{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	
}

.worrys li{
	width:49%;
	margin-bottom:1rem;
}
.worrys li img{
	width:100%;
	border:1px solid #717171;
	box-shadow: 6px 6px #dbdbdb;
}

.arrow{
	text-align:center;
}

.solution .improvement{
	background:#ffffff;
	padding:20px;
	border:3px solid #eeeeee;

}
.solution .improvement img{
	width:38%;
	float:left;
	margin-right:30px;

}
.solution .improvement p{
	word-break: keep-all;
	font-size:1rem;
	line-height:2.5;
}
.why{
	text-align: center;
	color: #ffffff;
	background: url(../images/why_bg.jpg) top center no-repeat;
	background-size: cover;
}
.why h2{
	color: #458e99;
	margin-bottom: 5rem;
}

.why_copy{
	font-weight:700;
	font-size:1.2rem;
	white-space:pre-wrap;
	line-height:2.2;
	padding:0 1.5rem;
	font-family: 'Noto Sans JP', sans-serif;
	color: #404040;
}

.reviews .review{
	background: #fafeff;
	
	padding:3rem;
	margin-bottom:2rem;
	border:3px solid #e4f3f9;
	border-radius:3px;

}
.reviews .review h3{
	padding-left:1.5rem;
	padding-bottom:1rem;
	border-bottom:2px solid #c9e4ef;
	margin-bottom:20px;
	font-size:1.8rem;
	color:#458e99;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:700;
}
.reviews .review p.main_paragraph{
	text-align: justify;
	color: #397680;
}

.name{
	text-align: right;
	padding-right:1rem;
	color: #397680;
}
.reviews .review p{
	white-space:pre-wrap;
	line-height:2;
}
.reviews .review p span{
	display:block;
	padding-top:10px;
	font-weight:bold;
	text-align:right;
}

.message{
	background:#e4f3f9;
	color: #434343;
	text-align: center;
}
.message_copy{
	white-space:pre-wrap;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	font-size:1.5rem;
	line-height:1.5;	
	text-align: center;
	margin-bottom: 3rem;
}
.message ul{
	margin-bottom: 3rem;
}

.message li{
	background: #5ec0cf;
	color: #ffffff;
	width: 600px;
	padding: 1rem 0;
	margin: 0 auto 1rem;
	border-radius: 50px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:700;
	font-size:1.3rem;
}


.buying{
	padding:8rem 0;
	background:#e4f3f9;
}

.buying_copy{
	white-space:pre-wrap;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	font-size:1.5rem;
	line-height:1.5;	
	text-align: center;
	margin-bottom: 3rem;
}


.buying_items{
	display:flex;
	justify-content:left;
	flex-wrap:wrap;
	gap:0.5%;
	margin-bottom:3rem;
}


.buying_items li{
	box-sizing:border-box;
	width:19.6%;
	aspect-ratio:1 / 1;
	text-align:center;
	border:5px solid #e1eff5;
	border-radius:100%;
	padding:1rem;
	margin-bottom:0.5rem;
	background:#ffffff;
	line-height: 1.2;
}

.buying_items li img{
	width:80%;
}
.buying_items li span{
	display:block;
	font-size:0.8rem;
	font-weight:700;
}






.faq h2{
	color: #200500;
}
.faq dt{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:700;
	padding-left:0.5rem;
	padding-bottom:0.5rem;
	border-bottom:1px solid #cccccc;
	margin-bottom:1rem;
	font-size:1.3rem;
	color:#397680;
}
.faq dd{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:500;
	margin-bottom:5rem;
	padding-left:0.5rem;
	line-height:2;
	white-space:pre-wrap;
	color:#434343;
}


.deffer .inner1{
	box-sizing:border-box;
	border:3px solid #a5a5a5;
	outline: solid 1px #a5a5a5;    /* 外側の線になる一本線の枠線をひく*/
	outline-offset: -15px;  
	padding:5rem;
	background: #fafeff;
}


.company{
	padding:8rem 0;
}
.company h2{
	margin-bottom: 5rem;
}
.company .inner1{
	display:flex;
	justify-content:space-between;
	flex-flow: row-reverse;
}

.grid {
  width: 30%;
  position: relative;
  margin-bottom:1rem;
  aspect-ratio: 1 / 1 ;
}



.grid img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  object-fit: cover;
  object-position:45% 0;
}

.company .clearfix{
	width:65%;
	padding-top:1rem;
}
.company dt{
	float:left;
	width:26%;
	padding:1rem 0.5rem;
	border-bottom:2px solid #5ec0cf;
	margin-bottom:30px;
}
.company dd{
	float:left;
	width:62%;
	padding:1rem 0.5rem 1rem 2rem;
	text-align:left;
	border-bottom:2px solid #dadada;
	margin-bottom:2.5rem;
}






footer{
	font-size:14px;
	text-align:center;
	background:#000000;
	color:#ffffff;
}

footer .transaction{
	padding:5px 0;
	background:#5ec0cf;
}
footer .transaction a{
	color:#ffffff;
}

.contact_pc{
	position:fixed;
	bottom:0;
	text-align:center;
	width:100%;
	background:url(../images/contact_pc_bg.png) repeat-x;
}
.contact_pc img{
	width:100%;
	max-width:1200px;
}

.contact_sp{
	display:none;
}
.contact_sp_brah{
	display:none;
}

