@charset "utf-8";
*{
	box-sizing: border-box;
	margin:0;
	padding:0;
}


h1,h2,h3, h4, h5 ,h6 , p , div , ul , li , table , tr , td , th , i ,b ,dl .dt ,dd,aside,section,article{
	box-sizing: border-box;
	font-weight:normal;
	font-style:normal;
	margin:0;
	padding:0
}

img{
	border:none;
	vertical-align:bottom;
}
ul,li{
	list-style:none;
}

a{
	transition: all 300ms 0s ease;
}
a:hover{
	opacity: 0.7;
}
table,thead,tbody,tr,th,td{
	border:0;
	border-collapse:collapse;
}
ul,ol,li{
	list-style:none;
}

/*共通class*/
.clr{
	clear:both;
}
.code{
	color:orangered;
	display:block;
	font-size:0.8rem;
}
.pre{
	white-space:pre-wrap;
	word-wrap:break-word;
}
.inner{
	display:block;
	margin:0 auto;
	position:relative;
	width:750px;
}
@media (max-width: 750px) {
	.inner{
		width:100%;
	}
}

	/*header*/
	header{
		background:url(/img/header_bg.jpg) no-repeat;
		background-position:center center;
		height:750px;
		margin:0px;
	}
		header .inner{
			background:url(/img/header_img.png) no-repeat;
			background-position:center bottom;
			height:750px;
		}
			header .logo{
				background:url(/img/logo.png) no-repeat;
				display:block;
				height:99px;
				position:relative;
				top:20px;
				width:312px;
			}
			header a.tel{
				background:url(/img/head_tel.gif) no-repeat;
				background-position:left top;
				font-size:35px;
				font-weight:bold;
				line-height:100%;
				padding:0 0 0 60px;
				position:absolute;
				text-decoration:none;
				top:20px;
				right:0;
			}
				header a.tel i{
					display:block;
					font-size:15px;
					line-height:100%;
					margin:0 0 5px 0;
				}

@media (min-width: 1700px) {
	header{
		background-size:100% 100%;
	}
}
@media (max-width: 750px) {
	header{
		height:100vw;
	}
		header .inner{
			background-size:100% auto;
			height:100vw;
		}
			header .logo{
				background-size:100% auto;
				top:3vw;
				left:3vw;
				width:42vw;
				height:15vw;
			}
			header a.tel{
				background-size:auto 100%;
				font-size:4vw;
				padding:0 0 0 10vw;
				top:4vw;
				right:2vw;
			}
				header a.tel i{
					font-size:2.5vw;
					margin:0 0 2vw 0;
				}


}

/*** main ***/
main{
}
	/*** cont1 ***/
	.cont1{
		background:#F03C1E;
	}
		.cont1 h2{
			color:#fff;
			background-image:
				url(/img/cont1_line1.png),
				url(/img/cont1_line2.png)
			;
			background-repeat:
				no-repeat,
				no-repeat
			;
			background-position:
				left 10px center,
				right 10px center
			;
			font-size:50px;
			font-weight:700;
			padding:50px 0 30px;
			text-align:center;
		}
			.cont1 h2 b{
				color:#FFFA00;
				font-size:67px;
				font-weight:700;
				margin:0 0 0 20px;
			}
@media (max-width: 750px) {
		.cont1 h2{
			font-size:7vw;
			padding:6vw 0 4vw;
			background-size:
				auto 10vw,
				auto 10vw
			;
		}
			.cont1 h2 b{
				font-size:9vw;
			}
}
		.cont1 article{
			background:#007DDC;
		}
			.cont1 article .inner{
				display:flex;
				justify-content:center;
				padding:10px;
			}
				.cont1 article dl{
					border:1px solid #fff;
					color:#fff;
					font-size:26px;
					font-weight:bold;
					margin:0.5%;
					padding:20px 10px;
					text-align:center;
				}
					.cont1 article dl dd{
						color:#FFFA00;
						font-size:38px;
						font-weight:bold;
						margin:20px 0 0;
					}
						.cont1 article dl dd b{
							display:block;
							font-size:48px;
							font-weight:bold;
						}
