@charset "utf-8";


body {
	font-size: 1.9rem;
	line-height: 1.9;
	letter-spacing: 0;
	font-weight: 300;
	
}


/*employee_lead
--------------------------------------------*/
#employee_lead{
	padding-top: 98px;
}
#employee_lead .detail{
	font-size: 2.2rem;
	line-height: 1.8181;
	letter-spacing: 0;
	text-align: center;
	margin-bottom: 80px;
}
#employee_lead .detail .em{
	font-weight: 700;
}
@media screen and (max-width: 1200px) {
	#employee_lead{
		width: 90%;
		margin:0 auto
	}
}
@media screen and (max-width: 980px) {
	#employee_lead .detail{
		text-align: left;
	}
}

/*employee_recruitment
--------------------------------------------*/
#employee_recruitment{
	width: 100%;
	background-image: url(../img/employee/recruitment_bg.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
	padding: 65px 0 50px;
}
#employee_recruitment .ttl02{
	margin-bottom: 12px;
}
#employee_recruitment .ttl02::before{
	color:rgba(255,255,255,0.2);
	font-size: 9.4rem;
	top:-96px
}
#employee_recruitment .ttl02::after{
	content:none;
}
#employee_recruitment p{
	text-align: center;
	font-size: 2.2rem;
	line-height: 1.8181;
}
@media screen and (max-width: 980px) {
	#employee_recruitment .employee_recruitment_inner{
		width: 90%;
		margin:0 auto;
	}
	#employee_recruitment .employee_recruitment_inner p{
		text-align: left;
	}
}

/*employee_process
--------------------------------------------*/
#employee_process{
	padding:126px 0 90px;
	background-color: #ecf4f2;
}
#employee_process .ttl02{
	margin-bottom: 110px;
}
#employee_process .ttl02::before{
	content: "Process";
}
#employee_process .list{
	display: flex;
	justify-content: center;
	gap: 100px;
}
#employee_process .list_item{
	max-width: 500px;
	width: 50%;
}
#employee_process .list_item .ttl{
	position: relative;
	text-align: center;
	font-size: 2.8rem;
	line-height: 1.57;
	font-weight: 600;
	width: 100%;
	background-color: #fff;
	padding:25px 20px 14px;
	margin-bottom:10px;
}
#employee_process .list_item .ttl::before{
	position: absolute;
	content: url(../img/employee/L_border_l.png);
	width: 40px;
	height: 40px;
	top: 0;
	left: 0;
}
#employee_process .list_item .ttl::after{
	position: absolute;
	content: url(../img/employee/L_border_r.png);
	width: 40px;
	height: 40px;
	bottom: 0;
	right: 0;
}
#employee_process .list_item .ttl span{
	position: relative;
	display: block;
}
#employee_process .list_item .ttl span::before{
	position: absolute;
	content: "01";
	font-size: 5.0rem;
	color: var(--main-color);
	font-style: italic;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	transform: translateX(-50%);
	left: 50%;
	top: -52px;
}
#employee_process .list_item:nth-of-type(2) .ttl span::before{
	content: "02";
}
#employee_process .detail{
	font-size: 1.9rem;
	line-height: 1.9;
	letter-spacing: 0;
	min-height: 365px;
	padding: 20px;
	background-color: rgba(255,255,255,0.6);
	text-align: justify;
}
#employee_process .detail .em{
	color: var(--main-color3);
	font-weight: 600;
}
#employee_process .detail .em_u-line{
	font-weight: 600;
	background:linear-gradient(transparent 70%, #fff59c 70%);
}
@media screen and (max-width: 1200px) {
	#employee_process .list{
		width: 90%;
		margin:0 auto;
		justify-content: space-between;
		gap: 0;
	}
	#employee_process .list_item{
		width: 48.5%;
	}
}
@media screen and (max-width: 980px) {
	#employee_process .list{
		display: block;
	}
	#employee_process .list_item{
		position: relative;
		width: 100%;
		max-width: none;
		margin-bottom: 80px;
	}
	#employee_process .list_item:last-of-type{
		margin-bottom: 0;
	}
	#employee_process .list_item::before{
		position: absolute;
		content: "process";
		font-size: 5.0rem;
		color:#87c8c0;
		writing-mode: vertical-rl;
		transform: rotate(180deg);
		font-family: var(--font-family-serif);
		bottom: 0;
		left: 0;
	}
	#employee_process .list_item .ttl{
		z-index: 1;
		max-width: 500px;
	}
	#employee_process .list_item .detail{
		position: relative;
		width: calc( 100% - 130px );
		margin:-38px 0 0 auto;
		padding-top: 48px;
		min-height: 285px;
	}
	#employee_process .list_item .detail::after{
		position: absolute;
		content: "";
		background-color: #87c8c0;
		width: 1px;
		height: calc(100% - 260px);
		left: -73px;
		bottom: 194px;
	}
	#employee_process .list_item .ttl span::before{
		top: auto;
		bottom: -40px;
		left: 20px;
	}
}

