@charset "utf-8";
@media screen and (max-width:640px){
html {
	-webkit-text-size-adjust: 100%;
}

body {
	font-size:14px;
}

.only_smart{
	display:block !important;
}
.only_smart_i{
	display:inline-block !important;
}
.only_pc{
	display:none !important;
}
img{
	max-width:100%;
}

#wrapper{
	min-width:auto;
	min-width:initial;
}


/* header */
header{
	background-image:none;
}
header div{
	padding:0;
	line-height:20px;
	overflow:hidden;
	background-color:#1d2088;
	color:#fff;
}
header div p{
	font-size:10px;
	font-weight:normal;
	float:none;
	letter-spacing:-0.1em;
}
header div ul{
	display:none;
}


/* article */
article{
}
article h1{
	height:auto;
	padding:5px 0;
	border-top:4px solid #1d2088;
	border-bottom:4px solid #1d2088;
	font-size:15px;
	background:url(../images/h1_bg.png) center top;
	background-size:200px auto;
	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:3% 0 2%;
}
article > div.link ul{
	width:auto;
	margin:auto;
}
article > div.link ul li{
	margin-bottom:10px;
	text-align:center;
}
article > div.link ul li:last-child{
	margin-bottom:0px;
}
article > div.link ul li p{
	width:auto;
	font-size:12px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:bold;
	display:block;
	text-align:center;
	margin-bottom:5px;
}
article > div.link ul li p span{
	font-size:16px;
}
article > div.link ul li img{
	width:55%;
}
article > div.link ul li img.only_smart_i{
	width:90%;
}
article > div.link h3{
	margin-bottom:20px;
	padding:0 5%;
	background-image:none;
}



