@charset "UTF-8";


	
	
/* infrastructure
--------------------- */
#infrastructure h2 {
	font-size: calc(30 * var(--vw-ratio));;
	font-weight: 700;
	line-height: 1.4em;
	text-align: center;
	margin-bottom: calc(20 * var(--vw-ratio));
}

#infrastructure .txt-16 {
	text-align: center;
	margin-bottom: calc(50 * var(--vw-ratio));
}

#infrastructure ul.pht-list li {
	width: 48%;
	border-radius: calc(10 * var(--vw-ratio));
	overflow: hidden;
}

#infrastructure .anchor-list a.aclink {
	width: 23%;
	border-radius: calc(10 * var(--vw-ratio));
	background: #F4F4F7;
	padding: calc(30 * var(--vw-ratio)) calc(40 * var(--vw-ratio));
	text-align: center;
	margin-right: 3%;
}
#infrastructure .anchor-list a.aclink:nth-last-child(1) {
	margin-right: 0;
}
#infrastructure .anchor-list a.aclink:hover {
	transform: scale(1.05, 1.05);
}
	#infrastructure .anchor-list a.aclink .head {
		margin-bottom: calc(-20 * var(--vw-ratio));
		position: relative;
		z-index: 2;
	}

	#infrastructure .anchor-list a.aclink .human {
		margin-bottom: calc(-18 * var(--vw-ratio));
	}

	#infrastructure .anchor-list a.aclink .job {
		display: inline-block;
		height: calc(28 * var(--vw-ratio));
		border-radius: calc(14 * var(--vw-ratio));
		background: #51489D;
		padding: 0 calc(14 * var(--vw-ratio));
		font-weight: 700;
		lin-height: calc(28 * var(--vw-ratio));
		margin-bottom: calc(12 * var(--vw-ratio));
	}

	#infrastructure .anchor-list a.aclink .catch {
		font-weight: 700;
		line-height: 1.3em;
	}
@media screen and (max-width: 767px) {
	#infrastructure h2 {
		font-size: calc(24 * var(--vw-ratio));;
		margin-bottom: calc(15 * var(--vw-ratio));
	}

	#infrastructure .txt-16 {
		text-align: left;
		margin-bottom: calc(30 * var(--vw-ratio));
	}

	#infrastructure ul.pht-list {
		display: block;
	}
		#infrastructure ul.pht-list li {
			width: 100%;
			margin-bottom: calc(20 * var(--vw-ratio));
		}
		#infrastructure ul.pht-list li:nth-last-child(1) {
			margin-bottom: 0;
		}

	#infrastructure .anchor-list {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
		#infrastructure .anchor-list a.aclink {
			width: 48%;
			margin-top: 4%;
			margin-right: 4%;
			padding: calc(20 * var(--vw-ratio)) calc(25 * var(--vw-ratio));
		}
		#infrastructure .anchor-list a.aclink:nth-child(2n) {
			margin-right: 0;
		}
			#infrastructure .anchor-list a.aclink .head {
				text-align: center;
			}

			#infrastructure .anchor-list a.aclink .human {
				margin-bottom: calc(-18 * var(--vw-ratio));
			}

			#infrastructure .anchor-list a.aclink .job {
				font-size: calc(10 * var(--vw-ratio));
				height: calc(27 * var(--vw-ratio));
			}

		#infrastructure .anchor-list a.aclink .catch {
			font-weight: 700;
			line-height: 1.3em;
		}
}


	
	
