@charset "UTF-8";


	
	
/* interview-title
--------------------- */
#interview-title {
	width: 100%;
	overflow: hidden;
	position: relative;
}
	#interview-title .inner {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		height: 100vh;
	}
		#interview-title .inner .breadcrumbs {
			font-size: 1.2rem;
			line-height: 1;
			z-index: 22;
			position: absolute;
			top: 110px;
			left: 0;
		}
			#interview-title .inner .breadcrumbs a {
				text-decoration: underline;
			}
			#interview-title .inner .breadcrumbs a:hover {
				text-decoration: none;
			}

	#interview-title .text .catch {
		font-size: 3.0rem;
		font-weight: 500;
		line-height: 1.6em;
		margin-bottom: 40px;
	}
		#interview-title .text .catch span {
			display: inline-block;
			background: #fff;
			padding: 5px 5px 5px 0;
			line-height: 1;
		}

	#interview-title .text .label {
		display: inline-block;
		border-radius: 3px;
		border: solid 1px #ddd;
		font-size: 1.3rem;
		line-height: 1;
		padding: 4px 5px;
		margin-bottom: 8px;
	}

	#interview-title .text h1 {
		font-size: 2.2rem;
		font-weight: 500;
		line-height: 1.3em;
		margin-bottom: 8px;
	}
		#interview-title .text h1 span {
			font-size: 1.2rem;
			padding-left: 12px;
		}

	#interview-title .text .job {
		font-size: 1.4rem;
		line-height: 1.6em;
	}

	#interview-title .pht {
		width: 65%;
		height: 100vh;
		border-radius:  0 0 0 50px;
		overflow: hidden;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
	}
		#interview-title .pht img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}

	#interview-title .marquee {
		display: flex;
		opacity: 1;
		overflow: hidden;
		position: absolute;
		bottom: -20px;
	}
	#interview-title .marquee-white {
		width: 100%;
		color: #fff;
		left: 0;
		z-index: 1;
	}
	#interview-title .marquee-gray {
		width: 35%;
		color: #EBEBEB;
		left: 0;
		z-index: 2;
	}
		#interview-title .marquee .marquee__item {
			flex: 0 0 auto;
			overflow: hidden;
			font-size: 15.0rem;
			font-weight: 300;
			white-space: nowrap;
			line-height: 1;
			padding-right: 20px;
		}
		#interview-title .marquee .marquee__item:nth-child(odd) {
			animation: loop 80s -40s linear infinite;
		}
		#interview-title .marquee .marquee__item:nth-child(even) {
			animation: loop2 80s linear infinite;
		}
		@keyframes loop {
			0% {
				transform: translateX(100%);
			}
			to {
				transform: translateX(-100%);
			}
		}
		@keyframes loop2 {
			0% {
				transform: translateX(0);
			}
			to {
				transform: translateX(-200%);
			}
		}
@media screen and (max-width: 1300px) {
	#interview-title .inner .breadcrumbs {
		left: 7%;
	}
}
@media screen and (max-width: 1024px) {
	#interview-title .inner .breadcrumbs {
		font-size: 1.1rem;
		top: 95px;
	}

	#interview-title .text .catch {
		font-size: 2.6rem;
		margin-bottom: 30px;
	}

	#interview-title .text .label {
		font-size: 1.2rem;
	}

	#interview-title .text h1 {
		font-size: 2.0rem;
	}
		#interview-title .text h1 span {
			font-size: 1.1rem;
		}

	#interview-title .text .job {
		font-size: 1.3rem;
	}

	#interview-title .pht {
		border-radius:  0 0 0 40px;
	}
	
	#interview-title .marquee {
		bottom: -15px;
	}
		#interview-title .marquee .marquee__item {
			font-size: 12.0rem;
		}
}
@media screen and (max-width: 768px) {
	#interview-title .inner {
		display: block;
		height: auto;
	}
	#interview-title .inner .breadcrumbs {
		font-size: 1.0rem;
		position: static;
		padding-top: 70px;
	}

	#interview-title .text .catch {
		font-size: 1.6rem;
		line-height: 1.7em;
		margin-top: 30px;
		margin-bottom: 15px;
	}
		#interview-title .text .catch span {
			background: none;
			padding: 0;
		}

	#interview-title .text .label {
		font-size: 1.1rem;
	}

	#interview-title .text h1 span {
		font-size: 1.0rem;
	}

	#interview-title .text .job {
		font-size: 1.3rem;
		margin-bottom: 30px;
	}

	#interview-title .pht {
		width: 100%;
		height: auto;
		position: static;
		border-radius:  0;
	}
	
	#interview-title .marquee .marquee__item {
		font-size: 8.0rem;
	}
	#interview-title .marquee-gray {
		display: none;
	}
}


	
	
/* theme
--------------------- */
.theme .t-ttl {
	margin-bottom: 20px;
}
	.theme .t-ttl .head {
		font-size: 1.4rem;
		line-height: 1;
		margin-bottom: 15px;
	}
		.theme .t-ttl .head .en {
			padding-right: 12px;
		}

	.theme .t-ttl h2 {
		font-size: 3.0rem;
		font-weight: 500;
		line-height: 1.4em;
	}

#theme01 .t-ttl {
	width: 40%;
}
#theme01 .txt {
	width: 55%;
}

