@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:900&display=swap');
html {
}
body {
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size:16px;
	text-align:center;
	color:#000;
	line-height:1.4;
}
a {
	color:#e60012;
	text-decoration:underline;
}
a:hover {
	color:#00a0e9;
	text-decoration:none;
}
a:hover img{
	opacity: 0.7;
}

.only_smart,
.only_smart_i{
	display:none !important;
}


#wrapper{
	min-width:1180px;
}




/* header */
header{
	background:url(../images/mv_bg.png)no-repeat center 50px;
}
header div{
	padding:0 10px;
	line-height:50px;
	overflow:hidden;
	background-color:#1d2088;
	color:#fff;
}
header div p{
	font-size:14px;
	font-weight:normal;
	float:left;
}
header div ul{
	font-size:12px;
	float:right;
}
header div ul li{
	display:inline-block;
	vertical-align:top;
	margin-left:10px;
}


/* article */
article{
}
article h1{
	height:138px;
	padding-top:17px;
	border-top:5px solid #1d2088;
	border-bottom:5px solid #1d2088;
	font-size:35px;
	background:url(../images/h1_bg.png) center top;
	letter-spacing:0.05em;
	line-height:1.4;
}
article h1 > span{
	color:#e60012;
	line-height:1;
	background:linear-gradient(transparent 70%, #ff0 70%);
	display:inline-block;
}

article > div.link{
	padding:30px 0 20px;
}
article > div.link ul{
	width:1100px;
	margin:auto;
}
article > div.link ul li{
	margin-bottom:10px;
	text-align:right;
}
article > div.link ul li:last-child{
	margin-bottom:0px;
}
article > div.link ul li p{
	width:430px;
	font-size:21px;
	font-family: 'Noto Sans JP', sans-serif;
	display:inline-block;
	vertical-align:middle;
	text-align:left;
}
article > div.link ul li p span{
	font-size:28px;
}
article > div.link h3{
	margin-bottom:20px;
	background:url(../images/link_tit_bg.png)no-repeat center top;
}
article > div.link h3:hover{
	opacity:0.7;
}



/* .cont */
.cont{
	padding:50px 0;
}
.cont.sky{
	padding-bottom:40px;
	background-color:#e3f6ff;
}
.cont.sky > div{
	width:1100px;
	margin:auto;
	padding:35px 0 40px;
	background-color:#fff;
	box-shadow:0 0 6px rgba(0,0,0,0.4);
}
.cont.sky > div h2{
	width:1120px;
	height:121px;
	margin:0 0 20px -10px;
	padding-top:15px;
	font-size:30px;
	color:#fff;
	line-height:1.2;
	background:
		url(../images/h2_blue.png)no-repeat center top,
		url(../images/h2_blue_bg.png)repeat-x center top;
	position:relative;
}
.cont.sky > div h2:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 0;
	border-color: transparent #0087c5 transparent transparent;
	position:absolute;
	top:100px;
	left:0;
}
.cont.sky > div h2:after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-color: #0087c5 transparent transparent transparent;
	position:absolute;
	top:100px;
	right:0;
}
.cont.sky > div ul li{
	margin-bottom:80px;
	padding:0 35px;
	position:relative;
}
.cont.sky > div ul li:after{
	content:'';
	display:block;
	clear:both;
}
.cont.sky > div ul li:before{
	content:'';
	display:block;
	width:36px;
	height:20px;
	background:url(../images/arrow_pink.png)no-repeat center top;
	position:absolute;
	top:calc(100% + 30px);
	left:calc(50% - 18px);
}
.cont.sky > div ul li:last-child{
	margin-bottom:0;
}
.cont.sky > div ul li:last-child:before{
	content:none;
}
.cont.sky > div ul li div{
	display:inline-block;
	vertical-align:middle;
	width:600px;
}
.cont.sky > div ul li div > p{
	margin-top:20px;
	font-size:18px;
	text-align: justify;
	text-justify: inter-ideograph;
	line-height:1.6;
}
.cont.sky > div ul li div > p:first-of-type{
	margin-top:0;
}
.cont.sky > div ul li div > p span{
	font-weight:bold;
	color:#f47eb1;
}
.cont.sky > div ul li:nth-child(odd) > img{
	margin-right:30px;
}
.cont.sky > div ul li:nth-child(even)  > img{
	margin-left:30px;
}




