@charset "UTF-8";


	
	
/* kv
--------------------- */
#fv {
	padding: 20px;
	position: relative;
}
	#fv .area {
		width: 100%;
		position: relative;
		overflow: hidden;
		border-radius: 20px;
	}
	#fv .area:before {
		content: "";
		width: 1px;
		height: 100%;
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
	}
	#fv .area:after {
		content: "";
		width: 1px;
		height: 100%;
		background: #fff;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 3;
	}
		#fv .area #video {
			width: 100%;
		}

		#fv .area .building {
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}

		#fv .area .human {
			position: absolute;
			top: 0;
			left: 0;
			z-index: 2;
		}

		#fv .area .text {
			position: absolute;
			top: 12%;
			left: 60px;
			z-index: 5;
		}
			#fv .area .text h2 {
				font-size: 3.4rem;
				font-weight: 700;
				line-height: 1.5em;
				margin-bottom: 20px;
			}

			#fv .area .text a.btn-message {
				display: block;
				width: 160px;
				height: 46px;
				border-radius: 5px;
				background: #fff;
				font-size: 1.5rem;
				font-weight: 600;
				color: #0084FF;
				text-align: center;
				line-height: 46px;
			}
			#fv .area .text a.btn-message:hover {
				background: #0084FF;
				color: #fff;
			}

		#fv .area .btn-human {
			display: block;
			width: 10%;
			position: absolute;
			z-index: 4;
		}
		#fv .area .btn-human.interview {
			top: 62%;
			left: 56%;
		}
		#fv .area .btn-human.special {
			top: 40%;
			left: 75%;
		}
			#fv .area .btn-human a {
				display: block;
				-moz-transition: -moz-transform 0.2s linear;
				-webkit-transition: -webkit-transform 0.2s linear;
				-o-transition: -o-transform 0.2s linear;
				-ms-transition: -ms-transform 0.2s linear;
				transition: transform 0.2s linear;
			}
			#fv .area .btn-human a:hover {
				-webkit-transform: scale(1.1);
				-moz-transform: scale(1.1);
				-o-transform: scale(1.1);
				-ms-transform: scale(1.1);
				transform: scale(1.1);
			}

		#fv .area .pin {
			display: block;
			width: 12%;
			position: absolute;
			z-index: 4;
		}
		#fv .area .pin.off {
			display: none;
		}
			#fv .area .pin a {
				display: block;
				-moz-transition: -moz-transform 0.2s linear;
				-webkit-transition: -webkit-transform 0.2s linear;
				-o-transition: -o-transform 0.2s linear;
				-ms-transition: -ms-transform 0.2s linear;
				transition: transform 0.2s linear;
			}
			#fv .area .pin a:hover {
				-webkit-transform: scale(1.2);
				-moz-transform: scale(1.2);
				-o-transform: scale(1.2);
				-ms-transform: scale(1.2);
				transform: scale(1.2);
			}

		#fv .area .pin01 {
			top: 36%;
			left: 16%;
		}
		#fv .area .pin02 {
			top: 38%;
			left: 43%;
		}
		#fv .area .pin03 {
			top: 48%;
			left: 32%;
		}
		#fv .area .pin04 {
			top: 59%;
			left: 4%;
		}
		#fv .area .pin05 {
			top: 62%;
			left: 16%;
		}
		#fv .area .pin06 {
			top: 60%;
			left: 40%;
		}

		#fv .area .swiper-fv {
			width: 100%;
			pointer-events: none;
			padding: 0;
			position: absolute;
			top: 0;
			left: 0;
		}
			#fv .area .swiper-fv .swiper-slide {
				opacity: 0 !important;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#fv .area .swiper-fv .swiper-slide-active {
				opacity: 1 !important;
			}



	
	
