html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	box-sizing: border-box;
}
html{
	line-height: 1;
}
.clearfix:after{
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix{
	display: inline-table;
}
/* Hides from IE-mac \*/
* html .clearfix{
	height: 1%;
}
.clearfix{
	display: block;
}
/* End hide from IE-mac */
ol, ul{
	list-style: none;
}
table{
	border-collapse: collapse;
	border-spacing: 0;
}
.clear {
	clear: both;
}
caption, th, td{
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote{
	quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after{
	content: "";
	content: none;
}
a img {
	border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary{
	display: block;
}
*, :after, :before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	color: #000;
}
img{
	height: auto;
	max-width: 100%;
}
a{
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.hidden-sp{
		display: none !important;
	}
}
@media screen and (min-width: 769px) {
	.hidden-pc{
		display: none !important;
	}
}
$blue: #30468f;
$green: #2a7e92;
$lightskyblue: #87cefa;
$lightGreen: #6aa5b3;
/*------------------------------------------
  サービス別レスポンシブ
------------------------------------------*/
/*youtube*/
.youtubeWrapper{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtubeWrapper iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
/*googlemap*/
.ggmapWrapper{
	position: relative;
	/*padding-bottom: 56.25%;*/
	height: 480px;
	overflow: hidden;
}
.ggmapWrapper iframe,
.ggmapWrapper object,
.ggmapWrapper embed{
	position: absolute;
	top: -140px;
	left: 0;
	width: 100%;
	height: 600px;
}
.ggmapWrapper iframe{
	height: 800px;
}
/*------------------------------------------
  cmn
------------------------------------------*/
img{
	vertical-align: top;
}
.hoverBtn{
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}
.hoverBtn:hover{
}
@media screen and (max-width: 768px) {
}
/*------------------------------------------
  body
------------------------------------------*/
body{
}
#wrapper{
	min-width: 980px;
	overflow-x: hidden;
}
@media screen and (max-width: 1279px) {
}
@media screen and (max-width: 768px) {
	body{
		width: auto;
		min-width: inherit;
	}
	#wrapper{
		min-width: inherit;
		overflow-x: hidden;
	}
}
/*------------------------------------------
  header nav
------------------------------------------*/
/*PC*/
@media screen and (min-width: 1215px) {
	header{
		width: 100%;
		height: 90px;
		padding: 0;
		margin-bottom: 20px;
		transition: 0.8s;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 1000;
		.headerInner{
			height: 100%;
			display: flex;
			justify-content: space-between;
			align-items: center;
			position: relative;
			.logoBox{
				padding: 0 0 0 30px;
				position: relative;
				z-index: 100;
				a{
					display: block;
				}
			}
			.headerTop{
				display: none;
			}
			nav{
				height: 100%;
				transition: 0.3s;
				display: flex !important;
				justify-content: flex-end;
				.navInner{
					ul{
						height: 100%;
						display: flex;
						justify-content: flex-end;
						align-items: center;
						transition: 0.3s;
						li{
							display: flex;
							align-items: center;
							text-align: center;
							font-size: 14px;
							color: #FFF;
							letter-spacing: 0.1em;
							margin: 0 30px 0 0;
							a{
								font-size: 14px;
								color: #FFF;
								transition: 0.3s;
								&:hover{
									opacity: 0.8;
									text-decoration: underline;
								}
							}
							&.btn{
								a{
									width: 140px;
									height: 48px;
									display: flex;
									align-items: center;
									justify-content: center;
									font-size: 14px;
									color: #FFF;
									letter-spacing: 0.1em;
									border: 1px solid #FFF;
									transition: 0.3s;
									position: relative;
									&:hover{
										background: $green;
										text-decoration: none;
									}
								}
							}
						}
					}
				}
			}
		}
		&.fix{
			background: $blue;
			.headerInner{
				
			}
		}
	}
}
/*SP*/
@media screen and (max-width: 1214px) {
	header{
		width: 100%;
		height: 60px;
		padding: 0;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1000;
		transition: 0.3s;
		.headerInner{
			width: 100%;
			height: 100%;
			display: flex;
			align-items: center;
			justify-content: space-between;
			.logoBox{
				width: 140px;
				height: 27px;
				line-height: 1;
				opacity: 1;
				top: 16px;
				left: 20px;
				z-index: 1001;
				position: fixed;
				text-align: center;
			}
			.headerTop{
				width: 25px;
				display: block;
				position: absolute;
				right: 20px;
				top: 18px;
				cursor: pointer;
				transition: 0.3s;
				.menuBtn{
					width: 25px;
					height: 17px;
					position: relative;
					z-index: 1001;
				}
			}
			.headerBtn{
				display: none;
			}
			nav{
				display: none;
				width: 100%;
				height: 100vh;
				background: $blue;
				position: fixed;
				left: 0;
				top: 0;
				.navInner{
					height: 100%;
					display: flex;
					align-items: center;
					justify-content: center;
					ul{
						width: 100%;
						padding: 0;
						display: block;
						border-top: 1px solid #FFF;
						li{
							display: block;
							width: 100%;
							margin: 0 !important;
							text-align: center;
							border-bottom: 1px solid #FFF;
							a{
								padding: 15px 0;
								display: block;
								color: #FFF;
							}
						}
					}
				}
			}
		}
		&.fix{
			height: 60px;
			background: $blue;
			box-shadow: 0 0 10px rgba(0,0,0,0.2);
			.headerInner{
				.logoBox{
				}
			}
		}
	}
}
/*------------------------------------------
  menuTrigger
------------------------------------------*/
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 25px;
	height: 17px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #FFF;
}
.menu-trigger.active span {
	background: #FFF;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 7px;
	width: 100%;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(7px) rotate(45deg);
	transform: translateY(7px) rotate(45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	/*-webkit-animation: active-menu-bar02 .8s forwards;
	animation: active-menu-bar02 .8s forwards;*/
}
@-webkit-keyframes active-menu-bar02 {
  100% {
	height: 0;
  }
}
@keyframes active-menu-bar02 {
  100% {
	height: 0;
  }
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(-45deg);
  transform: translateY(-8px) rotate(-45deg);
}
/*------------------------------------------
  #cmn
------------------------------------------*/
.innerBox{
	max-width: 980px;
	margin: 0 auto;
	position: relative;
	z-index: 100;
}
@media screen and (max-width: 768px) {
}
/*------------------------------------------
  #mv
------------------------------------------*/
.mvWrapper{
	.mv{
		height: 950px;
		position: relative;
		background: url("../img/mv.jpg") no-repeat center bottom / cover;
		h1{
			max-width: 1400px;
			height: 100%;
			padding: 0 25px;
			margin: 0 auto;
			display: -ms-flex;
			display: flex;
			-ms-align-items: center;
			align-items: center;
		}
	}
}
@media screen and (max-width: 768px) {
	.mvWrapper{
		.mv{
			height: 70vh;
			padding: 30px;
			background: url("../img/mv_sp.jpg") no-repeat center bottom / cover;
			display: -ms-flex;
			display: flex;
			-ms-align-items: flex-end;
			align-items: flex-end;
			-ms-justify-content: flex-start;
			justify-content: flex-start;
			h1{
				height: auto;
				padding: 0 25px 0 0;
				img{
					width: 100%;
					max-width: 350px;
				}
			}
		}
	}
}
/*------------------------------------------
  #cmn
------------------------------------------*/
.ttlBox{
	padding-bottom: 10px;
	position: relative;
	&:before,
	&:after{
		content: "";
		display: block;
		position: absolute;
		left: 0;
	}
	&:before{
		width: 30px;
		height: 4px;
		background: $blue;
		bottom: 0px;
		z-index: 2;
	}
	&:after{
		width: 100%;
		height: 1px;
		background: #000;
		bottom: 2px;
		transform: translate(0, 50%);
		z-index: 1;
	}
	h2{
		font-size: 55px;
		font-weight: 700;
		font-family: 'Barlow', sans-serif;
		color: $blue;
	}
}
@media screen and (max-width: 768px) {
	.ttlBox{
		h2{
			font-size: 30px;
			font-weight: 700;
			font-family: 'Barlow', sans-serif;
			color: $blue;
		}
	}
}
/*------------------------------------------
  #contents_01
------------------------------------------*/
.contents_bg_01{
	padding: 110px 0;
	background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 960px) top 0px / 2000px 3836px;
	.contents_01{
		.ttlBox{
			margin-bottom: 70px;
		}
		.movieBox{
			max-width: 700px;
			margin: 0 auto 70px auto;
		}
		.boxLR{
			max-width: 760px;
			margin: 0 auto;
			display: -ms-flex;
			display: flex;
			.boxL{
				min-width: 214px;
				max-width: 214px;
				margin-right: 65px;
				text-align: center;
			}
			.boxR{
				-ms-flex: 1;
				flex: 1;
				h3{
					margin-bottom: 50px;
					font-size: 40px;
					font-weight: 700;
					span{
						border-bottom: 1px solid #000;
					}
				}
				p{
					font-size: 20px;
					line-height: 2.2;
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.contents_bg_01{
		padding: 50px 20px;
		background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 960px) top 0px / 2000px 3836px;
		.contents_01{
			.ttlBox{
				margin-bottom: 50px;
			}
			.movieBox{
				max-width: 700px;
				margin: 0 auto 70px auto;
			}
			.boxLR{
				max-width: 760px;
				margin: 0 auto;
				display: block;
				.boxL{
					min-width: 214px;
					max-width: 214px;
					margin: 0 auto 30px auto;
					text-align: center;
				}
				.boxR{
					h3{
						margin-bottom: 30px;
						font-size: 20px;
						font-weight: 700;
						text-align: center;
						span{
							border-bottom: 1px solid #000;
						}
					}
					p{
						font-size: 16px;
						line-height: 2.2;
					}
				}
			}
		}
	}
}
/*------------------------------------------
  #contents_02
------------------------------------------*/
.contents_bg_02{
	padding: 40px 0 65px 0;
	.bg_01{
		background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 750px) bottom 0px / 2000px 3836px;
	}
	.bg_02{
		background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1500px) top 0px / 2000px 3836px;
	}
	.bg_03{
		background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1100px) top 0px / 2000px 3836px;
	}
	.contents_02{
		.ttlBox{
			margin-bottom: 105px;
		}
		h3{
			font-size: 35px;
			font-weight: 500;
			text-align: center;
		}
		.bg_01{
			padding-bottom: 150px;
			h3{
				margin-bottom: 105px;
			}
			ul{
				display: -ms-flex;
				display: flex;
				flex-wrap: wrap;
				justify-content: center;
				li{
					-ms-flex: 1;
					flex: 1;
					min-width: 300px;
					max-width: 300px;
					margin: 0 40px 40px 0;
					&:nth-child(3n),
					&:last-child{
						margin-right: 0;
					}
					a{
						width: 100%;
						height: 66px;
						display: flex;
						align-items: center;
						justify-content: center;
						font-size: 18px;
						font-weight: 500;
						color: #FFF;
						background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $blue;
						transition: 0.3s;
						&:hover{
							background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $green;
						}
					}
					&.big{
						min-width: 400px;
						a{
							background-color: $lightskyblue;
							color: $blue;
							&:hover{
								background-color: $lightGreen;
							}
						}
					}
				}
			}
		}
		.bg_02{
			padding-bottom: 95px;
			h3{
				margin-bottom: 90px;
				position: relative;
				transform: translate(0, -50%);
			}
			.contents{
				.box{
					max-width: 1300px;
					margin: 0 auto 20px auto;
					position: relative;
					&:nth-child(odd){
						background: $green;
					}
					&:nth-child(even){
						background: $blue;
					}
					&:last-child{
						margin-bottom: 0;
					}
					&:after{
						content: "";
						width: 124px;
						height: 124px;
						display: block;
						background: url("../img/tri.svg") no-repeat right bottom / 124px 124px;
						position: absolute;
						right: 0;
						bottom: 0;
					}
					.boxLR{
						max-width: 980px;
						min-height: 500px;
						margin: 0 auto;
						position: relative;
						.boxL{
							position: absolute;
							left: -100px;
							top: 64px;
							.inner{
								position: relative;
								.num{
									position: absolute;
									right: -47px;
									top: -30px;
								}
							}
						}
						.boxR{
							width: 490px;
							min-height: 500px;
							padding: 64px 0 195px 0;
							margin-left: auto;
							color: #FFF;
							position: relative;
							h4{
								margin-bottom: 10px;
								font-size: 30px;
								font-weight: 700;
							}
							p{
								font-size: 16px;
								line-height: 1.75;
							}
							ul{
								position: absolute;
								right: 0;
								bottom: 64px;
								width: 300px;
								transition: 0.3s;
								@media screen and (max-width: 1150px) {
									right: 50px;
								}
								@media screen and (max-width: 1080px) {
									right: 100px;
								}
								li{
									border-bottom: 1px solid #FFF;
									position: relative;
									padding-bottom: 20px;
									margin-bottom: 20px;
									&:last-child{
										margin-bottom: 0;
									}
									&:after{
										content: "";
										width: 20px;
										height: 3px;
										display: block;
										background: #FFF;
										position: absolute;
										right: 0;
										bottom: -2px;
									}
									a{
										display: block;
										color: #FFF;
										background: url("../img/arrow_right_white.png") no-repeat right 0px center / 14px;
										transition: 0.3s;
										&:hover{
											opacity: 0.8;
										}
									}
								}
							}
						}
					}
				}
			}
		}
		.bg_03{
			.imgBox{
				height: 680px;
				background: url("../img/bg_con_03.jpg") no-repeat center top / cover;
				transition: 0.3s;
				@media screen and (max-width: 1300px) {
					height: 500px;
				}
			}
			.box_map{
				width: 100%;
				max-width: inherit;
				position: relative;
				top: -100px;
				margin-bottom: -35px;
				h4{
					margin-bottom: 50px;
					font-size: 35px;
					padding-bottom: 10px;
					text-align: center;
					position: relative;
					&:after{
						content: "";
						width: 100%;
						max-width: 600px;
						height: 1px;
						display: block;
						background: #000;
						position: absolute;
						right: 50%;
						bottom: 0;
						transform: translate(50%, 0);
					}
				}
				form{
					max-width: 700px;
					margin: 0 auto;
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.contents_bg_02{
		padding: 50px 20px;
		.bg_01{
			background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 750px) bottom 0px / 2000px 3836px;
		}
		.bg_02{
			background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1500px) top 0px / 2000px 3836px;
		}
		.bg_03{
			background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1100px) top 0px / 2000px 3836px;
		}
		.contents_02{
			.ttlBox{
				margin-bottom: 50px;
			}
			h3{
				font-size: 20px;
				font-weight: 500;
				text-align: center;
			}
			.bg_01{
				padding-bottom: 50px;
				h3{
					margin-bottom: 30px;
				}
				ul{
					display: block;
					li{
						min-width: inherit;
						max-width: 300px;
						margin: 0 auto 20px auto;
						&:nth-child(3n){
							margin: 0 auto 20px auto;
						}
						&:last-child{
							margin: 0 auto;
						}
						a{
							width: 100%;
							height: 66px;
							display: -ms-flex;
							display: flex;
							-ms-align-items: center;
							align-items: center;
							-ms-justify-content: center;
							justify-content: center;
							font-size: 18px;
							font-weight: 500;
							color: #FFF;
							background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $blue;
							transition: 0.3s;
							&:hover{
								background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $green;
							}
						}
						&.big{
							min-width: inherit;
						}
					}
				}
			}
			.bg_02{
				padding-bottom: 50px;
				h3{
					margin-bottom: 30px;
					position: relative;
					transform: inherit;
				}
				.contents{
					.box{
						max-width: 1300px;
						margin: 0 auto 20px auto;
						position: relative;
						&:nth-child(odd){
							background: $green;
						}
						&:nth-child(even){
							background: $blue;
						}
						&:last-child{
							margin-bottom: 0;
						}
						&:after{
							content: "";
							width: 50px;
							height: 50px;
							display: block;
							background: url("../img/tri.svg") no-repeat right bottom / 50px 50px;
							position: absolute;
							right: 0;
							bottom: 0;
						}
						.boxLR{
							max-width: 980px;
							min-height: inherit;
							margin: 0 auto;
							position: relative;
							.boxL{
								padding: 20px;
								position: inherit;
								left: inherit;
								top: inherit;
								.inner{
									position: relative;
									.num{
										position: absolute;
										right: -10px;
										top: -10px;
									}
								}
							}
							.boxR{
								width: auto;
								min-height: inherit;
								padding: 0 20px 20px 20px;
								margin-left: inherit;
								color: #FFF;
								position: relative;
								h4{
									margin-bottom: 10px;
									font-size: 20px;
									font-weight: 700;
								}
								p{
									margin-bottom: 30px;
									font-size: 16px;
									line-height: 1.75;
								}
								ul{
									position: inherit;
									right: inherit;
									bottom: inherit;
									width: auto;
									margin-right: 50px;
									li{
										border-bottom: 1px solid #FFF;
										position: relative;
										padding-bottom: 15px;
										margin-bottom: 15px;
										&:last-child{
											margin-bottom: 0;
										}
										&:after{
											content: "";
											width: 20px;
											height: 3px;
											display: block;
											background: #FFF;
											position: absolute;
											right: 0;
											bottom: -2px;
										}
										a{
											display: block;
											color: #FFF;
											background: url("../img/arrow_right_white.png") no-repeat right 0px center / 14px;
											transition: 0.3s;
											&:hover{
												opacity: 0.8;
											}
										}
									}
								}
							}
						}
					}
				}
			}
			.bg_03{
				.imgBox{
					height: auto;
					width: calc(100% + 40px);
					position: relative;
					left: -20px;
					background: none;
				}
				.box_map{
					width: 100%;
					max-width: inherit;
					position: relative;
					top: -50px;
					margin-bottom: -35px;
					h4{
						margin-bottom: 50px;
						font-size: 20px;
						padding-bottom: 10px;
						text-align: center;
						position: relative;
						&:after{
							content: "";
							width: 100%;
							max-width: 600px;
							height: 1px;
							display: block;
							background: #000;
							position: absolute;
							right: 50%;
							bottom: 0;
							transform: translate(50%, 0);
						}
					}
					form{
						max-width: 700px;
						margin: 0 auto;
					}
				}
			}
		}
	}
}
/*------------------------------------------
  #contents_03
------------------------------------------*/
.contents_bg_03{
	padding-bottom: 145px;
	background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 700px) bottom 0px / 2000px 3836px;
	.contents_03{
		.ttlBox{
			margin-bottom: 80px;
		}
		ul{
			display: -ms-flex;
			display: flex;
			li{
				-ms-flex: 1;
				flex: 1;
				min-width: 300px;
				max-width: 300px;
				&:not(:last-child){
					margin-right: 40px;
				}
				a{
					display: block;
					transition: 0.3s;
					&:hover{
						opacity: 0.8;
					}
				}
				.box{
					position: relative;
					.txtBox{
						width: 100%;
						padding: 0 24px 24px 24px;
						position: absolute;
						left: 0;
						bottom: 0;
						color: #FFF;
						.txt_01{
							max-width: 140px;
							padding-bottom: 10px;
							margin-bottom: 10px;
							font-size: 30px;
							font-weight: 700;
							border-bottom: 1px solid #FFF;
						}
						.txt_02{
							font-size: 18px;
						}
					}
					&:before{
						content: "";
						width: 54px;
						height: 54px;
						display: block;
						position: absolute;
						right: 24px;
						bottom: 24px;
						border: 1px solid #FFF;
						background: url("../img/arrow_right_white.png") no-repeat center center / 14px;
					}
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.contents_bg_03{
		padding: 0 20px 50px 20px;
		background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 700px) bottom 0px / 2000px 3836px;
		.contents_03{
			.ttlBox{
				margin-bottom: 50px;
			}
			ul{
				display: block;
				li{
					-ms-flex: 1;
					flex: 1;
					min-width: 250px;
					max-width: 300px;
					margin: 0 auto 20px auto;
					&:not(:last-child){
						margin: 0 auto 20px auto;
					}
					a{
						display: block;
						transition: 0.3s;
						&:hover{
							opacity: 0.8;
						}
					}
					.box{
						position: relative;
						.txtBox{
							width: 100%;
							padding: 0 20px 20px 20px;
							position: absolute;
							left: 0;
							bottom: 0;
							color: #FFF;
							.txt_01{
								max-width: 140px;
								padding-bottom: 10px;
								margin-bottom: 10px;
								font-size: 28px;
								font-weight: 700;
								border-bottom: 1px solid #FFF;
							}
							.txt_02{
								font-size: 16px;
							}
						}
						&:before{
							content: "";
							width: 54px;
							height: 54px;
							display: block;
							position: absolute;
							right: 24px;
							bottom: 24px;
							border: 1px solid #FFF;
							background: url("../img/arrow_right_white.png") no-repeat center center / 14px;
						}
					}
				}
			}
		}
	}
}
/*------------------------------------------
  #contents_04
------------------------------------------*/
.contents_bg_04{
	padding: 70px 0;
	background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1550px) top 0px / 2000px 3836px;
	.contents_04{
		.ttlBox{
			margin-bottom: 85px;
		}
		ul{
			display: -ms-flex;
			display: flex;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			li{
				min-width: calc(100% / 3.01);
				max-width: calc(100% / 3.01);
				height: 210px;
				padding: 10px;
				&:nth-child(odd){
					background: $green;
				}
				&:nth-child(even){
					background: $lightGreen;
				}
				>div{
					width: 100%;
					height: 100%;
					border: 1px solid #FFF;
					display: -ms-flex;
					display: flex;
					-ms-align-items: center;
					align-items: center;
					-ms-justify-content: center;
					justify-content: center;
					text-align: center;
					color: #FFF;
					>div{
						p{
							margin-bottom: 20px;
							font-size: 18px;
							font-weight: 700;
							.sTxt{
								font-size: 14px;
							}
						}
					}
				}
				&:nth-child(1){
					>div{
						background: url("../img/num_con_05_01.png") no-repeat left 10px top 10px / 58px;
					}
				}
				&:nth-child(2){
					>div{
						background: url("../img/num_con_05_02.png") no-repeat left 10px top 10px / 58px;
					}
				}
				&:nth-child(3){
					>div{
						background: url("../img/num_con_05_03.png") no-repeat left 10px top 10px / 58px;
					}
				}
				&:nth-child(4){
					>div{
						background: url("../img/num_con_05_04.png") no-repeat left 10px top 10px / 58px;
					}
				}
				&:nth-child(5){
					>div{
						background: url("../img/num_con_05_05.png") no-repeat left 10px top 10px / 58px;
					}
				}
				&:nth-child(6){
					>div{
						background: url("../img/num_con_05_06.png") no-repeat left 10px top 10px / 58px;
					}
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.contents_bg_04{
		padding: 50px 20px;
		background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1550px) top 0px / 2000px 3836px;
		.contents_04{
			.ttlBox{
				margin-bottom: 50px;
			}
			ul{
				display: -ms-flex;
				display: flex;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				li{
					min-width: 100%;
					max-width: 100%;
					height: 210px;
					padding: 10px;
					&:nth-child(odd){
						background: $green;
					}
					&:nth-child(even){
						background: $lightGreen;
					}
					>div{
						width: 100%;
						height: 100%;
						border: 1px solid #FFF;
						display: -ms-flex;
						display: flex;
						-ms-align-items: center;
						align-items: center;
						-ms-justify-content: center;
						justify-content: center;
						text-align: center;
						color: #FFF;
						>div{
							p{
								margin-bottom: 20px;
								font-size: 18px;
								font-weight: 700;
								.sTxt{
									font-size: 14px;
								}
							}
						}
					}
					&:nth-child(1){
						>div{
							background: url("../img/num_con_05_01.png") no-repeat left 10px top 10px / 58px;
						}
					}
					&:nth-child(2){
						>div{
							background: url("../img/num_con_05_02.png") no-repeat left 10px top 10px / 58px;
						}
					}
					&:nth-child(3){
						>div{
							background: url("../img/num_con_05_03.png") no-repeat left 10px top 10px / 58px;
						}
					}
					&:nth-child(4){
						>div{
							background: url("../img/num_con_05_04.png") no-repeat left 10px top 10px / 58px;
						}
					}
					&:nth-child(5){
						>div{
							background: url("../img/num_con_05_05.png") no-repeat left 10px top 10px / 58px;
						}
					}
					&:nth-child(6){
						>div{
							background: url("../img/num_con_05_06.png") no-repeat left 10px top 10px / 58px;
						}
					}
				}
			}
		}
	}
}
/*------------------------------------------
  #contents_05
------------------------------------------*/
.contents_bg_05{
	padding: 30px 0 100px 0;
	background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 100px) top -1500px / 2000px 3836px;
	.contents_05{
		.ttlBox{
			margin-bottom: 80px;
		}
		.qaWrapper{
			dl{
				margin-bottom: 15px;
				dt{
					position: relative;
					padding: 20px 75px 20px 105px;
					background: url("../img/icon_q.png") no-repeat left 30px center / 20px $blue;
					font-size: 18px;
					font-weight: 700;
					color: #FFF;
					cursor: pointer;
					&:before{
						content: "";
						width: 1px;
						height: 38px;
						display: block;
						position: absolute;
						left: 80px;
						top: 50%;
						transform: translate(0, -50%);
						background: #FFF;
					}
					>span{
						width: 18px;
						height: 18px;
						display: block;
						position: absolute;
						right: 30px;
						top: 50%;
						transform: translate(0, -50%);
						>span{
							position: relative;
							width: 100%;
							height: 100%;
							display: block;
							&:before,
							&:after{
								content: "";
								width: 100%;
								height: 1px;
								display: block;
								background: #FFF;
								position: absolute;
								right: 50%;
								top: 50%;
								transform: translate(50%, -50%);
								transition: 0.3s;
							}
							&:after{
								transform: translate(50%, -50%) rotate(90deg);
							}
						}
					}
				}
				dd{
					display: none;
					position: relative;
					padding: 21px 75px 21px 105px;
					background: url("../img/icon_a.png") no-repeat left 30px center / 20px #FFF;
					font-size: 16px;
					font-weight: 500;
					border: 1px solid $blue;
					border-top: none;
					&:before{
						content: "";
						width: 1px;
						height: 38px;
						display: block;
						position: absolute;
						left: 80px;
						top: 50%;
						transform: translate(0, -50%);
						background: $blue;
					}
				}
				&.active{
					dt{
						>span>span:after{
							transform: translate(50%, -50%) rotate(180deg);
						}
					}
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.contents_bg_05{
		padding: 50px 20px;
		background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 100px) top -1500px / 2000px 3836px;
		.contents_05{
			.ttlBox{
				margin-bottom: 50px;
			}
			.qaWrapper{
				dl{
					margin-bottom: 15px;
					dt{
						position: relative;
						padding: 20px 60px 20px 60px;
						background: url("../img/icon_q.png") no-repeat left 15px center / 20px $blue;
						font-size: 18px;
						font-weight: 700;
						color: #FFF;
						cursor: pointer;
						&:before{
							content: "";
							width: 1px;
							height: 38px;
							display: block;
							position: absolute;
							left: 45px;
							top: 50%;
							transform: translate(0, -50%);
							background: #FFF;
						}
						>span{
							width: 18px;
							height: 18px;
							display: block;
							position: absolute;
							right: 30px;
							top: 50%;
							transform: translate(0, -50%);
							>span{
								position: relative;
								width: 100%;
								height: 100%;
								display: block;
								&:before,
								&:after{
									content: "";
									width: 100%;
									height: 1px;
									display: block;
									background: #FFF;
									position: absolute;
									right: 50%;
									top: 50%;
									transform: translate(50%, -50%);
									transition: 0.3s;
								}
								&:after{
									transform: translate(50%, -50%) rotate(90deg);
								}
							}
						}
					}
					dd{
						display: none;
						position: relative;
						padding: 21px 20px 21px 60px;
						background: url("../img/icon_a.png") no-repeat left 15px center / 20px #FFF;
						font-size: 16px;
						font-weight: 500;
						border: 1px solid $blue;
						border-top: none;
						&:before{
							content: "";
							width: 1px;
							height: 38px;
							display: block;
							position: absolute;
							left: 45px;
							top: 50%;
							transform: translate(0, -50%);
							background: $blue;
						}
					}
					&.active{
						dt{
							>span>span:after{
								transform: translate(50%, -50%) rotate(180deg);
							}
						}
					}
				}
			}
		}
	}
}
/*------------------------------------------
  #contents_06
------------------------------------------*/
.contents_bg_06{
	padding: 90px 0 230px 0;
	background: url("../img/bg_foot.jpg") no-repeat center top / cover;
	.contents_06{
		.btnBox{
			a{
				width: 100%;
				max-width: 500px;
				height: 120px;
				padding: 10px;
				margin: 0 auto;
				display: block;
				background: $lightGreen;
				transition: 0.3s;
				>span{
					width: 100%;
					height: 100%;
					display: -ms-flex;
					display: flex;
					-ms-align-items: center;
					align-items: center;
					-ms-justify-content: center;
					justify-content: center;
					font-size: 32px;
					font-weight: 500;
					font-family: 'Barlow', sans-serif;
					color: #FFF;
					border: 1px solid #FFF;
				}
				&:hover{
					background: $green;
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.contents_bg_06{
		padding: 100px 20px;
		background: url("../img/bg_foot.jpg") no-repeat center top / cover;
		.contents_06{
			.btnBox{
				a{
					width: 100%;
					max-width: 500px;
					height: 120px;
					padding: 10px;
					margin: 0 auto;
					display: block;
					background: $lightGreen;
					transition: 0.3s;
					>span{
						width: 100%;
						height: 100%;
						display: -ms-flex;
						display: flex;
						-ms-align-items: center;
						align-items: center;
						-ms-justify-content: center;
						justify-content: center;
						font-size: 32px;
						font-weight: 500;
						font-family: 'Barlow', sans-serif;
						color: #FFF;
						border: 1px solid #FFF;
					}
					&:hover{
						background: $green;
					}
				}
			}
		}
	}
}
/* ------------------------------
   トップへ戻る
------------------------------ */
#toTop{
	position: fixed;
	right: 20px;
	bottom: 10px;
	display: none;
	z-index: 200;
}
#toTop a:hover{
	opacity: 0.8;
}
@media screen and (max-width: 768px) {
	#toTop{
		right: 20px;
		bottom: 20px;
		img{
			width: 60px;
		}
	}
}
/*------------------------------------------
  footer
------------------------------------------*/
footer{
	padding: 20px 40px;
	background: $blue;
	text-align: center;
}
footer *{
	color: #FFF;
	font-size: 15px;
}
footer .innerBox{
	max-width: 980px;
}
footer #links{
	font-size: 15px;
}
footer #links a{
	display: inline-block;
	font-size: 15px;
}
footer #links a:last-child{
	margin-right: 0;
}
footer #links a:hover{
	text-decoration: underline;
}
footer #copy{
}
footer #copy small{
	font-size: 13px;
}
@media screen and (max-width: 768px) {
	footer{
		padding: 20px 5% 50px 5%;
		min-width: inherit;
		text-align: center;
		display: block;
	}
	footer #links{
		padding: 30px 5% 0 5%;
		margin-bottom: 0;
		float: inherit;
		text-align: center;
		font-size: 12px;
		a{
			display: inline-block;
			margin: 0 10px 20px 10px;
			&:last-child{
				margin: 0 10px 20px 10px;
			}
		}
	}
	footer #copy{
		float: inherit;
		small{
			font-size: 12px;
		}
	}
}
/*------------------------------------------
  モーダル
------------------------------------------*/
.modalContents{
	display: none;
}
.modaal-container{
	max-width: 100%;
	background: none;
	box-shadow: inherit;
}
.modaal-content-container{
	padding: 0;
}
/*.modaal-inner-wrapper{
	padding: 200px 0 100px 0;
}*/
.modalInner{
	max-width: 730px;
	margin: 0 auto;
	.box{
		.btnBox{
			a{
				width: 100%;
				max-width: 200px;
				height: 60px;
				margin: 0 auto;
				display: -ms-flex;
				display: flex;
				-ms-align-items: center;
				align-items: center;
				-ms-justify-content: center;
				justify-content: center;
				border: 1px solid $blue;
				font-size: 18px;
				color: $blue;
				transition: 0.3s;
				cursor: pointer;
				&:hover{
					background: $blue;
					color: #FFF;
				}
			}
		}
	}
}
.modaal-overlay{
	background: rgba(255,255,255,0.9) !important;
	opacity: 1 !important;
	z-index: 1000;
}
.modalType_01{
	max-width: 730px;
	margin: 0 auto;
	padding: 50px 0;
	.boxLR{
		position: relative;
		.boxL{
			position: absolute;
			left: 0;
			top: 0;
		}
		.boxR{
			max-width: 290px;
			margin-left: auto;
			position: relative;
			z-index: 100;
			.topTxt{
				padding: 20px 20px 40px 20px;
				margin-bottom: 20px;
				background: $blue;
				color: #FFF;
				.txt_01{
					margin-bottom: 5px;
					font-size: 18px;
				}
				.txt_02{
					font-size: 24px;
					font-weight: 700;
				}
			}
			.timeLine{
				ul{
					margin-bottom: 65px;
					position: relative;
					&:after{
						content: "";
						width: 1px;
						height: calc(100% - 24px);
						display: block;
						background: #808080;
						position: absolute;
						left: 78px;
						top: 12px;
						z-index: 1;
					}
					li{
						position: relative;
						z-index: 2;
						&:not(:last-child){
							margin-bottom: 35px;
						}
						dl{
							display: -ms-flex;
							display: flex;
							dt{
								min-width: 67px;
								max-width: 67px;
								height: 26px;
								padding: 1px 17px 0 0;
								margin: 0 28px 0 0;
								background: url("../img/bg_time.png") no-repeat center / 67px;
								text-align: right;
								position: relative;
								&:after{
									content: "";
									width: 10px;
									height: 10px;
									display: block;
									background: $green;
									border-radius: 10px;
									position: absolute;
									right: -17px;
									top: 8px;
								}
							}
							dd{
								-ms-flex: 1;
								flex: 1;
							}
						}
					}
				}
			}
		}
	}
}
.modalType_02{
	max-width: 730px;
	margin: 0 auto;
	padding: 50px 0;
	.topBox{
		margin-bottom: 40px;
		.imgBox{
			max-width: 500px;
			margin: 0 auto;
			position: relative;
			.txtBox{
				width: 190px;
				min-height: 190px;
				padding: 20px;
				background: $blue;
				color: #FFF;
				position: absolute;
				right: -115px;
				bottom: -32px;
				.txt_01{
					font-size: 28px;
					font-weight: 700;
					padding-bottom: 5px;
					margin-bottom: 10px;
					border-bottom: 1px solid #FFF;
				}
				.txt_02{
					
				}
			}
		}
	}
	.bottomBox{
		margin-bottom: 110px;
		.ttlBox{
			margin-bottom: 40px;
			h2{
				font-size: 30px;
				font-weight: 500;
			}
		}
		.contents{
			dl{
				&:not(:last-child){
					margin-bottom: 40px;
				}
				dt{
					padding: 0 0 0 60px;
					margin-bottom: 20px;
					position: relative;
					font-size: 16px;
					font-weight: 700;
					color: $blue;
					&:before{
						width: 44px;
						height: 44px;
						display: -ms-flex;
						display: flex;
						-ms-align-items: center;
						align-items: center;
						-ms-justify-content: center;
						justify-content: center;
						font-size: 22px;
						color: #FFF;
						font-family: 'Barlow', sans-serif;
						background: $blue;
						position: absolute;
						left: 0;
						top: -10px;
					}
				}
				dd{
					line-height: 1.75;
					padding: 0 0 0 60px;
				}
				&:nth-child(1) dt:before{
					content: "Q1";
				}
				&:nth-child(2) dt:before{
					content: "Q2";
				}
				&:nth-child(3) dt:before{
					content: "Q3";
				}
			}
		}
	}
}
@media screen and (max-width: 768px) {
	.modaal-inner-wrapper{
		padding: 60px 5%;
	}
}
@media screen and (max-width: 767px) {
	.modaal-inner-wrapper{
		padding: 60px 5%;
	}
	.modalType_01{
		max-width: 730px;
		margin: 0 auto;
		padding: 50px 0;
		.boxLR{
			position: relative;
			.boxL{
				position: inherit;
				left: inherit;
				top: inherit;
				text-align: center;
			}
			.boxR{
				max-width: 470px;
				margin: 0 auto;
				position: relative;
				z-index: 100;
				.topTxt{
					padding: 20px 20px 40px 20px;
					margin-bottom: 20px;
					background: $blue;
					color: #FFF;
					.txt_01{
						margin-bottom: 5px;
						font-size: 18px;
					}
					.txt_02{
						font-size: 24px;
						font-weight: 700;
					}
				}
				.timeLine{
					max-width: 290px;
					margin: 0 auto;
					ul{
						margin-bottom: 65px;
						position: relative;
						&:after{
							content: "";
							width: 1px;
							height: calc(100% - 24px);
							display: block;
							background: #808080;
							position: absolute;
							left: 78px;
							top: 12px;
							z-index: 1;
						}
						li{
							position: relative;
							z-index: 2;
							&:not(:last-child){
								margin-bottom: 35px;
							}
							dl{
								display: -ms-flex;
								display: flex;
								dt{
									min-width: 67px;
									max-width: 67px;
									height: 26px;
									padding: 1px 17px 0 0;
									margin: 0 28px 0 0;
									background: url("../img/bg_time.png") no-repeat center / 67px;
									text-align: right;
									position: relative;
									&:after{
										content: "";
										width: 10px;
										height: 10px;
										display: block;
										background: $green;
										border-radius: 10px;
										position: absolute;
										right: -17px;
										top: 8px;
									}
								}
								dd{
									-ms-flex: 1;
									flex: 1;
								}
							}
						}
					}
				}
			}
		}
	}
	.modalType_02{
		max-width: 730px;
		margin: 0 auto;
		padding: 50px 0;
		.topBox{
			margin-bottom: 40px;
			.imgBox{
				max-width: 500px;
				margin: 0 auto;
				position: relative;
				text-align: center;
				.txtBox{
					width: 150px;
					min-height: 130px;
					padding: 20px;
					background: $blue;
					color: #FFF;
					text-align: left;
					position: absolute;
					right: 0;
					bottom: -40px;
					.txt_01{
						font-size: 22px;
						font-weight: 700;
						padding-bottom: 5px;
						margin-bottom: 10px;
						border-bottom: 1px solid #FFF;
					}
					.txt_02{
						font-size: 14px;
					}
				}
			}
		}
		.bottomBox{
			margin-bottom: 110px;
			.ttlBox{
				margin-bottom: 40px;
				h2{
					font-size: 30px;
					font-weight: 500;
				}
			}
			.contents{
				dl{
					&:not(:last-child){
						margin-bottom: 40px;
					}
					dt{
						padding: 0 0 0 60px;
						margin-bottom: 20px;
						position: relative;
						font-size: 16px;
						font-weight: 700;
						color: $blue;
						&:before{
							width: 44px;
							height: 44px;
							display: -ms-flex;
							display: flex;
							-ms-align-items: center;
							align-items: center;
							-ms-justify-content: center;
							justify-content: center;
							font-size: 22px;
							color: #FFF;
							font-family: 'Barlow', sans-serif;
							background: $blue;
							position: absolute;
							left: 0;
							top: -10px;
						}
					}
					dd{
						line-height: 1.75;
						padding: 0 0 0 60px;
					}
					&:nth-child(1) dt:before{
						content: "Q1";
					}
					&:nth-child(2) dt:before{
						content: "Q2";
					}
					&:nth-child(3) dt:before{
						content: "Q3";
					}
				}
			}
		}
	}
}