/* #cont1 */
#cont1{
	padding:30px 0 40px;
	background:#b2ebff url(../images/cont1_bg.png)no-repeat center top;
}
#cont1 h2{
	font-size:26px;
	color:#1d2088;
	text-shadow:3px 3px 0 #fff;
}
#cont1 h2 span{
	font-size:35px;
	color:#e60012;
}
#cont1 h2:before{
	content:'';
	display:inline-block;
	vertical-align:-5px;
	width:25px;
	height:39px;
	margin-right:10px;
	background:url(../images/tit_left.png)no-repeat left top;
}
#cont1 h2:after{
	content:'';
	display:inline-block;
	vertical-align:-5px;
	width:25px;
	height:39px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
}
#cont1 ol{
	width:1100px;
	margin:15px auto 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#cont1 ol li{
	width:340px;
	padding:10px 15px 10px;
	background-color:#fff;
	border:4px solid #fff000;
	position:relative;
}
#cont1 ol li > span{
	display:block;
	width:80px;
	height:80px;
	padding-left:10px;
	font-size:30px;
	font-weight:bold;
	font-family:arial;
	line-height:1.5;
	position:absolute;
	left:0;
	top:0;
	z-index:1;
	color:#fff;
	text-align:left;
}
#cont1 ol li > span:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 80px 80px 0 0;
	border-color: #00a0e9 transparent transparent transparent;
	position:absolute;
	left:-4px;
	top:-4px;
	z-index:-1;
}
#cont1 ol li h3{
	margin:0 0 15px;
	font-size:35px;
	font-family: 'Noto Sans JP', sans-serif;
	color:#e60012;
	line-height:1.2;
}
#cont1 ol li p{
	margin-top:15px;
	padding:3px 8px;
	font-weight:bold;
	background-color:#fff;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing:-0.03em;
	line-height:1.5;
}
#cont1 ol li p span{
	color:#e60012;
}


/* #cont2 */
#cont2{
}
#cont2 div ul li:last-child p{
	display:inline-block;
	font-size:26px;
	font-weight:bold;
	background:url(../images/cont2_line.png)no-repeat center bottom;
	color:#00a0e9;
	line-height:1.5;
	position:relative;
}
#cont2 div ul li:last-child p:before{
	content:'';
	display:inline-block;
	width:25px;
	height:39px;
	margin-left:5px;
	background:url(../images/tit_left.png)no-repeat left top;
	position:absolute;
	right:100.5%;
	bottom:0;
}
#cont2 div ul li:last-child p:after{
	content:'';
	display:inline-block;
	width:25px;
	height:39px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
	position:absolute;
	left:100%;
	bottom:0;
}

#cont2 div ul li:last-child p span{
	color:#e7001a;
}
#cont2 div ul li div div{
	margin-bottom:10px;
	padding:10px 0 10px 40px;
	background:#ff0;
	border-left:30px solid #ffffbb;
	overflow:hidden;
	position:relative;
}
#cont2 div ul li div div p{
	font-size:26px;
	font-weight:bold;
	color:#00a0e9;
	text-shadow:3px 3px 0 #fff;
	line-height:1.4;
	text-align:left;
}
#cont2 div ul li div div span{
	color:#e7001a;
}
#cont2 div ul li div div img{
	float:left;
	margin-right:10px;
}
#cont2 div ul li div div:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 30px 0 0;
	border-color: #bcae00 transparent transparent transparent;
	position:absolute;
	right:0;
	bottom:0;
}
#cont2 div ul li div div:after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 30px 30px;
	border-color: transparent transparent #fff transparent;
	position:absolute;
	right:0;
	bottom:0;
}