/* pickup
--------------------- */
#pickup {
	padding: 100px 0;
}
	#pickup ul.tab {
		padding: 0 50px;
	}
		#pickup ul.tab li {
			width: 16%;
			height: 130px;
			background: #fff;
			border-radius: 10px 10px 0 0;
			padding-top: 15px;
			cursor: pointer;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#pickup ul.tab li.select {
			background: #0084FF;
			color: #fff;
		}
			#pickup ul.tab li span {
				display: block;
				font-size: 1.6rem;
				font-weight: 700;
				line-height: 1.3em;
				text-align: center;
				margin-bottom: 10px;
			}
			#pickup ul.tab li img {
				display: block;
				max-width: 70px;
				margin: 0 auto;
			}

	#pickup .content {
		border-radius: 20px;
		padding: 40px 50px 50px 50px;
		overflow: hidden;
	}
		#pickup .content .hide {
			display: none;
		}
			#pickup .content .cont h2 {
				font-size: 3.0rem;
				font-weight: 700;
				text-align: center;
				line-height: 1.3em;
				margin-bottom: 30px;
			}

			#pickup .content .cont .swiper-container {
				padding: 0 0 40px 0;
				position: relative;
			}
				#pickup .content .cont .swiper-container .swiper-pagination {
					bottom: -10px;
				}
					#pickup .content .cont .swiper-container .swiper-pagination .swiper-pagination-bullet {
						width: 8px;
						height: 8px;
						border-radius: 4px;
						background: #fff;
						border: none;
						opacity: 0.5;
						transition: 0.3s;
						-webkit-transition: 0.3s;
					}
					#pickup .content .cont .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
						width: 22px;
						opacity: 1;
					}

			#pickup .content .cont a.linkbox {
				display: block;
				width: 23.5%;
				margin-right: 2%;
			}
			#pickup .content .cont a.linkbox:nth-last-child(1) {
				margin-right: 0;
			}
			#pickup .content .cont a.linkbox.off {
				pointer-events: none;
			}
				#pickup .content .cont a.linkbox .pht {
					border-radius: 10px;
					position: relative;
				}
				#pickup .content .cont a.linkbox.off .pht:before {
					display: flex;
					justify-content: center;
					align-items: center;
					content: "Coming soon";
					width: 100%;
					height: 100%;
					background: rgba(0,0,0,0.5);
					font-size: 1.8rem;
					font-weight: 600;
					color: #fff;
					text-align: center;
					position: absolute;
					top: 0;
					left: 0;
				}

				#pickup .content .cont a.linkbox h3 {
					font-size: 1.8rem;
					letter-spacing: 0;
					line-height: 1.3em;
					text-align: center;
					margin-top: 15px;
					margin-bottom: 15px;
				}

				#pickup .content .cont a.linkbox .more {
					margin: 0 auto;
				}
				#pickup .content .cont a.linkbox.off .more {
					display: none;
				}



	
	
/* animatedModal
--------------------- */
.animatedModal {
	background: #fff !important;
}
	.animatedModal .close {
		width: 50px;
		position: sticky;
		top: 30px;
		left: 0;
		cursor: pointer;
		margin-left: -webkit-calc(100% - 80px);
		margin-left: calc(100% - 80px);
		transition: all 0.2s;
	}
	.animatedModal .close:hover {
		transform: rotate(90deg);
	}

	.animatedModal .number-name {
		width: 100%;
		font-size: 11.0rem;
		font-weight: 600;
		line-height: 1;
		white-space: nowrap;
		color: #E8F5FF;
		pointer-events: none;
		position: absolute;
		top: -10px;
		left: 0;
	}

	.animatedModal .modal-content .cont {
		max-width: 680px;
		margin: 0 auto;
		padding: 100px 30px 100px 30px;
	}
		.animatedModal .modal-content .cont h2 {
			font-size: 4.0rem;
			font-weight: 700;
			line-height: 1.3em;
			margin-bottom: 40px;
		}

		.animatedModal .modal-content .cont h3 {
			font-size: 2.4rem;
			font-weight: 700;
			line-height: 1.3em;
			margin-bottom: 15px;
			margin-top: 30px;
		}

		.animatedModal .modal-content .cont .txt {
			line-height: 2.3em;
			margin-bottom: 15px;
		}
		.animatedModal .modal-content .cont .txt:nth-last-child(1) {
			margin-bottom: 0;
		}


	
	
