@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#main .headLine01 {
	text-align: left;
}
.pageBtm {
	border-top: none;
}
body.fixedTop {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
@media all and (max-width: 896px) {
	#main .content {
		padding: 0 2rem;
		margin: 0;
	}
}


/* topBox */
#main .topBox {
	margin-bottom: 4.1rem;
	padding-top: 3.9rem;
}
#main .topBox .headLine01 img {
	width: 111.4rem;
}
#main .topBox .headLine01 {
	margin: 0 0 7.6rem 0.7rem;
}
#main .movieBtn {
	width: 38.1rem;
	margin-left: auto;
}
#main .movieBtn a {
	display: block;
	position: relative;
}
#main .movieBtn .image {
	margin-bottom: 2.1rem;
	border-radius: 1.2rem;
	overflow: hidden;
}
#main .movieBtn .image img {
	width: 100%;
}
#main .movieBtn .textImg img {
	width: 25.1rem;
}
#main .movieBtn .btn {
	width: 8.6rem;
	position: absolute;
	bottom: 0.7rem;
	right: -4.1rem;
}
@media all and (min-width: 897px) {
	#main .movieBtn a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#main .topBox {
		margin-bottom: 11.1rem;
		padding-top: 2rem;
	}
	#main .topBox .headLine01 {
		margin: 0 -0.3rem 8.3rem 0.3rem;
	}
	#main .movieBtn {
		width: 78.8%;
		margin: 0 auto;
		padding-right: 2.4rem;
	}
	#main .movieBtn .image {
		margin-bottom: 1.3rem;
		border-radius: 0.8rem;
	}
	#main .movieBtn .textImg img {
		width: 18.6rem;
	}
	#main .movieBtn .btn {
		width: 5.4rem;
		bottom: 0.8rem;
		right: -2.5rem;
	}
	#container {
		background-image: url("/recruit/img/index/sp_bg.png");
	}
	#main .topBox .headLine01 img {
		max-width: 70rem;
		width: 100%;
	}
}


