@charset "utf-8";

/*********************************
*
* PC
*
*********************************/



@media screen and (min-width:751px){/* -------------------------PC */

.mainimage { width: 100%; height: 780px; padding: 0; margin: 0; background: url("../images/mi_out_bg_pc.png") center top no-repeat; background-size: auto; text-align: left; }
.mainimage .inner { position: relative; width: 1080px; height: 780px; margin: 0 auto; padding: 186px 0 0 0; }
.mainimage .inner h2 { font-size: 53px; line-height: 1.4em; color: #000; }
.mainimage .inner .lead { padding: 25px 0 0 0; color: #6a6262; font-size: 20px; line-height: 1.65em; }
.mainimage .inner h3 {margin: 50px 0 0 0; font-size: 25px; line-height: 1.4em; color: #6a6262; }
.mainimage .inner h3 strong { font-size: 35px; color: #000; }
.mainimage .inner h3 .cl1 { color: #e35d5d; }
.mainimage .inner h3 .cl2 { color: #4daa38; }
.mainimage .inner .btn { margin: 80px 0 0 80px; }
.mainimage .inner .btn a { display: block; width: 334px; line-height: 60px; background: url("../images/mi_btn_icn.svg") 5% center no-repeat #000; background-size: 37px; text-align: center; border-radius: 15px; color: #fff; text-decoration: none; text-indent: 1em; }



#c1 { width: 100%; margin: 100px 0 0 0; padding: 0 0 70px 0; background: url("../images/c1_bg.png") center bottom no-repeat; background-size: 10px; }
#c1 .inner { width: 880px; margin: 0 auto; color: #000; }
#c1 .inner .child { padding: 55px 0 0 0; }
#c1 .inner .child p { margin: 45px 0 0 0; padding: 0 0 0 50px; font-size: 25px; line-height: 1.5em; background: url("../images/c1_arrow.png") left center no-repeat; background-size: contain; }
#c1 .inner .photo { width: 650px; margin: 70px auto 0 auto; background: #f2f2ec; border-radius: 50px; }
#c1 .inner .catch { width: 100%; padding: 25px 0; margin: 70px auto 0 auto; border: 5px solid #e35d5d; border-radius: 30px; text-align: center; color: #e35d5d; font-size: 30px; }

#c2 { width: 100%; margin: 30px 0 0 0; padding: 0 0 100px 0; background: url("../images/c2_bg.png") center bottom no-repeat; background-size: 100% 100%; }
#c2 .title_banner { position: relative; width: 1080px; margin: 0 auto; padding: 20px; background: url("../images/c2_title_bg.png") no-repeat; background-size: cover; border-radius: 50px }
#c2 .title_banner h2 { width: 100%; padding: 30px 0; background: #fff; border-radius: 30px; font-size: 35px; line-height: 1.5em; text-align: center; color: #5a5a5a; }
#c2 .title_banner h2 strong { font-size: 50px; color: #000; }
#c2 .title_banner h2 .cl1 { color: #e35d5d; }
#c2 .title_banner h2 .cl2 { color: #4daa38; }
#c2 .inner { position: relative; width: 880px; margin: 100px auto 0 auto; }

.pointList{
	display:flex;
	flex-wrap:wrap;
	gap:60px 45px;
}
.point{
	position:relative;
	width:calc((100% - 45px) / 2);
}
.point_label{
	position:absolute;
	left:0;
	top:0;
	width:40px;
	height:340px;
	background:#509cc0;
	border-radius:0 0 0 30px;
	display:flex;
	justify-content:center;
	align-items:flex-start;
	padding:2.0em 0 0 0;
	z-index:0;
	font-size: 20px;
}
.point_label span{
	display:block;
	transform:rotate(90deg);
	white-space:nowrap;
	font-weight:bold;
	color:#fff;
	letter-spacing:.08em;
}
.point_card{
	position:relative;
	z-index:1;
	height:100%;
	margin-left:40px;
	background:#fff;
	border-radius:0 30px 30px 30px;
	box-shadow:0 0 30px rgba(0,0,0,.12);
	overflow:hidden;
	display:flex;
	flex-direction:column;
}
.point_image img{
	display:block;
	width:100%;
	height:auto;
}
.point_body{
	padding:0;
	flex:1;
	display:flex;
	flex-direction:column;
}
.point_title{
	padding: 35px 0 30px 0;
	text-align: center;
	font-size: 24px;
	line-height: 1.5em;
}
.point_text{
	margin-top:0;
	padding: 0 40px 40px 40px;
	font-size: 18px;
	line-height: 1.8em;
}


#c3 { width: 100%; margin: 0 0 0 0; padding: 100px 0; background: linear-gradient(90deg, #dbf4ff, #ffffff 50%, #dbf4ff); }
#c3 .inner { position: relative; width: 880px; margin: 0 auto; padding: 50px 0 0 0; }
#c3 .inner .lead { width: 100%; padding: 40px; background: #000; color: #fff; border-radius: 0 0 30px 30px; }
#c3 .inner .lead p+p { margin: 35px 0 0 0; }


#cv { width: 100%; margin: 0 0 0 0; padding: 50px 0; background: linear-gradient(to right, #62bfea, #1d85b6); }
#cv>p { text-align: center; color: #fff; font-size: 30px; }
#cv>div { display: flex; width: 880px; margin: 30px auto 0 auto; flex-wrap: wrap; justify-content: space-between; }
#cv>div div { position: relative; width: 260px; background: #fff; border-radius: 20px; }
#cv>div div img { width: 100%; }

#c4 { width: 100%; margin: 0 0 0 0; padding: 100px 0 0 0; }
#c4 .inner { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0 80px; position: relative; width: 880px; margin: 0 auto; padding: 100px 0 0 0; }
#c4 .inner .child1,
#c4 .inner .child2 { width:calc((100% - 80px) / 2); }
#c4 .inner .child1 ul li { display: block; border-bottom: 1px solid #cecece; padding: 0 0 1em 0; font-size: 22px; }
#c4 .inner .child1 ul li+li { margin: 1em 0 0 0; }
#c4 .inner .child1 .lead { margin: 40px 0 0 0; }
#c4 .inner .child1 .detail { margin: 40px 0 0 0; padding: 30px; border: 1px solid #cecece; border-radius: 15px; }
#c4 .inner .child1 .detail p+p { margin: 0.5em 0 0 0; }
#c4 .inner .child2 .photo { width: 100%; border-radius: 20px; border: 1px solid #cecece; overflow: hidden; }

#c5 { width: 100%; margin: 0 0 0 0; padding: 100px 0 0 0; }
#c5 .inner { position: relative; width: 880px; margin: 0 auto; padding: 100px 0 0 0; }
#c5 .inner .child1 { width: 100%; }
#c5 .inner .child1 ul li { display: block; border-bottom: 1px solid #cecece; padding: 0 0 1em 0; font-size: 20px; }
#c5 .inner .child1 ul li+li { margin: 1em 0 0 0; }

#c6 { width: 100%; margin: 0 0 0 0; padding: 100px 0 0 0; }
#c6 .inner { position: relative; width: 880px; margin: 0 auto; padding: 100px 0 0 0; }
#c6 .inner .child { width: 100%; }
#c6 .inner .child ul li { display: block; border-bottom: 1px solid #cecece; padding: 0 0 1em 0; font-size: 20px; }
#c6 .inner .child ul li+li { margin: 1em 0 0 0; }
#c6 .inner .detail { width: 100%; margin: 50px 0 0 0; border-radius: 15px; overflow: hidden; }
#c6 table { width: 100%; }
#c6 table th { background: #509cc0; color: #fff; }
#c6 table tr:nth-child(n) { background: #f5f5f5; }
#c6 table tr:nth-child(2n) { background: #eaeaea; }
#c6 table th { padding: 0.5em 1.5em; }
#c6 table td { padding: 1em 1.5em; }
#c6 table th+th,
#c6 table td+td { border-left: 1px solid #fff; }
#c6 table td:nth-child(1) { white-space: nowrap; }
#c6 table td:nth-child(2) { white-space: nowrap; }

#c7 { width: calc(100% - 20px); margin: 100px auto 10px auto; padding: 50px 0; border: 5px solid #509cc0; }
#c7 .inner { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0 80px; position: relative; width: 880px; margin: 0 auto; padding: 0 0; }
#c7 .inner .child1,
#c7 .inner .child2 { width:calc((100% - 80px) / 2); }
#c7 .inner .child1 h3 { font-size: 50px; line-height: 1.35em; }
#c7 .inner .child1 table { width: 100%; }
#c7 .inner .child1 table th { white-space: nowrap; padding: 0 1em 0 0; color: #509bbe; vertical-align: middle; }
#c7 .inner .child1 table tr+tr th { vertical-align: top; }
#c7 .inner .child1 table td { padding: 0 0 1em 0; }

#c7 .inner .child2 .photo { width: 100%; border-radius: 20px; border: 1px solid #cecece; overflow: hidden; }

#c8 { width:100%; margin: 0 auto 0 auto; padding: 100px 0; background: #f4f4f4; }
#c8 .inner { width: 880px; margin: 0 auto; padding: 100px 0 0 0; }
#c8 .inner strong { display: block; font-size: 1.25em; margin: 50px 0 0.5em 0; color: #509bbe; }
#c8 .inner span { color: #b0a68e; }






#c_faq { width: 1080px; margin: 100px auto 0 auto;}
#c_faq .inner { width: 980px; margin: 100px auto 0 auto;}

.faqBox1 { width: 100%; padding: 0 0; margin: 20px auto 0 auto; border-radius: 30px; overflow: hidden; box-shadow:0 0 20px rgba(86,97,108,.25); }
.faqBox1 h4 { display: block; width: 100%; padding: 0 0 0 0; background-image: url(../images/arrow_down.png); background-position:  97% 50%; background-repeat:  no-repeat; cursor:pointer; background-size: 30px; background-color: #fff; font-weight: normal; }
.faqBox1 h4:hover { background-image: url(../images/arrow_down_on.png); background-position:  97% 50%; background-repeat:  no-repeat; }
.faqBox1 h4.active { background-image: url(../images/arrow_up.png); background-position:  97% 50%; background-repeat:  no-repeat; }
.faqBox1 h4.active:hover { background-image: url(../images/arrow_up_on.png); background-position:  97% 50%; background-repeat:  no-repeat; }
.faqBox1 h4 p.txt { width: 100%; font-size: 1.45em; line-height: 1.35em; padding: 1.25em 80px; margin: 0 0 0 0; background:url(../images/icon_q.png) 1.8% 50% no-repeat; background-size: 40px; font-weight: normal; color: #000; }
.faqBox1 h4:hover p.txt { color: #aaa; }
.faqBox1 h4.active:hover p.txt { color: #aaa; }
.faqBox1 .child { width: 100%; margin: 0 auto; padding: 1em 1em 1em 0; background: #fff; border-top: 1px dotted #cae5fb; }
.qtxt { margin: 0 0 0 0; padding: 1em 20px 0; }
.qtxtIconOn { margin: 0 0 0 0; padding: 0 0 15px 80px; background:url(../images/icon_a.png) 1.8% top no-repeat; background-size: 40px; color: #666; }

}/* /@media */


/*********************************
*
* SP
*
*********************************/

@media screen and (max-width:750px){/* -------------------------SP */


.mainimage { width: 100%; height: 142.9333vw; padding: 0; margin: 0; background: url("../images/mi_out_bg_sp.png") center top no-repeat; background-size: cover; text-align: left; }
.mainimage .inner { position: relative; width: 86.666vw; margin: 0 auto; padding: 13.333vw 0 0 0; }
.mainimage .inner h2 { font-size: 9.6vw; line-height: 1.25em; color: #000; text-align: center; }
.mainimage .inner .lead { padding: 4vw 0 0 0; color: #6a6262; font-size: 3.466vw; line-height: 1.85em; text-align: center; }
.mainimage .inner h3 {margin: 4vw 0 0 0; font-size: 4.5vw; line-height: 1.4em; color: #6a6262; text-align: center; }
.mainimage .inner h3 strong { font-size: 6.3vw; color: #000; }
.mainimage .inner h3 .cl1 { color: #e35d5d; }
.mainimage .inner h3 .cl2 { color: #4daa38; }
.mainimage .inner .btn { margin: 10vw 0 0 0; font-size: 2.666vw; }
.mainimage .inner .btn a { display: block; width: 44.5333vw; line-height: 8vw; background: url("../images/mi_btn_icn.svg") 5% center no-repeat #000; background-size: 4.9333vw; text-align: center; border-radius: 2vw; color: #fff; text-decoration: none; text-indent: 1em; }

#c1 { width: 100%; margin: 13.33vw 0 0 0; padding: 0 0 9.33vw 0; background: url("../images/c1_bg.png") center bottom no-repeat; background-size: 1.333vw; }
#c1 .inner { width: 86.66vw; margin: 0 auto; color: #000; }
#c1 .inner .child { padding: 7.33vw 0 0 0; }
#c1 .inner .child p { margin: 6vw 0 0 0; padding: 0 0 0 6.66vw; font-size: 4.4vw; line-height: 1.5em; background: url("../images/c1_arrow.png") left center no-repeat; background-size: 5vw; }
#c1 .inner .photo { width: 86.66vw; margin: 9.33vw auto 0 auto; background: #f2f2ec; border-radius: 6.66vw; }
#c1 .inner .catch { width: 100%; padding: 4.4vw 0; margin: 9.33vw auto 0 auto; border: 0.666vw solid #e35d5d; border-radius: 4vw; text-align: center; color: #e35d5d; font-size: 4vw; }

#c2 { width: 100%; margin: 4vw 0 0 0; padding: 0 0 13.333vw 0; background: url("../images/c2_bg.png") center bottom no-repeat; background-size: 100% 100%; }
#c2 .title_banner { position: relative; width: 86.66vw; margin: 0 auto; padding: 2.66vw; background: url("../images/c2_title_bg.png") no-repeat; background-size: cover; border-radius: 6.66vw; }
#c2 .title_banner h2 { width: 100%; padding: 4vw 0; background: #fff; border-radius: 4vw; font-size: 5vw; line-height: 1.5em; text-align: center; color: #5a5a5a; }
#c2 .title_banner h2 strong { font-size: 8vw; color: #000; }
#c2 .title_banner h2 .cl1 { color: #e35d5d; }
#c2 .title_banner h2 .cl2 { color: #4daa38; }
#c2 .inner { position: relative; width: 86.66vw; margin: 0 auto 0 auto; }
.pointList{
	display:block;
}
.point{
	position:relative;
	width:100%;
	margin: 13.33vw 0 0 0;
}
.point_label{
	position:absolute;
	left:0;
	top:0;
	width:40px;
	height:70.33vw;
	background:#509cc0;
	border-radius:0 0 0 4vw;
	display:flex;
	justify-content:center;
	align-items:flex-start;
	padding:2.0em 0 0 0;
	z-index:0;
	font-size: 20px;
}
.point_label span{
	display:block;
	transform:rotate(90deg);
	white-space:nowrap;
	font-weight:bold;
	color:#fff;
	letter-spacing:.08em;
}
.point_card{
	position:relative;
	z-index:1;
	height:100%;
	margin-left:40px;
	background:#fff;
	border-radius:0 4vw 4vw 4vw;
	box-shadow:0 0 4vw rgba(0,0,0,.12);
	overflow:hidden;
	display:flex;
	flex-direction:column;
}
.point_image img{
	display:block;
	width:100%;
	height:auto;
}
.point_body{
	padding:0;
	flex:1;
	display:flex;
	flex-direction:column;
}
.point_title{
	padding: 5.33vw 0 5vw 0;
	text-align: center;
	font-size: 5vw;
	line-height: 1.5em;
}
.point_text{
	margin-top:0;
	padding: 0 8vw 8vw 8vw;
	font-size: 3.2vw;
	line-height: 1.8em;
}


#c3 { width: 100%; margin: 0 0 0 0; padding: 13.33vw 0; background: linear-gradient(90deg, #dbf4ff, #ffffff 50%, #dbf4ff); }
#c3 .inner { position: relative; width: 86.66vw; margin: 0 auto; padding: 6.66vw 0 0 0; }
#c3 .inner .lead { width: 100%; padding: 5.33vw; background: #000; color: #fff; border-radius: 0 0 4vw 4vw; }
#c3 .inner .lead p+p { margin: 4.66vw 0 0 0; }



#cv { width: 100%; margin: 0 0 0 0; padding: 6.66vw 0; background: linear-gradient(to right, #62bfea, #1d85b6); }
#cv>p { text-align: center; color: #fff; font-size: 5.33vw; }
#cv>div { display: block; width: 53.33vw; margin: 4vw auto 0 auto;  }
#cv>div div { position: relative; width: 100%; background: #fff; border-radius: 2.66vw; }
#cv>div div img { width: 100%; }
#cv>div a+a div { margin: 4vw 0 0 0; }


#c4 { width: 100%; margin: 0 0 0 0; padding: 13.33vw 0 0 0; }
#c4 .inner { display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; width: 73.33vw; margin: 0 auto; padding: 13.33vw 0 0 0; }
#c4 .inner .child1 { width: 100%; order: 1; margin: 5.33vw 0 0 0; }
#c4 .inner .child2 { width: 100%; }
#c4 .inner .child1 ul li { display: block; border-bottom: 1px solid #cecece; padding: 0 0 1em 0; font-size: 3.733vw; }
#c4 .inner .child1 ul li+li { margin: 1em 0 0 0; }
#c4 .inner .child1 .lead { margin: 5.33vw 0 0 0; }
#c4 .inner .child1 .detail { margin: 5.33vw 0 0 0; padding: 4vw; border: 1px solid #cecece; border-radius: 2vw; }
#c4 .inner .child1 .detail p+p { margin: 0.5em 0 0 0; }
#c4 .inner .child2 .photo { width: 100%; border-radius: 2.66vw; border: 1px solid #cecece; overflow: hidden; }

#c5 { width: 100%; margin: 0 0 0 0; padding: 13.33vw 0; }
#c5 .inner { position: relative; width: 73.33vw; margin: 0 auto; padding: 13.33vw 0 0 0; }
#c5 .inner .child1 { width: 100%; }
#c5 .inner .child1 ul li { display: block; border-bottom: 1px solid #cecece; padding: 0 0 1em 0; font-size: 3.733vw; }
#c5 .inner .child1 ul li+li { margin: 1em 0 0 0; }

#c6 { width: 100%; margin: 0 0 0 0; padding: 13.33vw 0 0 0; }
#c6 .inner { position: relative; width: 86.66vw; margin: 0 auto; padding: 13.33vw 0 0 0; }
#c6 .inner .child { width: 86.66vw; margin: 0 auto; }
#c6 .inner .child ul li { display: block; width: 73.33vw; margin: 0 auto; border-bottom: 1px solid #cecece; padding: 0 0 1em 0; font-size: 3.6vw; }
#c6 .inner .child ul li+li { margin: 1em 0 0 0; }
#c6 .inner .detail { width: 100%; margin: 6.66vw 0 0 0; border-radius: 2vw; overflow: hidden; overflow-x: scroll; }
#c6 table { width: 120vw; font-size: 2.8vw; }
#c6 table th { background: #509cc0; color: #fff; }
#c6 table tr:nth-child(n) { background: #f5f5f5; }
#c6 table tr:nth-child(2n) { background: #eaeaea; }
#c6 table th { padding: 0.5em 1.5em; }
#c6 table td { padding: 1em 1.5em; }
#c6 table th+th,
#c6 table td+td { border-left: 1px solid #fff; }
#c6 table td:nth-child(1) { white-space: nowrap; }
#c6 table td:nth-child(2) { white-space: nowrap; }


#c7 { width: calc(100% - 20px); margin: 13.33vw auto 1.33vw auto; padding: 6.66vw 0; border: 0.66vw solid #509cc0; }
#c7 .inner { display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; width: 73.33vw; margin: 0 auto; padding: 13.33vw 0 0 0; }
#c7 .inner .child1 { width: 100%; order: 1; margin: 5.33vw 0 0 0; }
#c7 .inner .child2 { width: 100%; }
#c7 .inner .child1 h3 { font-size: 6.66vw; line-height: 1.35em; }
#c7 .inner .child1 table { width: 100%; }
#c7 .inner .child1 table th { white-space: nowrap; padding: 0 1em 0 0; color: #509bbe; vertical-align: middle; }
#c7 .inner .child1 table tr+tr th { vertical-align: top; }
#c7 .inner .child1 table td { padding: 0 0 1em 0; }

#c7 .inner .child2 .photo { width: 100%; border-radius: 2vw; border: 1px solid #cecece; overflow: hidden; }


#c8 { width:100%; margin: 0 auto 0 auto; padding: 13.33vw 0; background: #f4f4f4; }
#c8 .inner { width: 86.66vw; margin: 0 auto; padding: 13.33vw 0 0 0; }
#c8 .inner strong { display: block; font-size: 1.25em; margin: 6.66vw 0 0.5em 0; color: #509bbe; }
#c8 .inner span { color: #b0a68e; }


#c_faq { position: relative; width: 86.66vw; margin: 13.33vw auto 0 auto; }
#c_faq .inner { width: 100%; margin: 13.33vw auto 0 auto;}


.faqBox1 { width: 100%; padding: 0 0; margin: 2.66vw auto 0 auto; border-radius: 2vw; overflow: hidden; box-shadow:0 0 20px rgba(86,97,108,.25); }
.faqBox1 h4 { display: block; width: 100%; padding: 0 0 0 0; background-image: url(../images/arrow_down.png); background-position:  97% 50%; background-repeat:  no-repeat; cursor:pointer; background-size: 4vw; background-color: #fff; font-weight: normal; }
.faqBox1 h4:hover { background-image: url(../images/arrow_down_on.png); background-position:  97% 50%; background-repeat: no-repeat; }
.faqBox1 h4.active { background-image: url(../images/arrow_up.png); background-position:  97% 50%; background-repeat:  no-repeat; }
.faqBox1 h4.active:hover { background-image: url(../images/arrow_up_on.png); background-position:  97% 50%; background-repeat: no-repeat; }
.faqBox1 h4 p.txt { width: 100%; font-size: 1.25em; line-height: 1.35em; padding: 1.25em 8vw; margin: 0 0 0 0; background:url(../images/icon_q.png) 2% 50% no-repeat; background-size: 3.33vw; font-weight: normal; color: #000; }
.faqBox1 h4:hover p.txt { color: #aaa; }
.faqBox1 h4.active:hover p.txt { color: #aaa; }
.faqBox1 .child { width: 100%; margin: 0 auto; padding: 1em 1em 1em 0; background: #fff; border-top: 1px dotted #cae5fb; }
.qtxt { margin: 0 0 0 0; padding: 1em 2.66vw 0; }
.qtxtIconOn { margin: 0 0 0 0; padding: 0 0 2vw 8vw; background:url("../images/icon_a.png") 2% top no-repeat; background-size: 3.33vw; font-size: 0.85em; line-height: 1.85em; color: #666; }

}/* /@media */