/* news
--------------------- */
#news .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 0;
	padding-bottom: 20px;
}
	#news .head {
		width: 110px;
	}
		#news .head h2 {
			font-size: 2.4rem;
			line-height: 1;
		}

		#news .head a {
			display: inline-block;
			height: 12px;
			background: url("../common/img/icon_arrow_blue.svg") no-repeat right 0 center / 12px;
			margin-top: 3px;
			padding-right: 14px;
			font-size: 1.1rem;
			line-height: 12px;
			letter-spacing: 0;
			color: #0084FF;
			text-decoration: underline;
		}
		#news .head a:hover {
			text-decoration: none;
			opacity: 0.7;
		}

	#news ul.list {
		width: -webkit-calc(100% - 110px);
		width: calc(100% - 110px);
	}
		#news ul.list li {
			border-bottom: dashed 1px #ddd;
		}
		#news ul.list li:nth-last-child(1) {
			border-bottom: none;
		}
		#news ul.list li:nth-last-child(1) {
			margin-bottom: 0;
		}
			#news ul.list li a {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				padding: 15px 30px 15px 0;
				background: url("../common/img/icon_arrow_blue.svg") no-repeat right 5px center / 18px;
			}
			#news ul.list li a.linknone {
				background: none;
				pointer-events: none;
			}
			#news ul.list li a:hover {
				color: #0084FF;
				background: url("../common/img/icon_arrow_blue.svg") no-repeat right 0 center / 18px;
			}
				#news ul.list li a time {
					display: block;
					width: 95px;
					font-size: 1.3rem;
					line-height: 1;
				}
				#news ul.list li a span {
					display: block;
					width: -webkit-calc(100% - 95px);
					width: calc(100% - 95px);
					font-size: 1.5rem;
					line-height: 1.4em;
				}






/* 1300px */
@media screen and (max-width: 1300px) {








}





/* 1024px */
@media screen and (max-width: 1024px) {


	
	
/* kv
--------------------- */
#fv {
	padding: 10px;
}
	#fv .area .text {
		top: 13%;
		left: 3%;
	}
		#fv .area .text h2 {
			font-size: 2.4vw;
			margin-bottom: 15px;
		}

		#fv .area .text a.btn-message {
			width: 140px;
			height: 40px;
			font-size: 1.4rem;
			line-height: 40px;
		}
	
	#fv .area .pin {
		width: 14%;
	}


	
	
/* pickup
--------------------- */
#pickup {
	padding: 80px 0;
}
	#pickup ul.tab {
		padding: 0 30px;
	}
		#pickup ul.tab li {
			width: 15.5%;
			height: 122px;
			border-radius: 6px 6px 0 0;
			padding-top: 12px;
		}
			#pickup ul.tab li span {
				font-size: 1.3rem;
				line-height: 1.2em;
			}
				#pickup ul.tab li span br {
					display: block;
				}
			#pickup ul.tab li img {
				max-width: 56px;
			}

	#pickup .content {
		border-radius: 15px;
		padding: 25px 30px 30px 30px;
	}
		#pickup .content .cont h2 {
			font-size: 2.4rem;
			margin-bottom: 22px;
		}

		#pickup .content .cont .swiper-container {
			padding: 0 0 40px 0;
		}
			#pickup .content .cont .swiper-container .swiper-pagination {
				bottom: -5px;
			}

		#pickup .content .cont a.linkbox .pht {
			border-radius: 6px;
		}

		#pickup .content .cont a.linkbox h3 {
			font-size: 1.6rem;
		}



	
	
/* animatedModal
--------------------- */
.animatedModal .modal-content .cont h2 {
	font-size: 3.6rem;
	margin-bottom: 35px;
}

.animatedModal .modal-content .cont h3 {
	font-size: 2.2rem;
}

.animatedModal .modal-content .cont .txt {
	line-height: 2.2em;
}


	
	
/* news
--------------------- */
#news .inner {
	padding-bottom: 15px;
}
	#news .head {
		width: 90px;
	}
		#news .head h2 {
			font-size: 2.0rem;
		}

		#news .head a {
			background: url("../common/img/icon_arrow_blue.svg") no-repeat right 0 center / 12px;
			font-size: 1.0rem;
		}

	#news ul.list {
		width: -webkit-calc(100% - 90px);
		width: calc(100% - 90px);
	}
		#news ul.list li a time {
			width: 80px;
			font-size: 1.1rem;
		}
		#news ul.list li a span {
			display: block;
			width: -webkit-calc(100% - 80px);
			width: calc(100% - 80px);
			font-size: 1.4rem;
		}










}