/* featuresBox */
#main .featuresBox {
	margin-bottom: 29.1rem;
	max-width: 112.8rem;
	position: relative;
}
#main .featuresBox .decorateImg {
	width: 52.2rem;
	top: 35.3rem;
	right: -25.5rem;
}
#main .featuresBox .decorateImg02 {
	width: 52rem;
	top: auto;
	right: auto;
	bottom: -8.8rem;
	left: -38.7rem;
}
#main .featuresBox .headLine01 {
	margin-bottom: 7.2rem;
}
#main .featuresBox .headLine01 img {
	width: 84rem;
}
#main .featuresBox .subTtl img {
	width: 93.8rem;
}
#main .featuresBox .subTtl {
	margin: 0 0 5.6rem 0.3rem;
}
#main .textBox {
	font-size: 2rem;
	line-height: 2.18;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
}
#main .textBox .bg {
	position: relative;
	z-index: 5;
}
#main .textBox .bg::after {
	width: 100%;
	height: 70%;
	background: linear-gradient(90deg, rgba(252, 225, 57, 1) 0%, rgba(252, 217, 44, 1) 30.42%, rgba(252, 195, 9, 1) 86.81%, rgba(252, 189, 0, 1) 100%);
	opacity: 0.7;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	z-index: -1;
}
#main .featuresBox .textImg {
	text-align: right;
	margin: 5.3rem -0.8rem 0 0;
}
#main .featuresBox .textImg img {
	width: 68.4rem;
}
#main .featuresBox .box02 .subTtl {
	margin: 0 0 8.2rem 0.1rem;
}
#main .featuresBox .box02 .subTtl img {
	width: 100rem;
}
#main .featuresBox .box03 .subTtl img {
	width: 100rem;
}
#main .featuresBox .box01 {
	margin-bottom: -3.3rem;
}
#main .featuresBox .imgBox {
	display: flex;
	margin: 0 -3.5rem;
}
#main .featuresBox .imgBox .photo {
	width: 57.2rem;
}
#main .featuresBox .imgBox .textBox {
	flex: 1;
	order: 3;
	margin: -1.6rem -2rem 0 6.8rem;
}
#main .featuresBox .box02 {
	margin-bottom: 8.9rem;
}
#main .featuresBox .box03 {
	margin: 0 0 0 19rem;
}
#main .featuresBox .box03 .subTtl {
	margin: 0 0 6.3rem;
}
#main .featuresBox .box03 .subTtl img {
	width: 93.5rem;
}
@media all and (max-width: 896px) {
	#main .featuresBox .imgBox {
		display: block;
		margin: 0;
	}
	#main .featuresBox .imgBox .photo {
		width: auto;
		text-align: center;
	}
	#main .featuresBox .imgBox .photo img {
		width: 100%;
		max-width: 60rem;
	}
	#main .featuresBox .imgBox .textBox {
		margin: 0 -1rem 3.3rem 0;
	}
	#main .featuresBox .box03 {
		margin: 0;
	}
	#main .textBox {
		font-size: 1.6rem;
		line-height: 2.06;
	}
	#main .featuresBox .headLine01 img {
		max-width: 60rem;
		width: 100%;
	}
	#main .featuresBox .subTtl img {
		max-width: 60rem !important;
		width: 100% !important;
	}
	#main .featuresBox .headLine01 {
		margin-bottom: 4rem;
		text-align: center;
	}
	#main .featuresBox .subTtl {
		margin: 0 -0.2rem 3.4rem 0;
		text-align: center;
	}
	#main .featuresBox .textImg {
		text-align: left;
		margin: 3.3rem -2rem 0 0;
		overflow-x: auto;
		padding-bottom: 5.2rem;
	}
	#main .featuresBox .textImg img {
		min-width: 54.5rem;
		width: 100%;
		margin-right: 2rem;
	}
	#main .featuresBox .box01 {
		margin-bottom: 7.7rem;
	}
	#main .featuresBox .box02 .subTtl {
		margin: 0 0.1rem 3rem -0.2rem;
	}
	#main .featuresBox .box02 {
		margin-bottom: 7.8rem;
	}
	#main .featuresBox .box03 .subTtl {
		margin: 0 -0.1rem 3.1rem -0.2rem;
	}
	#main .featuresBox {
		margin-bottom: 61.33vw;
	}
	#main .featuresBox .decorateImg {
		width: 26rem;
		top: 50%;
		right: auto;
		transform: translateY(-50%);
		left: -15.7rem;
		z-index: -1;
		margin-top: -7.5rem;
	}
	#main .featuresBox .decorateImg02 {
		width: 26rem;
		top: auto;
		right: -13rem;
		bottom: -18.6rem;
		left: auto;
		transform: translateY(0);
		margin: 0;
	}
}


