/****************************
  recruit_vt
****************************/

#recruit_vt {
	overflow: hidden;
	position: relative;
	z-index: 0;
	width: 100%;
	height: 100svh;
	margin: 0;
	padding: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-image: url(../../files/recruit/vtsp.jpg);
	background-attachment: fixed;
}

#recruit_vt > div {
	margin: 0;
	padding: 0 15px;
}

#recruit_vt > div > h1 {
	position: absolute;
	top: calc(var(--sp-height) + 3vh);
	left: 15px;
	margin: 0;
	padding: 0;
}

#recruit_vt > div > h1 > span {
	display: block;
	margin: 0;
	padding: 0;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'NotoSansJP-SemiBold', Meiryo, 'メイリオ', arial, sans-serif;
	font-style: normal;
	font-weight: bold;
	font-size: 38px;
	line-height: 1.2;
	color: #fff;
}

#recruit_vt > div > div {
	position: absolute;
	bottom: 30px;
	left: 15px;
	width: calc(100% - 30px);
	margin: 0;
	padding: 15px;
	background-color: rgba(0, 0, 0, 0.4);
}

#recruit_vt > div > div > h2 > b {
	display: block;
	margin: 0;
	padding: 0;
	font-family: 'RedditSans-SemiBold', 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', arial, sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 36px;
	line-height: 1;
	color: rgba(37, 169, 201, 1);
	letter-spacing: 0.05em;
}

#recruit_vt > div > div > h2 > i {
	display: block;
	margin: 0;
	padding: 0.7rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
	color: #fff;
}

#recruit_vt > div > div > p {
	margin: 0;
	padding: 1rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5;
	color: #fff;
}


@media (min-width: 768px) {
	#recruit_vt > div > div {
		bottom: 30px;
		left: 15px;
		width: 420px;
	}

	#recruit_vt > div > h1 > span {
		display: inline-block;
	}
}
@media (min-width: 1000px) {
	#recruit_vt {
		height: 75vh;
		background-position: 75% top;
		background-image: url(../../files/recruit/vtpc.jpg);
	}

	#recruit_vt > div {
		margin: 0;
		padding: 0;
	}

	#recruit_vt > div > h1 {
		position: absolute;
		top: calc(var(--pc-height) + 4vh);
		left: 5vw;
		margin: 0;
		padding: 0;
	}

	#recruit_vt > div > h1 > span {
		display: inline-block;
		font-size: 60px;
		line-height: 1;
	}

	#recruit_vt > div > div {
		position: absolute;
		bottom: 8vh;
		left: 5vw;

		width: 580px;
		margin: 0;
		padding: 16px;
	}

	#recruit_vt > div > div > h2 > b {
		font-size: 48px;
	}

	#recruit_vt > div > div > h2 > i {
		font-size: 18px;
	}

	#recruit_vt > div > div > p {
		font-size: 16px;
	}
}

#recruit_vt > div > div {
	opacity: 0;
	animation: visualtopCopyAnimation 12s ease forwards;
	animation-delay: 0.7s;
}

#recruit_vt > div > div > h2 > b {
	opacity: 0;
	animation: visualtopCopyAnimation 12s linear forwards;
	animation-delay: 1.3s;
}

#recruit_vt > div > div > h2 > i {
	opacity: 0;
	animation: visualtopCopyAnimation 12s linear forwards;
	animation-delay: 1.6s;
}

#recruit_vt > div > div > p {
	opacity: 0;
	animation: visualtopCopyAnimation 12s linear forwards;
	animation-delay: 2.0s;
}

/****************************
  container
****************************/

.container_title {
	padding: 1.5rem 0 0;
}

.container_title > i {
	display: block;
	margin: 0;
	padding: 0;
	font-family: 'RedditSans-SemiBold', 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', arial, sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 30px;
	line-height: 1;
	color: rgba(37, 169, 201, 1);
	letter-spacing: 0.04em;
}

.container_title > b {
	display: block;
	margin: 0;
	padding: 0.9rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 1;
}

.container_subtitle {
	display: block;
	margin: 0;
	padding: 2rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 1.3;
	color: rgba(37, 169, 201, 1);
}

.container_body {
	margin: 0;
	padding: 1rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 1.4;
}

.container_body.small {
	font-size: 14px;
}

