@charset "UTF-8";
/*
 * ================================================
 *
 * [work]
 *
 * ================================================
 */
/**
 * main
*/
#main {
	margin-bottom: 100px;
}
/**
 * index
*/
.index .cntIntro {
	font-size: 2.6rem;
	line-height: 1.85;
	margin-bottom: 90px;
	font-weight: 500;
}
/**
 * mainVS01
*/
.index .mainVS01 {
	margin-bottom: 20px;
}
/**
 * areasVox
*/
.index .areasVox {
	padding-bottom: 90px;
}
	.index .areasVox header {}
		.index .areasVox header h2 {
			display: inline-block;
			color: #fff;
			background: #d70f19;
			font-size: 2.2rem;
			font-weight: bold;
			padding: 0.15em 0 0.05em;
			width: 240px;
			text-align: center;
			margin-bottom: 0.8em;
		}
		.index .areasVox header .introTxt {
			font-size: 2.6rem;
			line-height: 1.85;
			margin-bottom: 1.5em;
			font-weight: 500;
		}
	.index .areasVox .content {}
		.index .areasVox .content figure {
			margin-bottom: 10px;
		}
		.index .areasVox .content .txt01 {
			font-size: 1.2rem;
			margin-bottom: 50px;
		}
		.index .areasVox .content .txt02 {
			font-size: 1.6rem;
			line-height: 2.1;
			margin-bottom: 20px;
		}
		.index .areasVox .content .txt03 {
			font-size: 1.2rem;
		}