/* .cont */
.cont{
	padding:30px 0;
}
.cont.sky{
	padding-bottom:30px;
	background-color:#e3f6ff;
}
.cont.sky > div{
	width:90%;
	margin:auto;
	padding:20px 0 20px;
	background-color:#fff;
	box-shadow:0 0 6px rgba(0,0,0,0.4);
}
.cont.sky > div h2{
	width:calc(100% + 10px);
	height:80px;
	margin:0 0 10px -5px;
	padding-top:5px;
	font-size:16px;
	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;
	background-size:auto 100%;
	position:relative;
}
.cont.sky > div h2:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5px 5px 0;
	border-color: transparent #0087c5 transparent transparent;
	position:absolute;
	top:66px;
	left:0;
}
.cont.sky > div h2:after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 5px 0 0;
	border-color: #0087c5 transparent transparent transparent;
	position:absolute;
	top:66px;
	right:0;
}
.cont.sky > div ul li{
	margin-bottom:50px;
	padding:0 5%;
	position:relative;
}
.cont.sky > div ul li:after{
	content:'';
	display:block;
	clear:both;
}
.cont.sky > div ul li:before{
	content:'';
	display:block;
	width:24px;
	height:16px;
	background:url(../images/arrow_pink.png)no-repeat center top;
	background-size:100% auto;
	position:absolute;
	top:calc(100% + 20px);
	left:calc(50% - 12px);
}
.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:auto;
}
.cont.sky > div ul li div > p{
	margin-top:10px;
	font-size:14px;
	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 > p span{
	font-weight:bold;
	color:#ff6699;
}
.cont.sky > div ul li:nth-child(odd) > img{
	margin:10px 0;
	width:90%;
}
.cont.sky > div ul li:nth-child(even)  > img{
	margin:10px 0;
	width:90%;
}




/* #cont1 */
#cont1{
	padding:20px 0 30px;
	background:#b2ebff url(../images/cont1_bg.png)no-repeat center top;
	background-size:80% auto;
}
#cont1 h2{
	font-size:16px;
	color:#1d2088;
	text-shadow:2px 2px 0 #fff;
	position:relative;
	display:inline-block;
}
#cont1 h2 span{
	font-size:18px;
	color:#e60012;
}
#cont1 h2:before{
	content:'';
	display:inline-block;
	vertical-align:-5px;
	width:18px;
	height:30px;
	margin-right:10px;
	background:url(../images/tit_left.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	right:101%;
	top:calc(50% - 15px);
}
#cont1 h2:after{
	content:'';
	display:inline-block;
	vertical-align:-5px;
	width:18px;
	height:30px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	left:101%;
	top:calc(50% - 15px);
}
#cont1 ol{
	width:auto;
	max-width:280px;
	margin:0px auto 0;
	display: block;
}
#cont1 ol li{
	width:auto;
	margin:20px 0 0;
	padding:10px 10px 10px;
	background-color:#fff;
	border:3px solid #fff000;
	position:relative;
}
#cont1 ol li > span{
	display:block;
	width:50px;
	height:50px;
	padding-left:6px;
	font-size:21px;
	font-weight:bold;
	font-family:arial;
	line-height:1.2;
	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: 50px 50px 0 0;
	border-color: #00a0e9 transparent transparent transparent;
	position:absolute;
	left:-3px;
	top:-3px;
	z-index:-1;
}
#cont1 ol li h3{
	margin:0 0 10px;
	font-size:21px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:bold;
	color:#e60012;
	line-height:1.2;
}
#cont1 ol li p{
	margin-top:10px;
	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;
	font-size:21px;
	font-weight:bold;
	background:url(../images/cont2_line.png)repeat-x center bottom;
	background-size:auto 10px;
	color:#00a0e9;
	line-height:1.5;
	position:relative;
}
#cont2 div ul li:last-child p:before{
	content:'';
	display:inline-block;
	width:18px;
	height:30px;
	margin-left:5px;
	background:url(../images/tit_left.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	right:120.5%;
	bottom:0;
}
#cont2 div ul li:last-child p:after{
	content:'';
	display:inline-block;
	width:18px;
	height:30px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
	background-size:100% auto;
	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;
	border-left:10px solid #ffffbb;
	overflow:hidden;
	position:relative;
	letter-spacing:-0.03em;
	white-space:nowrap;
	width:100%;
}
#cont2 div ul li div div p{
	font-size:15px;
	background:#ff0;
	color:#00a0e9;
	text-shadow:2px 2px 0 #fff;
	line-height:1.4;
	display:inline-block;
	text-align:left;
}
#cont2 div ul li div div span{
	color:#e7001a;
}
#cont2 div ul li div div img{
	float:left;
	margin-right:3px;
	width:30px;
}
#cont2 div ul li div div:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 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 15px 15px;
	border-color: transparent transparent #fff transparent;
	position:absolute;
	right:0;
	bottom:0;
}


/* #cont3 */
#cont3 div ul li:first-child p:last-child{
	background:url(../images/cont3_finger.png)no-repeat right top;
	background-size:18%;
	text-align:center;
	padding-top:4%;
	margin:auto;
	width:250px;
	letter-spacing:-0.05em;
}
#cont3 div ul li:first-child p span{
	font-size:16px;
	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{
	display:none;
}


/* #cont4 */
#cont4{
}
#cont4 div{
	padding-bottom:20px;
}
#cont4 div img{
	width:90%;
	max-width:360px;
	margin-bottom:10px;
}
#cont4 div ul{
	display:inline-block;
	vertical-align:top;
	width:auto;
	padding:0 5%;
}
#cont4 div ul li{
	margin-bottom:30px;
	padding:0;
}
#cont4 div ul li:before{
	content:'';
	display:block;
	width:24px;
	height:16px;
	background:url(../images/arrow_pink.png)no-repeat center top;
	background-size:100% auto;
	position:absolute;
	top:calc(100% + 10px);
	left:calc(50% - 12px);
}
#cont4 div ul li:last-child:before{
	content:none;
}
#cont4 div ul li p{
	margin-bottom:10px;
	font-size:14px;
	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:#ff6699;
}