/*employee_topclass
--------------------------------------------*/
#employee_topclass{
	padding:126px 0 90px;
}
#employee_topclass .ttl02{
	margin-bottom: 72px;
}
#employee_topclass .ttl02::before{
	color: #fff2e9;
	content: "Payroll system";
	font-size: 7.4rem;
	letter-spacing: 0;
}
#employee_topclass .ttl02::after{
	background-color: var(--main-color);
}
#employee_topclass .lead{
	font-size: 1.9rem;
	line-height: 1.7;
	margin-bottom: 72px;
}
#employee_topclass .media_item{
	margin-bottom: 85px;
}
#employee_topclass .item_img{
	width: 47.2727%;
	float: left;
	margin-right: 20px;
	margin-bottom: 10px;
}
#employee_topclass .media_item:nth-of-type(1) .item_img{
	margin-bottom: 100px;
}
#employee_topclass .item_body{
	/* width: 52.7272%; */
	/* margin-left: 20px; */
	padding-top: 70px;
}
#employee_topclass .item_ttl{
	position: relative;
	margin-bottom: 6px;
}
#employee_topclass .item_ttl span{
	display: inline-block;
	background-color: var(--main-color3);
	color: #fff;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	height: 60px;
	line-height: 60px;
	margin-bottom: 14px;
	padding: 0 20px;
}
#employee_topclass .item_ttl span:first-of-type{
	position: relative;
}
#employee_topclass .item_ttl span:first-of-type::before{
	position: absolute;
	content: "01";
	font-size:7.2rem;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	font-style:italic ;
	color: #99dec2;
	letter-spacing: 0.02em;
	left: 0;
	top: -80px;
}
#employee_topclass .media_item:nth-of-type(2) .item_ttl span:first-of-type::before{
	content: "02";
}
#employee_topclass .media_item:nth-of-type(3) .item_ttl span:first-of-type::before{
	content: "03";
}
#employee_topclass .media_item:nth-of-type(4) .item_ttl span:first-of-type::before{
	content: "04";
}

#employee_topclass .item_detail{
	font-size: 1.9rem;
	line-height: 1.8;
}
#employee_topclass .item_detail .em{
	font-weight: 700;
}
#employee_topclass .media_item:nth-of-type(2n) .item_img{
	float: right;
	margin-right: auto;
	margin-left: 20px;
}
/* PCではアコーディオン常に展開 */
#employee_topclass .accordion__body{
	display: block !important;
}
#employee_topclass .accordion__link{
	display: none !important;
}

@media screen and (max-width: 1200px) {
	#employee_topclass{
		width: 90%;
		margin:0 auto;
	}
	#employee_topclass .media_item{
		position: relative;
		max-width: 800px;
		margin: 0 auto 60px;
	}
	#employee_topclass .item_img{
		float: none !important;
		position: absolute;
		width: auto;
		margin-bottom: 20px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	#employee_topclass .item_body{
		padding-top: 270px;
	}
	#employee_topclass .item_ttl{
		text-align: right;
		margin-bottom: 20px;
	}
	#employee_topclass .item_ttl span:first-of-type::before{
		left: auto;
		right: 0;
	}
	#employee_topclass .media_item:nth-of-type(2n) img{
		right: 0;
	}
	#employee_topclass .media_item:nth-of-type(2n) .item_ttl{
		text-align: left;
	}
	#employee_topclass .media_item:nth-of-type(2n) .item_ttl span:first-of-type::before{
		left: 0;
		right: auto;
	}
}