/* case
--------------------- */
.case .bg-area {
	border-radius: calc(10 * var(--vw-ratio));
	background: #F4F4F7;
	position: relative;
}
	.case .bg-area h2 {
		width: 100%;
		font-size: calc(40 * var(--vw-ratio));
		font-weight: 500;
		line-height: 1;
		text-align: center;
		position: absolute;
		top: calc(-20 * var(--vw-ratio));
		left: 0;
	}

	.case .bg-area .profile {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: calc(60 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
	}
		.case .bg-area .profile .human {
			width: calc(180 * var(--vw-ratio));
		}

		.case .bg-area .profile .text {
			padding-left: calc(30 * var(--vw-ratio));
		}
			.case .bg-area .profile .text h3 {
				font-size: calc(22 * var(--vw-ratio));
				font-weight: 700;
				line-height: 1.5em;
				margin-bottom:  calc(18 * var(--vw-ratio));
			}

			.case .bg-area .profile .text .info {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				margin-bottom:  calc(12 * var(--vw-ratio));
			}
				.case .bg-area .profile .text .info .job {
					display: inline-block;
					height: calc(28 * var(--vw-ratio));
					border-radius: calc(14 * var(--vw-ratio));
					background: #51489D;
					padding: 0 calc(14 * var(--vw-ratio));
					font-weight: 700;
					lin-height: calc(28 * var(--vw-ratio));
					margin-right: calc(10 * var(--vw-ratio));
				}

			.case .bg-area .profile .text .name {
				display: flex;
				justify-content: flex-start;
				align-items: center;
			}
				.case .bg-area .profile .text .name .en {
					font-size: calc(40 * var(--vw-ratio));
					font-weight: 500;
					line-height: 1;
					margin-right: calc(8 * var(--vw-ratio));
				}

				.case .bg-area .profile .text .name .join {
					line-height: 0.8em;
				}
					.case .bg-area .profile .text .name .join .san {
						font-weight: 700;
					}

	.case .bg-area .contents {
		border-top: solid 1px #D9D6F0;
	}
		.case .bg-area .contents .career {
			width: 50%;
			border-right: solid 1px #D9D6F0;
			padding: 0 calc(30 * var(--vw-ratio));
		}
			.case .bg-area .contents .career dl.year {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				border-bottom: dashed 1px #D9D6F0;
				padding: calc(20 * var(--vw-ratio)) 0;
			}
			.case .bg-area .contents .career dl.year:nth-last-child(1) {
				border-bottom: none;
			}
				.case .bg-area .contents .career dl.year dt {
					width: 14%;
					line-height: 1;
					font-weight: 700;
				}
				.case .bg-area .contents .career dl.year dd {
					width: 86%;
					line-height: 1.6em;
				}

		.case .bg-area .contents .talk {
			width: 50%;
		}
			.case .bg-area .contents .talk .cell {
				padding: calc(30 * var(--vw-ratio));
				border-bottom: solid 1px #D9D6F0;
			}
			.case .bg-area .contents .talk .cell:nth-last-child(1) {
				border-bottom: none;
			}
				.case .bg-area .contents .talk .cell .head {
					display: inline-block;
					height: calc(26 * var(--vw-ratio));
					padding: 0 calc(10 * var(--vw-ratio));
					border-radius: calc(13 * var(--vw-ratio));
					background: #fff;
					font-weight: 700;
					line-height: calc(26 * var(--vw-ratio));
					text-align: center;
					margin-bottom: calc(10 * var(--vw-ratio));
				}
				.case .bg-area .contents .talk .cell:nth-last-child(1) .head {
					background: #51489D;
					color: #fff;
				}

				.case .bg-area .contents .talk .cell h4 {
					line-height: 1.3em;
					margin-bottom: calc(10 * var(--vw-ratio));
				}
@media screen and (max-width: 767px) {
	.case .bg-area h2 {
		font-size: calc(30 * var(--vw-ratio));
		top: calc(-15 * var(--vw-ratio));
	}

	.case .bg-area .profile {
		display: block;
		padding: calc(40 * var(--vw-ratio)) calc(30 * var(--vw-ratio)) calc(20 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
	}
		.case .bg-area .profile .human {
			width: calc(150 * var(--vw-ratio));
			margin: 0 auto;
		}

		.case .bg-area .profile .text {
			padding-top: calc(20 * var(--vw-ratio));
			padding-left: 0;
		}
			.case .bg-area .profile .text h3 {
				font-size: calc(20 * var(--vw-ratio));
				margin-bottom:  calc(18 * var(--vw-ratio));
			}

			.case .bg-area .profile .text .name .en {
				font-size: calc(36 * var(--vw-ratio));
				margin-right: calc(8 * var(--vw-ratio));
			}
	
			.case .bg-area .profile .text .name .join .san {
				font-size: calc(14 * var(--vw-ratio));;
			}

	.case .bg-area .contents {
		display: block;
	}
		.case .bg-area .contents .career {
			width: 100%;
			border-bottom: solid 1px #D9D6F0;
			border-right: none;
		}
			.case .bg-area .contents .career dl.year dt {
				width: 25%;
			}
			.case .bg-area .contents .career dl.year dd {
				width: 75%;
			}

		.case .bg-area .contents .talk {
			width: 100%;
		}
}


	
	
/* strength
--------------------- */
#strength .content {
	width: 46%;
}
	#strength .content .text .txt-16 {
		margin-bottom: calc(15 * var(--vw-ratio));
	}

	#strength .content .text ul {
		margin-top: calc(20 * var(--vw-ratio));
		margin-bottom: calc(20 * var(--vw-ratio));
		background: #F4F4F7;
		border-radius: calc(10 * var(--vw-ratio));
		padding: calc(20 * var(--vw-ratio)) calc(25 * var(--vw-ratio));
	}

#strength .pht {
	width: 48%;
}
	#strength .pht .circle {
		width: 100%;
		position: sticky;
		top: calc(140 * var(--vw-ratio));
		right: 0;
	}
		#strength .pht .circle .ani {
			width: 100%;
			position: absolute;
			top: 0;
			left: 0;
			opacity: 0;
			transform: rotate(-180deg) scale(0.8);
			transition: opacity 0.6s ease;
		}
		#strength .pht .circle .ani.active {
			opacity: 1;
			animation: rotateIn 0.8s ease forwards;
		}
		@keyframes rotateIn {
		  0% {
			transform: rotate(-180deg) scale(0.8);
		  }
		  100% {
			transform: rotate(0deg) scale(1);
		  }
		}
@media screen and (max-width: 767px) {
	#strength .inner {
		display: block;
	}
		#strength .content {
			width: 100%;
		}

		#strength .pht {
			width: 100%;
		}
			#strength .pht .circle {
				position: static;
			}
}


	
	