/* #cont3 */
#cont3 div ul li:first-child p span{
	font-size:26px;
	font-weight:bold;
	background:linear-gradient(transparent 65%, #ff0 65%);
	color:#00a0e9;
	line-height:1.5;
}
#cont3 div ul li:first-child p span span{
	color:#e7001a;
}
#cont3 div ul li:first-child p img{
	float:right;
	margin:-20px 10px 0 0;
}


/* #cont4 */
#cont4{
}
#cont4 div{
	padding-bottom:20px;
}
#cont4 div ul{
	display:inline-block;
	vertical-align:top;
	width:600px;
}
#cont4 div ul li{
	margin-bottom:40px;
}
#cont4 div ul li:before{
	content:'';
	display:block;
	width:36px;
	height:20px;
	background:url(../images/arrow_pink.png)no-repeat center top;
	position:absolute;
	top:calc(100% + 10px);
	left:calc(50% - 18px);
}
#cont4 div ul li:last-child:before{
	content:none;
}
#cont4 div ul li p{
	margin-bottom:20px;
	font-size:18px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#cont4 div ul li p:last-child{
	margin-bottom:0px;
}
#cont4 div ul li p span{
	font-weight:bold;
	color:#f47eb1;
}


/* #cont5 */
#cont5{
	background-color:#fffcdb;
}
#cont5 > div{
	width:1100px;
	margin:auto;
	padding:0 0 40px;
	background:#fff url(../images/cont5_bg.png) center top;
	box-shadow:0 0 6px rgba(0,0,0,0.4);
}
#cont5 > div h2{
	height:137px;
	margin:0 0 20px;
	padding-top:25px;
	font-size:31px;
	color:#fff;
	line-height:1.2;
	background:
		url(../images/cont5_h2.png)no-repeat center top,
		url(../images/cont5_h2_bg.png)repeat-x center top;
}


/* #cont6 */
#cont6{
	background:url(../images/bg_stripe.png) center top;
}
#cont6 h2{
	font-size:40px;
	color:#1d2088;
}
#cont6 h2:before{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:25px;
	height:39px;
	margin-right:10px;
	background:url(../images/tit_left.png)no-repeat left top;
}
#cont6 h2:after{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:25px;
	height:39px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
}
#cont6 h2 span{
	color:#e60012;
}
#cont6 div{
	width:1100px;
	margin:40px auto 0;
	padding:50px 30px 40px;
	background-color:#fff;
	border-radius:30px;
	box-shadow:5px 5px 0 #1d2088;
	position:relative;
}
#cont6 div:before{
	content:'';
	display:block;
	width:32px;
	height:40px;
	background:url(../images/cont6_pin1.png)no-repeat left top;
	position:absolute;
	left:0;
	top:0;
}
#cont6 div:after{
	content:'';
	display:block;
	width:32px;
	height:40px;
	background:url(../images/cont6_pin2.png)no-repeat right top;
	position:absolute;
	right:0;
	top:0;
}
#cont6 div p{
	padding:0 20px;
	font-size:20px;
	font-weight:bold;
	text-align:left;
	line-height:1.4;
}
#cont6 div p span{
	font-size:26px;
	color:#e60012;
}
#cont6 div dl{
	width:1048px;
	margin:20px auto 0;
	overflow:hidden;
	border:3px solid #99ccff;
	background-color:#99ccff;
}
#cont6 div dl dt{
	float:left;
	position:relative;
}
#cont6 div dl dt a:last-child{
	display:block;
	width:310px;
	height:40px;
	position:absolute;
	left:185px;
	bottom:10px;
}
#cont6 div dl dd{
	float:left;
	border:1px solid #99ccff;
	margin:-1px;
}
#cont6 ul{
	width:1040px;
	margin:30px auto 0;
}
#cont6 ul li{
	padding-left:1em;
	text-indent:-1em;
	font-size:17px;
	text-align:left;
	line-height:1.8;
}