/*employee_achievements
--------------------------------------------*/
#employee_achievements{
	padding:126px 0 90px;
	background-color: #ecf4f2;
}
#employee_achievements .ttl02{
	margin-bottom: 80px;
}
#employee_achievements .ttl02::before{
	content: "Achievements";
}
#employee_achievements .lead{
	margin-bottom: 58px;
}
#employee_achievements .data_wrapper{
	display: flex;
	margin-bottom: 100px;
}
#employee_achievements .data_wrapper:last-of-type{
	margin-bottom: 0;
}
#employee_achievements .data{
	width: 50%;
	text-align: center;
	padding: 0 7px 20px;
}
#employee_achievements .data03{
	padding: 0 14px 20px 0;
}
#employee_achievements .data01,
#employee_achievements .data03{
	border-right: 1px solid var(--black-color);
}
#employee_achievements .ttl04{
	margin-bottom: 40px;
}
#employee_achievements .data02 .ttl04{
	margin-bottom: 120px;
}
#employee_achievements .data03 .ttl04{
	margin-bottom: 60px;
}
#employee_achievements .data04 .ttl04{
	margin-bottom: 75px;
}
#employee_achievements .note_txt{
	font-size: 1.6rem;
	text-align: right;
	padding-top: 40px;
}
@media screen and (max-width: 1200px) {
	.employee_achievements_inner{
		width: 90%;
		margin:0 auto;
	}
}

/*employee_salary
--------------------------------------------*/
#employee_salary{
	padding:126px 0 90px;
}
#employee_salary .ttl02{
	margin-bottom: 72px;
}
#employee_salary .ttl02::before{
	color: #fff2e9;
	content: "Salary";
}
#employee_salary .ttl02::after{
	background-color: var(--main-color);
}
#employee_salary .lead{
	margin-bottom: 98px;
}
#employee_salary .contents{
	display: none;
}
#employee_salary .salary_list{
	display: flex;
	gap: 50px;
	flex-wrap: nowrap;
	margin-bottom: 68px;
}
#employee_salary .list_item{
	width: calc( (100% - 100px) / 3 );
	font-size: 1.7rem;
}
#employee_salary .item_ttl{
	position: relative;
	font-size: 2.6rem;
	font-weight: 500;
	color: var(--main-color3);
	text-align: center;
	margin-bottom: 10px;
}
#employee_salary .item_ttl::before{
	position: absolute;
	content: "01";
	font-size:7.2rem;
	font-family: var(--font-family-serif);
	line-height: 1;
	font-weight: 600;
	font-style:italic ;
	color: #e8f7f4;
	letter-spacing: 0.02em;
	transform: translateX(-50%);
	left: 50%;
	top: -48px;
	z-index: -1;
}
#employee_salary .list_item:nth-of-type(2) .item_ttl::before{
	content: "02";
}
#employee_salary .list_item:nth-of-type(3) .item_ttl::before{
	content: "03";
}
#employee_salary .list_item img{
	margin-bottom: 10px;
}
@media screen and (max-width: 1200px) {
	#employee_salary .employee_salary_inner{
		width: 90%;
		margin:0 auto;
	}
	#employee_salary .salary_list{
		flex-wrap: wrap;
		gap: 80px 50px;
		margin:0 auto 68px;
	}
	#employee_salary .list_item{
		width: calc((100% - 50px)/2);
		text-align: center;
	}
	#employee_salary .item_ttl{
		font-size: 2.4rem;
	}
	#employee_salary .item_detail{
		text-align: justify;
	}

}

/*employee_system
--------------------------------------------*/
#employee_system{
	padding:126px 0 80px;
	background-color: #ecf4f2;
}
#employee_system .ttl02{
	margin-bottom: 72px;
}
#employee_system .ttl02::before{
	content: "System";
}
#employee_system .lead{
	margin-bottom: 50px;
}
#employee_system .data{
	margin-bottom: 130px;
	text-align: center;
}
#employee_system .data.data02{
	margin-bottom: 0;
}
@media screen and (max-width: 1200px) {
	#employee_system .employee_system_inner{
		width: 90%;
		margin:0 auto;
	}
}

/*employee_career
--------------------------------------------*/
#employee_career{
	padding:126px 0 24px;
}
#employee_career .ttl02{
	margin-bottom: 72px;
}
#employee_career .ttl02::before{
	color: #fff2e9;
	content: "Career";
}
#employee_career .ttl02::after{
	background-color: var(--main-color);
}
#employee_career .lead{
	margin-bottom: 50px;
}
#employee_career .case_ttl_wrapper{
	background-color: var(--main-color3);
	width: 100%;
	min-height: 140px;
	padding:23px 20px;
	margin-bottom: 20px;
}
#employee_career .accordion_container{
	margin-bottom: 60px;
}
#employee_career .accordion_container:nth-of-type(2n) .case_ttl_wrapper{
	background-color: var(--main-color2);
}
#employee_career .case_ttl{
	border-left: 15px solid #fff;
	color: #fff;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.666;
	padding-left: 36px;
}
#employee_career .case_ttl .profile{
	display: block;
	color: #bfefd9;
	font-size: 2.2rem;
	padding-top: 5px;
}