/**
 * serviceVox
*/
.serviceVox {
	background: #e6e6e6;
	padding: 100px 0;
	margin-bottom: 100px;
}
	.serviceVox header {
		margin-bottom: 100px;
	}
		.serviceVox header h2 {
			display: inline-block;
			color: #fff;
			background: #d70f19;
			font-size: 2.2rem;
			font-weight: bold;
			padding: 0.15em 0 0.05em;
			width: 240px;
			text-align: center;
		}
	.serviceVox .content {}
	.serviceVox .serviceList {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
		.serviceVox .serviceList li {
			text-align: center;
			font-weight: bold;
			margin-bottom: 90px;
		}
		.serviceVox .serviceList li:nth-child(n+7) {
			margin-bottom: 0;
		}
		.serviceVox .serviceList li.item {
			position: relative;
			width: 280px;
		}
		.serviceVox .serviceList li.item .numItem {
			position: absolute;
			margin: auto;
			display: flex;
			text-align: center;
			justify-content: center;
			align-items: center;
			width: 90px;
			height: 90px;
			right: 0;
			left: 0;
			top: -55px;
			text-align: center;
			font-size: 5rem;
			color: #fff;
			background: #b4d2e1;
			border-radius: 50%;
			font-family: 'Heebo';
			font-weight: normal;
			padding-top: 0.1em;
		}
		.serviceVox .serviceList li.item:nth-child(4) .numItem { background: #b9b905; }
		.serviceVox .serviceList li.item:nth-child(6) .numItem { background: #ffe100; }
		.serviceVox .serviceList li.item:nth-child(7) .numItem { background: #e60082; }
		.serviceVox .serviceList li.item:nth-child(8) .numItem { background: #d70f19; }
		.serviceVox .serviceList li.item:nth-child(9) .numItem { background: #c80078; }
			.serviceVox .serviceList li.item .numItem span {
				display: inline-block;
				line-height: 1;
			}
			.serviceVox .serviceList li > a {
				display: block;
			}

			.serviceVox .serviceList li .topArea {
				padding: 55px 0 25px;
				background: #fff;
			}
				.serviceVox .serviceList li .topArea .illust {
					margin-bottom: 10px;
				}
				.serviceVox .serviceList li .topArea .title {
					font-weight: bold;
					margin-bottom: 15px;
				}
					.serviceVox .serviceList li .topArea .title .en {
						display: block;
						font-family: 'Bebas Neue';
						font-weight: 500;
						font-size: 3rem;
						letter-spacing: 0.05em;
						line-height: 1.3;
					}
					.serviceVox .serviceList li .topArea .title .ja {
						display: block;
						font-size: 1.6rem;
						font-weight: 500;
						color: #000000;
					}

					.serviceVox .serviceList li.item:nth-child(-n+3) .topArea .title .en { color: #b4d2e1; }
					.serviceVox .serviceList li.item:nth-child(4) .topArea .title .en { color: #b9b905; }
					.serviceVox .serviceList li.item:nth-child(6) .topArea .title .en { color: #ffe100; }
					.serviceVox .serviceList li.item:nth-child(7) .topArea .title .en { color: #e60082; }
					.serviceVox .serviceList li.item:nth-child(8) .topArea .title .en { color: #d70f19; }
					.serviceVox .serviceList li.item:nth-child(9) .topArea .title .en { color: #c80078; }


				.serviceVox .serviceList li .topArea .linkTxt {
					position: relative;
					display: inline-block;
					width: 205px;
					text-align: center;
					background: #000;
					color: #fff;
					padding: 0.1em 0.5em 0.1em 0;
					font-size: 1.6rem;
				}
				.serviceVox .serviceList li .topArea .linkTxt::before,
				.serviceVox .serviceList li .topArea .linkTxt::after {
					content: '';
					position: absolute;
					margin: auto;
				}
				.serviceVox .serviceList li .topArea .linkTxt::before {
					width: 0;
					height: 0;
					border-style: solid;
					border-width: 0 6px 6px 0;
					border-color: transparent #fff transparent transparent;
					top: 0;
					right: 0;
				}
				.serviceVox .serviceList li .topArea .linkTxt::after {
					content: '>';
					position: absolute;
					margin: auto;
					top: 50%;
					right: 6px;
					margin-top: -10px;
					font-size: 1.3rem;
					font-weight: bold;
					color: #fff;
				}

			.serviceVox .serviceList li .bottomArea {
				background: #d70f19;
				color: #fff;
				height: 110px;
				display: flex;
				justify-content: center;
				align-items: center;
				text-align: center;
			}
			.serviceVox .serviceList li:nth-child(n+4) .bottomArea {
				height: 150px;
			}
				.serviceVox .serviceList li .bottomArea p {
					font-size: 1.6rem;
					line-height: 1.72;
					font-weight: 500;
				}
	.illusutImg01 {
		width: 82px;
	}
/**
 * linkBanner
*/
.index .linkBanner figure {
	text-align: center;
	margin-bottom: 120px;
}
/*.index .linkBanner {
	margin: 0 auto 120px;
	background: url(../../images/content/work/img_banner01.jpg) center / cover no-repeat;
	width: 800px;
	height: 325px;
}
	.index .linkBanner > a {
		display: block;
		padding: 40px 55px;
	}
	.index .linkBanner span {
		display: block;
		color: #fff;
		font-weight: bold;
	}
	.index .linkBanner span:nth-of-type(1) {
		font-size: 1.6rem;
	}
	.index .linkBanner span:nth-of-type(2) {
		font-size: 2.4rem;
	}
	.index .linkBanner span:nth-of-type(3) {
		font-size: 5rem;
	}
	.index .linkBanner span:nth-of-type(4) {
		font-size: 2.4rem;
		color: #d70f19;
		line-height: 1.5;
	}*/
/*
 * ================================================
 *
 * [job]
 *
 * ================================================
 */
.job {}
/**
 * pageHeader
*/
/**
 * mainVS01
*/
.job .mainVS01 {
	background: url(../../images/content/work/job/page_mv01.jpg) center / cover no-repeat;
	margin-bottom: 40px;
}
/**
 * addressVox
*/
.job .addressVox {
	border: 1px solid #969696;
	text-align: center;
	font-size: 2rem;
	padding: 0.4em 0;
	margin-bottom: 120px;
}
	.job .addressVox .add {}
		.job .addressVox .add a {
			color: #d70f19;
		}
/**
 * secVox
*/
.job .secVox {
	margin-bottom: 90px;
}
.job .coVox {
	margin-bottom: 60px;
}
	.job .secVox header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 55px;
	}
		.job .secVox header .txtVox {
			width: 340px;
			height: 120px;
			background: #d70f19;
			display: flex;
			justify-content: center;
			align-items: center;
			text-align: center;
		}
			.job .secVox header h2 {
				display: inline-block;
				color: #fff;
			}
				.job .secVox header h2 .en,
				.job .secVox header h2 .ja {
					display: block;
					letter-spacing: 0.05em;
				}
				.job .secVox header h2 .en {
					font-size: 4.6rem;
					font-family: 'Bebas Neue';
					font-weight: normal;
					line-height: 1;
				}
				.job .secVox header h2 .ja {
					font-size: 1.8rem;
					font-weight: bold;
				}
		.job .secVox header .subTxt {
			width: 630px;
			font-weight: 500;
			font-size: 1.6rem;
			line-height: 2.1;
		}
	.job .secVox .jobList {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin-bottom: 20px;
	}
		.job .secVox .jobList li {
			width: 450px;
			margin-bottom: 40px;
		}
			.job .secVox .jobList li h3 {
				font-weight: bold;
				display: inline-block;
				font-size: 2.2rem;
				margin-bottom: 0.8em;
				border-bottom: 2px solid #000;
				line-height: 1.3;
			}
			.job .secVox .jobList li .txt {
				line-height: 2;
				font-weight: 500;
				text-align: justify;
			}
	.job .secVox .linkVox {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.job .secVox .linkVox a {
		position: relative;
		text-align: center;
		display: block;
		min-width: 450px;
		background: #969696;
		color: #fff;
		font-size: 1.8rem;
		padding: 0.45em 0;
	}
	.job .secVox .linkVox a.linkBtnS01::before {
		border-width: 0 16px 16px 0;
		border-color: transparent #fff transparent transparent;
		top: 0;
		right: 0;
	}
	.job .secVox .linkVox a.linkBtnS01::after {
		margin-top: -17px;
		font-size: 2rem;
		right: 25px;
	}
/*
 * ================================================
 *
 * [future]
 *
 * ================================================
 */

.future {}
/**
 * pageHeader
*/
.future .pageHeader {
	position: relative;
	padding-top: 135px;
	margin-bottom: 130px;
}
	.future .pageHeader .h2s01 {
		position: absolute;
		top: 0;
		left: 17%;
	}
		.future .pageHeader .h2s01 .subTxt > span {
			background: #fff;
		}
	.future .pageHeader .mainVS02 {
		position: relative;
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.future .pageHeader .mainVS02 .txtVox {
		position: absolute;
		top: 0;
		margin-top: -35px;
		left: 17%;
		text-align: left;
	}
		.future .pageHeader .mainVS02 .txtVox h1 {
			font-size: 6rem;
			margin-bottom: 0.2em;
			font-weight: bold;
		}
			.future .pageHeader .mainVS02 .txtVox .nameVox {
				font-size: 2rem;
				margin-bottom: 5%;
			}
				.future .pageHeader .mainVS02 .txtVox .nameVox span {
					display: inline-block;
					background: #000;
					color: #fff;
					margin-bottom: 0.4em;
					line-height: 1.2;
					padding: 0.16em 0.4em;
				}
				.future .pageHeader .mainVS02 .txtVox .nameVox span:nth-of-type(3) {
					font-size: 3.2rem;
				}
			.future .pageHeader .mainVS02 .txtVox .fz01 {
				display: block;
				font-size: 4.5rem;
				font-size: 3.45vw;
				color: #d70f19;
				line-height: 1.4;
				font-weight: bold;
			}
				.future .pageHeader .mainVS02 .photo {
					width: 62%;
				}
				@media all and (-ms-high-contrast: none){
					.future .pageHeader .mainVS02 {
						width: 1000px;
						margin: 0 auto;
						height: 520px;
					}
					.future .pageHeader .mainVS02 .txtVox {
						z-index: 20;
						left: 0;
					}
					.future .pageHeader .mainVS02 .photo {
						position: absolute;
						margin: auto;
						top: 0;
						right: 0;
						z-index: 10;
						width: 650px;
					}
					.future .pageHeader .mainVS02 .photo img {
						width: 650px;
					}
				}
@media only screen and (max-width: 1000px) {
	.future .pageHeader .mainVS02 .txtVox .fz01 {
		font-size: 3.5rem;
	}
}
/**
 * secVox
*/
.future .secVox {}
	.future .secVox .cntInner {
		padding: 0 100px;
	}
	.future .secVox header {}
		.future .secVox header h2 {
			font-size: 3.2rem;
			line-height: 1.56;
			margin-bottom: 1em;
		}
	.future .secVox .interviewList {
		line-height: 2.28;
		margin-bottom: 60px;
	}
		.future .secVox .interviewList dt {
			color: #646464;
			margin-bottom: 1.6em;
		}
		.future .secVox .interviewList dd {}
	.future .secVox figure {
		text-align: center;
	}
	.future .secVox .figure01 {
		margin-bottom: 65px;
	}
.future .imagFigure01 {
	width: 705px;
}
/**
 * secVox01
*/
.future .secVox01 {
	margin-bottom: 90px;
}
/**
 * secVox02
*/
.future .secVox02 {
	margin-bottom: 40px;
}
	.future .secVox02 .cntInner {}
		.future .secVox02 .cntInner .left {
			float: left;
			margin: 0 50px 30px 0;
		}
		.future .secVox02 .cntInner .right {
			/*float: left;*/
		}
	.future .secVox02 .imgPhoto01 {
		width: 260px;
	}
/**
 * secVox03
*/
.secVox03 {
	margin-bottom: 100px;
}
.secVox03 .subV {
	margin-bottom: 70px;
}
/**
 * secVox04
*/
.future .secVox04 {
	margin-bottom: 120px;
}
	.future .secVox04 .imgPhoto02 {
		width: 300px;
	}
	.future .secVox04 .right {
		float: right;
		margin: 0 0 30px 50px;
	}
	.future .secVox04 .left {}
/*
 * ================================================
 *
 * [UX/UI]
 *
 * ================================================
 */
.ux {}
.h2S02 {
	display: inline-block;
	color: #d70f19;
}
/**
 * mainVS01
*/
.ux .mainVS01 {
	position: static;
	margin: -70px 0 75px;
	background: url(../../images/content/work/ux_ui/page_mv01.jpg) center / cover no-repeat;
}
/**
 * cntIntro
*/
.ux .cntIntro {
	margin-bottom: 80px;
}
	.ux .cntIntro h2 {
		color: #d70f19;
		margin-bottom: 45px;
	}
	.ux .cntIntro .message {
		font-size: 2.6rem;
		line-height: 1.5;
		margin-bottom: 1em;
		font-weight: bold;
	}
	.ux .cntIntro .message.message--en {}
	.ux .cntIntro .txt {
		font-size: 1.6rem;
		line-height: 1.875;
	}
	.ux .cntIntro .txt01 {
		margin-bottom: 55px;
	}
/**
 * voiceVox
*/
.ux .voiceVox {
	background: #e6e6e6;
	padding: 80px 0 60px;
	margin-bottom: 85px;
}
	.ux .voiceVox .voiceVoxHead {
		margin-bottom: 60px;
	}
	.ux .voiceVox .voiceVoxCntHead {
		display: inline-block;
		min-width: 110px;
		margin-bottom: 30px;
		padding: 0 0.5em;
		background: #d70f19;
		color: #fff;
		font-size: 1.25em;
		font-weight: bold;
		text-align: center;
	}
	.ux .voiceVox .voiceVoxCnt + .voiceVoxCntHead {
		margin-top: 60px;
	}
	.ux .voiceVox .voiceVoxCnt {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.ux .voiceVox .voiceItem {
		width: 455px;
	}
	.ux .voiceVox .voiceItem:nth-child(n+3) {
		margin-top: 60px;
	}
		.ux .voiceVox .voiceItem .voiceVideo {
			margin-bottom: 15px;
		}
		.ux .voiceVox .voiceItem .caption {
			display: block;
			margin-bottom: 0.3em;
		}
		.ux .voiceVox .voiceItem .voiceLink {
			display: block;
		}
/**
 * placeVox
*/
.ux .placeVox {
	margin-bottom: 80px;
}
.ux .placeVox .placeVoxHead {
	margin-bottom: 45px;
}
.ux .placeVox .placeVoxCnt {
	display: flex;
	margin-bottom: 90px;
}
.ux .placeVox .placeVoxPht {
	width: 50%;
}
	.ux .placeVox .placeVoxPht img {
		width: 455px;
	}
.ux .placeVox .placeVoxTxt {
	width: 50%;
	padding-left: 50px;
}
	.ux .placeVox .placeVoxTxt .logo {
		width: 105px;
		display: block;
		margin-bottom: 20px;
	}
	.ux .placeVox .placeVoxTxt .txt {
		font-size: 1.6rem;
		line-height: 1.875;
		margin-bottom: 0.7em;
	}
	.ux .placeVox .placeVoxTxt .txt02 {
		margin-bottom: 0;
		word-break: break-all;
	}
	.ux .placeVox .placeVoxTxt .linkBtnS01 {
		margin-top: 40px;
		width: 160px;
		padding: 0.3em 0.4em 0.3em 0.1em;
		font-size: 1.6rem;
	}
	.ux .placeVox .placeVoxTxt .linkBtnS01::before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 8px 8px 0;
		border-color: transparent #ffffff transparent transparent;
	}
	.ux .placeVox .placeVoxTxt .linkBtnS01::after {
		right: 20px;
	}
	.ux .placeVox .linkItem {
		display: block;
		width: 500px;
		margin: 0 auto;
	}
	.ux .placeVox .linkItem {
		text-align: center;
		color: #d70f19;
		text-decoration: none;
		padding: 10px 0;
		border: 1px solid #d70f19;
	}
		.ux .placeVox .linkItem .en {
			font-size: 2rem;
			display: block;
		}
		.ux .placeVox .linkItem .ja {
			font-size: 1.6rem;
			display: block;
		}



/**
 ****************************************************
 *
 * screens larger than 767
 *
 ****************************************************
*/
@media only screen and (min-width: 768px) {
	.serviceVox .serviceList li {}
	.serviceVox .serviceList li.item a:hover {
		transition: .4s;
		opacity: .5;
	}
}
/**
 ****************************************************
 *
 * screens smaller than 768
 *
 ****************************************************
*/
@media only screen and (max-width: 767px) {
	/**
	 * main
	*/
	#main {
		margin-bottom: 50px;
	}
	.index .mainVS01 {
		margin-bottom: 0;
	}
	/**
	 * cntIntro
	*/
	.index .cntIntro {
		font-size: 2.1rem;
		line-height: 2.2;
		margin-bottom: 70px;
	}
	@media only screen and (max-width: 320px) {
		.index .cntIntro {
			font-size: 1.8rem;
		}
	}
	/**
	 * areasVox
	*/
	.index .areasVox {
		padding-bottom: 60px;
	}
		.index .areasVox header {}
			.index .areasVox header h2 {
				font-size: 1.8rem;
				padding: 0.14em 0 0.14em;
				width: 150px;
			}
			.index .areasVox header .introTxt {
				font-size: 1.8rem;
				line-height: 1.86;
				margin-bottom: 1.2em;
			}
		.index .areasVox .content {}
			.index .areasVox .content figure {
				margin-bottom: 15px;
			}
			.index .areasVox .content .txt01 {
				font-size: 1.2rem;
			}
			.index .areasVox .content .txt02 {
				font-size: 1.4rem;
			}
			.index .areasVox .content .txt03 {
				font-size: 1.2rem;
			}
	/**
	 * serviceVox
	*/
	.serviceVox {
		padding: 60px 0 40px;
		margin-bottom: 70px;
	}
		.serviceVox header {
			margin-bottom: 40px;
		}
			.serviceVox header h2 {
				font-size: 1.8rem;
				padding: 0.14em 0 0.14em;
				width: 150px;
			}
	.serviceVox .figure01 {
		margin-bottom: 80px;
	}
	.serviceVox .figure01 img {
		width: 170px;
	}
	.serviceVox .serviceList {
		align-items: stretch;
	}
		.serviceVox .serviceList li {
			margin-bottom: 80px;
		}
		.serviceVox .serviceList li:nth-child(n+7) {
			margin-bottom: 40px;
		}
		.serviceVox .serviceList li.item {
			width: 47.5%;
		}
		@media only screen and (max-width: 320px) {
			.serviceVox .serviceList {
				padding: 0 10%;
			}
			.serviceVox .serviceList li.item {
				width: 100%;
			}
		}
		.serviceVox .serviceList li.item .numItem {
			width: 60px;
			height: 60px;
			right: 0;
			left: 0;
			top: -30px;
			text-align: center;
			font-size: 3.5rem;
		}
			.serviceVox .serviceList li .topArea {
				padding: 35px 0 20px;
				background: #fff;
			}
				.serviceVox .serviceList li .topArea .illust {
					margin-bottom: 10px;
				}
				.serviceVox .serviceList li .topArea .title {
					margin-bottom: 15px;
				}
					.serviceVox .serviceList li .topArea .title .en {
						font-size: 1.85rem;
						line-height: 1.1;
					}
					.serviceVox .serviceList li .topArea .title .ja {
						font-size: 1.1rem;
					}
				.serviceVox .serviceList li .topArea .linkTxt {
					width: 90%;
					font-size: 1rem;
					padding: 0.4em 0.5em 0.4em 0;
				}
				.serviceVox .serviceList li .bottomArea {
					padding: 10px 5.5%;
					height: 100px;
				}
				.serviceVox .serviceList li .bottomArea p {
					font-size: 1.2rem;
					text-align: left;
				}
		.illusutImg01 {
			max-width: 82px;
			width: 33%;
		}
	/**
	 * linkBanner
	*/
	.index .linkBanner {
		padding: 0 5%;
	}
	/*.index .linkBanner {
		margin: 0 auto 120px;
		width: 90%;
		height: auto;
		background-position: right -60px center;
	}
		.index .linkBanner > a {
			padding: 5%;
			height: 100%;
		}
		.index .linkBanner span {
			color: #000;
		}
		.index .linkBanner span:nth-of-type(1) {
			font-size: 1.3rem;
		}
		.index .linkBanner span:nth-of-type(2) {
			font-size: 1.6rem;
		}
		.index .linkBanner span:nth-of-type(3) {
			font-size: 2.7rem;
			line-height: 1.8;
		}
		.index .linkBanner span:nth-of-type(4) {
			font-size: 1.5rem;
		}*/
	/*
	 * ================================================
	 *
	 * [job]
	 *
	 * ================================================
	 */
	.job {}
	/**
	 * pageHeader
	*/
	/**
	 * mainVS01
	*/
	.job .mainVS01 {}
	/**
	 * addressVox
	*/
	.job .addressVox {
		font-size: 1.6rem;
		padding: 0.5em;
		margin-bottom: 60px;
	}
		.job .addressVox .add {}
			.job .addressVox .add a {
			}
	@media only screen and (max-width: 320px) {
		.job .addressVox {
			font-size: 1.4rem;
		}
	}
	/**
	 * secVox
	*/
	.job .secVox {
		margin-bottom: 90px;
	}
	.job .coVox {
		margin-bottom: 110px;
	}
		.job .secVox header {
			display: block;
			margin-bottom: 55px;
		}
			.job .secVox header .txtVox {
				width: 100%;
				height: 90px;
				margin-bottom: 20px;
			}
				.job .secVox header h2 {
					padding-top: 0.2em;
				}
					.job .secVox header h2 .en,
					.job .secVox header h2 .ja {}
					.job .secVox header h2 .en {
						font-size: 3.2rem;
					}
					.job .secVox header h2 .ja {
						font-size: 1.6rem;
					}
			.job .secVox header .subTxt {
				width: 100%;
				font-size: 1.4rem;
			}
		.job .secVox .jobList {
			display: block;
			margin-bottom: 20px;
		}
			.job .secVox .jobList li {
				width: 100%;
			}
				.job .secVox .jobList li h3 {
					font-size: 1.6rem;
					margin-bottom: 1em;
				}
				.job .secVox .jobList li .txt {}
		.job .secVox .linkVox {
			display: block;
		}
		.job .secVox .linkVox a {
			min-width: 0;
			width: 100%;
			font-size: 1.45rem;
			padding: 0.45em 0;
			margin-bottom: 20px;
		}
		.job .secVox .linkVox a.linkBtnS01::before {
			border-width: 0 10px 10px 0;
		}
		.job .secVox .linkVox a.linkBtnS01::after {
			margin-top: -12px;
			font-size: 1.5rem;
			right: 10px;
		}
	@media only screen and (max-width: 320px) {
		.job .secVox .linkVox a {
			font-size: 1.3rem;
		}
		.job .secVox .linkVox a.linkBtnS01::after {
			display: none;
		}
	}
	/*
	 * ================================================
	 *
	 * [future]
	 *
	 * ================================================
	 */

	.future {}
	/**
	 * pageHeader
	*/
	.future .pageHeader {
		padding-top: 0;
		margin-bottom: 130px;
	}
		.future .pageHeader .h2s01 {
			position: static;
			margin-bottom: 45px;
			padding: 0 5%;
		}
			.future .pageHeader .h2s01 .subTxt > span {
				background: #fff;
			}
		.future .pageHeader .mainVS02 {
			display: block;
		}
		.future .pageHeader .mainVS02 .txtVox {
			top: 0;
			margin-top: -30px;
			left: 5%;
		}
			.future .pageHeader .mainVS02 .txtVox h1 {
				font-size: 4rem;
				margin-bottom: 0.6em;
			}
				.future .pageHeader .mainVS02 .txtVox .nameVox {
					font-size: 1.6rem;
					margin-bottom: 10px;
				}
					.future .pageHeader .mainVS02 .txtVox .nameVox span {
						margin-bottom: 10px;
						padding: 0.16em 0.4em;
					}
					.future .pageHeader .mainVS02 .txtVox .nameVox span:nth-of-type(3) {
						font-size: 2.4rem;
					}
				.future .pageHeader .mainVS02 .txtVox .fz01 {
					font-size: 2.1rem;
					line-height: 1.7;
				}
					.future .pageHeader .mainVS02 .photo {
						width: 100%;
						padding-top: 67%;
						background: url(../../images/content/work/future/page_mv01_sp.jpg) right 0 / cover no-repeat;
					}
					.future .pageHeader .mainVS02 .photo img {
						display: none;
					}
	/**
	 * secVox
	*/
	.future .secVox {}
		.future .secVox .cntInner {
			padding: 0 5%;
		}
		.future .secVox header {}
			.future .secVox header h2 {
				font-size: 1.8rem;
				margin-bottom: 2em;
			}
		.future .secVox .interviewList {
			line-height: 2;
			margin-bottom: 60px;
		}
			.future .secVox .interviewList dt {
				font-size: 1.4rem;
			}
				.future .secVox .interviewList dt br {
					display: none;
				}
			.future .secVox .interviewList dd {
			}
		.future .secVox figure {}
		.future .secVox .figure01 {
			margin-bottom: 65px;
		}
	/**
	 * secVox01
	*/
	.future .secVox01 {}
	/**
	 * secVox02
	*/
	.future .secVox02 {}
		.future .secVox02 .cntInner {}
			.future .secVox02 .cntInner .left {
				float: none;
				margin: 0 0 50px;
			}
			.future .secVox02 .cntInner .right {}
		.future .secVox02 .imgPhoto01 {
			width: 300px;
		}
	/**
	 * secVox03
	*/
	.secVox03 {
		margin-bottom: 100px;
	}
	.secVox03 .subV {
		margin-bottom: 70px;
	}
	/**
	 * secVox04
	*/
	.future .secVox04 {
		margin-bottom: 120px;
	}
		.future .secVox04 .imgPhoto02 {
			width: 300px;
		}
		.future .secVox04 .right {
			float: none;
			margin: 0 0 50px;
		}
	/*
	 * ================================================
	 *
	 * [UX/UI]
	 *
	 * ================================================
	 */
	.ux {}
	/**
	 * mainVS01
	*/
	.ux .mainVS01 {
		margin: -45px 0 75px;
	}
	/**
	 * cntIntro
	*/
	.ux .cntIntro {
		margin-bottom: 60px;
	}
		.ux .cntIntro h2 {
			color: #d70f19;
			margin-bottom: 45px;
		}
		.ux .cntIntro .message {
			font-size: 1.8rem;
		}
		.ux .cntIntro .message.message--en {}
		.ux .cntIntro .txt {
			font-size: 1.3rem;
			margin-bottom: 1.4em;
		}
		.ux .cntIntro .txt01 {
			margin-bottom: 40px;
		}
	/**
	 * voiceVox
	*/
	.ux .voiceVox {
		padding: 60px 0;
		margin-bottom: 60px;
	}
		.ux .voiceVox .voiceVoxHead {
			margin-bottom: 30px;
		}
		.ux .voiceVox .voiceVoxCnt {
			display: block;
		}
		.ux .voiceVox .voiceItem {
			width: 100%;
			margin-bottom: 35px;
		}
		.ux .voiceVox .voiceItem:nth-child(n+3) {
			margin-top: 0;
		}
		.ux .voiceVox .voiceItem:last-child {
			margin-bottom: 0;
		}
	/**
	 * placeVox
	*/
	.ux .placeVox {
		margin-bottom: 60px;
	}
	.ux .placeVox .placeVoxHead {
		margin-bottom: 30px;
	}
	.ux .placeVox .placeVoxCnt {
		display: block;
		margin-bottom: 60px;
	}
	.ux .placeVox .placeVoxPht {
		width: 100%;
		margin-bottom: 35px;
	}
	.ux .placeVox .placeVoxTxt {
		width: 100%;
		padding: 0;
	}
		.ux .placeVox .placeVoxTxt .logo {
			width: 80px;
		}
		.ux .placeVox .placeVoxTxt .txt {
			font-size: 1.3rem;
			margin-bottom: 1em;
		}
		.ux .placeVox .linkItem {
			width: 100%;
		}
		.ux .placeVox .linkItem {
			padding: 20px;
		}
			.ux .placeVox .linkItem .en {
				font-size: 1.8rem;
				margin-bottom: 0.6em;
			}
			.ux .placeVox .linkItem .ja {
				font-size: 1.4rem;
			}
}



/*
 * ================================================
 *
 * [ux_ui voice]
 *
 * ================================================
 */

.ux_ui.voice {}
/**
 * pageHeader
*/
.ux_ui.voice .pageHeader {
	position: relative;
	padding-top: 135px;
	margin-bottom: 130px;
}
	.ux_ui.voice .pageHeader .h2s01 {
		position: absolute;
		top: 0;
		left: 17%;
	}
		.ux_ui.voice .pageHeader .h2s01 .subTxt > span {
			background: #fff;
		}
	.ux_ui.voice .pageHeader .mainVS02 {
		position: relative;
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.ux_ui.voice .pageHeader .mainVS02 .txtVox {
		position: absolute;
		top: 0;
		margin-top: -35px;
		left: 17%;
		text-align: left;
	}
		.ux_ui.voice .pageHeader .mainVS02 .txtVox h1 {
			display: inline-block;
			font-size: 6rem;
			margin-bottom: 0.5em;
			font-weight: bold;
			text-align: center;
		}
		.ux_ui.voice .pageHeader .mainVS02 .txtVox h1 span.en {
			display: block;
			margin-top: 0.25em;
			font-size: 1.8em;
			font-weight: normal;
			font-family: 'Bebas Neue';
			line-height: 1;
		}
		.ux_ui.voice .pageHeader .mainVS02 .txtVox h1 span.subTxt {
			display: block;
			font-size: 0.4em;
			line-height: 1;
		}
			.ux_ui.voice .pageHeader .mainVS02 .txtVox .nameVox {
				font-size: 2rem;
				margin-bottom: 5%;
			}
				.ux_ui.voice .pageHeader .mainVS02 .txtVox .nameVox span {
					display: inline-block;
					background: #000;
					color: #fff;
					margin-bottom: 0.4em;
					line-height: 1.2;
					padding: 0.16em 0.4em;
				}
				.ux_ui.voice .pageHeader .mainVS02 .txtVox .nameVox span:nth-of-type(2) {
					font-size: 3.2rem;
				}
			.ux_ui.voice .pageHeader .mainVS02 .txtVox .fz01 {
				display: block;
				font-size: 4.5rem;
				font-size: 3.3vw;
				color: #d70f19;
				line-height: 1.4;
				font-weight: bold;
			}
				.ux_ui.voice .pageHeader .mainVS02 .photo {
					width: 62%;
				}
				@media all and (-ms-high-contrast: none){
					.ux_ui.voice .pageHeader .mainVS02 {
						width: 1000px;
						margin: 0 auto;
						height: 520px;
					}
					.ux_ui.voice .pageHeader .mainVS02 .txtVox {
						z-index: 20;
						left: 0;
					}
					.ux_ui.voice .pageHeader .mainVS02 .photo {
						position: absolute;
						margin: auto;
						top: 0;
						right: 0;
						z-index: 10;
						width: 650px;
					}
					.ux_ui.voice .pageHeader .mainVS02 .photo img {
						width: 650px;
					}
				}
@media only screen and (max-width: 1000px) {
	.ux_ui.voice .pageHeader .mainVS02 .txtVox .fz01 {
		font-size: 3.5rem;
	}
}
/**
 * secVox
*/
.ux_ui.voice .secVox {}
	.ux_ui.voice .secVox .cntInner {
		padding: 0 100px;
	}
	.ux_ui.voice .secVox header {}
		.ux_ui.voice .secVox header h2 {
			font-size: 3.2rem;
			line-height: 1.56;
			margin-bottom: 1em;
		}
	.ux_ui.voice .secVox .interviewList {
		line-height: 2.28;
		margin-bottom: 60px;
	}
		.ux_ui.voice .secVox .interviewList dt {
			color: #646464;
			margin-bottom: 1.6em;
		}
		.ux_ui.voice .secVox .interviewList dd {}
	.ux_ui.voice .secVox figure {
		text-align: center;
	}
	.ux_ui.voice .secVox .figure01 {
		margin-bottom: 65px;
	}
.ux_ui.voice .imagFigure01 {
	width: 705px;
}
/**
 * secVox01
*/
.ux_ui.voice .secVox01 {
	margin-bottom: 90px;
}
/**
 * secVox02
*/
.ux_ui.voice .secVox02 {
	margin-bottom: 40px;
}
	.ux_ui.voice .secVox02 .cntInner {}
		.ux_ui.voice .secVox02 .cntInner .left {
			float: left;
			margin: 0 50px 30px 0;
		}
		.ux_ui.voice .secVox02 .cntInner .right {
			/*float: left;*/
		}
	.ux_ui.voice .secVox02 .imgPhoto01 {
		width: 260px;
	}
/**
 * secVox03
*/
.secVox03 {
	margin-bottom: 100px;
}
.secVox03 .subV {
	margin-bottom: 70px;
}
/**
 * secVox04
*/
.ux_ui.voice .secVox04 {
	margin-bottom: 120px;
}
	.ux_ui.voice .secVox04 .imgPhoto02 {
		width: 300px;
	}
	.ux_ui.voice .secVox04 .right {
		float: right;
		margin: 0 0 30px 50px;
	}
	.ux_ui.voice .secVox04 .left {}

@media only screen and (max-width: 767px) {
	.ux_ui.voice {}
	/**
	 * pageHeader
	*/
	.ux_ui.voice .pageHeader {
		padding-top: 0;
		margin-bottom: 130px;
	}
		.ux_ui.voice .pageHeader .h2s01 {
			position: static;
			margin-bottom: 45px;
			padding: 0 5%;
		}
			.ux_ui.voice .pageHeader .h2s01 .subTxt > span {
				background: #fff;
			}
		.ux_ui.voice .pageHeader .mainVS02 {
			display: block;
		}
		.ux_ui.voice .pageHeader .mainVS02 .txtVox {
			top: 0;
			margin-top: -30px;
			left: 5%;
		}
			.ux_ui.voice .pageHeader .mainVS02 .txtVox h1 {
				font-size: 4rem;
				margin-bottom: 0.6em;
			}
				.ux_ui.voice .pageHeader .mainVS02 .txtVox .nameVox {
					font-size: 1.6rem;
					margin-bottom: 10px;
				}
					.ux_ui.voice .pageHeader .mainVS02 .txtVox .nameVox span {
						margin-bottom: 10px;
						padding: 0.16em 0.4em;
					}
					.ux_ui.voice .pageHeader .mainVS02 .txtVox .nameVox span:nth-of-type(2) {
						font-size: 2.4rem;
					}
				.ux_ui.voice .pageHeader .mainVS02 .txtVox .fz01 {
					font-size: 2.1rem;
					line-height: 1.7;
				}
					.ux_ui.voice .pageHeader .mainVS02 .photo {
						width: 100%;
						padding-top: 67%;
						background: url(/recruit/images/content/work/ux_ui/voice/01/page_kv01_sp.jpg) right 0 / cover no-repeat;
					}
					.ux_ui.voice .pageHeader .mainVS02 .photo img {
						display: none;
					}
	/**
	 * secVox
	*/
	.ux_ui.voice .secVox {}
		.ux_ui.voice .secVox .cntInner {
			padding: 0 5%;
		}
		.ux_ui.voice .secVox header {}
			.ux_ui.voice .secVox header h2 {
				font-size: 1.8rem;
				margin-bottom: 2em;
			}
			.ux_ui.voice .secVox header h2 br.pconly {
				display: none;
			}
		.ux_ui.voice .secVox .interviewList {
			line-height: 2;
			margin-bottom: 60px;
		}
			.ux_ui.voice .secVox .interviewList dt {
				font-size: 1.4rem;
			}
				.ux_ui.voice .secVox .interviewList dt br {
					display: none;
				}
			.ux_ui.voice .secVox .interviewList dd {
			}
		.ux_ui.voice .secVox figure {}
		.ux_ui.voice .secVox .figure01 {
			margin-bottom: 65px;
		}
	/**
	 * secVox01
	*/
	.ux_ui.voice .secVox01 {}
	/**
	 * secVox02
	*/
	.ux_ui.voice .secVox02 {}
		.ux_ui.voice .secVox02 .cntInner {}
			.ux_ui.voice .secVox02 .cntInner .left {
				float: none;
				margin: 0 0 50px;
			}
			.ux_ui.voice .secVox02 .cntInner .right {}
		.ux_ui.voice .secVox02 .imgPhoto01 {
			width: 300px;
		}
	/**
	 * secVox03
	*/
	.secVox03 {
		margin-bottom: 100px;
	}
	.secVox03 .subV {
		margin-bottom: 70px;
	}
	/**
	 * secVox04
	*/
	.ux_ui.voice .secVox04 {
		margin-bottom: 120px;
	}
		.ux_ui.voice .secVox04 .imgPhoto02 {
			width: 300px;
		}
		.ux_ui.voice .secVox04 .right {
			float: none;
			margin: 0 0 50px;
		}
}


/*20211019*/
.btn{
	margin-bottom: 100px;
}
.btn ul{
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  	align-items: center;
}
.btn ul li{
}
.btn ul li{
	width: 188px;
	height: 61px;
	font-size: 1.6rem;
	line-height: 1;
	background: #D70F18;
	color: white;
	text-align: center;
	padding: 22px 0px 0px;
}
.btn ul a:nth-child(4) li{
	padding: 15px 0px 0px;
}
.cntInner{
	margin-top: 0px;
	margin-bottom: 50px;
}
.job .secVox{
	margin-bottom: 0px;
}
.job .secVox header{
	margin-bottom: 18px;
}
.job .secVox header .txtVox{
	width: 100%;
    height: auto;
	justify-content: left;
    align-items: center;
    text-align: left;
    padding: 10px 28px 5px;
	position: relative;
	cursor: pointer;	
}
.job .secVox .linkVox{
	margin-bottom: 50px;
}
.job .secVox header .txtVox::after{
	content: "+";
	font-size: 3.2rem;
	color: white;
	position: absolute;
	top: 0;
	right: 0;
	margin-top: -4px;
	margin-right: 20px;
}
.job .secVox header.check .txtVox::after{
	content: "ー";
	margin-top: -1px;
}
.job .secVox header h2 .en{
	font-size: 3rem;
}
.job .secVox header h2 .en.en2{
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.4;
}
.job .secVox .list{
	display: none;
	margin-bottom: 0px;
}
.job .secVox .jobList{
	display: block;
}
.job .secVox .jobList li{
	width: 100%;
	border-bottom: solid 1px;
    padding-bottom: 20px;
}
.job .secVox .jobList li:last-child{
	border-bottom: none;
}
.job .secVox .jobList li h3{
	font-size: 2rem;
	border: none;
	display: inline-block;
	width: 40%;
	vertical-align: top;
}
.job .secVox .jobList li .txt{
	font-size: 1.6rem;
	display: inline-block;
	width: 58%;
}
.job .secVox .jobList li .ind{
	text-indent: -16px;
    margin-left: 16px;
}
.job .secVox .jobList li .mb{
	margin-bottom: 20px;
}
.job .secVox .linkVox a{
	min-width: 480px;
    text-align: left;
    padding: 0.45em 0px 0.45em 28px;
    font-size: 1.4rem;
}

.pc{
	display: inline-block;
}
.sp{
	display: none;
}
.bnr_btn{
	margin-bottom: 20px;
}
.bnr_btn img{
	margin-bottom: 0px;
}

@media only screen and (max-width: 767px){
	.pc{
		display: none;
	}
	.sp{
		display: inline-block;
	}
	.btn{
		margin-bottom: 50px;
	}
	.btn ul li{
		width: 160px;
		height: 42px;
		padding: 12px 0px 0px;
		margin-bottom: 14px;
	}
	.btn ul a:nth-child(4) li {
		padding: 6px 0px 0px;
	}
	.job .secVox header{
		margin-bottom: 18px;
	}
	.job .secVox header .txtVox{
		padding: 5px 14px 5px;
	}
	.job .secVox header h2 .en{
	}
	.job .secVox header .txtVox::after{
		    margin-top: -6px;
	}
	.job .secVox header.check .txtVox::after{
		margin-top: 0px;
	}
	.job .secVox .list{
		margin-bottom: 0px;
	}
	.job .secVox .jobList li{
		margin-bottom: 25px;
		border-bottom: none;
		padding-bottom: 0px;
	}
	.job .secVox .jobList li h3{
		font-size: 1.3rem;
		width: 100%;
	}
	.job .secVox .jobList li .txt{
		font-size: 1.2rem;
		width: 100%;
	}
	.job .secVox .linkVox a{
		min-width: 0;
		width: 100%;
		font-size: 1.25rem;
		padding: 0.45em 0px 0.45em 10px;
		margin-bottom: 20px;
	}
}

/*研究*/
.r_cnt{
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
}
.r_cnt .r_cnt_img{
	width: 30%;
}
.r_cnt .r_cnt_txt{
	width: 67%;
}
.r_cnt .r_cnt_txt p{
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.6;
	margin-bottom: 20px;
}
.r_cnt .r_cnt_txt p.txt_id{
	text-indent: -30px;
	margin-left: 30px;
}
@media only screen and (max-width: 767px){
	.r_cnt .r_cnt_img{
		width: 100%;
		margin-bottom:22px; 
	}
	.r_cnt .r_cnt_txt{
		width: 100%;
	}
}
/*マイナビ*/
.secVox .entry {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
.secVox .entry .photo {
    width: 250px;
}
.secVox p {
    text-align: center;
}
.secVox .entry p {
    margin-top: 1em;
    font-size: 2rem;
}

/*20211025*/
.ent_btn a {
    width: 15em;
    text-align: center;
    padding: 0.5em;
    display: block;
    background-color: #fff;
    color: #f00;
    font-size: 1.1em;
    font-weight: bold;
    border: 2px solid #f00;
    transition: background-color .5s;
}
.ent_btn a:hover {
    background-color: #f00;
    color: #fff;
}
.ux_ui.voice .linkBtnS01 {
    position: relative;
    display: inline-block;
    min-width: 100px;
    width: 41%;
    text-align: center;
    background: #D70F18;
    color: #fff;
    padding: 0.5em 0.4em 0.5em 0.1em;
    font-size: 2rem;
    outline: 3px solid rgb(255, 255, 255);
    outline-offset: -6px;
}
a.linkBtnS01::before{
	display: none;
}
@media only screen and (max-width: 767px){
	.ux_ui.voice .linkBtnS01 {
		width: 100%;
	}
}


/* バナー追加 */
.ux .bnrArea {
	background: linear-gradient(180deg, #fff 0%, #fff 50%, #e6e6e6 50%, #e6e6e6 100%);
}
.ux .bnrArea a {
	background-color: #fff;
	display: block;
	max-width: 1000px;
	width: 100%;
	margin: auto;
}
.ux .bnrArea img {
	width: 100%;
	height: auto;
	transition: opacity 0.3s;
}
.ux .bnrArea a:hover img {
	opacity: 0.7;
}
@media only screen and (max-width: 767px){
	.ux .bnrArea {
		padding: 0 5%;
	}
}

/* 2024/10/24 福利厚生リストの修正に伴うスタイル追加 */
#fukuri_list {
	display: flex;
}
#fukuri_list ol {
	list-style-type: decimal;
	width: 58%;
}
#fukuri_list ul {
	margin-top: 14px;
	margin-left: 2em;
	list-style-type: disc;
}
#fukuri_list li {
	margin-bottom: 18px;
	padding-bottom: 0;
	border: none;
	font-size: 1.6rem;
}

@media only screen and (max-width: 767px){
	#fukuri_list {
		display: block;
	}
	#fukuri_list ol {
		padding: 0 5%;
		width: 100%;
	}
	#fukuri_list li {
		font-size: 1.2rem;
	}	
}