@media (max-width: 750px) {
					.cont1 article .inner{
						padding:2vw 1vw;
					}
						.cont1 article dl{
							font-size:3vw;
							margin:0.5vw;
							padding:2vw 1vw;
						}
							.cont1 article dl dd{
								font-size:5vw;
								margin:4vw 0 0;
							}
								.cont1 article dl dd b{
									font-size:6vw;
								}
}

	/*** cont2 ***/
	.cont2,
	.cont3{
		margin:70px 0 0;
	}
		.cont2 h3,
		.cont3 h3{
			background:#FFFA00;
			border-radius:35px;
			display:block;
			font-size:36px;
			font-weight:bold;
			line-height:100%;
			margin:0 auto -30px;
			position:relative;
			padding:18px 0;
			text-align:center;
			width:260px;
			z-index:2;
		}
		.cont2 article,
		.cont3 article{
			background:#E5F2FB;
			font-size:30px;
			padding:75px 0 30px;
			position:relative;
			text-align:center;
			z-index:1;
		}
			.cont2 article b{
				font-size:40px;
				font-weight:bold;
			}
			.cont2 article p,
			.cont3 article p{
				font-weight:bold;
			}
			.cont2 article p:nth-of-type(2){
				font-size:28px;
				margin:20px 0 0;
			}
				.cont2 article p i{
					font-size:20px;
					font-weight:bold;
					margin:0 20px;
				}
				.cont2 article p span{
					color:#F03C1E;
				}
@media (max-width: 750px) {
	.cont2,
	.cont3{
		margin:10vw 0 0;
	}
		.cont2 h3,
		.cont3 h3{
			border-radius:8vw;
			font-size:8vw;
			margin:0 auto -8vw;
			padding:4vw 0;
			width:60vw;
		}
		.cont2 article,
		.cont3 article{
			font-size:6vw;
			padding:18vw 0 8vw;
		}
			.cont2 article b{
				display:block;
				font-size:7vw;
				padding:0 0 5vw;
			}
			.cont2 article p:nth-of-type(2){
				font-size:4vw;
				margin:5vw 0 0;
			}
				.cont2 article p i{
					display:block;
					font-size:4vw;
				}
}

	/*** cont3 ***/
	.cont3{
	}
		.cont3 h3{
		}
		.cont3 article{
		}
			.cont3 ul{
				margin:0 0 30px;
				text-align:center;
			}
				.cont3 li{
					background:#007DDC;
					border-radius:40px;
					color:#fff;
					display:inline-block;
					font-size:40px;
					font-weight:bold;
					padding:10px 0 8px;
					width:300px;
				}
					.cont3 li:nth-of-type(1){
						margin:0 30px 0 0;
					}
@media (max-width: 750px) {
			.cont3 ul{
				margin:0 0 10vw;
				text-align:center;
			}
				.cont3 li{
					border-radius:40px;
					font-size:6vw;
					padding:3vw 0;
					width:43vw;
				}
					.cont3 li:nth-of-type(1){
						margin:0 2vw 0 0;
					}
			.cont3 p{
				font-size:4vw;
			}
}

	/*** cont4 ***/
	.cont4{
		font-size:54px;
		font-weight:bold;
		margin:60px 0;
		text-align:center;
	}
		.cont4 p{
			font-weight:bold;
			margin-bottom:20px;
		}
		.cont4 p:nth-of-type(2){
			font-size:47px;
		}
			.cont4 p i{
				color:#007DDC;
				font-weight:bold;
			}
		.cont4 p:nth-of-type(3){
			background:url(/img/cont4_img.png) no-repeat;
			font-size:42px;
			margin:0 auto;
			padding:15px 0 0 240px;
			width:687px;
			height:210px;
		}
			.cont4 p:nth-of-type(3) b{
				color:#F03C1E;
				display:block;
				font-size:46px;
				font-weight:bold;
			}
@media (max-width: 750px) {
	.cont4{
		font-size:8vw;
		margin:15vw 0;
	}
		.cont4 img{
			max-width:40vw;
			margin:0 2vw 0 0;
			height:auto;
		}
		.cont4 p{
			margin-bottom:4vw;
		}
		.cont4 p:nth-of-type(2){
			font-size:8vw;
		}
			.cont4 p i{
			}
		.cont4 p:nth-of-type(3){
			background-size:98% auto;
			background-position:center center;
			font-size:5vw;
			padding:3vw 0 0 30vw;
			width:100%;
			height:30vw;
		}
			.cont4 p:nth-of-type(3) b{
				font-size:7vw;
			}
}

	/*** cont5 ***/
	.cont5{
		background:#E5F2FB;
		color:#007DDC;
		font-size:45px;
		padding:30px 0 20px;
		text-align:center;
	}
		.cont5 p{
			font-weight:bold;
			margin:0 auto;
			width:550px;
		}
		.cont5 p:nth-of-type(1){
			background:url(/img/underline_y.gif) repeat-x;
			background-position:bottom;
			margin-bottom:20px;
		}