/* #cont5 */
#cont5{
	background-color:#fffcdb;
}
#cont5 > div{
	width:90%;
	margin:auto;
	padding:0 0 20px;
	background:#fff url(../images/cont5_bg.png) center top;
	background-size:200px auto;
	box-shadow:0 0 6px rgba(0,0,0,0.4);
}
#cont5 > div h2{
	height:90px;
	margin:0 0 10px;
	padding-top:10px;
	font-size:16px;
	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;
	background-size:auto 100%;
}
#cont5 > div img{
	width:90%;
}


/* #cont6 */
#cont6{
	padding:30px 5%;
	background:url(../images/bg_stripe.png) center top;
	background-size:90px auto;
}
#cont6 h2{
	font-size:16px;
	color:#1d2088;
	display:inline-block;
	position:relative;
}
#cont6 h2:before{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:18px;
	height:30px;
	margin-right:10px;
	background:url(../images/tit_left.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	right:101%;
	top:calc(50% - 15px);
}
#cont6 h2:after{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:18px;
	height:30px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	left:101%;
	top:calc(50% - 15px);
}
#cont6 h2 span{
	color:#e60012;
}
#cont6 div{
	width:auto;
	margin:20px auto 0;
	padding:30px 5% 4%;
	background-color:#fff;
	border-radius:20px;
	box-shadow:5px 5px 0 #1d2088;
	position:relative;
}
#cont6 div:before{
	content:'';
	display:block;
	width:16px;
	height:20px;
	background:url(../images/cont6_pin1.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	left:0;
	top:0;
}
#cont6 div:after{
	content:'';
	display:block;
	width:16px;
	height:20px;
	background:url(../images/cont6_pin2.png)no-repeat right top;
	background-size:100% auto;
	position:absolute;
	right:0;
	top:0;
}
#cont6 div p{
	padding:0;
	font-size:16px;
	font-weight:bold;
	text-align:left;
	line-height:1.4;
}
#cont6 div p span{
	font-size:18px;
	color:#e60012;
}
#cont6 div dl{
	width:80%;
	margin:15px auto 0;
	overflow:hidden;
	border:1px solid #99ccff;
	background-color:transparent;
}
#cont6 div dl dt{
	display:none;
}
#cont6 div dl dd{
	width:50%;
	float:left;
	border:1px solid #99ccff;
	margin:0;
}
#cont6 ul{
	width:auto;
	margin:20px auto 0;
}
#cont6 ul li{
	padding-left:1em;
	text-indent:-1em;
	font-size:12px;
	text-align:left;
	line-height:1.8;
}


/* #cont7 */
#cont7{
	padding:30px 0;
	background-color:#b2ebff;
}
#cont7 section{
	width:auto;
	margin:0 4%;
	background-color:#fff;
	padding:20px 0;
	box-shadow:0 0 6px rgba(0,0,0,0.2);
}
#cont7 section h2{
	width:calc(100% + 10px);
	height:50px;
	line-height:1.5;
	margin:0 0 20px -5px;
	padding-top:12px;
	background:url(../images/cont7_h2_bg.png)repeat-x center top;
	background-size:auto 100%;
	font-size:18px;
	color:#fff;
	position:relative;
}
#cont7 section h2:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5px 5px 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: 5px 5px 0 0;
	border-color: #1d2088 transparent transparent transparent;
	position:absolute;
	top:100%;
	right:0;
}
#cont7 section img{
	width:94%;
}
#cont7 section p{
	padding:20px 5% 0;
	font-size:15px;
	font-weight:bold;
	text-align:left;
}
#cont7 section p span{
	color:#e60012;
}
#cont7 section ul{
	padding:10px 5% 0;
}
#cont7 section ul li{
	padding-left:1em;
	text-indent:-1em;
	text-align:left;
	line-height:1.6;
}
#cont7 section ul li span{
	color:#e60012;
}