/* work
--------------------- */
.work {
	background: #F4F4F7;
	padding-bottom: calc(20 * var(--vw-ratio));
	overflow: hidden;
}
	.work .title {
		background: #fff;
		text-align: center;
		margin-bottom: 0;
		padding-bottom: calc(40 * var(--vw-ratio));
	}

	.work .whitebox {
		background: #fff;
		padding: calc(80 * var(--vw-ratio));
		margin-top: calc(-100 * var(--vw-ratio));
		margin-bottom: calc(80 * var(--vw-ratio));
		border-radius: calc(10 * var(--vw-ratio));
	}
		.work .whitebox .catch {
			font-size: calc(34 * var(--vw-ratio));
			font-weight: 700;
			text-align: center;
			line-height: 1.3em;
		}

		.work .whitebox .row {
			margin-top: calc(60 * var(--vw-ratio));
		}
			.work .whitebox .row h3 {
				border-top: solid 1px #ddd;
				font-size: calc(26 * var(--vw-ratio));
				padding-top: calc(10 * var(--vw-ratio));
				margin-bottom: calc(12 * var(--vw-ratio));
				position: relative;
			}
			.work .whitebox .row h3:before {
				content: "";
				width: calc(50 * var(--vw-ratio));
				height: 1px;
				background: #51489D;
				position: absolute;
				top: -1px;
				left: 0;
			}

			.work .whitebox .row ul.sharp li {
				margin-right: calc(25 * var(--vw-ratio));
			}

			.work .whitebox .row .topice {
				display: flex;
				justify-content: space-between;
				align-items: center;
				background: #F4F4F7;
				border-radius: calc(10 * var(--vw-ratio));
				margin-top: calc(40 * var(--vw-ratio));
				padding: calc(40 * var(--vw-ratio)) calc(50 * var(--vw-ratio));
			}
				.work .whitebox .row .topice .text {
					width: 78%;
				}
					.work .whitebox .row .topice .text h4 {
						font-size: calc(26 * var(--vw-ratio));
						margin-bottom: calc(15 * var(--vw-ratio));
					}

				.work .whitebox .row .topice .pht {
					width: 17%;
				}

	.work .loopSlider {
		height: calc(240 * var(--vw-ratio));
		position: relative;
	}
		.work .loopSlider .loopslider_wrap {
			height: calc(240 * var(--vw-ratio));
			display: -webkit-flex;
			display: flex;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
			.work .loopSlider .loopslider_wrap ul {
				display: -webkit-flex;
				display: flex;
			}
				.work .loopSlider .loopslider_wrap ul li {
					width: calc(400 * var(--vw-ratio));
					border-radius: calc(10 * var(--vw-ratio));
					overflow: hidden;
					margin: 0 calc(10 * var(--vw-ratio));
				}
@media screen and (max-width: 767px) {
	.work {
		padding-bottom: calc(15 * var(--vw-ratio));
	}
		.work .title {
			margin-bottom: 0;
			padding-bottom: calc(5 * var(--vw-ratio));
		}

		.work .whitebox {
			padding: calc(30 * var(--vw-ratio));
			margin-top: calc(-30 * var(--vw-ratio));
			margin-bottom: calc(50 * var(--vw-ratio));
		}
			.work .whitebox .catch {
				font-size: calc(26 * var(--vw-ratio));
			}

			.work .whitebox .row {
				margin-top: calc(40 * var(--vw-ratio));
			}
				.work .whitebox .row h3 {
					font-size: calc(22 * var(--vw-ratio));
					padding-top: calc(14 * var(--vw-ratio));
					line-height: 1.3em;
					margin-bottom: calc(15 * var(--vw-ratio));
				}
				.work .whitebox .row h3:before {
					width: calc(40 * var(--vw-ratio));
				}

				.work .whitebox .row .topice {
					display: block;
					margin-top: calc(30 * var(--vw-ratio));
					padding: calc(25 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
				}
					.work .whitebox .row .topice .text {
						width: 100%;
						margin-bottom: calc(15 * var(--vw-ratio));
					}
						.work .whitebox .row .topice .text h4 {
							font-size: calc(22 * var(--vw-ratio));
							margin-bottom: calc(10 * var(--vw-ratio));
						}

					.work .whitebox .row .topice .pht {
						width: 100%;
					}

		.work .loopSlider {
			height: calc(180 * var(--vw-ratio));
		}
			.work .loopSlider .loopslider_wrap {
				height: calc(180 * var(--vw-ratio));
			}
				.work .loopSlider .loopslider_wrap ul li {
					width: calc(300 * var(--vw-ratio));
					margin: 0 calc(6 * var(--vw-ratio));
				}
}


	
	
/* interview-list
--------------------- */
#interview-list a.linkbox {
	display: block;
	width: 47%;
	margin-right: 6%;
	margin-bottom: calc(80 * var(--vw-ratio));
}
#interview-list a.linkbox:nth-child(2n) {
	margin-right: 0;
}
	#interview-list a.linkbox .pht {
		position: relative;
		border-radius: calc(10 * var(--vw-ratio));
	}
		#interview-list a.linkbox .pht .label {
			display: inline-block;
			background: #51489D;
			border-radius: 0 calc(5 * var(--vw-ratio)) 0 0;
			line-height: 1;
			font-weight: 500;
			padding: calc(10 * var(--vw-ratio)) calc(14 * var(--vw-ratio));
			position: absolute;
			bottom: 0;
			left: 0;
			z-index: 1;
		}

	#interview-list a.linkbox .text {
		padding-top: calc(18 * var(--vw-ratio));
		background: url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(45 * var(--vw-ratio));
		position: relative;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
	#interview-list a.linkbox:hover .text {
		background: url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(40 * var(--vw-ratio));
	}
		#interview-list a.linkbox .text h2 {
			font-size: calc(30 * var(--vw-ratio));
			font-weight: 600;
			line-height: 1;
			margin-bottom: calc(10 * var(--vw-ratio));
		}

		#interview-list a.linkbox .text .join {
			line-height: calc(24 * var(--vw-ratio))
		}

		#interview-list a.linkbox .text .number {
			font-size: calc(86 * var(--vw-ratio));
			line-height: calc(33 * var(--vw-ratio));
			color: transparent;
			-webkit-text-stroke: 1px #D3D0EB;
			position: absolute;
			right: calc(60 * var(--vw-ratio));
			bottom: 0;
		}
			#interview-list a.linkbox .text .number span {
				font-size: calc(48 * var(--vw-ratio));
			}
@media screen and (max-width: 767px) {
	#interview-list .inner {
		display: block;
	}
		#interview-list a.linkbox {
			width: 100%;
			margin-right: 0;
			margin-bottom: calc(50 * var(--vw-ratio));
		}
		#interview-list a.linkbox:nth-last-child(1) {
			margin-bottom: 0;
		}
			#interview-list a.linkbox .text {
				background: url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(35 * var(--vw-ratio));
			}
			#interview-list a.linkbox:hover .text {
				background: url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(30 * var(--vw-ratio));
			}
				#interview-list a.linkbox .text h2 {
					font-size: calc(28 * var(--vw-ratio));
					margin-bottom: calc(8 * var(--vw-ratio));
				}

				#interview-list a.linkbox .text .number {
					font-size: calc(70 * var(--vw-ratio));
					line-height: calc(25 * var(--vw-ratio));
					right: calc(45 * var(--vw-ratio));
				}
					#interview-list a.linkbox .text .number span {
						font-size: calc(35 * var(--vw-ratio));
					}
}


	
	