@media (max-width: 750px) {
	.cont5{
		font-size:7vw;
		padding:4vw 0 3vw;
	}
		.cont5 p{
			width:90vw;
		}
		.cont5 p:nth-of-type(1){
			margin-bottom:4vw;
		}
}

	/*** cont6 ***/
	.cont6{
		font-size:54px;
		font-weight:bold;
		margin:60px 0;
		text-align:center;
	}
		.cont6 p{
			font-size:43px;
			font-weight:bold;
			margin-bottom:20px;
		}
		.cont6 p:nth-of-type(2){
			background:url(/img/cont6_img.png) no-repeat;
			background-position:top center;
			padding:520px 0 0;
		}
			.cont6 p i{
				font-weight:bold;
			}
			.cont6 p i:nth-of-type(1){
				color:#C3192D;
			}
			.cont6 p i:nth-of-type(2){
				color:#007DDC;
			}
			.cont6 p i:nth-of-type(3){
				color:#FFBE1E;
			}

@media (max-width: 750px) {
	.cont6{
		font-size:8vw;
		margin:15vw 0;
	}
		.cont6 img{
			max-width:40vw;
			margin:0 2vw 0 0;
			height:auto;
		}
		.cont6 p{
			font-size:6vw;
			margin-bottom:3vw;
		}
		.cont6 p:nth-of-type(2){
			background-size:100% auto;
			padding:70vw 0 0;
		}
}

	/*** cont7 ***/
	.cont7{
		background:#007DDC;
		color:#fff;
		font-size:58px;
		font-weight:bold;
		line-height:120%;
		margin:60px 0;
		padding:30px 0;
		text-align:center;
	}
@media (max-width: 750px) {
	.cont7{
		font-size:7.5vw;
		margin:15vw 0;
		padding:5vw 0;
	}
}

	/*** cont8 ***/
	.cont8{
		background:url(/img/cont8_img.jpg) no-repeat;
		background-position:bottom;
		margin:60px 0;
		padding:0 0 500px;
		text-align:center;
	}
		.cont8 h4{
			background:url(/img/underline_y.gif) repeat-x;
			background-position:bottom;
			display:inline-block;
			font-size:40px;
			font-weight:bold;
			line-height:160%;
			padding:0 20px 0;
		}
@media (max-width: 750px) {
	.cont8{
		background-size:100% auto;
		padding:0 0 70vw;
		text-align:center;
	}
		.cont8 h4{
			background:url(/img/underline_y.gif) repeat-x;
			background-position:bottom;
			display:inline-block;
			font-size:5.5vw;
			line-height:200%;
			padding:0 1vw 0;
		}
}

	/*** cont9 ***/
	.cont9{
		background:#CCE5F8;
		margin:60px 0;
		padding:40px 0 0;
		text-align:center;
	}
		.cont9 h5{
			color:#007DDC;
			font-size:60px;
			font-weight:bold;
			margin:0 0 10px;
		}
		.cont9 h5 i{
			background:#007DDC;
			border-radius:10px;
			color:#fff;
			display:block;
			font-size:40px;
			font-weight:bold;
			margin:0 auto 20px;
			padding:15px 0;
			width:290px;
		}
			.cont9 h5 b{
				color:#FFFA00;
				display:block;
				font-size:48px;
				font-weight:bold;
				line-height:100%;
			}
		.cont9 article{
			background:#fff;
		}
			.cont9 dl{
				display:table;
				width:750px;
				margin:0 auto;
				padding:0;
			}
				.cont9 dt{
					background:#FFFEE5;
					color:#007DDC;
					display:table-cell;
					padding:80px 0 0;
					text-align:center;
					width:165px;
				}
					.cont9 dt b{
						border-bottom:11px solid #CCE5F8;
						font-size:30px;
						font-weight:bold;
						display:inline;
					}
				.cont9 dd{
					display:table-cell;
					font-size:26px;
					text-align:left;
					padding:80px 40px 0;
					width:585px;
				}
					.cont9 dd b{
						display:block;
						font-size:33px;
						font-weight:bold;
						margin:0 0 20px 0;
					}
		.cont9 > p{
			background:#fff;
			color:#007DDC;
			font-size:40px;
			font-weight:bold;
			padding:30px 0;
		}