/* max 768px */
@media screen and (max-width: 768px) {


	
	
/* kv
--------------------- */
#fv {
	overflow: hidden;
	margin-top: 65px;
	padding: 0;
}
	#fv .area {
		width: 190%;
		border-radius: 0;
		margin-left: -5%;
	}
		#fv .area .btn-human {
			display: block;
			width: 10%;
			position: absolute;
			z-index: 4;
		}
		#fv .area .btn-human.interview {
			top: auto;
			bottom: 6%;
			left: 12%;
		}
		#fv .area .btn-human.special {
			top: auto;
			bottom: 15%;
			left: 35%;
		}
	
		#fv .area .text {
			top: 5%;
			left: 6%;
		}
			#fv .area .text h2 {
				font-size: 5.0vw;
			}

			#fv .area .text a.btn-message {
				width: 140px;
			}
	
		#fv .area .swiper-fv {
			display: none;
		}


	
	
/* pickup
--------------------- */
#pickup {
	padding: 50px 0;
}
	#pickup ul.tab {
		padding: 0 0;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
		#pickup ul.tab li {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			width: 48%;
			margin-right: 4%;
			margin-bottom: 4%;
			height: 60px;
			border-radius: 6px;
			padding-top: 0;
			padding: 0 15px;
		}
		#pickup ul.tab li:nth-child(2n) {
			margin-right: 0;
		}
			#pickup ul.tab li span {
				font-size: 1.4rem;
				line-height: 1.1em;
				order: 2;
				padding-left: 12px;
				text-align: left;
				margin-bottom: 0;
			}
			#pickup ul.tab li img {
				max-width: 40px;
				margin: 0;
				order: 1;
			}

	#pickup .content {
		padding: 25px 20px 0 20px;
	}
		#pickup .content .cont h2 {
			font-size: 2.0rem;
			margin-bottom: 22px;
		}

		#pickup .content .cont .swiper-container {
			padding: 0 0 40px 0;
		}
			#pickup .content .cont .swiper-container .swiper-pagination {
				bottom: 15px;
			}

		#pickup .content .cont .list {
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		}
			#pickup .content .cont a.linkbox {
				width: 48%;
				margin-right: 4%;
				margin-bottom: 25px;
			}
			#pickup .content .cont a.linkbox:nth-child(2n) {
				margin-right: 0;
			}
				#pickup .content .cont a.linkbox .pht {
					border-radius: 6px;
				}
				#pickup .content .cont a.linkbox.off .pht:before {
					font-size: 1.4rem;
				}

				#pickup .content .cont a.linkbox h3 {
					font-size: 1.3rem;
					letter-spacing: 0;
					margin-top: 12px;
					margin-bottom: 10px;
				}



	
	
/* animatedModal
--------------------- */
.animatedModal {
	background: #fff !important;
}
	.animatedModal .close {
		width: 40px;
		position: sticky;
		top: 20px;
		left: 0;
		cursor: pointer;
		margin-left: -webkit-calc(100% - 60px);
		margin-left: calc(100% - 60px);
		transition: all 0.2s;
	}

	.animatedModal .number-name {
		font-size: 5.0rem;
		text-align: left;
		top: 10px;
	}

	.animatedModal .modal-content .cont {
		padding: 50px 30px 50px 30px;
	}
		.animatedModal .modal-content .cont h2 {
			font-size: 2.0rem;
			margin-bottom: 20px;
		}

		.animatedModal .modal-content .cont h3 {
			font-size: 1.7rem;
		}

		.animatedModal .modal-content .cont .txt {
			line-height: 1.8em;
			margin-bottom: 10px;
		}


	
	
/* news
--------------------- */
#news .inner {
	display: block;
	padding-top: 20px;
	padding-bottom: 10px;
}
	#news .head {
		display: flex;
		justify-content: space-between;
		align-items: center;	
		width: 100%;
	}
		#news .head h2 {
			font-size: 2.0rem;
		}

	#news ul.list {
		width: 100%;
	}
		#news ul.list li a {
			display: block;
		}
			#news ul.list li a time {
				width: 100%;
				font-size: 1.0rem;
				padding-top: 3px;
				margin-bottom: 5px;
			}
			#news ul.list li a span {
				display: block;
				width: 100%;
				font-size: 1.3rem;
			}











}