/* kv
--------------------- */
#kv {
	margin-top: calc(100 * var(--vw-ratio));
	background-image: linear-gradient(135deg, #ffffff, #efedff);
}
	#kv .text {
		width: 50%;
		padding: 0 calc(50 * var(--vw-ratio));
	}
		#kv .text .label {
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}
			#kv .text .label {
				padding-top: calc(20 * var(--vw-ratio));
				margin-bottom: calc(100 * var(--vw-ratio));
			}
				#kv .text .label .number {
					font-size: calc(105 * var(--vw-ratio));
					padding-right:  calc(10 * var(--vw-ratio));
					line-height: 1;
					color: transparent;
					-webkit-text-stroke: 1px #51489D;
				}
					#kv .text .label .number span {
						font-size: calc(60 * var(--vw-ratio));
					}

				#kv .text .label .job {
					font-weight: 700;
				}

		#kv .text .catch {
			font-size: calc(48 * var(--vw-ratio));
			font-weight: 700;
			line-height: calc(60 * var(--vw-ratio));
		}

		#kv .text .profile {
			display: flex;
			justify-content: center;
			align-items: center;
			background: #51489D;
			width: calc(220 * var(--vw-ratio));
			height: calc(220 * var(--vw-ratio));
			border-radius: 50%;
			color: #fff;
			text-align: center;
			position: absolute;
			top: 50%;
			left: 50%;
			margin-top: calc(-110 * var(--vw-ratio));
			margin-left: calc(-110 * var(--vw-ratio));
			z-index: 2;
		}
			#kv .text .profile .area {
				position: relative;
			}
			#kv .text .profile .area:before {
				content: "";
				width: calc(212 * var(--vw-ratio));
				height: calc(118 * var(--vw-ratio));
				background: url("../img/motif.svg") no-repeat center / 100%;
				position: absolute;
				right: calc(-84 * var(--vw-ratio));
				bottom: calc(-84 * var(--vw-ratio));
			}
				#kv .text .profile .area h1 {
					font-size: calc(48 * var(--vw-ratio));
					font-weight: 600;
					line-height: 1;
					margin-bottom: calc(12 * var(--vw-ratio));
				}

				#kv .text .profile .area .join {
					font-weight: 500;
					line-height: calc(24 * var(--vw-ratio));
				}

		#kv .text .breadcrumbs {
			position: absolute;
			left: calc(50 * var(--vw-ratio));
			bottom: calc(30 * var(--vw-ratio));
		}
			#kv .text .breadcrumbs a {
				text-decoration: underline;
			}
			#kv .text .breadcrumbs a:hover {
				text-decoration: none;
			}

	#kv .pht {
		width: 50%;
		overflow: hidden;
		border-radius: 0 0 0 calc(10 * var(--vw-ratio));
	}
		#kv .pht img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
@media screen and (max-width: 767px) {
	#kv {
		margin-top: calc(70 * var(--vw-ratio));
		background-image: linear-gradient(135deg, #ffffff, #efedff);
	}
		#kv .inner_full {
			display: block;
		}
			#kv .text {
				width: 100%;
				padding: 0 8%;
				position: relative;
			}
				#kv .text .label {
					padding-top: calc(20 * var(--vw-ratio));
					margin-bottom: calc(15 * var(--vw-ratio));
				}
					#kv .text .label .number {
						font-size: calc(40 * var(--vw-ratio));
					}
						#kv .text .label .number span {
							font-size: calc(20 * var(--vw-ratio));
						}

				#kv .text .catch {
					font-size: calc(31 * var(--vw-ratio));
					line-height: calc(40 * var(--vw-ratio));
					padding-bottom: calc(30 * var(--vw-ratio));
				}

				#kv .text .profile {
					width: calc(150 * var(--vw-ratio));
					height: calc(150 * var(--vw-ratio));
					top: auto;
					bottom: calc(-100 * var(--vw-ratio));
					right: calc(15 * var(--vw-ratio));
					left: auto;
					margin-top: 0;
					margin-left: 0;
				}
					#kv .text .profile .area:before {
						width: calc(130 * var(--vw-ratio));
						height: calc(71 * var(--vw-ratio));
						right: calc(-33 * var(--vw-ratio));
						bottom: calc(-50 * var(--vw-ratio));
					}
						#kv .text .profile .area h1 {
							font-size: calc(30 * var(--vw-ratio));
							margin-bottom: calc(10 * var(--vw-ratio));
						}

						#kv .text .profile .area .join {
							font-size: calc(13 * var(--vw-ratio));
							line-height: calc(20 * var(--vw-ratio));
						}

				#kv .text .breadcrumbs {
					position: static;
					margin-bottom: calc(20 * var(--vw-ratio));
				}

			#kv .pht {
				width: 100%;
				border-radius: 0 0 calc(10 * var(--vw-ratio)) calc(10 * var(--vw-ratio));
			}
}


	
	
/* career
--------------------- */
#career .inner {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
	#career h2 {
		font-size: calc(26 * var(--vw-ratio));
		font-weight: 600;
		line-height: 1;
	}

	#career .txt-16 {
		padding-left: calc(50 * var(--vw-ratio));
		margin-left: calc(50 * var(--vw-ratio));
		border-left: solid 1px #ddd;
	}
@media screen and (max-width: 767px) {
	#career .inner {
		display: block;
	}
		#career h2 {
			font-size: calc(24 * var(--vw-ratio));
			margin-bottom: calc(12 * var(--vw-ratio));
		}

		#career .txt-16 {
			padding-left: 0;
			margin-left: 0;
			border-left: none;
		}
}


	
	
/* interview
--------------------- */
#interview01 .pht {
	width: 47%;
	overflow: hidden;
	border-radius: calc(10 * var(--vw-ratio));
	order: 1;
}
#interview02 .pht {
	width: 47%;
	overflow: hidden;
}
	#interview02 .pht img {
		border-radius: calc(10 * var(--vw-ratio));
	}

#interview01 .text {
	width: 47%;
	order: 2;
}
#interview02 .text {
	width: 47%;
}
@media screen and (max-width: 767px) {
	.interview .inner {
		display: block;
	}
		#interview01 .pht {
			width: 100%;
		}
		#interview02 .pht {
			width: 100%;
		}

		#interview01 .text {
			width: 100%;
			margin-bottom: calc(25 * var(--vw-ratio));
		}
		#interview02 .text {
			width: 100%;
			margin-bottom: calc(25 * var(--vw-ratio));
		}
}


	
	