/* voiceBox */
#main .voiceBox {
	padding: 8rem 0;
	background: url("/recruit/img/index/voice_bg.jpg") no-repeat center center;
	background-size: cover;
	border-radius: 6rem 6rem 0 0;
	position: relative;
	z-index: 10;
}
#main .voiceBox .content {
	position: relative;
	max-width: 120rem;
}
#main .voiceBox .headLine01 {
	width: 100.6rem;
	position: absolute;
	top: -10.8rem;
	margin-bottom: 0;
	mix-blend-mode: multiply;
	left: 50%;
	transform: translateX(-50%);
	margin-left: -5.4rem;
}
#main .voiceBox .headLine01 img {
	width: 100%;	
}
#main .voiceList {
	margin-right: 3rem;
	display: flex;
	flex-wrap: wrap;
	gap: 6rem 6.2rem;
}
#main .voiceList li {
	width: calc((100% - 12.4rem) / 3);
	position: relative;
} 
#main .voiceList a {
	display: block;
	font-size: 1.7rem;
	font-weight: 500;
}
#main .voiceList .borderBox {
	border: 2px solid #fff;
	background-color: #fff;
	border-radius: 0 1.5rem 0 1.5rem;
	overflow: hidden;
}
#main .voiceList .photoBox {
	position: relative;
}
#main .voiceList .photoBox img {
	width: 100%;
}
#main .voiceList .num {
	position: absolute;
	bottom: -0.2rem;
	left: -0.2rem;
}
#main .voiceList .num img {
	height: 4.3rem;
	width: auto;
}
#main .voiceList .btmBox {
	padding: 2.5rem 2rem 2.2rem;
}
#main .voiceList .title img {
	height: 5.9rem;
}
#main .voiceList .title {
	margin: 0 0 2.4rem 0.8rem;
}
#main .voiceList .name .big {
	font-size: 2rem;
}
#main .voiceList .name .sml {
	display: block;
}
#main .voiceList .btn {
	width: 6.7rem;
	position: absolute;
	bottom: -3.3rem;
	right: -3.2rem;
}
@media all and (min-width: 897px) {
	#main .voiceList a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#main .voiceBox .headLine01 {
		width: 89.4%;
		top: auto;
		margin-left: 0;
		text-align: center;
		bottom: calc(100% + 1.1rem);
	}
	#main .voiceBox .headLine01 img {
		width: 100%;
		max-width: 60rem;
	}
	#main .voiceList {
		margin-right: 2.5rem;
		display: block;
	}
	#main .voiceList li {
		margin-bottom: 4.9rem;
		width: auto;
	}
	#main .voiceList li:last-child {
		margin-bottom: 0;
	}
	#main .voiceBox {
		padding: 4rem 1.9rem 6.4rem;
		background-image: url("/recruit/img/index/sp_voice_bg.jpg");
		border-radius: 3rem 3rem 0 0;
	}
	#main .voiceList .borderBox {
		border-radius: 0 1.3rem 0 1.3rem;
	}
	#main .voiceList .num img {
		height: 3.4rem;
	}
	#main .voiceList .title img {
		height: 4.6rem;
	}
	#main .voiceList .title {
		margin: 0 0 1.9rem 0.5rem;
	}
	#main .voiceList a {
		font-size: 1.32rem;
		line-height: 1.45;
		letter-spacing: 0.05em;
	}
	#main .voiceList .name .big {
		font-size: 1.55rem;
	}
	#main .voiceList .btmBox {
		padding: 2rem 1.6rem 1.8rem;
	}
	#main .voiceList .btn {
		width: 5.2rem;
		bottom: -2.5rem;
		right: -2.5rem;
	}
}