@media (min-width: 1000px) {
	.container_title {
		padding: 0;
	}

	.container_title > i {
		font-size: 50px;
	}

	.container_title > b {
		font-size: 20px;
	}

	.container_subtitle {
		font-size: 23px;
	}

	.container_body {
		padding: 1.7rem 0 0;
		font-size: 18px;
		line-height: 1.6;
	}

	.container_body.small {
		font-size: 16px;
	}
}

/****************************
  recruit_company
****************************/

#recruit_company {
	overflow: hidden;
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	background-repeat: no-repeat;
	background-image:  url(../images/bg/logo_bg.svg), url(../images/bg/recruit_bg12.svg), url(../images/bg/recruit_bg11.svg), url(../images/bg/recruit_bg13.svg);
	background-position: 93% 2%, center 38%, center calc(100% + 25px), center top;
	background-size: 120px auto, 100% 12%, 100% 7%, 100% 7%;
}

#recruit_company > div {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 100px 0 100px;
}

#recruit_company > div > div {
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
}

#recruit_company > div > div + div {
	padding-top: 5rem;
}

#recruit_company > div > div > div {
	width: 100%;
	margin: 0;
	padding: 0;
}

#recruit_company > div > div > figure {
	width: 320px;
	height: 226px;
	margin: 0 auto;
	padding: 0;
	border-radius: 16px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	overflow: hidden;
}

#recruit_company > div > div > div + figure {
	margin-top: 2rem;
}

#recruit_company_company {
	background-image: url(../../files/recruit/company.jpg);
}

#recruit_company_message {
	background-image: url(../../files/recruit/message.jpg);
}

@media (min-width: 1000px) {
	#recruit_company {
		background-position: 93% 4%, center 50%, center calc(100% + 80px), center top;
		background-size: 380px auto, 100% 35%, 100% 15%, 100% 15%;
	}

	#recruit_company > div {
		padding: 300px 0 100px;
	}

	#recruit_company > div > div {
		display: flex;
		justify-content: center;
		padding: 0 30px;
	}

	#recruit_company > div > div + div {
		padding-top: 13rem;
	}

	#recruit_company > div > div > figure {
		width: 420px;
		height: 300px;
		margin: 0;
		padding: 0;
		border-radius: 16px;
	}

	#recruit_company > div > div > div {
		width: 720px;
		margin: 0;
		padding: 0 80px 0 0;
	}

	#recruit_company > div > div > figure + div {
		padding: 0 0 0 80px;
	}

	#recruit_company > div > div > div + figure {
		margin-top: 7.4rem;
	}
}

/****************************
  recruit_candidate
****************************/

#recruit_candidate {
	overflow: hidden;
	position: relative;
	z-index: 2;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-image: url(../../files/recruit/candidate_bg.jpg);
	background-attachment: fixed;
}

#recruit_candidate > div {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 30px 15px;
	background-color: rgba(0, 0, 0, 0.15);
	background-repeat: repeat;
	background-position: left top;
	background-size: 4px 4px;
	background-image: url(../images/bg/pat.png);
}

#recruit_candidate .container_title {
	display: inline-block;
	margin: 0;
	padding: 15px;
	background-color: rgba(0, 0, 0, 0.5);
}

#recruit_candidate .container_title > b {
	color: #fff;
}

#recruit_candidate .container_subtitle {
	padding-top: 0;
}

#recruit_candidate > div > div {
	display: block;
	margin: 30px 0 0;
	padding: 260px 20px 20px;
	border-radius: 20px;
	background-color: rgba(255, 255, 255, 0.9);
	background-repeat: no-repeat;
	background-position: center 30px;
	background-size: auto 200px;
	background-image: url(../../files/recruit/candidate.png);
}

#recruit_candidate > div > div > span {
	display: block;
	margin: 0;
	padding: 2rem 0 0;
}

#recruit_candidate ul {
	margin: 0;
	padding: 0.5rem 0 0 1.5em;
	list-style-type: disc;
}

#recruit_candidate ul > li {
	margin: 0;
	padding: 0.7rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 1.2;
}

#recruit_candidate > div > div > figure {
	display: none;
}