/* info
--------------------- */
#info {
	width: 100%;
	position: relative;
}
	#info .marquee-top {
		display: flex;
		width: 100%;
		overflow: hidden;
		color: #6259A6;
		position: absolute;
		top: calc(-15 * var(--vw-ratio));
		left: 0;
		z-index: -1;
	}
	#info .marquee-bottom {
		display: flex;
		width: 100%;
		overflow: hidden;
		color: #51489D;
		position: absolute;
		bottom: calc(-117 * var(--vw-ratio));
		left: 0;
		z-index: -1;
	}
		#info .marquee__item {
			flex: 0 0 auto;
			overflow: hidden;
			font-size: calc(120 * var(--vw-ratio));
			font-weight: 700;
			white-space: nowrap;
			line-height: 1;
			padding-right: calc(20 * var(--vw-ratio));
		}
		#info .marquee__item:nth-child(odd) {
			animation: loop 100s -50s linear infinite;
		}
		#info .marquee__item:nth-child(even) {
			animation: loop2 100s linear infinite;
		}
		@keyframes loop {
			0% {
				transform: translateX(100%);
			}
			to {
				transform: translateX(-100%);
			}
		}
		@keyframes loop2 {
			0% {
				transform: translateX(0);
			}
			to {
				transform: translateX(-200%);
			}
		}

	#info .schedule {
		width: 50%;
		background: #6259A6;
		padding: calc(100 * var(--vw-ratio)) calc(80 * var(--vw-ratio));
		position: relative;
	}
		#info .schedule .list dl {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			margin-bottom: calc(10 * var(--vw-ratio));
		}
		#info .schedule .list dl:nth-last-child(1) {
			margin-bottom: 0;
		}
			#info .schedule .list dl dt {
				width: 10%;
			}
			#info .schedule .list dl dd {
				width: 90%;
				background: #726AAE;
				padding: calc(12 * var(--vw-ratio)) calc(15 * var(--vw-ratio));
				border-radius: calc(5 * var(--vw-ratio));
			}

	#info .private {
		width: 50%;
		background: #51489D;
		padding: calc(100 * var(--vw-ratio)) calc(80 * var(--vw-ratio));
		position: relative;
		margin-top: calc(100 * var(--vw-ratio));
		margin-bottom: calc(-100 * var(--vw-ratio));
	}
		#info .private .pht {
			overflow: hidden;
			border-radius: calc(10 * var(--vw-ratio));
			margin-bottom: calc(30 * var(--vw-ratio));
		}
@media screen and (max-width: 767px) {
	#info .inner_full {
		display: block;
	}
		#info .marquee-top,
		#info .marquee-bottom {
			display: none;
		}

		#info .schedule {
			width: 100%;
			padding: calc(75 * var(--vw-ratio)) 8%;
		}
			#info .schedule .list dl {
				margin-bottom: calc(14 * var(--vw-ratio));
			}
				#info .schedule .list dl dt {
					width: 16%;
				}
				#info .schedule .list dl dd {
					width: 84%;
					line-height: 1.6em;
				}

		#info .private {
			width: 100%;
			padding: calc(75 * var(--vw-ratio)) 8%;
			margin-top: 0;
			margin-bottom: 0;
		}
			#info .private .pht {
				margin-bottom: calc(25 * var(--vw-ratio));
			}
}


	
	
/* other
--------------------- */
#other {
	overflow: hidden;
}
	#other .title {
		padding-top: calc(100 * var(--vw-ratio));
	}

	#other .swiper-container {
		padding: 0;
		position: relative;
		border-top: solid 1px #ddd;
		border-bottom: solid 1px #ddd;
	}
		#other .swiper-container .swiper-wrapper .swiper-slide {
			border-right: solid 1px #ddd;
			background: url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(45 * var(--vw-ratio));
			padding: calc(40 * var(--vw-ratio));
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#other .swiper-container .swiper-wrapper .swiper-slide:hover {
			background: #F4F4F7 url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(40 * var(--vw-ratio));
		}
			#other .swiper-container .swiper-wrapper .swiper-slide .pht {
				width: 100%;
				height: 100%;
				aspect-ratio: 1 / 1;
				overflow: hidden;
				border-radius: calc(10 * var(--vw-ratio));
				position: relative;
			}
				#other .swiper-container .swiper-wrapper .swiper-slide .pht .label {
					display: inline-block;
					background: #51489D;
					border-radius: 0 calc(5 * var(--vw-ratio)) 0 0;
					line-height: 1;
					font-weight: 500;
					padding: calc(8 * var(--vw-ratio)) calc(12 * var(--vw-ratio));
					position: absolute;
					bottom: 0;
					left: 0;
					z-index: 1;
				}
				#other .swiper-container .swiper-wrapper .swiper-slide .pht img {
					width: 100%;
					height: 100%;
					object-fit: cover;
				}

			#other .swiper-container .swiper-wrapper .swiper-slide h3 {
				font-size: calc(30 * var(--vw-ratio));
				line-height: 1;
				margin-top: calc(18 * var(--vw-ratio));
				margin-bottom: calc(8 * var(--vw-ratio));
				font-weight: 600;
			}

		#other .swiper-container .swiper-pagination {
			bottom: calc(-50 * var(--vw-ratio));
		}
			#other .swiper-container .swiper-pagination .swiper-pagination-bullet {
				width: calc(10 * var(--vw-ratio));
				height: calc(10 * var(--vw-ratio));
				border-radius: 50%;
				background: #fff;
				border: solid 1px #231815;
				opacity: 1;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#other .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
				background: #231815;
				opacity: 1;
			}

		#other .swiper-container .swiper-button-prev {
			width: calc(46 * var(--vw-ratio));
			height: calc(46 * var(--vw-ratio));
			background: url("../../common/img/btn_arrow_prev.svg") no-repeat center / 100%;
			top: auto;
			left: auto;
			right: calc(66 * var(--vw-ratio));
			bottom: calc(-60 * var(--vw-ratio));
			margin: 0;
		}
		#other .swiper-container .swiper-button-prev:after {
			display: none;
		}

		#other .swiper-container .swiper-button-next {
			width: calc(46 * var(--vw-ratio));
			height: calc(46 * var(--vw-ratio));
			background: url("../../common/img/btn_arrow_next.svg") no-repeat center / 100%;
			top: auto;
			right: calc(10 * var(--vw-ratio));
			bottom: calc(-60 * var(--vw-ratio));
			margin: 0;
		}
		#other .swiper-container .swiper-button-next:after {
			display: none;
		}