@media (max-width: 750px) {

	.cont9{
		margin:5vw 0;
		padding:5vw 0 0;
	}
		.cont9 h5{
			font-size:8vw;
			margin:0 0 2vw;
		}
		.cont9 h5 i{
			border-radius:2vw;
			font-size:7vw;
			margin:0 auto 4vw;
			padding:2vw 0;
			width:50vw;
		}
			.cont9 h5 b{
				font-size:8vw;
			}
		.cont9 article{
		}
			.cont9 dl{
				width:100%;
			}
				.cont9 dt{
					padding:5vw 0 0;
					width:20%;
				}
					.cont9 dt b{
						border-bottom:11px solid #CCE5F8;
						font-size:4vw;
					}
				.cont9 dd{
					font-size:4vw;
					padding:5vw 2vw 0;
					width:80%;
				}
					.cont9 dd b{
						font-size:5vw;
						margin:0 0 2vw 0;
					}
		.cont9 > p{
			font-size:5vw;
			padding:4vw 0;
		}
}

	/*form btn*/
	.btn_foot{
		background:url(/img/btn_foot.png) #007DDC no-repeat;
		background-position:center top 30px;
		border-radius:20px;
		box-shadow:1px 1px 3px #ccc;
		color:#fff;
		display:block;
		font-size:50px;
		font-weight:bold;
		margin:0 auto;
		padding:210px 0 20px;
		text-align:center;
		text-decoration:none;
		width:750px;
	}
		.btn_foot:hover{
			color:#FFFA00;
		}
@media (max-width: 750px) {
	.btn_foot{
		background-position:center top 30px;
		background-size:12vw auto;
		border-radius:4vw;
		box-shadow:0.5vw 0.5vw 3vw #ccc;
		font-size:8vw;
		padding:30vw 0 4vw;
		width:90vw;
	}
}

	/*footer*/
	footer{
		background:#F03C1E;
		color:#fff;
		margin:40px 0 0 0;
		padding:0;
	}

		footer .copywrite{
			font-size:16px;
			padding:15px 0;
			text-align:center;
		}
@media (max-width: 750px) {
	footer{
		margin:5vw 0 16vw 0;
	}
}

	/*** aside ***/
	aside{
		position:relative;
		z-index:10;
	}
		aside a{
			color:#fff;
			display:block;
			font-weight:bold;
			line-height:120%;
			text-align:center;
			text-decoration:none;
			width:90px;
		}
			aside a i{
				display:block;
				font-weight:bold;
			}
		aside #popup{
			background:url(/img/btn_aside_mail.png) #007DDC no-repeat;
			background-position:top 10px center;
			border-top:2px solid #fff;
			border-left:2px solid #fff;
			height:145px;
			padding:90px 0 0;
			position:fixed;
			bottom:90px;
			right:0;
		}
		aside #tel{
			background:none;
			display:none;
		}
		aside #page_top{
			background:url(/img/btn_aside_top.png) #575753 no-repeat;
			background-position:center center;
			border-left:2px solid #fff;
			height:90px;
			position:fixed;
			bottom:0px;
			right:0;
		}
