@charset "UTF-8";
/* ---------------------------------------
  働きやすい環境
-----------------------------------------*/
/* page_ttl
--------------------------------*/
#page_ttl .page_head {
	background-color: #37E5C3;
}
#page_ttl .ttl .en .deco::before {
	width: 6.95rem;
	height: 4.2rem;
	background-image: url(../../img/recruit/system/system_ttl_deco.png);
	left: 0.8rem;
	top: 0.2rem;
}
@media screen and (max-width: 767px) {
	#page_ttl .ttl .en .deco::before {
		width: 3.5rem;
		height: 2.1rem;
	}
}

/* common
--------------------------------*/
.sec_ttl {
	color: inherit !important;
	font-size: 5.6rem;
	line-height: 1.3035714286;
	letter-spacing: 0.05em;
	padding-left: 5.6rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.sec_ttl {
		font-size: 3.2rem;
		line-height: 1.3125;
		padding-left: 4rem;
	}
}
.sec_ttl::before {
	content: "";
	width: 4.8rem;
	height: 4.8rem;
	mask-image: url(../../img/recruit/common/ico_ttl.svg);
	-webkit-mask-image: url(../../img/recruit/common/ico_ttl.svg);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: 100% 100%;
	-webkit-mask-size: 100% 100%;
	mask-position: center;
	-webkit-mask-position: center;
	position: absolute;
	left: 0;
	top: 1.3rem;
}
@media screen and (max-width: 767px) {
	.sec_ttl::before {
		width: 3.2rem;
		height: 3.2rem;
		top: 0.5rem;
	}
}
.sec_ttl._orange::before {
	background-color: #FD7D05;
}
.sec_ttl._blue::before {
	background-color: #245FF3;
}

/* sec_program
--------------------------------*/
#sec_program {
	padding: 8rem 0 9.6rem;
	background-color: #F3F3F3;
	overflow: hidden;
	margin-top: 12rem;
}
@media screen and (max-width: 767px) {
	#sec_program {
		padding: 4rem 0 3.2rem;
		margin-top: 4.8rem;
	}
}
#sec_program .program_contents {
	width: 89.6rem;
	margin-left: auto;
	margin-top: 9.6rem;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents {
		width: 100%;
		margin-top: 3.2rem;
	}
}
#sec_program .program_contents::before {
	content: "";
	width: 34.6rem;
	height: 34.6rem;
	background: url(../../img/recruit/system/program_ob01.svg) no-repeat center/contain;
	position: absolute;
	top: -12rem;
	right: -9.4rem;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents::before {
		width: 12.9rem;
		height: 12.9rem;
		top: -0.5rem;
		right: -6.5rem;
	}
}
#sec_program .program_contents .txt_lead {
	font-size: 2rem;
	line-height: 2.1;
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents .txt_lead {
		font-size: 1.5rem;
		line-height: 1.7333333333;
	}
}
#sec_program .program_contents > .img {
	border-radius: 2.4rem;
	margin-top: 4rem;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents > .img {
		border-radius: 1.6rem;
		margin-top: 1.6rem;
	}
}
#sec_program .program_contents > .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#sec_program .program_contents .box {
	padding: 4rem 4rem 3.2rem;
	background-color: #FEFEFE;
	border-radius: 1.6rem;
	margin-top: 4rem;
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents .box {
		padding: 1.6rem 1.6rem 2rem;
		margin-top: 1.6rem;
	}
}
#sec_program .program_contents .box .ttl {
	font-weight: 700;
	font-size: 3.2rem;
	line-height: 1.3125;
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents .box .ttl {
		font-size: 2rem;
		line-height: 1.5;
	}
}
@media screen and (max-width: 767px) {
	#sec_program .program_contents .box .img {
		margin-top: 1.6rem;
	}
}

/* sec_benefit
--------------------------------*/
#sec_benefit {
	padding: 8rem 0 9.6rem;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	#sec_benefit {
		padding: 4rem 0 8rem;
	}
}
#sec_benefit .benefit_contents {
	width: 89.6rem;
	margin-left: auto;
	margin-top: 5.6rem;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_contents {
		width: 100%;
		margin-top: 3.2rem;
	}
}
#sec_benefit .benefit_contents .txt_lead {
	font-size: 2rem;
	line-height: 2.1;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_contents .txt_lead {
		font-size: 1.5rem;
		line-height: 1.7333333333;
	}
}
#sec_benefit .benefit_list {
	margin-top: 6.4rem;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list {
		margin-top: 3.2rem;
	}
}
#sec_benefit .benefit_list .item {
	padding: 4rem 0 0;
	border-top: 0.4rem dotted #C1C1C1;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item {
		padding: 2.4rem 0 0;
		border-top: 0.2rem dotted #C1C1C1;
	}
}
#sec_benefit .benefit_list .item + .item {
	margin-top: 6.4rem;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item + .item {
		margin-top: 3rem;
	}
}
#sec_benefit .benefit_list .item .ttl {
	font-weight: 700;
	font-size: 3.2rem;
	line-height: 1.3125;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item .ttl {
		font-size: 2.4rem;
		line-height: 1.2916666667;
		white-space: nowrap;
	}
}
#sec_benefit .benefit_list .item .ttl .en {
	display: block;
	color: #245FF3;
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.9;
	padding-left: 3.8rem;
	margin-bottom: 0.8rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item .ttl .en {
		font-size: 1.8rem;
		line-height: 1.5833333333;
		padding-left: 3rem;
	}
}
#sec_benefit .benefit_list .item .ttl .en::before {
	content: "";
	width: 3.2rem;
	height: 3.8rem;
	background: url(../../img/recruit/system/benefit_ico_point.svg) no-repeat center/contain;
	position: absolute;
	left: 0;
	top: 0;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item .ttl .en::before {
		width: 2.4rem;
		height: 2.85rem;
	}
}
#sec_benefit .benefit_list .item ul {
	margin-top: 2.4rem;
}
#sec_benefit .benefit_list .item ul li {
	display: inline-block;
	font-size: 2rem;
	line-height: 2.1;
	padding-left: 2.2rem;
	margin-right: 2.3rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item ul li {
		font-size: 1.5rem;
		line-height: 1.7333333333;
		padding-left: 1.8rem;
		margin-right: 1.4rem;
	}
}
#sec_benefit .benefit_list .item ul li::before {
	content: "";
	width: 1.6rem;
	height: 1.6rem;
	background-color: #245FF3;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 1.3rem;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item ul li::before {
		width: 1.2rem;
		height: 1.2rem;
		top: 0.7rem;
	}
}
@media screen and (min-width: 768px) {
	#sec_benefit .benefit_list .item ul li.break {
		width: 100%;
		height: 0;
		padding: 0;
		margin: 0;
	}
}
#sec_benefit .benefit_list .item .img {
	border-radius: 2.4rem;
	margin-top: 2.4rem;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item .img {
		border-radius: 1.6rem;
	}
}
#sec_benefit .benefit_list .item .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#sec_benefit .benefit_list .item .img + .caption {
	text-align: right;
	font-weight: 400;
	font-size: 1.6rem;
	line-height: 1.375;
	margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item .img + .caption {
		font-size: 1.4rem;
		line-height: 1.4285714286;
		margin-top: 0.6rem;
	}
}
#sec_benefit .benefit_list .item .img + .caption::before {
	content: "※";
	display: inline-block;
	color: #FD7D05;
	margin-right: 0.4rem;
}
@media screen and (max-width: 767px) {
	#sec_benefit .benefit_list .item .img + .caption::before {
		margin-right: 0.2rem;
	}
}