@media screen and (max-width: 767px) {
	#other {
		padding-bottom: calc(100 * var(--vw-ratio));
	}
		#other .title {
			padding-top: 0;
		}

		#other .swiper-container .swiper-wrapper .swiper-slide {
			background: url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(35 * var(--vw-ratio));
			padding: calc(20 * var(--vw-ratio));
		}
		#other .swiper-container .swiper-wrapper .swiper-slide:hover {
			background: #F4F4F7 url("../../common/img/icon_arrow_link.svg") no-repeat right bottom / calc(30 * var(--vw-ratio));
		}
			#other .swiper-container .swiper-wrapper .swiper-slide .pht .label {
				font-size: calc(8 * var(--vw-ratio));
			}

			#other .swiper-container .swiper-wrapper .swiper-slide h3 {
				font-size: calc(26 * var(--vw-ratio));
				margin-top: calc(14 * var(--vw-ratio));
				margin-bottom: calc(8 * var(--vw-ratio));
			}

			#other .swiper-container .swiper-wrapper .swiper-slide .join {
				font-size: calc(12 * var(--vw-ratio));
				line-height: 1.6em;
			}

			#other .swiper-container .swiper-pagination {
				bottom: calc(-43 * var(--vw-ratio));
			}

			#other .swiper-container .swiper-button-prev {
				width: calc(40 * var(--vw-ratio));
				height: calc(40 * var(--vw-ratio));
				right: calc(55 * var(--vw-ratio));
				bottom: calc(-50 * var(--vw-ratio));
			}

			#other .swiper-container .swiper-button-next {
				width: calc(40 * var(--vw-ratio));
				height: calc(40 * var(--vw-ratio));
				right: calc(10 * var(--vw-ratio));
				bottom: calc(-50 * var(--vw-ratio));
			}
}


	
	
/* report
--------------------- */
#report .tabBox .tabArea {
	width: 100%;
}
	#report .tabBox .tabArea .one_tab {
		display: block;
		width: calc(320 * var(--vw-ratio));
		transition-duration: 0.3s;
		border-top: solid 2px #F4F4F7;
		border-left: solid 2px #F4F4F7;
		border-right: solid 2px #F4F4F7;
		border-radius: calc(20 * var(--vw-ratio)) calc(20 * var(--vw-ratio)) 0 0;
		cursor: pointer;
	}
	#report .tabBox .tabArea .one_tab:nth-last-child(1) {
		margin-left: calc(20 * var(--vw-ratio));
	}
	#report .tabBox .tabArea.bottom .one_tab {
		border-top: none;
		border-bottom: solid 2px #F4F4F7;
		border-radius: 0 0 calc(20 * var(--vw-ratio)) calc(20 * var(--vw-ratio));
	}
	#report .tabBox .tabArea .one_tab.select {
		background: #F4F4F7;
	}
		#report .tabBox .tabArea .one_tab .area {
			display: flex;
			justify-content: space-between;
			align-items: center;
			padding: calc(20 * var(--vw-ratio));
		}
			#report .tabBox .tabArea .one_tab .area .pht {
				width: 30%;
			}
			#report .tabBox .tabArea .one_tab .area .text {
				width: 65%;
			}
				#report .tabBox .tabArea .one_tab .area .text .job {
					font-weight: 500;
					line-height: 1;
					margin-bottom: calc(8 * var(--vw-ratio));
				}
				#report .tabBox .tabArea .one_tab .area .text .name {
					font-weight: 500;
					line-height: 1;
					margin-bottom: calc(8 * var(--vw-ratio));
				}
				#report .tabBox .tabArea .one_tab .area .text .join {
					line-height: 1;
				}