/* #cont7 */
#cont7{
	padding:50px 0;
	background-color:#b2ebff;
}
#cont7 section{
	width:1100px;
	margin:auto;
	background-color:#fff;
	padding:40px 0;
	box-shadow:0 0 6px rgba(0,0,0,0.2);
}
#cont7 section h2{
	width:1120px;
	line-height:80px;
	margin:0 0 30px -10px;
	background:url(../images/cont7_h2_bg.png)repeat-x center top;
	font-size:40px;
	color:#fff;
	position:relative;
}
#cont7 section h2:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 0;
	border-color: transparent #1d2088 transparent transparent;
	position:absolute;
	top:100%;
	left:0;
}
#cont7 section h2:after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-color: #1d2088 transparent transparent transparent;
	position:absolute;
	top:100%;
	right:0;
}
#cont7 section p{
	padding:30px 60px 0;
	font-size:20px;
	font-weight:bold;
	text-align:left;
}
#cont7 section p span{
	color:#e60012;
}
#cont7 section ul{
	padding:30px 60px 0;
}
#cont7 section ul li{
	padding-left:1em;
	text-indent:-1em;
	text-align:left;
	line-height:1.9;
}
#cont7 section ul li span{
	color:#e60012;
}


/* #cont8 */
#cont8{
	padding:50px 0;
	background-color:#b2ebff;
}
#cont8 section{
	width:1100px;
	margin:auto;
	background-color:#fff;
	padding:40px 0;
	box-shadow:0 0 6px rgba(0,0,0,0.2);
}
#cont8 section h2{
	width:1120px;
	line-height:80px;
	margin:0 0 30px -10px;
	background:url(../images/cont7_h2_bg.png)repeat-x center top;
	font-size:40px;
	color:#fff;
	position:relative;
}
#cont8 section h2:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 0;
	border-color: transparent #1d2088 transparent transparent;
	position:absolute;
	top:100%;
	left:0;
}
#cont8 section h2:after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-color: #1d2088 transparent transparent transparent;
	position:absolute;
	top:100%;
	right:0;
}

#cont8 section > table{
	width:985px;
	margin:auto;
	background-color:#fff;
}
#cont8 section > table th,
#cont8 section > table td{
	font-size:14px;
	font-weight:normal;
	border:1px solid #969696;
	vertical-align:top;
	color:#323232;
}
#cont8 section > table th{
	white-space:nowrap;
	width:212px;
	padding:25px 15px;
}
#cont8 section > table td{
	text-align:left;
	line-height:2;
	padding:20px 15px;
}
#cont8 section > table td span{
	color:#e60012;
}
#cont8 section > table td a:hover{
	color:#00c6ff;
}
#cont8 section > table td img{
	margin-top:10px;
}
#cont8 section > table td ul li{
	padding-left:1em;
	text-indent:-1em;
}
#cont8 section > table td table{
	margin-top:10px;
}
#cont8 section > table td table th,
#cont8 section > table td table td{
	padding:1px 15px;
}
#cont8 section > table td table th{
	background-color:#ebebeb;
	width:auto;
}
#cont8 section > table td div{
	padding-left:20px;
}
#cont8 section > table td div table{
	display:inline-block;
	vertical-align:middle;
	margin-left:30px;
}
#cont8 section > table td dl dt {
	margin-top:10px;
}
#cont8 section > table td dl dd {
/*	padding-left:20px;*/
}
#cont8 section > table td dl dd table{
	display:inline-block;
	vertical-align:middle;
}