@media (min-width: 1000px) {
	#recruit_candidate > div {
		padding: 60px 40px;
	}

	#recruit_candidate .container_title {
		padding: 15px;
	}

	#recruit_candidate > div > div {
		margin: 60px 0 0;
		padding: 50px 75px 50px 45%;
		border-radius: 20px;
		background: none;
		background-color: rgba(255, 255, 255, 0.9);
		position: relative;
	}

	#recruit_candidate > div > div > figure {
		display: block;
		position: absolute;
		top: calc(50% - 165px);
		left: calc(22.5% - 215px);
		width: 430px;
		height: 330px;
		margin: 0;
		padding: 0;
		background-repeat: no-repeat;
		background-position: left top;
		background-size: cover;
		background-image: url(../../files/recruit/candidate.png);
	}

	#recruit_candidate ul {
		padding: 1rem 0 0 1.5em;
	}

	#recruit_candidate ul > li {
		font-size: 17px;
	}
}
@media (min-height: 1100px) {
	#recruit_candidate {
		position: sticky;
		top: 0;
	}
}

/****************************
  recruit_voice
****************************/

#recruit_voice {
	overflow: hidden;
	position: relative;
	z-index: 3;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	background-repeat: no-repeat;
	background-image:
		url(../images/bg/logo_bg.svg),
		url(../images/bg/recruit_bg20.svg),
		url(../images/bg/recruit_bg21.svg),
		url(../images/bg/recruit_bg12.svg);
	background-position:
		90% 2%,
		center center,
		center bottom,
		center -5%;
	background-size: 
		120px auto,
		100% 8%,
		100% 5%,
		100% 12%;
}

#recruit_voice > div {
	width: 100%;
	margin: 0 auto;
	padding: 60px 15px;
}

@media (min-width: 1000px) {
	#recruit_voice {
		background-position:
			90% 4%,
			center 45%,
			center bottom,
			center -19%;
		background-size: 
			350px auto,
			100% 20%,
			100% 10%,
			100% 32%;
	}

	#recruit_voice > div {
		width: 1000px;
		padding: 60px 0;
	}
}

.recruit_nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: 100%;
	margin: 0;
	padding: 0;
}

.recruit_nav > li {
	width: calc(50% - 15px);
	margin: 0;
	padding: 1.5rem 0 0;
}

.recruit_nav > li figure {
	width: 100%;
	margin: 0;
	padding: 0;
}

.recruit_nav > li figure > img {
	width: 100%;
	height: initial;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

.recruit_nav > li dl {
	margin: 0;
	padding: 20px 0 0;
	text-align: center;
}

.recruit_nav > li a dl > dt {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	font-style: normal;
	font-weight: normal;
	font-size: 1rem;
	line-height: 1;
	color: var(--base_font_color);
}

.recruit_nav > li a:hover {
	text-decoration: none;
}

.recruit_nav > li a dl > dt::after {
	margin: 0;
	padding: 0 0 0 0.5rem;
	vertical-align: 0.1rem;
	font-family: 'FontAwesome';
	font-size: 0.9rem;
	line-height: 1;
	color: var(--base_font_color);
	content: '\f061';
}

.recruit_nav > li a:hover dl > dt::after {
	padding-left: 0.7rem;
}

.recruit_nav > li dl > dd {
	margin: 0;
	padding: 0.5rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 0.9rem;
	line-height: 1.2;
	color: var(--base_font_color);
}

.recruit_nav > li a:hover dt,
.recruit_nav > li a:hover dd {
	color: #555;
}

@media (min-width: 768px) {
	.recruit_nav {
		justify-content: center;
		padding: 2rem 0 0;
	}

	.recruit_nav > li {
		width: calc(100% / 4);
		padding: 0 15px;
	}

	.recruit_nav > li figure {
		width: 160px;
		margin: 0 auto;
	}
}
@media (min-width: 1000px) {
	.recruit_nav {
		justify-content: space-between;
		width: calc(100% + 70px);
		margin-left: -35px;
		margin-right: -35px;
	}

	.recruit_nav > li {
		width: 25%;
		padding: 0;
	}

	.recruit_nav > li figure {
		width: 180px;
	}

	.recruit_nav > li dl {
		padding: 20px 0 0;
	}

	.recruit_nav > li a dl > dt {
		font-size: 1.2rem;
	}

	.recruit_nav > li a dl > dt::after {
		font-size: 1.2rem;
	}

	.recruit_nav > li dl > dd {
		padding: 1.2rem 0 0;
		font-size: 1rem;
	}
}

/**/

#recruit_voice > div > div {
	width: 100%;
	margin: 0 auto;
	padding: 5rem 0 0;
}

#recruit_voice > div > div > div {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