#report .contents {
	width: 98%;
	border-radius: calc(20 * var(--vw-ratio));
	background: #F4F4F7;
	padding: calc(100 * var(--vw-ratio)) 0;
	margin: 0 auto;
}
	#report .contents .tab_main {
		display: none;
	}
	#report .contents .tab_main.is_show {
		display: block;
	}
		#report .contents .tab_main .introduction {
			display: flex;
			justify-content: space-between;
			align-items: center;
			width: 76%;
			margin: 0 auto calc(100 * var(--vw-ratio)) auto;
		}
			#report .contents .tab_main .introduction .pht {
				width: 20%;
				border-radius: 50%;
				border: solid 3px #fff;
			}

			#report .contents .tab_main .introduction .text {
				width: 76%;
			}
				#report .contents .tab_main .introduction .text .job {
					font-weight: 500;
					line-height: 1;
					margin-bottom: calc(10 * var(--vw-ratio));
				}
				#report .contents .tab_main .introduction .text .name {
					font-size: calc(30 * var(--vw-ratio));
					font-weight: 500;
					line-height: 1;
					margin-bottom: calc(10 * var(--vw-ratio));
				}
				#report .contents .tab_main .introduction .text .join {
					line-height: 1;
					margin-bottom: calc(25 * var(--vw-ratio));
				}

				#report .contents .tab_main .introduction .text .profile dt {
					font-weight: 500;
					line-height: 1;
					padding-left: calc(20 * var(--vw-ratio));
					margin-bottom: calc(-10 * var(--vw-ratio));
				}
				#report .contents .tab_main .introduction .text .profile dd {
					background: #fff;
					padding: calc(15 * var(--vw-ratio)) calc(20 * var(--vw-ratio));
					border-radius: calc(10 * var(--vw-ratio));
				}


		#report .contents .tab_main .schedule {
			position: relative;
		}
			#report .contents .tab_main .schedule .marquee {
				display: flex;
				width: 100%;
				overflow: hidden;
				color: #fff;
				position: absolute;
				top: 0;
				left: 0;
				z-index: 0;
			}
				#report .contents .tab_main .schedule .marquee__item {
					flex: 0 0 auto;
					overflow: hidden;
					font-size: calc(100 * var(--vw-ratio));
					font-weight: 500;
					white-space: nowrap;
					line-height: 1;
					padding-right: calc(20 * var(--vw-ratio));
				}
				#report .contents .tab_main .schedule .marquee__item:nth-child(odd) {
					animation: loop-en 100s -50s linear infinite;
				}
				#report .contents .tab_main .schedule .marquee__item:nth-child(even) {
					animation: loop2-en 100s linear infinite;
				}
				@keyframes loop-en {
					0% {
						transform: translateX(100%);
					}
					to {
						transform: translateX(-100%);
					}
				}
				@keyframes loop2-en {
					0% {
						transform: translateX(0);
					}
					to {
						transform: translateX(-200%);
					}
				}

			#report .contents .tab_main .schedule h2 {
				padding-top: calc(40 * var(--vw-ratio));
				font-size: calc(30 * var(--vw-ratio));
				text-align: center;
				line-height: 1;
				position: relative;
				z-index: 2;
			}

			#report .contents .tab_main .schedule .list {
				width: 76%;
				margin: calc(20 * var(--vw-ratio)) auto 0 auto;
				padding-top: calc(70 * var(--vw-ratio));
				position: relative;
			}
			#report .contents .tab_main .schedule .list:before {
				content: "";
				width: 2px;
				height: 100%;
				background: #51489D;
				position: absolute;
				top: 0;
				left: 50%;
				margin-left: -1px;
			}
				#report .contents .tab_main .schedule .list .box {
					display: flex;
					display: -webkit-flex;
					justify-content: space-between;
					margin-top: calc(70 * var(--vw-ratio));
					position: relative;
					z-index: 2;
				}
				#report .contents .tab_main .schedule .list .box:nth-child(1) {
					margin-top: 0;
				}
				#report .contents .tab_main .schedule .list .box:before {
					content: "";
					width: calc(20 * var(--vw-ratio));
					height: calc(20 * var(--vw-ratio));
					border-radius: 50%;
					background: #51489D;
					position: absolute;
					top: calc(6 * var(--vw-ratio));
					left: 50%;
					margin-left: calc(-10 * var(--vw-ratio));
				}
					#report .contents .tab_main .schedule .list .box time {
						display: block;
						width: 46%;
						line-height: 1;
						padding-top: calc(7 * var(--vw-ratio));
					}
					#report .contents .tab_main .schedule .list .box.box-left time {
						order: 2;
					}
					#report .contents .tab_main .schedule .list .box.box-right time {
						text-align: right;
					}

					#report .contents .tab_main .schedule .list .box .text {
						width: 46%;
					}
					#report .contents .tab_main .schedule .list .box.box-left .text {
						order: 1;
					}
					#report .contents .tab_main .schedule .list .box.pickup .text {
						background: #fff;
						border-radius: calc(20 * var(--vw-ratio));
						padding: calc(35 * var(--vw-ratio));
					}
						#report .contents .tab_main .schedule .list .box .text h3 {
							font-size: calc(24 * var(--vw-ratio));
							line-height: 1.3em;
							margin-bottom: calc(10 * var(--vw-ratio));
						}

					#report .contents .tab_main .schedule .list .box .pht {
						border-radius: calc(10 * var(--vw-ratio));
						overflow: hidden;
						margin-top: calc(25 * var(--vw-ratio));
					}

				#report .contents .tab_main .schedule .list .box.full {
					display: block;
					color: #fff;
					background: #51489D;
					border-radius: calc(20 * var(--vw-ratio));
					padding: calc(50 * var(--vw-ratio)) calc(80 * var(--vw-ratio));
				}
					#report .contents .tab_main .schedule .list .box.full h3 {
						font-size: calc(24 * var(--vw-ratio));
						text-align: center;
						line-height: 1.3em;
						margin-bottom: calc(20 * var(--vw-ratio));
					}