#theme02 .text {
	width: 55%;
	padding-bottom: 60px;
	order: 2;
}
#theme02 .pht {
	width: 40%;
	border-radius: 20px;
	order: 1;
}
	#theme02 .pht img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

#theme03 .text {
	max-width: 1000px;
	margin: 0 auto 50px auto;
}
#theme03 .pht {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 6;
	border-radius: 20px;
}
	#theme03 .pht img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

#theme04 .text {
	width: 45%;
}
#theme04 .pht {
	width: 50%;
}
@media screen and (max-width: 1024px) {
	.theme .t-ttl {
		margin-bottom: 15px;
	}
		.theme .t-ttl .head {
			font-size: 1.2rem;
		}

		.theme .t-ttl h2 {
			font-size: 2.6rem;
		}

	#theme02 .text {
		padding-bottom: 0;
	}
	#theme02 .pht {
		width: 46%;
		margin-left: -8.5%;
		border-radius: 0 15px 15px 0;
	}

	#theme03 .text {
		margin: 0 auto 40px auto;
	}
	#theme03 .pht {
		aspect-ratio: 16 / 9;
		border-radius: 15px;
	}
	
	#theme04 .pht {
		width: 54%;
		margin-right: -5%;
	}
}
@media screen and (max-width: 768px) {
	.theme .inner {
		display: block;
	}
		.theme .t-ttl {
			margin-bottom: 16px;
		}
			.theme .t-ttl h2 {
				font-size: 2.1rem;
			}

	#theme01 .t-ttl {
		width: 100%;
	}
	#theme01 .txt {
		width: 100%;
	}

	#theme02 .text {
		width: 100%;
		padding-bottom: 30px;
	}
	#theme02 .pht {
		width: 108%;
		margin-left: -8%;
		border-radius: 0 15px 15px 0;
	}

	#theme03 .text {
		margin: 0 auto 30px auto;
	}
	#theme03 .pht {
		aspect-ratio: 4 / 3;
		border-radius: 15px;
	}
	
	#theme04 .text {
		width: 100%;
		margin-bottom: 30px;
	}
	#theme04 .pht {
		width: 100%;
		margin-right: 0;
	}
}


	
	
/* schedule
--------------------- */
#schedule .inner {
	width: 100%;
	max-width: 1000px;
}
	#schedule .inner .s-ttl {
		width: 160px;
	}
		#schedule .inner .s-ttl .writing {
			-ms-writing-mode: tb-rl;
			writing-mode: vertical-rl;
		}
			#schedule .inner .s-ttl .writing .en {
				font-size: 3.6rem;
				font-weight: 400;
				line-height: 1;
				margin-left: 12px;
			}
			#schedule .inner .s-ttl .writing h2 {
				font-size: 1.4rem;
				font-weight: 500;
				line-height: 1;
			}

	#schedule .inner .list {
		width: -webkit-calc(100% - 160px);
		width: calc(100% - 160px);
	}
		#schedule .inner .list dl {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			background: #F8F8F8;
			border-radius: 15px;
			padding: 20px 0;
			margin-bottom: 15px;
		}
		#schedule .inner .list dl:nth-last-child(1) {
			margin-bottom: 0;
		}
			#schedule .inner .list dl dt {
				width: 160px;
				padding-left: 30px;
				font-size: 1.6rem;
				line-height: 1;
			}
			#schedule .inner .list dl dd {
				width: -webkit-calc(100% - 160px);
				width: calc(100% - 160px);
				padding-right: 30px;
				font-size: 1.5rem;
				line-height: 1.7em;
			}
@media screen and (max-width: 1024px) {
	#schedule .inner .s-ttl {
		width: 120px;
	}
		#schedule .inner .s-ttl .writing .en {
			font-size: 3.0rem;
		}
		#schedule .inner .s-ttl .writing h2 {
			font-size: 1.2rem;
		}

	#schedule .inner .list {
		width: -webkit-calc(100% - 120px);
		width: calc(100% - 120px);
	}
		#schedule .inner .list dl {
			border-radius: 10px;
			padding: 15px 0;
			margin-bottom: 12px;
		}
			#schedule .inner .list dl dt {
				width: 135px;
				padding-left: 20px;
				font-size: 1.5rem;
				line-height: 1;
			}
			#schedule .inner .list dl dd {
				width: -webkit-calc(100% - 135px);
				width: calc(100% - 135px);
				padding-right: 20px;
				font-size: 1.4rem;
				line-height: 1.6em;
			}
}
@media screen and (max-width: 768px) {
	#schedule .inner .s-ttl {
		width: 70px;
	}
		#schedule .inner .s-ttl .writing .en {
			font-size: 2.2rem;
			margin-left: 5px;
		}
		#schedule .inner .s-ttl .writing h2 {
			font-size: 1.0rem;
		}

	#schedule .inner .list {
		width: -webkit-calc(100% - 70px);
		width: calc(100% - 70px);
	}
		#schedule .inner .list dl {
			display: block;
			padding: 15px;
		}
			#schedule .inner .list dl dt {
				width: 100%;
				padding-left: 0;
				font-size: 1.3rem;
				margin-bottom: 5px;
			}
			#schedule .inner .list dl dd {
				width: 100%;
				padding-right: 0;
			}
}


	
	