#recruit_voice > div > div .container_subtitle {
	padding: 1rem 0 0;
}

@media (min-width: 1000px) {
	#recruit_voice > div > div {
		width: 1000px;
		padding: 12rem 0 0;
	}

	#recruit_voice > div > div .container_subtitle {
		padding: 3.4rem 0 0 3rem;
	}
}

/****************************
  recruit_initiatives
****************************/

#recruit_initiatives {
	overflow: hidden;
	position: relative;
	z-index: 4;
	width: 100%;
	margin: 0;
	padding: 30px 15px;
	background-color: rgba(24, 69, 109, 1);
}

#recruit_initiatives > div {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

#recruit_initiatives > div .container_title > b {
	font-size: 16px;
	color: #fff;
}

#recruit_initiatives > div .container_subtitle {
	font-size: 15px;
	color: #fff;
}

#recruit_initiatives > div dl {
	margin: 0;
	padding: 1.5rem 0 0;
}

#recruit_initiatives > div dt {
	display: inline-block;
	margin: 0;
	padding: 1.8rem 0 0.3rem;
	border-bottom: 1px solid #fff;
	font-style: normal;
	font-weight: bold;
	font-size: 15px;
	line-height: 1.2;
	color: #fff;
}

#recruit_initiatives > div dd {
	display: block;
	margin: 0;
	padding: 0.5rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.6;
	color: #fff;
}

@media (min-width: 1000px) {
	#recruit_initiatives {
		padding: 0;
		background-color: rgba(24, 69, 109, 1);
	}

	#recruit_initiatives > div {
		width: 1000px;
		padding: 80px 0;
	}

	#recruit_initiatives > div .container_title > b {
		font-size: 18px;
	}

	#recruit_initiatives > div .container_subtitle {
		font-size: 16px;
	}

	#recruit_initiatives > div dt {
		padding: 1.8rem 0 0.3rem;
		font-size: 18px;
	}

	#recruit_initiatives > div dd {
		padding: 0.5rem 0 0;
		font-size: 16px;
	}
}

/****************************
  recruit_benefits
****************************/

#recruit_benefits {
	overflow: hidden;
	position: relative;
	z-index: 5;
	width: 100%;
	margin: 0;
	padding: 80px 0 60px;
	background-color: #fff;
	background-repeat: no-repeat;
	background-image: url(../images/bg/logo_bg.svg), url(../images/bg/recruit_bg30.svg), url(../images/bg/recruit_bg13.svg);
	background-position: 98% 20px, center 50%, center top;
	background-size: 120px auto, 100% 15%, 100% 7%;
}

#recruit_benefits > div > div {
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
}

#recruit_benefits > div > div > figure {
	overflow: hidden;
	width: 320px;
	height: 226px;
	margin: 0 auto;
	padding: 0;
	border-radius: 16px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-image: url(../../files/recruit/benefits.jpg);
}

#recruit_benefits > div > div > div {
	width: 100%;
	margin: 0;
	padding: 0;
}

@media (min-width: 1000px) {
	#recruit_benefits {
		padding: 80px 0;
		background-position: 98% 17%, center 75%, center 0;
		background-size: 350px auto, 100% 35%, 100% 20%;
	}

	#recruit_benefits > div > div {
		display: flex;
		justify-content: center;
		padding: 0 30px;
	}

	#recruit_benefits > div > div > figure {
		width: 420px;
		height: 300px;
		margin: 0;
		border-radius: 16px;
	}

	#recruit_benefits > div > div > div {
		width: 720px;
		padding: 0 0 0 80px;
	}
}

#recruit_benefits dl > dt {
	margin: 0;
	padding: 1rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 0.9rem;
	line-height: 1.5;
}

#recruit_benefits dl > dd {
	margin: 0;
	padding: 0.5rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 0.9rem;
	line-height: 1.5;
}

#recruit_benefits h2 + dl > dd {
	padding-top: 1rem;
}

#recruit_benefits dl + h2 {
	padding-top: 2rem;
}

@media (min-width: 1000px) {
	#recruit_benefits dl > dt {
		padding: 1rem 0 0;
		font-size: 1rem;
	}

	#recruit_benefits dl > dd {
		padding: 0.5rem 0 0;
		font-size: 1rem;
	}
}

/**/

.recruit_contact {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0;
	padding: 0;
}

.recruit_contact > li {
	width: calc(100% / 3 - 10px);
	margin: 0;
	padding: 0;
	text-align: center;
}