@media (max-width: 750px) {
	aside{
		border-top:2px solid #fff;
		display:table;
		position:fixed;
		bottom:0;
		right:0;
		width:100%;
	}
		aside a{
			font-size:4.3vw;
			padding:6vw 0 5vw 13vw !important;
			height:16vw !important;
			text-align:left;
		}
			aside a i{
				display:inline;
			}
		aside #popup{
			background-position:left 4vw center;
			background-size:7vw auto;
			border-left:none;
			border-top:none;
			display:table-cell;
			position:relative;
			top:0;
			width:40vw;
		}
		aside #tel{
			background:url(/img/btn_aside_tel.png) #F03C1E no-repeat;
			background-position:left 4vw center;
			background-size:7vw auto;
			display:table-cell;
			position:relative;
			width:40vw;
		}
		aside #page_top{
			background:url(/img/btn_aside_top.png) #575753 no-repeat;
			background-position:center center;
			background-size:7vw auto;
			border-left:2px solid #fff;
			border-right:2px solid #fff;
			display:table-cell;
			position:relative;
			width:20vw;
		}
}

	/*フォーム*/
	.remodal{
		border-radius:8px;
		padding:0;
	}
	#form{
		padding:30px;
		width:750px;
	}
		#form input[type="text"],
		#form input[type="number"],
		#form input[type="tel"],
		#form input[type="email"],
		#form textarea {
			background:#E5F2FB;
			border:none;
			font-size: 16px;
			font-weight: normal;
			line-height:160%;
			vertical-align: top;
			padding:5px;
			width:100%;
		}
		#form select,
		#form input[type="submit"]{
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;
		}
		#form select{
			background:url(/img/form_arrow.png) no-repeat #E5F2FB;
			background-position:right 10px center;
			background-size:15px auto;
			border:none;
			font-size:16px;
			padding:5px 40px 5px 5px;
		}

		#form label{
			display:inline-block;
			width:200px;
		}
			#form label input{
				margin-right:10px;
			}

		#form h6{
			border-bottom:11px solid #007DDC;
			color:#007DDC;
			display:inline-block;
			font-size:20px;
			font-weight:bold;
			margin:0 0 40px 0;
		}
		#form dl{
			border-bottom:1px dashed #CCE5F8;
			display:table;
			margin:0 0 20px 0;
			padding:15px;
			width:100%;
		}
			#form dt{
				color:#3397E3;
				display:table-cell;
				text-align:left;
				width:200px;
			}
				#form dt i{
					background:#F03C1E;
					color:#fff;
					font-size:11px;
					margin:0 0 0 10px;
					padding:1px 2px;
				}
			#form dd{
				display:table-cell;
				text-align:left;
				padding:0;
			}

		#form input[type="submit"]{
			background:url(/img/btn_aside_mail.png) no-repeat #007DDC;
			background-position:top 20px center;
			border:none;
			border-radius:10px;
			color:#fff;
			font-size:20px;
			font-weight:bold;
			padding:110px 0 20px;
			width:280px;
		}
			#form input[type="submit"]:hover{
				color:#FFFA00;
			}
	#form .back{
		background:url(/img/form_arrow_back.png) no-repeat #FFBE1E;
		background-position:top 20px center;
		background-size:20px auto;
		border-radius:10px;
		color:#fff;
		display:block;
		font-weight:bold;
		margin:20px auto 0;
		padding:60px 0 20px;
		text-decoration:none;
		width:200px;
	}

	/*** 送信完了 ***/
	.success{
		background:url(/img/logo.png) no-repeat;
		background-position:bottom 20px center;
		background-size:200px auto;
		color:#007DDC;
		font-weight:bold;
		padding:20px 20px 130px;
	}

@media (max-width: 750px) {

	.remodal{
		border-radius:2vw;
	}
	#form{
		padding:4vw;
		width:80vw;
	}
		#form input[type="text"],
		#form input[type="number"],
		#form input[type="tel"],
		#form input[type="email"],
		#form textarea {
			font-size: 4vw;
			padding:2vw;
		}
		#form select{
			background-position:right 2vw center;
			background-size:3vw auto;
			border:none;
			font-size:4vw;
			padding:2vw 6vw 2vw 2vw;
		}

		#form label{
			display:block;
			margin:0 0 4vw 0;
		}
			#form label input{
				
				width:5vw;
				margin-right:10px;
			}

		#form h6{
			border-bottom:2vw solid #007DDC;
			font-size:6vw;
			margin:0 0 5vw 0;
		}
		#form dl{
			display:block;
			margin:0 0 2vw 0;
			padding:2vw;
		}
			#form dt{
				display:block;
				margin-bottom:2vw;
			}
				#form dt i{
					font-size:2.5vw;
					margin:0 0 0 2vw;
					padding:0.5vw;
				}
			#form dd{
				display:block;
			}

		#form input[type="submit"]{
			background-position:top 4vw center;
			background-size:8vw auto;
			border:none;
			border-radius:2vw;
			color:#fff;
			font-size:5vw;
			font-weight:bold;
			padding:19vw 0 4vw;
			width:70vw;
		}

	#form .back{
		background-position:top 4vw center;
		background-size:3vw auto;
		border-radius:2vw;
		margin:4vw auto 0;
		padding:10vw 0 4vw;
		text-decoration:none;
		width:50vw;
	}

	/*** 送信完了 ***/
	.success{
		background-size:50vw auto;
		font-size:4vw;
		padding:4vw 4vw 25vw;
	}

}