@charset "UTF-8";


	
	
/* youtube-area
--------------------- */
#youtube-area {
	position: fixed;
	z-index: -1;
	top: 0;
	right:0;
	left:0;
	bottom:0;
	overflow: hidden;
	opacity: 1;    
}
	#youtube-area #youtube {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 177.77777778vh;
		height: 56.25vw;
		min-height: 100%;
		min-width: 100%;
	}

	#youtube-area #youtube-mask {
		position: absolute;
		z-index: 2;
		top:0;
		width:100%;
		height: 100%;
	}


	
	
/* kv
--------------------- */
#kv {
	width: 100%;
	background: rgba(0,0,65,0.4);
}
	#kv .inner {
		display: flex;
		justify-content: flex-start;
		align-items: flex-end;
		height: 100vh;
	}
		#kv .text .en {
			font-size: 10.0rem;
			font-weight: 700;
			line-height: 1.0em;
			margin-bottom: 15px;
		}

		#kv .text h1 {
			font-size: 3.0rem;
			font-weight: 700;
			line-height: 1.4em;
			margin-bottom: 50px;
		}
@media screen and (max-width: 1024px) {
	#kv .text .en {
		font-size: 8.0rem;
	}

	#kv .text h1 {
		font-size: 2.4rem;
		margin-bottom: 50px;
	}
}
@media screen and (max-width: 768px) {
	#kv .inner {
		height: 100dvh;
	}
		#kv .text .en {
			font-size: 5.0rem;
			line-height: 1.1em;
		}

		#kv .text h1 {
			font-size: 2.0rem;
			margin-bottom: 80px;
		}
}


	
	
/* message
--------------------- */
#message {
	width: 100%;
	background: rgba(0,0,65,0.4);
	padding-top: 50px;
}
	#message .txt {
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 2em;
	}
@media screen and (max-width: 1024px) {
	#message {
		padding-top: 20px;
	}
		#message .txt {
			font-size: 1.6rem;
		}
}
@media screen and (max-width: 768px) {
	#message {
		padding-top: 0;
	}
		#message .txt {
			font-size: 1.5rem;
		}
}


	
	
/* section
--------------------- */
.section {
	padding-top: 250px;
}
	.section .bg-pht {
		border-radius: 10px;
	}

	.section .title-box {
		display: inline-block;
		padding: 15px;
		border-radius: 5px;
		position: absolute;
		top: -100px;
		z-index: 2;
	}
		.section .title-box .head {
			font-size: 3.0rem;
			font-weight: 700;
			line-height: 1.2em;
			margin: 5px 0;
		}

		.section .title-box h2 {
			font-size: 6.0rem;
			line-height: 1.2em;
		}

		.section .title-box .btn-link {
			width: 200px;
			margin: 15px 0;
		}
			.section .title-box .btn-link a {
				display: block;
				height: 60px;
				background: #fff;
				border-radius: 30px;
				padding: 0 25px;
				font-size: 1.8rem;
				font-weight: 600;
				line-height: 62px;
				position: relative;
			}
			.section .title-box .btn-link a:before {
				content: "";
				width: 20px;
				height: 20px;
				position: absolute;
				top: 50%;
				right: 20px;
				margin-top: -10px;
			}
			.section .title-box .btn-link.btn-yellow a:before {
				background: url("../../common/img/icon_arrow_yellow.svg") no-repeat center / 100%;
			}
			.section .title-box .btn-link.btn-purple a:before {
				background: url("../../common/img/icon_arrow_purple.svg") no-repeat center / 100%;
			}
			.section .title-box .btn-link.btn-green a:before {
				background: url("../../common/img/icon_arrow_green.svg") no-repeat center / 100%;
			}
			.section .title-box .btn-link a:hover {
				background: #242424;
				color: #fff;
			}

	.section h3.read {
		line-height: 2.5em;
		position: absolute;
		z-index: 2;
	}
		.section h3.read span {
			display: inline-block;
			background: #fff;
			padding: 5px 3px 3px 3px;
			font-size: 3.0rem;
			font-weight: 700;
			line-height: 1;
		}
@media screen and (max-width: 1024px) {
	.section {
		padding-top: 200px;
	}
		.section .title-box {
			top: -100px;
		}
			.section .title-box .head {
				font-size: 2.0rem;
			}

			.section .title-box h2 {
				font-size: 4.0rem;
				line-height: 1.2em;
			}

			.section .title-box .btn-link {
				width: 80%;
				margin: 12px 0;
			}
				.section .title-box .btn-link a {
					height: 50px;
					border-radius: 25px;
					padding: 0 20px;
					font-size: 1.6rem;
					line-height: 52px;
				}
				.section .title-box .btn-link a:before {
					width: 16px;
					height: 16px;
					right: 16px;
					margin-top: -8px;
				}

		.section h3.read {
			line-height: 2.0em;
		}
			.section h3.read span {
				font-size: 2.0rem;
			}
}
@media screen and (max-width: 768px) {
	.section {
		padding-top: 70px;
	}
		.section .bg-pht {
			width: 116%;
			margin-top: -50px;
			margin-left: -8%;
			border-radius: 0;
		}
	
		.section .title-box {
			width: 100%;
			padding-top: 20px;
			position: relative;
			top: 0;
			left: 0;
			z-index: 2;
		}
			.section .title-box .head {
				font-size: 2.0rem;
				text-align: center;
			}

			.section .title-box h2 {
				font-size: 4.0rem;
				line-height: 1.2em;
				text-align: center;
			}

			.section .title-box .btn-link {
				width: 80%;
				margin: 12px auto;
			}

		.section h3.read {
			line-height: 1.6em;
		}
			.section h3.read span {
				font-size: 2.0rem;
			}
}


	
	