/* #faq */
#faq{
	padding:50px 0;
	background:url(../images/bg_faq.png) center top;
}
#faq h2{
	margin-bottom:20px;
	display:inline-block;
	font-size:40px;
	color:#1d2088;
	letter-spacing:0.04em;
}
#faq h2:before{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:25px;
	height:39px;
	margin-right:10px;
	background:url(../images/tit_left.png)no-repeat left top;
}
#faq h2:after{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:25px;
	height:39px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
}
#faq h2 span{
	color:#e60012;
}
#faq dl{
	width:1000px;
	margin:auto;
	text-align:left;
}
#faq dl dt{
	margin-top:30px;
	padding:37px 70px;
	background-color:#fff;
	position:relative;
	font-size:20px;
	font-weight:bold;
	cursor:pointer;
}
#faq dl dt:hover{
	color:#00a0e9;
}
#faq dl dt:before{
	content:'Q.';
	font-size:30px;
	color:#00a0e9;
	position:absolute;
	left:30px;
	top:28px;
}
#faq dl dt:after{
	content:'';
	display:block;
	width:22px;
	height:15px;
	background:url(../images/faq_arrow.png)no-repeat center center;
	position:absolute;
	right:50px;
	top:50%;
	margin-top:-7px;
}
#faq dl dd{
	padding:30px 30px 30px 70px;
	background-color:#daf2ff;
	position:relative;
	font-size:17px;
	display:none;
	line-height:1.7;
}
#faq dl dd:before{
	content:'A.';
	font-size:30px;
	font-weight:bold;
	color:#e60012;
	position:absolute;
	left:30px;
	top:15px;
}
#faq dl dd a{
	color:#e60012;
	font-weight:normal;
}



/* #contact */
#contact{
	margin:auto;
	padding:50px 0 50px;
	background-color:#fff7d4;
}
#contact div{
	width:970px;
	margin:auto;
	background-color:#fff;
	border:5px solid #22ac38;
	border-radius:20px;
}
#contact div h2{
	line-height:128px;
	margin-bottom:30px;
	padding-top:4px;
	background-color:#22ac38;
	font-size:62px;
	color:#fff;
	text-align:center !important;
	text-shadow:3px 3px 5px #1d902f;
}
#contact div > p:first-of-type{
	font-size:27px;
	font-weight:bold;
	letter-spacing:-0.05em;
}
#contact div dl{
	margin:20px 40px 30px;
	padding:0;
}
#contact div dl dt{
	float:left;
	clear:left;
	padding-top:10px;
}
#contact div dl dd{
	margin-bottom:50px;
	padding-left:200px;
	font-size:62px;
	font-weight:bold;
	text-align:left;
	line-height:1.2;
	color:#1d20a0;
}
#contact div dl dd a{
	color:#1d20a0;
	text-decoration:none;
}
#contact div dl dd:nth-of-type(2){
	margin-bottom:40px;
	font-size:49px;
}
#contact div dl dd span{
	display:block;
	padding:0;
	font-size:30px;
	color:#000;
}
#contact div > p:last-of-type{
	margin:40px 40px 0;
	padding:0 0 20px;
	font-size:37px;
	font-weight:bold;
	color:#1d20a0;
	text-align:center !important;
	border-top:2px solid #1d20a0;
}
#contact div > p:last-of-type span{
	display:block;
	width:140px;
	margin:-15px auto 10px;
	font-size:23px;
	font-weight:normal;
	background-color:#fff;
}
#contact div > p:last-of-type a{
	color:#1d20a0;
	text-decoration:none;
}
#contact div > p:last-of-type a:hover{
	color:#00a0e9;
}


/* footer */
footer{
}
footer div{
	min-width:1000px;
	padding:20px 0;
	background-color:#1d2088;
}
footer div ul{
	margin:12px 0;
	letter-spacing:-0.4em;
	line-height:1;
}
footer div ul:first-of-type{
	margin-bottom:20px;
}
footer div ul li{
	margin:0;
	padding:0 20px;
	display:inline-block;
	letter-spacing:normal;
	border-right:1px solid #fff;
}
footer div ul li:last-child{
	border-right:none;
}
footer div ul li a{
	font-size:17px;
	font-weight:normal;
	color:#fff;
	text-decoration:underline;
}

footer div ul:first-of-type li a{
	color:#87d5ff;
}

footer div ul li a:hover{
	color:#ccc;
}
footer div p{
	margin-top:40px;
	font-size:16px;
	color:#fff;
}


/* to_top */
#topbtn{
	position:fixed;
	z-index:100;
	right:30px;
	bottom:-150px;
	-webkit-transition: bottom 0.8s;
	-moz-transition: bottom 0.8s;
	-ms-transition: bottom 0.8s;
	transition: bottom 0.8s;
}