/* #cont8 */
#cont8{
	padding:30px 0;
	background-color:#b2ebff;
}
#cont8 section{
	width:auto;
	margin:0 4%;
	background-color:#fff;
	padding:20px 0;
	box-shadow:0 0 6px rgba(0,0,0,0.2);
}
#cont8 section h2{
	width:calc(100% + 10px);
	height:50px;
	line-height:1.5;
	margin:0 0 20px -5px;
	padding-top:12px;
	background:url(../images/cont7_h2_bg.png)repeat-x center top;
	background-size:auto 100%;
	font-size:18px;
	color:#fff;
	position:relative;
}
#cont8 section h2:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5px 5px 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: 5px 5px 0 0;
	border-color: #1d2088 transparent transparent transparent;
	position:absolute;
	top:100%;
	right:0;
}

#cont8 section > table{
	width:90%;
	margin:auto;
	background-color:#fff;
	border-bottom:1px solid #969696;
}
#cont8 section > table th,
#cont8 section > table td{
	padding:5px;
	font-size:12px;
	font-weight:normal;
	border:1px solid #969696;
	vertical-align:top;
	color:#323232;
	display:block;
}
#cont8 section > table th{
	width:auto;
	white-space:nowrap;
	background-color:#ebebeb;
	border-bottom:none;
}

#cont8 section > table td{
	text-align:left;
	border-bottom:none;
	padding:3%;
	text-align:center;
	line-height:1.6;
}
#cont8 section > table td span{
	color:#e60012;
}
#cont8 section > table td a{
	font-weight:bold;
	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;
	text-align:left;
}
#cont8 section > table td table{
	margin:10px auto 0;
	border-bottom:1px solid #969696;
}
#cont8 section > table td table th,
#cont8 section > table td table td{
	padding:1px 15px;
}
#cont8 section > table td table th{
	background-color:#ebebeb;
}
#cont8 section > table td div{
	margin-top:0;
	padding-left:0;
}
#cont8 section > table td div img{
	width:100px;
}
#cont8 section > table td div table{
	display:inline-block;
	vertical-align:middle;
	margin-left:10px;
}
#cont8 section > table td dl dt {
	margin-top:10px;
	text-align:left;
}
#cont8 section > table td dl dd {
	padding-left:0;
	text-align:left;
}
#cont8 section > table td dl dd img {
	width:90px;
}
#cont8 section > table td dl dd table{
	display:inline-block;
	vertical-align:middle;
	text-align:center;
}


/* #faq */
#faq{
	padding:30px 5%;
	background:url(../images/bg_faq.png) center top;
	background-size:45px auto;
}
#faq h2{
	margin-bottom:10px;
	display:inline-block;
	font-size:18px;
	color:#1d2088;
	letter-spacing:0.04em;
	position:relative;
}
#faq h2:before{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:18px;
	height:30px;
	margin-right:10px;
	background:url(../images/tit_left.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	right:101%;
	top:calc(50% - 15px);
}
#faq h2:after{
	content:'';
	display:inline-block;
	vertical-align:0px;
	width:18px;
	height:30px;
	margin-left:5px;
	background:url(../images/tit_right.png)no-repeat left top;
	background-size:100% auto;
	position:absolute;
	left:101%;
	top:calc(50% - 15px);
}
#faq h2 span{
	color:#e60012;
	display:block;
}
#faq dl{
	width:auto;
	margin:auto;
	text-align:left;
}
#faq dl dt{
	margin-top:20px;
	padding:10px 30px 10px 40px;
	background-color:#fff;
	position:relative;
	font-size:16px;
	font-weight:bold;
	cursor:pointer;
	line-height:1.5;
}
#faq dl dt:hover{
	color:#00a0e9;
}
#faq dl dt:before{
	content:'Q.';
	font-size:20px;
	color:#00a0e9;
	position:absolute;
	left:10px;
	top:5px;
}
#faq dl dt:after{
	content:'';
	display:block;
	width:11px;
	height:8px;
	background:url(../images/faq_arrow.png)no-repeat center center;
	background-size:100% auto;
	position:absolute;
	right:10px;
	top:50%;
	margin-top:-4px;
}
#faq dl dd{
	padding:10px 10px 10px 40px;
	background-color:#daf2ff;
	position:relative;
	font-size:14px;
	display:none;
}
#faq dl dd:before{
	content:'A.';
	font-size:20px;
	font-weight:bold;
	color:#e60012;
	position:absolute;
	left:10px;
	top:5px;
}
#faq dl dd a{
	color:#e60012;
	font-weight:normal;
}