/* popBox */
.popBox {
	margin: 0 auto;
	padding: 3rem;
	max-width: 107rem;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
}
.popBox .innerBox {
	background: url("/recruit/img/index/pop_bg.jpg") no-repeat left top;
	background-size: cover;
	border-radius: 0 1.5rem 0 1.5rem;
	padding: 2rem 2rem 2rem 7.7rem;
	position: relative;
}
.popBox .btn {
	position: absolute;
	bottom: -2.7rem;
	right: -2.5rem;
	width: 6.8rem;
	z-index: 3;
	cursor: pointer;
	transition: 0.3s;
}
.popBox .innerBg {
	padding: 3.9rem 3rem 3.2rem;
	border-radius: 0 1.5rem 0 1.5rem;
	background-color: #fff;
}
.popBox .titleImg {
	position: absolute;
	top: 2.1rem;
	left: 0;
	width: 8rem;
}
.popBox .imgBox {
	display: flex;
	font-size: 1.7rem;
	line-height: 1.82;
	letter-spacing: 0.03em;
}
.popBox .imgBox .photo {
	width: 37.1rem;
}
.popBox .imgBox .photo img {
	width: 100%;
}
.popBox .imgBox .rightBox {
	flex: 1;
	margin: -0.6rem 0 0 4rem;
}
.popBox .name {
	margin-bottom: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
}
.popBox .name .sml {
	margin-bottom: 0.4rem;
	display: block;
}
.popBox .name .big {
	margin-right: 0.6rem;
	font-size: 2rem;
}
.popBox .historyUl {
	font-size: 1.5rem;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	padding: 1.2rem 0 1.3rem;
	margin-bottom: 2.1rem;
}
.popBox .historyUl li {
	display: flex;
}
.popBox .historyUl .time {
	white-space:nowrap;
}
.popBox .historyUl .txt {
	flex: 1;
}
.popBox .title {
	margin: 0 0.8rem 4rem;
}
.popBox .title img {
	width: 55.1rem;
}
#pop02 .title img {
	width: 64rem;
}
#pop03 .title img {
	width: 48.2rem;
}
@media all and (min-width: 897px) {
	.popBox .btn:hover {
		opacity: 0.7;
	}
}
@media all and (min-width: 897px) and (max-width: 1200px) {
	.popBox .imgBox .photo {
		width: 33.1rem;
	}
	.popBox .imgBox .rightBox {
		margin: -0.6rem 0 0 2rem;
	}
	.popBox .imgBox {
		font-size: 1.4rem;
	}
	.popBox .historyUl {
		font-size: 1.2rem;
	}
}
@media all and (max-width: 896px) {
	.popBox .imgBox {
		display: block;
		font-size: 1.25rem;
		line-height: 1.9;
	}
	.popBox .imgBox .photo {
		margin-bottom: 1.6rem;
		width: auto;
	}
	.popBox .imgBox .rightBox {
		margin: 0;
		text-align: justify;
	}
	.popBox .title {
		margin: 0 0 2rem;
	}
	.popBox .innerBox {
		padding: 4.4rem 1.1rem 1.2rem;
		background-image: url("/recruit/img/index/sp_pop_bg.jpg");
		border-radius: 0 1.2rem 0 1.2rem;
	}
	.popBox {
		padding: 3rem 1.3rem 3rem 0;
		max-width: 89%;
	}
	.popBox .titleImg {
		top: 0;
		left: 0;
		width: 100%;
		text-align: right;
		padding: 0 2rem;
	}
	.popBox .titleImg img {
		width: auto;
		height: 4.5rem;
	}
	.popBox .innerBg {
		padding: 2.1rem 1.6rem 1.6rem;
		border-radius: 0 1.2rem 0 1.2rem;
	}
	.popBox .historyUl li {
		display: block;
	}
	.popBox .historyUl span {
		display: block;
	}
	.popBox .historyUl .time {
		white-space: wrap;
	}
	.popBox .title img {
		width: 22.8rem;
	}
	.popBox .historyUl {
		font-size: 1.15rem;
		padding: 0.8rem 0 1.2rem;
		margin-bottom: 1.2rem;
		line-height: 1.7;
		letter-spacing: -0.03em;
		text-align: left;
	}
	.popBox .name {
		margin-bottom: 1.2rem;
		font-size: 1.3rem;
		text-align: left;
	}
	.popBox .name .big {
		margin-right: 0.6rem;
		font-size: 1.5rem;
	}
	.popBox .name .sml {
		margin-bottom: 0.2rem;
	}
	.popBox .btn {
		bottom: -2.2rem;
		right: -2.2rem;
		width: 5.3rem;
	}
	#pop02 .title img {
		width: 23.7rem;
	}
	#pop03 .title img {
		width: 17.2rem;
	}
}



.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: all 0.5s ease-out;
	transition: all 0.5s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: all 0.5s ease-out;
	transition: all 0.5s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
}
.mfp-container {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.mfp-bg {
	background-color: #000 !important;
}
.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.4 !important;
}

.mfp-content {
	overflow-y: auto;
	max-height: 100%;
}
.mfp-container {
	position: fixed !important;
}