@charset "utf-8";

/*==============================================

	our_jobs 

==============================================*/
/*================================
	Layout, Elements
================================*/

#mv_video {
	padding: 0 20px;
	height: 100%;
	overflow: hidden;
	border-radius: 5px;
}
#mv_video video {
	width: 100%;
	border-radius: 10px;
	overflow: hidden;
	aspect-ratio: 1326 / 683;
	object-fit: cover;
	object-position: center;
}
main .mv {
	position: relative;
	/* height: 100vh; */
	padding-top: 100px;
}
main .mv:before {
	content: '';
	position: absolute;
	top: 95px;
	width: calc(100% - 60px);
	height: 1px;
	left: 0;
	right: 0;
	background-color: rgba(255, 255, 255, 0.5);
	margin: auto;
}

main .mv {
    position: relative;
    /* min-height: 780px; */
}
main .mv > picture {
    display: block;
}
main .mv > picture img {
    width: 100%;
}
main .mv .mv_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

main .mv .subtitle img {
	display: inline-block;
}
main .mv .title {
	color: #fff;
	font-size: 1.4rem;
	padding-left: 100px;
	margin-top: 20px;
	line-height: 2em;
	/* letter-spacing: 4px; */
}
main .mv .title span {
	color: #fff;
	font-size: 1.4rem;
	margin-top: 12px;
	letter-spacing: 2px;
	display:block;
}
main .mv .subtitle {
	margin-left: 100px;
}
.caption {
	margin: 100px auto 120px;
}
.caption h2 {
	text-align: center;
	font-size: 2.5rem;
	color: var(--dark-green);
	margin-bottom: 10px;
	letter-spacing: 2px;
	line-height: 2em;
}
.caption .text {
	text-align: center
}

.jobs_list {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 40px;
	max-width: 1240px;
	padding: 0 20px;
	margin: 100px auto 120px;
}
.jobs_list > li {
	width: calc((100% - 40px*2) / 3);
}
.jobs_list > li .img {
	position: relative;
	margin-bottom: 20px;
}
.jobs_list > li .img img {
	aspect-ratio: 376 / 251;
	object-fit: cover;
	object-position: center center;
	border-radius: 5px;
}
.jobs_list > li .img p.area {
	position: absolute;
	bottom: 15px;
	left: 15px;
	background-color: var(--wt);
	color: var(--dark-green);
	font-size: 1.2rem;
	padding: 4px 20px 2px;
	border-radius: 30px;
	font-size: 1.4rem;
	border: 1px solid;
}
.jobs_list > li .en {
	font-size: 1.3rem;
	color: var(--dark-green);
	margin-top: 20px;
}
.jobs_list > li .title {
	font-size: 2rem;
	color: var(--dark-green);
}
.jobs_list > li .catch {
	font-size: 1.6rem;
	color: var(--bk);
	margin-top: 10px;
}
.jobs_list > li .text {
	font-size: 1.3rem;
	margin-top: 10px;
	margin-bottom: 5px;
}

.jobs_list li a .img {
	width: 182px;	
}
.jobs_list li a .img img {
	aspect-ratio: 1 / 1;
	border-radius: 5px;
	object-fit: cover;
	object-position: center center;
}
.jobs_list li a .exp{
	width: calc(100% - 182px);
	padding-left: 40px;
}
.jobs_list li a .exp .title {
	font-size: 2rem;
	color: var(--dark-green);
	margin-bottom: 5px;
}
.jobs_list li a .exp .excerpt {
	font-size: 1.3rem;
	line-height: 2em;
	margin-bottom: 10px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 3;
}
.jobs_list li .btn a {
	font-size: 1.3rem;
	color: var(--green);
	/* margin-top: 10px; */
	/* text-align: right; */
	position: relative;
	border-bottom: 1px solid;
	padding: 8px 0px 8px 0;
	width: 161px;
	display: inline-block;
}
.jobs_list li .btn a i {
	color: inherit;
	margin-left: 7px;
	font-size: 1.4rem;
}

@media only screen and (max-width: 768px) {
	
	main .mv:before {
		width: calc(100% - 40px);
		top: 77px;
	}
	main .mv .mv_inner {
		padding: 0 30px;
		padding-right: 20px;
	}
	main .mv .subtitle {
		margin-right: 0;
		text-align: left;
		margin-left: 0;
	}
	main .mv .title {
		padding-right: 0;
		text-align: left;
		font-size: 2.5rem;
		margin-top: 20px;
		padding-left: 0;
	}

	#mv_video {
		padding: 0 10px;
	}
	#mv_video video {
		aspect-ratio: 1 / 1;
		object-fit: cover;
		object-position: center center;
	}

	main .mv .mv_inner {
		position: static;
		width: 100%;
		padding: 0 20px;
		transform: translate(0);
		margin-top: 50px;
	}
	main .mv .title {
		font-size: 1.3rem;
		color: var(--dark-green);
		margin-top: 5px;
	}

	main .mv {
		min-height: unset;
	}


	.caption {
		margin: 30px auto 40px;
		padding: 0 20px;
	}
	.caption h2{
		text-align: left;
		font-size: 2rem;
	}
	.caption .text {
		text-align: left;
	}

	.jobs_list {
		margin-top: 40px;
		gap: 60px;
	}
	.jobs_list > li {
		width: 100%;
	}



	.jobs_list li a {
		flex-direction: column;
		border: none;
	}
	.jobs_list li a .img {
		width: 100%;
		margin-bottom: 20px;
	}
	.jobs_list li a .exp {
		width: 100%;
		padding-left: 0;
	}
	.jobs_list li a .exp .excerpt {
		-webkit-line-clamp: 4;
		line-clamp: 4;
	}
	.jobs_list li a .img img {
		aspect-ratio: 330 / 221;
	}


	.jobs_list > li .title {
		font-size: 1.6rem;
	}
	.lg-toolbar .lg-close {
		top: 17px;
		right: 15px;
	}

}