/* #contact */
#contact{
	margin:auto;
	padding:30px 5%;
	background-color:#fff7d4;
}
#contact div{
	width:auto;
	margin:auto;
	background-color:#fff;
	border:3px solid #22ac38;
	border-radius:10px;
}
#contact div h2{
	line-height:50px;
	margin-bottom:20px;
	padding-top:2px;
	background-color:#22ac38;
	font-size:24px;
	color:#fff;
	text-align:center !important;
	text-shadow:3px 3px 3px #1d902f;
}
#contact div > p:first-of-type{
	font-size:16px;
	font-weight:bold;
	letter-spacing:-0.05em;
}
#contact div dl{
	display:inline-block;
	margin:20px 0 10px;
	padding:0 3%;
}
#contact div dl dt{
	width:90px;
	float:left;
	clear:left;
	padding-top:0px;
}
#contact div dl dd{
	margin-bottom:30px;
	padding-left:100px;
	font-size:24px;
	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:20px;
}
#contact div dl dd span{
	display:block;
	padding:0;
	font-size:14px;
	color:#000;
}
#contact div > p:last-of-type{
	argin:30px 3% 0;
	padding:0 0 20px;
	font-size:18px;
	font-weight:bold;
	color:#1d20a0;
	text-align:center !important;
	border-top:2px solid #1d20a0;
}
#contact div > p:last-of-type span{
	display:block;
	width:120px;
	margin:-15px auto 0px;
	font-size:16px;
	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:auto;
	min-width:initial;
	padding:0 0 10px;
	background-color:#1d20a0;
}
footer div ul{
	margin:0;
	letter-spacing:-0.4em;
	line-height:1;
	display:block;
}
footer div ul:first-of-type{
	margin-bottom:0px;
}
footer div ul li{
	margin:0;
	padding:3px 0;
	display:block;
	letter-spacing:normal;
	border-right:none;
	text-align:left;
	border-bottom:1px dotted #fff;
}
footer div ul li:last-child{
	border-right:none;
}
footer div ul li a{
	font-size:12px;
	font-weight:normal;
	color:#fff;
	text-decoration:none;
	display:block;
	padding:5px 8%;
	position:relative;
}

footer div ul:first-of-type li a{
	color:#87d5ff;
}

footer div ul li a:hover{
	color:#ccc;
}
footer div ul li a:before{
	content:'';
	display:block;
	width:0;
	height:0;
	border: 3px solid transparent;
	border-left: 5px solid #fff;
	position:absolute;
	left:5%;
	top:50%;
	margin-top:-3px;
}
footer div p{
	margin-top:10px;
	font-size:10px;
	color:#fff;
}


/* to_top */
#topbtn{
	position:fixed;
	z-index:100;
	right:20px;
	bottom:-150px;
	width:60px;
}


}




@media screen and (max-width:480px){
/* #contact */
#contact div dl{
	display:inline-block;
	margin:20px 0 10px;
	padding:0 3%;
}
#contact div dl dt{
	width:70px;
	float:none;
	clear:none;
	padding-top:0px;
}
#contact div dl dd{
	margin:5px 0 10px;
	padding-left:0;
	font-size:21px;
	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:10px;
	font-size:17px;
}
#contact div dl dd span{
	display:block;
	padding:0;
	font-size:12px;
	font-weight:normal;
}
#contact div > p:last-of-type{
	margin:30px 3% 0;
	padding:0 0 20px;
	font-size:18px;
	font-weight:bold;
	color:#1d20a0;
	text-align:center !important;
	border-top:2px solid #1d20a0;
}
#contact div > p:last-of-type span{
	display:block;
	width:120px;
	margin:-15px auto 0px;
	font-size:16px;
	font-weight:normal;
	background-color:#fff;
}


}