@media screen and (max-width: 767px) {
	#report .tabBox .tabArea {
		padding: 0 calc(10 * var(--vw-ratio));
	}
		#report .tabBox .tabArea .one_tab {
			width: 48.5%;
			border-radius: calc(10 * var(--vw-ratio)) calc(10 * var(--vw-ratio)) 0 0;
		}
		#report .tabBox .tabArea .one_tab:nth-last-child(1) {
			margin-left: 3%;
		}
		#report .tabBox .tabArea.bottom .one_tab {
			border-radius: 0 0 calc(10 * var(--vw-ratio)) calc(10 * var(--vw-ratio));
		}
			#report .tabBox .tabArea .one_tab .area {
				padding: calc(15 * var(--vw-ratio));
			}
				#report .tabBox .tabArea .one_tab .area .pht {
					display: none;
				}
				#report .tabBox .tabArea .one_tab .area .text {
					width: 100%;
					text-align: center;
				}

	#report .contents {
		width: 100%;
		border-radius: 0;
		padding: calc(50 * var(--vw-ratio)) 0;
	}
		#report .contents .tab_main .introduction {
			display: block;
			width: 86%;
			margin: 0 auto calc(50 * var(--vw-ratio)) auto;
		}
			#report .contents .tab_main .introduction .pht {
				width: 60%;
				margin: 0 auto calc(20 * var(--vw-ratio)) auto;
			}

			#report .contents .tab_main .introduction .text {
				width: 100%;
				text-align: center;
			}
				#report .contents .tab_main .introduction .text .profile dt {
					padding-left: 0;
				}
				#report .contents .tab_main .introduction .text .profile dd {
					text-align: left;
				}


		#report .contents .tab_main .schedule .marquee__item {
			font-size: calc(80 * var(--vw-ratio));
		}

		#report .contents .tab_main .schedule h2 {
			padding-top: calc(32 * var(--vw-ratio));
			font-size: calc(26 * var(--vw-ratio));
		}

		#report .contents .tab_main .schedule .list {
			width: 86%;
			padding-top: calc(50 * var(--vw-ratio));
		}
		#report .contents .tab_main .schedule .list:before {
			left: 0;
			margin-left: 0;
		}
			#report .contents .tab_main .schedule .list .box {
				display: block;
				margin-left: calc(35 * var(--vw-ratio));
				margin-top: calc(50 * var(--vw-ratio));
			}
			#report .contents .tab_main .schedule .list .box:before {
				width: calc(16 * var(--vw-ratio));
				height: calc(16 * var(--vw-ratio));
				top: calc(6 * var(--vw-ratio));
				left: calc(-42 * var(--vw-ratio));
				margin-left: 0;
			}
				#report .contents .tab_main .schedule .list .box time {
					width: 100%;
					padding-top: calc(7 * var(--vw-ratio));
					padding-bottom: calc(15 * var(--vw-ratio));
				}
				#report .contents .tab_main .schedule .list .box.box-right time {
					text-align: left;
				}

				#report .contents .tab_main .schedule .list .box .text {
					width: 100%;
				}
				#report .contents .tab_main .schedule .list .box.pickup .text {
					border-radius: calc(10 * var(--vw-ratio));
					padding: calc(25 * var(--vw-ratio));
				}
					#report .contents .tab_main .schedule .list .box .text h3 {
						font-size: calc(22 * var(--vw-ratio));
					}

				#report .contents .tab_main .schedule .list .box .pht {
					border-radius: calc(5 * var(--vw-ratio));
					margin-top: calc(20 * var(--vw-ratio));
				}

			#report .contents .tab_main .schedule .list .box.full {
				margin-left: 0;
				border-radius: 0 calc(10 * var(--vw-ratio)) calc(10 * var(--vw-ratio)) 0;
				padding: calc(30 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
			}
			#report .contents .tab_main .schedule .list .box.full:before {
				display: none;
			}
				#report .contents .tab_main .schedule .list .box.full h3 {
					font-size: calc(22 * var(--vw-ratio));
					margin-bottom: calc(16 * var(--vw-ratio));
				}
}


	
	
/* recommended
--------------------- */
#recommended {
	padding-left: calc(20 * var(--vw-ratio));
	padding-right: calc(20 * var(--vw-ratio));
}
	#recommended .bg {
		background-image: linear-gradient(135deg, #51489d, #c9c3f4);
		border-radius: calc(20 * var(--vw-ratio));
		padding: calc(100 * var(--vw-ratio)) 0;
		position: relative;
	}
	#recommended .bg:before {
		content: "";
		width: 1px;
		height: calc(50 * var(--vw-ratio));
		background: #FFF;
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -0.5px;
		z-index: 2;
	}
	#recommended .bg:after {
		content: "";
		width: 1px;
		height: calc(50 * var(--vw-ratio));
		background: #736CAF;
		position: absolute;
		top: calc(-50 * var(--vw-ratio));
		left: 50%;
		margin-left: -0.5px;
		z-index: 2;
	}
		#recommended .bg .head {
			text-align: center;
			margin-bottom: calc(50 * var(--vw-ratio));
		}
			#recommended .bg .head .en {
				font-size: calc(40 * var(--vw-ratio));
				line-height: 1.3em;
			}

			#recommended .bg .head h2 {
				line-height: 1.3em;
			}

		#recommended .bg .area {
			width: calc(750 * var(--vw-ratio));
			margin: 0 auto;
			border-radius: calc(10 * var(--vw-ratio));
		}
		#recommended .bg .area.interview {
			background: url("../img/work/recommended_pht.webp") no-repeat center / cover;
		}
		#recommended .bg .area.voice {
			background: url("../img/report/recommended_pht.webp") no-repeat center / cover;
		}
		#recommended .bg .area.report {
			background: url("../img/career/recommended_pht.webp") no-repeat center / cover;
		}
			#recommended .bg .area a {
				display: block;
				color: #fff;
				background: url("../../common/img/icon_arrow_white.svg") no-repeat right calc(50 * var(--vw-ratio)) center / calc(20 * var(--vw-ratio));
				padding: calc(100 * var(--vw-ratio)) calc(50 * var(--vw-ratio));
			}
			#recommended .bg .area a:hover {
				opacity: 0.7;
				background: url("../../common/img/icon_arrow_white.svg") no-repeat right calc(45 * var(--vw-ratio)) center / calc(30 * var(--vw-ratio));
			}
				#recommended .bg .area a .en {
					font-size: calc(40 * var(--vw-ratio));
					line-height: 1;
				}
@media screen and (max-width: 767px) {
	#recommended {
		padding-left: calc(10 * var(--vw-ratio));
		padding-right: calc(10 * var(--vw-ratio));
	}
		#recommended .bg {
			border-radius: calc(15 * var(--vw-ratio));
			padding: calc(40 * var(--vw-ratio)) 0;
		}
		#recommended .bg:before {
			height: calc(30 * var(--vw-ratio));
		}
		#recommended .bg:after {
			height: calc(30 * var(--vw-ratio));
			top: calc(-30 * var(--vw-ratio));
		}
			#recommended .bg .head {
				margin-bottom: calc(30 * var(--vw-ratio));
			}
				#recommended .bg .head .en {
					font-size: calc(30 * var(--vw-ratio));
					line-height: 1.1em;
					margin-bottom: calc(10 * var(--vw-ratio));
				}

				#recommended .bg .head h2 {
					line-height: 1.3em;
				}

			#recommended .bg .area {
				width: 100%;
			}
				#recommended .bg .area a {
					background: url("../../common/img/icon_arrow_white.svg") no-repeat right calc(30 * var(--vw-ratio)) center / calc(20 * var(--vw-ratio));
					padding: calc(60 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
				}
				#recommended .bg .area a:hover {
					background: url("../../common/img/icon_arrow_white.svg") no-repeat right calc(30 * var(--vw-ratio)) center / calc(20 * var(--vw-ratio));
				}
					#recommended .bg .area a .en {
						font-size: calc(32 * var(--vw-ratio));
					}
}