/* discovery
--------------------- */
#discovery {
	width: 100%;
	background: #343434;
}
	#discovery .title-box {
		left: 120px;
	}

	#discovery h3.read {
		top: 50px;
		right: 100px;
	}
@media screen and (max-width: 1024px) {
	#discovery .title-box {
		left: 0;
	}

	#discovery h3.read {
		top: 50px;
		right: 0;
	}
}
@media screen and (max-width: 768px) {
	#discovery {
		padding-bottom: 0;
	}
		#discovery h3.read {
			top: auto;
			bottom: 30px;
			right: auto;
			left: 0;
		}
}


	
	
/* interview
--------------------- */
#interview {
	width: 100%;
	background: #2A2A2A;
}
	#interview .title-box {
		right: 120px;
	}

	#interview .list {
		padding: 50px;
		background: #393939;
	}
		#interview .list a.linkbox {
			display: block;
			width: 31%;
			margin-right: 3.5%;
			margin-bottom: 45px;
		}
		#interview .list a.linkbox:nth-child(3n) {
			margin-right: 0;
		}
			#interview .list a.linkbox .pht {
				position: relative;
			}
				#interview .list a.linkbox .pht .label {
					display: inline-block;
					height: 28px;
					padding-left: 8px;
					background: #fff;
					font-size: 1.0rem;
					font-weight: 500;
					line-height: 30px;
					text-align: center;
					color: #242424;
					position: absolute;
					bottom: 0;
					left: 0;
				}

			#interview .list a.linkbox .text {
				padding: 20px 0 0 0;
			}
				#interview .list a.linkbox .text h3 {
					font-size: 2.6rem;
					font-weight: 600;
					line-height: 1;
					margin-bottom: 12px;
				}
					#interview .list a.linkbox .text h3 span {
						font-size: 1.3rem;
						font-weight: 500;
						color: #242424;
						line-height: 1;
						padding-left: 10px;
					}

				#interview .list a.linkbox .text .join {
					font-size: 1.3rem;
					line-height: 1.5em;
					margin-bottom: 15px;
					color: #fff;
				}

				#interview .list a.linkbox .text h4 {
					font-size: 1.2rem;
					line-height: 1.3em;
					margin-bottom: 5px;
				}

				#interview .list a.linkbox .text .profile {
					font-size: 1.3rem;
					line-height: 1.7em;
					margin-bottom: 10px;
					color: #fff;
				}

				#interview .list a.linkbox .text .more {
					color: #fff;
				}
@media screen and (max-width: 1024px) {
	#interview .title-box {
		right: 0;
	}
	
	#interview .list {
		background: none;
		padding: 0;
	}
		#interview .list a.linkbox {
			margin-bottom: 35px;
		}
			#interview .list a.linkbox .text {
				padding: 16px 0 0 0;
			}
				#interview .list a.linkbox .text h3 {
					font-size: 2.4rem;
					margin-bottom: 8px;
				}

				#interview .list a.linkbox .text .join {
					font-size: 1.2rem;
				}

				#interview .list a.linkbox .text h4 {
					font-size: 1.1rem;
				}

				#interview .list a.linkbox .text .profile {
					font-size: 1.2rem;
				}
}
@media screen and (max-width: 768px) {
	#interview .list {
		display: block;
		background: none;
		margin-top: 30px;
		padding: 0 20px;
	}
		#interview .list a.linkbox {
			width: 100%;
			margin-right: 0;
			margin-bottom: 35px;
		}
		#interview .list a.linkbox:nth-last-child(1) {
			margin-bottom: 0;
		}
		#interview .list a.linkbox.off {
			display: none;
		}
			#interview .list a.linkbox .text h3 {
				font-size: 2.2rem;
			}

			#interview .list a.linkbox .text .join {
				font-size: 1.1rem;
			}

			#interview .list a.linkbox .text h4 {
				font-size: 1.0rem;
			}

			#interview .list a.linkbox .text .profile {
				font-size: 1.1rem;
			}
}


	
	
/* project-story
--------------------- */
#project-story {
	width: 100%;
	background: #343434;
}
	#project-story .title-box {
		left: 120px;
	}

	#project-story h3.read {
		bottom: 50px;
		right: 100px;
	}
@media screen and (max-width: 1024px) {
	#project-story .title-box {
		left: 0;
	}

	#project-story h3.read {
		bottom: 50px;
		right: 0;
	}
}
@media screen and (max-width: 768px) {
	#project-story {
		padding-bottom: 0;
	}
		#project-story h3.read {
			top: auto;
			bottom: 30px;
			right: auto;
			left: 0;
		}
}


	
	
/* growth-environment
--------------------- */
#growth-environment {
	width: 100%;
	background: #2A2A2A;
}
	#growth-environment .title-box {
		right: 120px;
	}

	#growth-environment h3 {
		top: 50px;
		left: 100px;
	}
@media screen and (max-width: 1024px) {
	#growth-environment .title-box {
		right: 0;
	}

	#growth-environment h3 {
		top: 50px;
		left: 0;
	}
}
@media screen and (max-width: 768px) {
	#growth-environment {
		padding-bottom: 0;
	}
		#growth-environment h3.read {
			top: auto;
			bottom: 30px;
			right: auto;
			left: 0;
		}
}
	
	


	