.recruit_contact > li > a {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.recruit_contact > li > a:hover {
	text-decoration: none;
}

.recruit_contact > li > a > figure {
	width: 100px;
	height: 100px;
	margin: 0 auto;
	padding: 0;
	border-radius: 50%;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 90%;
	transition: all 0.3s;
}

.recruit_contact > li:nth-child(1) > a > figure {
	background-color: rgba(245, 228, 142, 1);
	background-image: url(../../files/recruit/contact.png);
}

.recruit_contact > li:nth-child(2) > a > figure {
	background-position: 35% bottom;
	background-color: rgba(80, 196, 184, 0.8);
	background-image: url(../../files/recruit/jobdescription.png);
	transform: rotate(-4deg);
}

.recruit_contact > li:nth-child(3) > a > figure {
	background-color: rgba(78, 178, 202, 0.8);
	background-position: center 12px;
	background-size: 140%;
	background-image: url(../../files/recruit/entry.png);
}

.recruit_contact > li:nth-child(1) > a:hover > figure {
	background-color: rgba(243, 219, 96, 1);
}

.recruit_contact > li:nth-child(2) > a:hover > figure {
	background-color: rgba(80, 196, 184, 1);
}

.recruit_contact > li:nth-child(3) > a:hover > figure {
	background-color: rgba(78, 178, 202, 1);
}

.recruit_contact > li > a > span {
	display: block;
	margin: 0;
	padding: 1rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 1;
	color: var(--base_font_color);
}

@media (min-width: 768px) {
	.recruit_contact > li {
		width: initial;
		padding: 0 30px;
	}

	.recruit_contact > li > a > figure {
		width: 150px;
		height: 150px;
	}
}
@media (min-width: 1000px) {
	.recruit_contact {
		padding: 10rem 0 0;
	}

	.recruit_contact > li {
		width: initial;
		padding: 0 50px;
	}

	.recruit_contact > li > a {
		width: 190px;
	}

	.recruit_contact > li > a > figure {
		width: 190px;
		height: 190px;
	}

	.recruit_contact > li > a > span {
		padding: 1.3rem 0 0;
		font-size: 20px;
	}
}

/****************************
  voice
****************************/

#recruit_voice_wrapper {
	overflow: hidden;
	position: relative;
	z-index: 3;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	background-repeat: no-repeat;
	background-image:
		url(../images/bg/recruit_bg40.svg),
		url(../images/bg/recruit_bg20.svg);
	background-position:
		center 30rem,
		center bottom 9rem;
	background-size: 
		100% 5%,
		100% 5%;
}

@media (min-width: 768px) {
	#recruit_voice_wrapper {
		background-image:
			url(../images/bg/recruit_bg40.svg),
			url(../images/bg/recruit_bg12.svg),
			url(../images/bg/recruit_bg41.svg),
			url(../images/bg/recruit_bg20.svg);
		background-position:
			center 18%,
			center 60%,
			center bottom 22%,
			center bottom 5%;
		background-size: 
			100% 10%,
			100% 15%,
			100% 12%,
			100% 10%;
	}
}
@media (min-width: 1000px) {
	#recruit_voice_wrapper {
		background-position:
			center 20%,
			center 50%,
			center 72%,
			center 94%;
		background-size: 
			100% 15%,
			100% 18%,
			100% 12%,
			100% 12%;
	}
}

#recruit_voice_vt {
	overflow: hidden;
	position: relative;
	z-index: 1;
	width: 100%;
	height: 30vh;
	margin: 0;
	padding: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-image: url(../../files/recruit_voice/vt.jpg);
}

#recruit_voice_vt > div {
	position: absolute;
	bottom: 12%;
	left: 5vw;
}

#recruit_voice_vt > div > i {
	display: block;
	margin: 0;
	padding: 0;
	font-family: 'RedditSans-SemiBold', 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', arial, sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 28px;
	line-height: 1;
	color: #fff;
	letter-spacing: 0.04em;
}

#recruit_voice_vt > div > b {
	display: block;
	margin: 0;
	padding: 0.3rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 1;
	color: #fff;
}

@media (min-width: 1000px) {
	#recruit_voice_vt {
		height: 25vw;
	}

	#recruit_voice_vt > div {
		bottom: 12%;
		left: 7vw;
	}

	#recruit_voice_vt > div > i {
		font-size: 46px;
	}

	#recruit_voice_vt > div > b {
		padding: 0.8rem 0 0;
		font-size: 20px;
	}
}