#employee_career .accordion_container:nth-of-type(2n) .profile{
	color: #99dadc;
}


/* アコーディオン */
#employee_career .case_box_inner {
	display: flex;
}
#employee_career .accordion_title {
	position: relative;
	background-color: #f2f2f2;
	color: var(--main-color3);
	font-size: 3rem;
	letter-spacing: 0.6em;
	font-weight: 500;
	text-align: center;
	padding: 10px;
	z-index: +1;
	cursor: pointer;
	transition-duration: 0.2s;
	margin-bottom: 20px;
}
#employee_career .accordion_title:hover {
	opacity: .8;
}

/* 矢印の挙動 */
#employee_career .accordion_title::before {
	position: absolute;
	content: url(../img/cmn/arrow_triangle_green_up.png);
	right: 40px;
	transition: 0.3s;
	transform: rotate(180deg);
}
#employee_career .accordion_title.open::before {
	transform: rotate(0deg);
}
/* 一つ目のアコーディオンのみ矢印の挙動を逆に */
#employee_career .accordion_container:first-of-type .accordion_title.open::before{
	transform: rotate(180deg);
}
#employee_career .accordion_container:first-of-type .accordion_title::before{
	transform: rotate(0deg);
}
#employee_career .accordion_inner {
	display: none;
}
#employee_career .accordion_inner.default {
	display: block;
}
#employee_career .case_box_inner{
	display: flex;
	gap: 0 40px;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
#employee_career .year{
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	background-color: #fde4d3;
	color: var(--main-color);
	height: 50px;
	line-height: 50px;
	text-align: center;
	margin-bottom: 10px;
}
#employee_career .case_body{
	width: calc( (100% - 80px) / 3 );
	margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
	#employee_career .employee_career_inner{
		width: 90%;
		margin:0 auto;
	}
}

/*employee_benefits
--------------------------------------------*/
#employee_benefits{
	padding:126px 0 80px;
	background-color: #ecf4f2;
	margin-bottom: 214px;
}
#employee_benefits .ttl02{
	margin-bottom: 72px;
}
#employee_benefits .ttl02::before{
	content: "Benefits";
}
#employee_benefits .lead{
	margin-bottom: 96px;
}
#employee_benefits .modal_list{
	display: none;
}
#employee_benefits .benefits_list{
	display: flex;
	gap: 110px 30px ;
	flex-wrap: wrap;
}
#employee_benefits .benefits_item{
	position: relative;
	background-color: #fff;
	width: calc( (100% - 60px)/3);
	box-shadow: 2px 2px 4px #999;
	padding: 74px 20px 20px;
}
#employee_benefits .benefits_item::before{
	position: absolute;
	content: url(../img/employee/icon_benefits01.png);
	transform: translateX(-50%);
	left: 50%;
	top: -60px;
}
#employee_benefits .benefits_item:nth-of-type(2):before{
	content: url(../img/employee/icon_benefits02.png);
}
#employee_benefits .benefits_item:nth-of-type(3):before{
	content: url(../img/employee/icon_benefits03.png);
}
#employee_benefits .benefits_item:nth-of-type(4):before{
	content: url(../img/employee/icon_benefits04.png);
}
#employee_benefits .benefits_item:nth-of-type(5):before{
	content: url(../img/employee/icon_benefits05.png);
}
#employee_benefits .benefits_item:nth-of-type(6):before{
	content: url(../img/employee/icon_benefits06.png);
}
#employee_benefits .benefits_item:nth-of-type(7):before{
	content: url(../img/employee/icon_benefits07.png);
}
#employee_benefits .benefits_item:nth-of-type(8):before{
	content: url(../img/employee/icon_benefits10.png);
}
#employee_benefits .benefits_item:nth-of-type(9):before{
	content: url(../img/employee/icon_benefits11.png);
}
#employee_benefits .benefits_item:nth-of-type(10):before{
	content: url(../img/employee/icon_benefits09.png);
}
#employee_benefits .benefits_item .ttl{
	font-size: 2.6rem;
	color: var(--main-color);
	font-weight: 500;
	text-align: center;
	margin-bottom: 8px;
}
#employee_benefits .benefits_item .detail{
	line-height: 1.5;
}
#employee_benefits .btn-close.js-modal-close{
	display: none;
}
@media screen and (max-width: 1200px) {
	#employee_benefits .employee_benefits_inner{
		width: 90%;
		margin:0 auto;
	}
	#employee_benefits .benefits_item{
		width: calc((100% - 30px) / 2);
	}
}


/*sec_jobs
--------------------------------------------*/
#sec_jobs{
	margin-bottom: 120px;
}