  @charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Ropa+Sans&display=swap');
.en {
	font-family: 'Ropa Sans', sans-serif;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++    PC    ++++++++++++++++++++++++++++++++++++++++++++++  */
/* 801px ~ */
@media screen and (min-width: 801px), print {
	
	/*----------------------------------------------------

		¹²Í¨

	------------------------------------------------------*/
	
	main {
		position: relative;
		background-color: #ededed;
	}
	#deco {
		position: absolute;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	#deco::before ,
	#deco::after {
		position: absolute;
		content: "";
		top: 0;
		width: 1400px;
		height: 100%;
		z-index: 1;
		background-size: cover;
		background-position: 50% 0;
	}
	#deco::before {
		background-image: url("/recruit/w-nexco/business/img/project/deco_l.png");
		left: 0;
	}
	#deco::after {
		background-image: url("/recruit/w-nexco/business/img/project/deco_r.png");
		right: 0;
	}
	#maintitle{
		position: relative;
		text-align: center;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		flex-direction: column;
		height: 350px;
		background-size: cover;
		z-index: 1;
	}
	#maintitle::before ,
	#maintitle::after {
		position: absolute;
		content: "";
		top: 0;
		width: 370px;
		height: 100%;
		z-index: 1;
		background-size: cover;
		background-position: 50% 0;
	}
	#maintitle::before {
		background-image: url("/recruit/w-nexco/business/img/project/main_deco_l.png");
		left: 0;
	}
	#maintitle::after {
		background-image: url("/recruit/w-nexco/business/img/project/main_deco_r.png");
		right: 0;
	}
	#p01 #maintitle{
		background-image: url("/recruit/w-nexco/business/img/project/mainimg01.jpg");
	}
	#p02 #maintitle{
		background-image: url("/recruit/w-nexco/business/img/project/mainimg02.jpg");
	}
	#p03 #maintitle{
		background-image: url("/recruit/w-nexco/business/img/project/mainimg03.jpg");
	}
		#maintitle p.en {
			color: #fff;
		}
			#maintitle .tit_cat{
				position: relative;
				z-index: 1;
				font-weight: bold;
				color: #fff;
			}
	
	.modaal-video-wrap {
		width: 90%;
		max-width: 834px;
		margin: auto;
	}
		.modaal-video-container {
			height: 480px;
			padding-bottom: 0;
		}
	
	
	.contents {
		position: relative;
		z-index: 1;
	}
		.contents .btn {
		}
			.contents .btn a {
				color: #fff;
				font-size: 16px;
				display: block;
				background-color: #000;
				position: relative;
				padding: 12px 20px;
				box-sizing: border-box;
			}
			.contents .btn a::before ,
			.contents .btn a::after {
				position: absolute;
				content: "";
			}
			.contents .btn a::before {
				top: 0;
				bottom: 0;
				right: 16px;
				margin: auto;
				width: 28px;
				height: 5px;
				border-right: solid 1px #fff;
				border-bottom: solid 1px #fff;
				transform: skew(45deg);
				transition: 0.3s;
			}
			.contents .btn a:hover::before {
				right: 10px;
			}
			.contents .btn a::after {
				top: 0;
				right: 42px;
				height: calc(100% - 20px);
				border-right: solid 3px #0078d2;
				transform: skew(135deg);
			}
				.contents .btn a .pdf_link::after {
					width: 12px;
					height: 16px;
					background: url(/recruit/w-nexco/business/img/project/icon_pdf.png) no-repeat center;
					background-size: cover;
				}
				.contents .btn a .bla_link {
					position: relative;
					padding-right: 20px;
				}
				.contents .btn a .bla_link::after {
					content: '';
					display: inline-block;
/*
					display: block;
					position: absolute;
*/
					width: 12px;
					height: 16px;
					background: url(/recruit/w-nexco/business/img/project/icon_bla.png) no-repeat center;
					background-size: cover;
					margin-bottom: -1px;
					margin-left: 5px;
/*
					right: 0;
					bottom: 0.1em;
*/
				}
		.contents section {
			margin-top: 180px;
		}
		.contents section + section {
			margin-top: 200px;
		}
		#p03 .contents #sec04 {
			padding-bottom: 180px;
		}
			.contents section .sec_area {
				background-color: #fff;
				position: relative;
				padding: 50px 60px;
				box-sizing: border-box;
			}
			#p01 .contents #sec02 .sec_area:nth-of-type(1) {
				padding-bottom: 80px;
			}
			#p01 .contents #sec02 .sec_area:nth-of-type(4) {
				margin-top: 7px;
				padding-top: 20px;
			}
			#p01 .contents #sec02 .sld_area + .sec_area {
				padding-top: 120px;
			}
				.contents section .sec_area .sec_num {
					position: absolute;
					top: -45px;;
					left: 0;
					right: 0;
					width: 104px;
					margin: auto;
				}
				.contents section .sec_area h2 {
					font-size: 20px;
					text-align: center;
					letter-spacing: 4px;
				}
				.contents section .sec_area .sec_blo {
				}
				.contents section .sec_area .sec_blo + .sec_blo {
					margin-top: 60px;
				}
				.contents section .sec_area .sec_blo01 {
					margin-top: 50px;
				}
				.contents section .sec_area .sec_blo02 {
					margin-top: 50px;
					display: flex;
					justify-content: space-between;
				}
				.contents section .sec_area .sec_bdr {
					position: relative;
					border: solid 1px #b8b8b8;
					padding: 40px;
				}
				.contents section .sec_area .sec_bdr.gray {
					background-color: #f0f0f0;
					border: none;
				}
				.contents section .sec_area .sec_blo02 .sec_bdr {
					width: calc(50% - 16px);
				}
					.contents section .sec_area .sec_blo p {
						line-height: 2.4;
						text-align: justify;
					}
					.contents section .sec_area .sec_blo01 p {
						margin-top: 35px;
					}
					.contents section .sec_area .sec_blo01 .sec_img {
						margin-top: 40px;
					}
						.contents section .sec_area .sec_blo01 .sec_img span {
							font-size: 12px;
							text-align: right;
							display: block;
							margin-top: 5px;
						}
					.contents section .sec_area .sec_blo .sec_box {
					}
					#p01 .contents #sec02 .sec_area .sec_blo .sec_txt {
						width: calc(100% - 488px);
					}
					#p02 .contents #sec01 .sec_area .sec_blo .sec_txt {
						width: calc(100% - 252px);
					}
					#p03 .contents #sec03 .sec_area .sec_blo .sec_txt {
						width: calc(100% - 530px);
					}
						.contents section .sec_area .sec_blo .sec_txt h3 {
							font-size: 28px;
							letter-spacing: 6px;
						}
						.contents section .sec_area .sec_blo .sec_txt h3 + p {
							margin-top: 25px;
						}
					#p01 .contents #sec02 .sec_area .sec_blo .sec_img {
						width: 448px;
					}
					#p02 .contents #sec01 .sec_area .sec_blo .sec_img {
						width: 212px;
					}
					#p03 .contents #sec03 .sec_area .sec_blo .sec_img {
						width: 490px;
					}
						.contents section .sec_area .sec_blo .sec_img .btn {
							margin-top: 25px;
						}
						.contents section .sec_area .sec_bdr .sec_box_tit {
							position: absolute;
							top: -12px;
							left: 0;
							right: 0;
							text-align: center;
							font-size: 16px;
							font-weight: bold;
							line-height: 1.5;
						}
							.contents section .sec_area .sec_bdr .sec_box_tit span {
								background-color: #fff;
								display: inline-block;
								padding: 0 5px 0 15px;
							}
							.contents section .sec_area .sec_bdr.gray .sec_box_tit span {
								background-color: transparent;
							}
					.contents section .sec_area .sec_bdr .sec_img {
					}
						.contents section .sec_area .sec_bdr .sec_img img + img {
							margin-top: 20px;
						}
					.contents section .sec_area .sec_blo02 .sec_box {
						position: relative;
					}
					.contents section .sec_area .sec_blo02 .sec_box + .sec_box::before {
						position: absolute;
						content: "";
						top: 0;
						left: -30px;
						width: 1px;
						height: 100%;
						background-color: #b8b8b8;
					}
					#p03 .contents section .sec_area .sec_blo02 .sec_box + .sec_box::before {
						left: -50px;
					}
					#p02 .contents #sec01 .sec_area .sec_bdr .sec_box {
						width: calc(50% - 30px);
					}
					#p03 .contents #sec01 .sec_area .sec_bdr .sec_box {
						width: calc(50% - 50px);
					}
							.contents section .sec_area .sec_blo .sec_box dt {
								font-size: 16px;
								font-weight: bold;
								letter-spacing: 3px;
							}
							#p03 .contents section .sec_area .sec_blo .sec_box dt {
								font-size: 14px;
							}
								.contents section .sec_area .sec_blo .sec_box dt span ,
								.contents section .sec_area .sec_blo .sec_box dd span {
									font-size: 12px;
									color: #00a0e9;
									margin-right: 3px;
								}
							.contents section .sec_area .sec_blo .sec_box dd {
								margin-top: 12px;
								line-height: 1.5;
							}
							.contents section .sec_area .sec_blo .gray .sec_box dd {
								text-indent: -1em;
								padding-left: 1em;
							}
							.contents section .sec_area .sec_blo .sec_box dd + dd {
								margin-top: 8px;
							}
							#p02 .contents section .sec_area .sec_blo .sec_box02 dd {
								display: flex;
								justify-content: space-between;
							}
								.contents section .sec_area .sec_blo .sec_box dd p {
									line-height: 2;
								}
								#p02 .contents section .sec_area .sec_blo .sec_box02 dd p {
									width: calc(100% - 204px);
								}
								#p02 .contents section .sec_area .sec_blo .sec_box02 dd div {
									width: 184px;
								}
		.contents section .sld_area {
		}
			.contents section .sld_area img {
				max-width: auto;
			}
					.contents .sec_area .movie {
						position: relative;
						z-index: 1;
						padding: 80px 0 60px;
					}
					.contents .sec_area .movie::before {
						position: absolute;
						content: "";
						top: 0;
						left: -60px;
						background-color: rgba(0,160,233,0.3);
						width: calc(100% + 120px);
						height: 100%;
						z-index: -1;
					}
						.contents .sec_area .movie .sec_tit {
							text-align: center;
							color: rgba(0,160,233,0.3);
							font-size: 116px;
							letter-spacing: 14px;
							line-height: 1;
							position: absolute;
							top: -55px;
							left: 0;
							right: 0;
						}
						.contents .sec_area .movie div.youtube {
							width: 560px;
							margin: auto;
						}
							.contents .sec_area .movie div.youtube iframe {
								border: none;
							}
							.contents .sec_area .movie div.youtube p {
								font-size: 18px;
								font-weight: bold;
								margin-top: 15px;
							}
						.contents .sec_area .movie .btn {
							position: absolute;
							bottom: -20px;
							right: 40px;
							width: 200px;
						}
							.contents .sec_area .movie .btn a {
								font-size: 12px;
								padding: 8px 15px;
							}
							.contents .sec_area .movie .btn a::before{
								width: 24px;
							}
							.contents .sec_area .movie .btn a::after{
								right: 45px;
								height: calc(100% - 15px);
							}
		.contents section .cmt_area {
			margin: 100px auto 50px;
			position: relative;
			z-index: 1;
		}
		#p01 .contents #sec02 .movie + .cmt_area {
			margin: 150px auto 100px;
		}
		.contents section .cmt_area::before ,
		.contents section .cmt_area::after {
			position: absolute;
			content: "";
			background-color: #00a0e9;
			width: 100%;
			height: 1px;
			left: 0;
		}
		.contents section .cmt_area::before {
			top: 30px;
			z-index: -1;
		}
		.contents section .cmt_area::after {
			bottom: 0;
		}
			.contents section .cmt_area .cmt_tit {
				width: 212px;
				margin: auto;
				background-color: #fff;
				padding: 0 15px;
				box-sizing: content-box;
			}
			.contents section .cmt_area .cmt_blo {
				display: flex;
				justify-content: space-between;
				padding: 40px 0 40px;
			}
			.contents section .cmt_area .cmt_blo + .cmt_blo {
				border-top: 1px solid #ccecfb;
			}
				.contents section .cmt_area .cmt_blo .cmt_txt {
					width: calc(100% - 318px);
				}
					.contents section .cmt_area .cmt_blo .cmt_txt h3 {
						font-size: 16px;
						letter-spacing: 4px;
						line-height: 2;
					}
					.contents section .cmt_area .cmt_blo .cmt_txt p {
						margin-top: 20px;
						text-align: justify;
					}
				.contents section .cmt_area .cmt_blo .cmt_prof {
					width: 278px;
				}
					.contents section .cmt_area .cmt_blo .cmt_prof .cmt_img {
						margin-bottom: 15px;
					}
					.contents section .cmt_area .cmt_blo .cmt_prof .cmt_img + div {
						display: flex;
						align-items: flex-start;
					}
						.contents section .cmt_area .cmt_blo .cmt_prof p {
							line-height: 1;
							text-align: center;
							padding: 4px 2px;
							color: #fff;
							margin: 4px 10px 0 0;
							width: 84px;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof .ji {
							background-color: #ea6500;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof .do {
							background-color: #00a38d;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof .shi {
							background-color: #0078d2;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof dl {
						}
							.contents section .cmt_area .cmt_blo .cmt_prof dl dt {
								letter-spacing: 3px;
							}
							.contents section .cmt_area .cmt_blo .cmt_prof dl dd {
								font-size: 12px;
								line-height: 1.5;
								letter-spacing: 1.5px;
							}

		.contents section .ft_link {
			padding: 100px 0 120px;
		}
			.contents section .ft_link p {
				font-size: 17px;
				font-weight: bold;
				text-align: center;
				letter-spacing: 3px;
			}
			.contents section .ft_link .btn {
				margin: 15px auto 0;
			}
			#p01 .contents section .ft_link .btn {
				width: 364px;
			}
			#p02 .contents section .ft_link .btn {
				width: 520px;
			}
				#p02 .contents section .ft_link .btn a + a {
					margin-top: 40px;
				}
				#p02 .contents section .ft_link .btn a .qr {
					position: absolute;
					top: -20px;
					right: 100px;
					width: 84px;
				}
					#p02 .contents section .ft_link .btn a .qr img {
						opacity: 1 !important;
					}
	
	.modal {
		display: none;
	}
}