#recruit_voice_header {
	overflow: hidden;
	position: relative;
	z-index: 2;
	width: 100%;
	margin: 0;
	padding: 0;
}

#recruit_voice_header > div {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 0;
	padding: 80px 0 0 15px;
}

#recruit_voice_header > div > div {
	margin: 0;
	padding: 20px 10px 0 0;
}

#recruit_voice_header > div > figure {
	margin: 0;
	padding: 0;
	width: 45vw;
	height: 180px;
	border-radius: 25px 0 0 25px;
	background-color: rgba(15, 50, 71, 0.7);
	background-repeat: no-repeat;
	background-position: calc(50% + 10px) bottom;
	background-size: auto 90%;
}

#staff_1 {
	background-image: url(../../files/recruit_voice/voice_1_1.png);
}

#staff_2 {
	background-image: url(../../files/recruit_voice/voice_2_1.png);
}

#staff_3 {
	background-image: url(../../files/recruit_voice/voice_3_1.png);
}

#staff_4 {
	background-image: url(../../files/recruit_voice/voice_4_1.png);
}

#recruit_voice_header > div dl {
	margin: 0;
	padding: 0;
}

#recruit_voice_header > div dl > dt {
	margin: 0;
	padding: 0;
	font-family: 'RedditSans-SemiBold', 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', arial, sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 24px;
	line-height: 1;
	color: rgba(37, 169, 201, 1);
}

#recruit_voice_header > div dl > dd {
	margin: 0;
	padding: 1rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.2;
}

#recruit_voice_header > div p {
	margin: 0;
	padding: 1rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 1;
}

#recruit_voice_header > div p strong {
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 1;
	color: rgba(37, 169, 201, 1);
}

#recruit_voice_header > div > div > div  {
	width: 100%;
	text-align: left;
}

#recruit_voice_header > div > div > div > span {
	display: inline-block;
	margin: 1rem 0 0;
	padding: 10px 15px;

	background-color: var(--footer_bg);

	font-style: normal;
	font-weight: normal;
	font-size: 13px;
	line-height: 1;
	color: #fff;
}

@media (min-width: 1000px) {
	#recruit_voice_header > div {
		padding: 80px 0 0 7vw;
	}

	#recruit_voice_header > div > div {
		padding: 30px 0 0;
	}

	#recruit_voice_header > div > figure {
		width: 40vw;
		height: 280px;
		border-radius: 30px 0 0 30px;
		background-position: center bottom;
		background-size: auto 90%;
	}

	#recruit_voice_header > div dl > dt {
		font-size: 36px;
	}

	#recruit_voice_header > div dl > dd {
		padding: 1.5rem 0 0;
		font-size: 20px;
	}

	#recruit_voice_header > div p {
		padding: 2rem 0 0;
		font-size: 20px;
	}

	#recruit_voice_header > div p strong {
		font-size: 26px;
	}

	#recruit_voice_header > div > div > div > span {
		margin: 2.5rem 0 0;
		font-size: 14px;
	}
}

/****************************
  recruit_voice_interview
****************************/

#recruit_voice_interview {
	overflow: hidden;
	position: relative;
	z-index: 3;
	width: 100%;
	margin: 0;
	padding: 0;
}

#recruit_voice_interview > div > div {
	width: 100%;
	margin: 0;
	padding: 100px 15px 0;
}

#recruit_voice_interview > div > div + div {
	padding-top: 50px;
}

#recruit_voice_interview > div > div > div {
	width: 100%;
	padding: 0;
}

#recruit_voice_interview > div figure {
	overflow: hidden;
	margin: 0;
	padding: 1.5rem 0 0;
}

#recruit_voice_interview > div > div + div > div + div figure {
	padding: 1.5rem 0 0;
}

#recruit_voice_interview > div figure > img {
	width: 100%;
	height: initial;
	border-radius: 20px;
	vertical-align: bottom;
}

#recruit_voice_interview h1 {
	margin: 0;
	padding: 0.5rem 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 24px;
	line-height: 1;
	color: var(--base_font_color);
}

#recruit_voice_interview h1::after {
	margin: 0;
	padding: 0 0 0 0.5rem;
	vertical-align: 0;
	font-family: 'FontAwesome';
	font-size: 30px;
	line-height: 1;
	color: rgba(37, 169, 201, 1);
	content: '\f040';
}

#recruit_voice_interview h4 {
	margin: 0;
	padding: 1.5rem 0 0;
	font-style: normal;
	font-weight: bold;
	font-size: 15px;
	line-height: 1.2;
}

#recruit_voice_interview h5 {
	margin: 0;
	padding: 1em 0 0;
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 1.6;
}

.faq {
	margin: 0;
	padding: 0;
}

.faq > dt {
	margin: 0;
	padding: 1.7rem 0 0 1.5em;
	font-style: normal;
	font-weight: normal;
	font-size: 0.9rem;
	line-height: 1.2;
	text-indent: -0.7em;
}

.faq > dd {
	margin: 0;
	padding: 0.7rem 0 0 1.5em;
	font-style: normal;
	font-weight: normal;
	font-size: 0.9rem;
	line-height: 1.5;
	text-indent: -0.7em;
}

.faq > dt::before {
	display: inline-block;
	margin: 0;
	padding: 0 0.5em 0 0;
	font-style: normal;
	font-weight: bold;
	font-size: 1rem;
	color: rgba(51, 153, 255, 1);
	content: 'Q';
}

.faq > dd::before {
	display: inline-block;
	margin: 0;
	padding: 0 0.5em 0 0;
	font-style: normal;
	font-weight: bold;
	font-size: 1rem;
	color: rgba(255, 69, 51, 1);
	content: 'A';
}

@media (min-width: 768px) {
	#recruit_voice_interview > div > div {
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin: 0;
		padding: 170px 15px 0;
	}

	#recruit_voice_interview > div > div > div {
		width: calc(50% - 15px);
	}

	#recruit_voice_interview > div > div + div > div + div {
		padding-top: 6rem;
		text-align: right;
	}

	#recruit_voice_interview h4 {
		padding: 0.5rem 0 0;
	}

	#recruit_voice_interview h5 {
		padding: 0.5em 0 0;
	}
}
@media (min-width: 1200px) {
	#recruit_voice_interview {
		overflow: hidden;
		position: relative;
		z-index: 3;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#recruit_voice_interview > div > div {
		justify-content: center;
		padding: 170px 7vw 0;
	}

	#recruit_voice_interview > div > div + div {
		padding-top: 150px;
	}

	#recruit_voice_interview > div > div > div {
		width: 50%;
		padding: 0;
	}

	#recruit_voice_interview > div > div > div + div {
		padding: 0 20px 0 0;
	}

	#recruit_voice_interview > div > div + div > div + div {
		padding: 0 0 0 20px;
		text-align: right;
	}

	#recruit_voice_interview > div figure {
		max-width: 500px;
		padding: 4rem 0 0;
	}

	#recruit_voice_interview > div > div + div > div + div figure {
		display: inline-block;
		padding: 2rem 0 0;
	}

	#recruit_voice_interview h1 {
		padding: 0.5rem 0 0;
		font-size: 38px;
	}

	#recruit_voice_interview h1::after {
		font-size: 45px;
	}

	#recruit_voice_interview h4 {
		padding: 1.5rem 0 0;
		font-size: 16px;
	}

	#recruit_voice_interview h5 {
		padding: 1em 0 0;
		font-size: 16px;
	}

	.faq > dt {
		font-size: 1rem;
	}

	.faq > dd {
		font-size: 1rem;
	}

	.faq > dt::before {
		font-size: 1.1rem;
	}

	.faq > dd::before {
		font-size: 1.1rem;
	}
}

#recruit_voice_nav {
	overflow: hidden;
	position: relative;
	z-index: 4;
	width: 100%;
	margin: 0;
	padding: 0;
}

#recruit_voice_nav > div {
	width: 100%;
	margin: 0 auto;
	padding: 60px 15px 0;
}

@media (min-width: 1000px) {
	#recruit_voice_nav > div {
		width: 1000px;
		padding: 170px 0 0;
	}
}

#recruit_voice_contact {
	overflow: hidden;
	position: relative;
	z-index: 5;
	width: 100%;
	margin: 0;
	padding: 80px 0 60px;
}

@media (min-width: 1000px) {
	#recruit_voice_contact {
		padding: 80px 0;
	}
}

@supports (-webkit-touch-callout: none) {
	#recruit_vt,
	#recruit_candidate {
		background-attachment: scroll;
	}
}