/* ++++++++++++++++++++++++++++++++++++++++++++++    sp    ++++++++++++++++++++++++++++++++++++++++++++++  */
/* ~ 800px */
@media only screen and (max-width: 800px) {
	/*----------------------------------------------------

		¹²Í¨

	------------------------------------------------------*/
	main {
		position: relative;
		background-color: #ededed;
	}
	#deco {
		position: absolute;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	#deco::before ,
	#deco::after {
		position: absolute;
		content: "";
		top: 0;
		width: 700px;
		height: 3890px;
		z-index: 1;
		background-size: cover;
	}
	#deco::before {
		background-image: url("/recruit/w-nexco/business/img/project/deco_l.png");
		left: 0;
		background-position: 0% 0;
	}
	#deco::after {
		background-image: url("/recruit/w-nexco/business/img/project/deco_r.png");
		right: -3px;
		background-position: 100% 0;
	}
	#maintitle{
		position: relative;
		text-align: center;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		flex-direction: column;
		height: 180px;
		background-size: cover;
		z-index: 1;
	}
	#maintitle::before ,
	#maintitle::after {
		position: absolute;
		content: "";
		top: 0;
		width: 185px;
		height: 100%;
		z-index: 1;
		background-size: cover;
		background-position: 50% 0;
	}
	#maintitle::before {
		background-image: url("/recruit/w-nexco/business/img/project/main_deco_l.png");
		left: -5px;
	}
	#maintitle::after {
		background-image: url("/recruit/w-nexco/business/img/project/main_deco_r.png");
		right: 0;
	}
	#p01 #maintitle{
		background-image: url("/recruit/w-nexco/business/img/project/mainimg01.jpg");
	}
	#p02 #maintitle{
		background-image: url("/recruit/w-nexco/business/img/project/mainimg02.jpg");
	}
	#p03 #maintitle{
		background-image: url("/recruit/w-nexco/business/img/project/mainimg03.jpg");
	}
		#maintitle p.en {
			color: #fff;
		}
			#maintitle .tit_cat{
				position: relative;
				z-index: 1;
				font-weight: bold;
				color: #fff;
			}
	
	.modaal-overlay {
		background-color: rgba(0,0,0,.7) !important;
	}
	.modaal-video-wrap {
		width: 90%;
		max-width: 834px;
		margin: auto;
	}
		.modaal-video-container {
			height: 52vw;
			padding-bottom: 0;
		}
	.modaal-inner-wrapper {
		display: table-cell;
	}
	.modaal-wrapper *[tabindex="0"] {
	     height: auto; 
	}
	.modaal-close {
		display: none;
	}
	
	.contents {
		position: relative;
		z-index: 1;
	}
		.contents .btn {
		}
			.contents .btn a {
				color: #fff;
				font-size: 14px;
				display: block;
				background-color: #000;
				position: relative;
				padding: 12px 80px 12px 15px;
				box-sizing: border-box;
			}
			.contents .btn a::before ,
			.contents .btn a::after {
				position: absolute;
				content: "";
			}
			.contents .btn a::before {
				top: 0;
				bottom: 0;
				right: 16px;
				margin: auto;
				width: 28px;
				height: 5px;
				border-right: solid 1px #fff;
				border-bottom: solid 1px #fff;
				transform: skew(45deg);
				transition: 0.3s;
			}
			.contents .btn a::after {
				top: 0;
				right: 42px;
				height: calc(100% - 20px);
				border-right: solid 3px #0078d2;
				transform: skew(135deg);
			}
				.contents .btn a .pdf_link::after {
					width: 12px;
					height: 16px;
					background: url(/recruit/w-nexco/business/img/project/icon_pdf.png) no-repeat center;
					background-size: cover;
					top: auto;
					bottom: -0.1em;
				}
				.contents .btn a .bla_link {
					position: relative;
					padding-right: 20px;
				}
				.contents .btn a .bla_link::after {
					content: '';
					display: inline-block;
					margin-bottom: -1px;
					margin-left: 5px;
/*
					display: block;
					position: absolute;
*/
					width: 12px;
					height: 16px;
					background: url(/recruit/w-nexco/business/img/project/icon_bla.png) no-repeat center;
					background-size: cover;
/*
					right: 0;
					bottom: -0.1em;
*/
				}
		.contents section {
			margin-top: 100px;
		}
		#p03 .contents #sec04 {
			padding-bottom: 80px;
		}
			.contents section .sec_area {
				background-color: #fff;
				position: relative;
				padding: 45px 5%;
				box-sizing: border-box;
			}
			#p01 .contents #sec02 .sec_area:nth-of-type(1) {
				padding-bottom: 60px;
			}
			#p01 .contents #sec02 .sec_area:nth-of-type(4) {
				margin-top: 7px;
				padding-top: 20px;
			}
			#p01 .contents #sec02 .sld_area + .sec_area {
				padding-top: 80px;
			}
				.contents section .sec_area .sec_num {
					position: absolute;
					top: -45px;;
					left: 0;
					right: 0;
					width: 104px;
					margin: auto;
				}
				.contents section .sec_area h2 {
					font-size: 18px;
					text-align: center;
					letter-spacing: 3px;
				}
				.contents section .sec_area .sec_blo {
				}
				.contents section .sec_area .sec_blo + .sec_blo {
					margin-top: 40px;
				}
				#p02 .contents #sec01 .sec_area .sec_blo:nth-of-type(3) ,
				#p03 .contents #sec01 .sec_area .sec_blo:nth-of-type(3) {
					margin-top: 50px;
				}
				.contents section .sec_area .sec_blo01 {
					margin-top: 40px;
				}
				.contents section .sec_area .sec_blo02 {
					margin-top: 40px;
				}
				.contents section .sec_area .sec_bdr {
					position: relative;
					border: solid 1px #b8b8b8;
					padding: 35px 20px 30px;
				}
				.contents section .sec_area .sec_bdr.gray {
					background-color: #f0f0f0;
					border: none;
				}
				.contents section .sec_area .sec_bdr + .sec_bdr {
					margin-top: 40px;
				}
				#p02 .contents #sec01 .sec_area .sec_blo .sec_bdr ,
				#p03 .contents #sec01 .sec_area .sec_blo:nth-of-type(3) .sec_bdr:first-child {
					padding: 45px 20px 30px;
				}
					.contents section .sec_area .sec_blo p {
						margin-top: 15px;
						line-height: 2.2;
						text-align: justify;
					}
					.contents section .sec_area .sec_blo01 .sec_img {
						margin-top: 15px;
						position: relative;
					}
							.contents section .sec_area .sec_blo01 .sec_img div::before {
								position: absolute;
								display: block;
								content: "";
								width: 100%;
								height: 100%;
								background-color: rgba(255,255,255,0.5);
								z-index: 1;
							}
							.contents section .sec_area .sec_blo01 .sec_img div::after {
								position: absolute;
								display: block;
								top: 0;
								bottom: 0;
								left: 0;
								right: 0;
								margin: auto;
								content: "";
								width: 51px;
								height: 60px;
								background-image: url("/recruit/w-nexco/common/img/touch.svg");
								background-size: cover;
								z-index: 2;
							}
						.contents section .sec_area .sec_blo01 .sec_img span {
							font-size: 12px;
							text-align: right;
							display: block;
							margin-top: 5px;
							line-height: 1.5;
						}
					#p02 .contents section .sec_area .sec_blo02 .sec_img {
						width: 240px;
						margin: 15px auto 0;
					}
						#p01 .contents section .sec_area .sec_blo01 .sec_img .inner {
							width: 920px;
						}
					.contents section .sec_area .sec_blo .sec_box {
					}
					#p01 .contents #sec02 .sec_area .sec_blo .sec_txt {
					}
						.contents section .sec_area .sec_blo .sec_txt h3 {
							font-size: 20px;
							letter-spacing: 4px;
						}
					#p01 .contents #sec02 .sec_area .sec_blo .sec_img {
						margin-top: 15px;
					}
						.contents section .sec_area .sec_blo .sec_img .btn {
							margin-top: 20px;
						}
					.contents section .sec_area .sec_bdr .sec_box_tit {
						position: absolute;
						top: -12px;
						left: 0;
						right: 0;
						text-align: center;
						font-size: 16px;
						font-weight: bold;
						line-height: 1.5;
					}
					#p02 .contents #sec01 .sec_area .sec_bdr .sec_box_tit ,
					#p03 .contents #sec01 .sec_area .sec_blo:nth-of-type(3) .sec_bdr:first-child .sec_box_tit {
						top: -22px;
					}
						.contents section .sec_area .sec_bdr .sec_box_tit span {
							background-color: #fff;
							display: inline-block;
							padding: 0 5px 0 8px;
						}
						.contents section .sec_area .sec_bdr.gray .sec_box_tit span {
							background-color: transparent;
						}
					.contents section .sec_area .sec_blo02 .sec_box {
						position: relative;
					}
					.contents section .sec_area .sec_blo02 .sec_box + .sec_box {
						margin-top: 30px;
						padding-top: 30px;
					}
					.contents section .sec_area .sec_blo02 .sec_box + .sec_box::before {
						position: absolute;
						content: "";
						top: 0;
						width: 100%;
						height: 1px;
						background-color: #b8b8b8;
					}
					#p02 .contents #sec01 .sec_area .sec_bdr .sec_box {
					}
							.contents section .sec_area .sec_blo .sec_box dt {
								font-size: 16px;
								font-weight: bold;
								letter-spacing: 3px;
							}
							#p03 .contents section .sec_area .sec_blo .sec_box dt {
								font-size: 14px;
							}
								.contents section .sec_area .sec_blo .sec_box dt span ,
								.contents section .sec_area .sec_blo .sec_box dd span {
									font-size: 12px;
									color: #00a0e9;
									margin-right: 3px;
								}
								.contents section .sec_area .sec_blo .sec_box dt span {
									font-size: 12px;
									color: #00a0e9;
									display: inline-block;
									transform: translateY(-1px);
								}
							.contents section .sec_area .sec_blo .sec_box dd {
								margin-top: 12px;
								line-height: 1.5;
							}
							.contents section .sec_area .sec_blo .gray .sec_box dd {
								text-indent: -1em;
								padding-left: 1em;
							}
							.contents section .sec_area .sec_blo .sec_box dd + dd {
								margin-top: 8px;
							}
							#p02 .contents section .sec_area .sec_blo .sec_box02 dd {
							}
								.contents section .sec_area .sec_blo .sec_box dd p {
									line-height: 2;
								}
								#p02 .contents section .sec_area .sec_blo .sec_box02 dd p {
								}
								#p02 .contents section .sec_area .sec_blo .sec_box02 dd div {
									width: 184px;
									margin: 10px auto 0;
								}
		.contents section .sld_area {
		}
			.contents section .sld_area img {
				max-width: auto;
			}
					.contents .sec_area .movie {
						position: relative;
						z-index: 1;
						padding: 70px 0 50px;
					}
					.contents .sec_area .movie::before {
						position: absolute;
						content: "";
						top: 0;
						left: -5.5%;
						background-color: rgba(0,160,233,0.3);
						width: 111%;
						height: 100%;
						z-index: -1;
					}
						.contents .sec_area .movie .sec_tit {
							text-align: center;
							color: rgba(0,160,233,0.3);
							font-size: 86px;
							letter-spacing: 10px;
							line-height: 1;
							position: absolute;
							top: -39px;
							left: 0;
							right: 0;
						}
						.contents .sec_area .movie div.youtube iframe {
							width: 100%;
							height: 50vw;
							border: none;
						}
							.contents .sec_area .movie div.youtube {
							}
							.contents .sec_area .movie div.youtube p {
								font-size: 16px;
								font-weight: bold;
								margin-top: 12px;
							}
						.contents .sec_area .movie .btn {
							position: absolute;
							bottom: -20px;
							left: 0;
							right: 0;
							margin: auto;
							width: 200px;
						}
							.contents .sec_area .movie .btn a {
								font-size: 12px;
								padding: 8px 15px;
							}
							.contents .sec_area .movie .btn a::before{
								width: 24px;
							}
							.contents .sec_area .movie .btn a::after{
								right: 45px;
								height: calc(100% - 15px);
							}
		.contents section .cmt_area {
			margin: 60px auto 35px;
			position: relative;
			z-index: 1;
		}
		#p01 .contents #sec02 .movie + .cmt_area {
			margin: 90px auto 35px;
		}
		.contents section .cmt_area::before ,
		.contents section .cmt_area::after {
			position: absolute;
			content: "";
			background-color: #00a0e9;
			width: 100%;
			height: 1px;
			left: 0;
		}
		.contents section .cmt_area::before {
			top: 30px;
			z-index: -1;
		}
		.contents section .cmt_area::after {
			bottom: 0;
		}
			.contents section .cmt_area .cmt_tit {
				width: 212px;
				margin: auto;
				background-color: #fff;
				padding: 0 15px;
				box-sizing: content-box;
			}
			.contents section .cmt_area .cmt_blo {
				padding: 35px 0;
			}
			.contents section .cmt_area .cmt_blo + .cmt_blo {
				border-top: 1px solid #ccecfb;
			}
				.contents section .cmt_area .cmt_blo .cmt_txt {
				}
					.contents section .cmt_area .cmt_blo .cmt_txt h3 {
						font-size: 17px;
						letter-spacing: 2px;
					}
					.contents section .cmt_area .cmt_blo .cmt_txt p {
						margin-top: 15px;
						text-align: justify;
					}
				.contents section .cmt_area .cmt_blo .cmt_prof {
					margin-top: 18px;
				}
					.contents section .cmt_area .cmt_blo .cmt_prof .cmt_img {
						margin-bottom: 15px;
					}
					.contents section .cmt_area .cmt_blo .cmt_prof .cmt_img + div {
						display: flex;
						align-items: flex-start;
					}
						.contents section .cmt_area .cmt_blo .cmt_prof p {
							line-height: 1;
							text-align: center;
							padding: 4px 2px;
							color: #fff;
							margin: 4px 10px 0 0;
							width: 84px;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof .ji {
							background-color: #ea6500;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof .do {
							background-color: #00a38d;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof .shi {
							background-color: #0078d2;
						}
						.contents section .cmt_area .cmt_blo .cmt_prof dl {
						}
							.contents section .cmt_area .cmt_blo .cmt_prof dl dt {
								letter-spacing: 3px;
							}
							.contents section .cmt_area .cmt_blo .cmt_prof dl dd {
								font-size: 12px;
								line-height: 1.5;
								letter-spacing: 2px;
							}

		.contents section .ft_link {
			padding: 60px 0 80px;
		}
			.contents section .ft_link p {
				font-size: 16px;
				font-weight: bold;
				text-align: center;
				letter-spacing: 2px;
			}
			.contents section .ft_link .btn {
				width: 300px;
				margin: 15px auto 0;
				line-height: 1.5;
			}
				#p02 .contents section .ft_link .btn a + a {
					margin-top: 15px;
				}
				#p02 .contents section .ft_link .btn a .qr {
					position: absolute;
					top: -20px;
					right: 100px;
					width: 84px;
				}
					#p02 .contents section .ft_link .btn a .qr img {
						opacity: 1 !important;
					}

	
	
	/* modal
	-------------------*/
	.of_h{
		overflow: hidden;
	}
	.js-modal-open{
		cursor: pointer;
	}
	.modal {
		display: none;
		height: calc(100% - 50px);
		position: fixed;
		top: 50px;
		left: 0;
		width: 100%;
		z-index: 9999;
		box-sizing: border-box;		
	}
		.modal__bg {
			background: rgba(0, 0, 0,0.9);
			height: 100%;
			position: absolute;
			width: 100%;
		}
		.modal-x{
			width: 18px;
			display: block;
			height: 18px;
			position: absolute;
			top: 50%;
			right: 0;
			transform-origin: bottom;
			transform: translateY(-165px);
			padding-right: 10%;
		}
		.modal-txt{
			position: absolute;
			top: 50%;
			transform-origin: bottom;
			transform: translateY(-170px);
			padding-left: 5%;
			color: white;
		}
		.modal-x div::before {
			content: "";
			display: block;
			width: 25px;
			height: 1px;
			background-color: #FFFFFF;
			transform: rotate(45deg);
		}
		.modal-x div::after {
			content: "";
			display: block;
			width: 25px;
			height: 1px;
			background-color: #FFFFFF;
			transform: rotate(-45deg);
		}
			.modal__content {
				left: 50%;
				position: absolute;
				top: 50%;
				-webkit-transform: translate(-50%,-50%);
				transform: translate(-50%,-50%);
				width: 90%;
				max-width: 840px;
				font-size: 16px;
				max-height: 80%;
				overflow: scroll;
				-ms-overflow-style: none;
				scrollbar-width: none;
/*				padding-top: 60px;*/
				font-weight: bold;
				box-sizing: border-box;
			}
				.modal__content .modal__inn {
					position: relative;
				}
				.modal__content video{
					width: 100%;
				}
				.modal__content iframe{
					width: 100%;
					max-height: 473px;
					height:51vw; 
				}
					
			.modal__content::-webkit-scrollbar {
				display:none;
			}
	
	.scroll:before {
		content: none;
		background: none;
	}
	.scroll:after {
		content: none;
		background: none;
	}

	#modal_01 .js-modal-open > div{
		width: 800px;
	}

}