@charset "utf-8";




/*lead
--------------------------------------------*/
#lead{
	padding:103px 0 115px;
}
#lead .lead{
	line-height: 3;
	padding-bottom: 60px;
}
@media screen and (max-width: 1200px){
	#lead .lead_wrapper{ 
	width: 90%;
}
}



/*sec_service
--------------------------------------------*/
#sec_service {
	position: relative;
	width: 100%;
	background-image: url(../img/top/service_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position:center top ;
	padding: 170px 0 180px;
}
#sec_service::after{
	position: absolute;
	content: "";
	background-image: url(../img/top/wave_green.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 338px;
	transform: translateX(-50%);
	bottom:-90px;
	left: 50%;

}
.sec_service_inner{
	display: flex;
	max-width: 1320px;
	margin:0 auto;
	margin-bottom: 110px;
}
#sec_service .sec_ttl,
#sec_service .content{
	width: 50%;
}
#sec_service .sec_ttl{
	font-size: 3rem;
	line-height: 2.5;
	letter-spacing: 0.06em;
	text-align: center;
}
#sec_service .content{
	font-size: 1.6rem;
	line-height: 3.6;
	color: var(--black-color2);
}
#sec_service .btn_wrapper{
	position: relative;
	z-index: 10;
}
@media screen and (max-width: 1200px){
	.sec_service_inner{
		flex-direction: column;
		align-items: center;
	}
	#sec_service .sec_ttl, #sec_service .content{
		width: 90%;
	}
	#sec_service .sec_ttl{
		margin-bottom: 30px;
	}
	#sec_service .content br{
		display: none;
	}
}


/*sec_aims
--------------------------------------------*/
#sec_aims{
	position: relative;
	padding: 150px 0 0;
}
#sec_aims::before{
	position: absolute;
	content: "";
	width: 2px;
	height: 138px;
	background-color: var(--dark-gray-color);
	transform: translateX(-50%);
	left: 50%;
	top: -30px;
}
#sec_aims .sec_ttl{
	color: var(--dark-gray-color);
	font-size: 4.6rem;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.06em;
	line-height: 2;
	margin-bottom: 84px;
}
#sec_aims .sec_ttl span{
	color: var(--main-color);
}

#sec_aims .media_overlap_list{
	max-width: 1585px;
	margin: 0 auto;
}

#sec_aims .media_overlap_list_item{
	display: flex;
	/* flex-direction: reverse; */
	justify-content: flex-end;
	/* align-items: flex-end; */
	margin-bottom: 130px;
	margin-right: -65px;
}

#sec_aims .media_overlap_list_item:last-of-type{
	margin-bottom: 0;
}

#sec_aims .media_overlap_list_item .detail{
	color: #fff;
	line-height: 2.25;
	letter-spacing: 0.08em;
}
#sec_aims .media_overlap_list_item .item_img{
	position: relative;
	margin-right: -114px;
	margin-bottom: 40px;
	margin-top: 86px;
	z-index: 1;
	padding-left: 124px;
}
#sec_aims .media_overlap_list_item .item_img a{
	pointer-events: none
}

#sec_aims .media_overlap_list_item .item_body{
	width: 59.31%;/* 940/1585 */
	max-width: 940px;
	min-height: 620px;
	background-image:url(../img/top/top-green_bg.jpg) ;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 98px 80px 98px 178px;
	z-index: 0;
}

/* reverse */
#sec_aims .media_overlap_list_item:nth-of-type(2n){
	flex-direction: row-reverse;
	margin-left: -65px;
}

#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_img{
	margin-left: -80px;
	margin-top: 56px;
	z-index: 1;
	padding-left: 0;
	padding-right: 90px;
}

#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_body{
	background-image:url(../img/top/top-blue_bg.jpg) ;
	padding: 70px 178px 98px 80px;
	z-index: 0;
}

@media screen and (max-width: 1715px){
	#sec_aims .media_overlap_list{
		width: 100%;
		max-width: none;
		padding: 0 10px;
	}
	#sec_aims .media_overlap_list_item{
		margin-right: 0;
	}

	#sec_aims .media_overlap_list_item:nth-of-type(2n){
		margin-left: 0;
	}
	#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_img{
		margin-right: 0;
	}
}


#sec_aims .detail{
	margin-bottom: 84px;
}

#sec_aims .media_overlap_list .ttl{
	position: absolute;
	color: #000;
	font-size: 3.2rem;
	line-height: 2;
	letter-spacing: 0.12em;
	writing-mode: vertical-rl;
	top: -108px;
	left: 4px;
	z-index: 10;
}

#sec_aims .media_overlap_list_item .item_img::after{
	position:absolute;
	content: url(../img/top/Freelance.png);
	top: -100px;
	left: 250px;
	z-index: 10;
}


/*reverse*/
#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_img:after{
	position:absolute;
	content: url(../img/top/Employee.png);
	top: -110px;
	left: auto;
	right: 132px;
	z-index: 10;
}
#sec_aims .media_overlap_list_item:nth-of-type(2n) .ttl{
	left: auto;
	right: -7px;
	top:-64px;
	line-height: 2.0;
}

@media screen and (max-width: 1715px){
	#sec_aims .media_overlap_list_item:nth-of-type(2n) .ttl{
		right: 14px;
	}
}

@media screen and (max-width: 1200px){
	#sec_aims .media_overlap_list_item .item_body,
	#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_body{
		margin-top: -100px;
		width: 90%;
		padding: 140px 60px 80px;
		min-height: auto;
		max-width: 980px;
	}
	#sec_aims .media_overlap_list_item,
	#sec_aims .media_overlap_list_item:nth-of-type(2n){
		flex-direction: column;
		align-items: center;
	}
	#sec_aims .media_overlap_list_item .item_img,
	#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_img{
		width: 80%;
		margin-bottom: 0;
		margin-right: auto;
		margin-left: auto;
		text-align: left;
	}
	#sec_aims .media_overlap_list_item:nth-of-type(2n) .item_img{
		text-align: right;
	}
	#sec_aims .media_overlap_list_item:nth-of-type(2n) .ttl{
		right: -6px;
	}
}

/*sec_data
--------------------------------------------*/
#sec_data{
	padding:285px 0 215px;
}
#sec_data .sec_ttl{
	position: relative;
	font-size: 4rem;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-align: center;
	margin-bottom: 200px;
}
#sec_data .sec_ttl::before{
	position: absolute;
	content: url(../img/top/WorkStyle.png);
	transform: translateX(-50%);
	left: 50%;
	top:-175px;
}
#sec_data .sec_ttl::after{
	position: absolute;
	content: "";
	width: 100px;
	height: 4px;
	background-color: var(--main-color);
	transform: translateX(-50%);
	left: 50%;
	bottom:-42px;
}
#sec_data .data_box{
	position: relative;
	border-bottom: 1px solid var(--dark-gray-color);
	padding: 0 20px 20px;
}
#sec_data .data_ttl{
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	font-weight: 500;
	font-size: 2.4rem;
	letter-spacing: 0.06em;
	background-color: var(--dark-gray-color);
	text-align: center;
	padding: 1px 18px;
	min-width: 115px;
}
#sec_data .data_ttl3{
	position: relative;
	font-size: 4rem;
	letter-spacing: 0.04em;
	color: var(--dark-gray-color);
	text-align: center;
	z-index: 0;
}
#sec_data .data_ttl3::before{
	position: absolute;
	content: url(../img/top/Staff.png);
	transform: translateX(-50%);
	left: calc(50% - 186px);
	top: -25px;
	z-index: -1;
}
#sec_data .data_wrapper{
	display: flex;
	/* border-top: 1px solid var(--dark-gray-color); */
	/* border-bottom: 1px solid var(--dark-gray-color); */
	flex-wrap: wrap;
}
#sec_data .data_item{
	position: relative;
	text-align: center;
}
#sec_data .icon_img{
	height: 74px;
	text-align: center;
	margin-top: 86px;
}
#sec_data .data_ttl2{
	font-size: 2.0rem;
	letter-spacing: 0.06em;
	line-height: 1;
	font-weight: 500;
	margin-bottom: 10px;
}
#sec_data .num{
	color:var(--main-color2);
	font-size: 4.6rem;
	line-height: 1;
}
#sec_data .num_mod{
	font-size: 3.0rem;
	vertical-align: 0px;
}
#sec_data .data_ttl4{
	font-size: 3.4rem;
	font-weight: 500;
	line-height: 70px;
	letter-spacing: 0.06em;
	text-align: center;
	color: #fff;
	width: 100%;
	height: 70px;
	background-color: var(--main-color2);
	margin-bottom: 68px;
}
#sec_data .r-border:after{
	position: absolute;
	content: "";
	width: 1px;
	height: 200px;
	background-color: rgba(0, 0, 0, .2);
	transform: translateY(-50%);
	right: 0;
	top: 50%;
}
#sec_data .note{
	margin-top: 44px;
}

/*overall_data（data01）*/
#sec_data .overall_data{
	position: relative;
	padding:0 0 20px;
	margin-bottom: 82px;
	z-index: 0;
}
#sec_data .overall_data:before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100px;
	background-color: #fff;
	z-index: 1;
}
#sec_data .overall_data .data01{
	max-width: 1310px;
	margin: 0 auto;
	background: #fff !important;
	padding: 25px 160px 50px 63px;
	margin-bottom: 60px;
	z-index: 2;
	border-bottom: none;
}

@media screen and (max-width: 1450px){
	#sec_data .overall_data .data01{
		margin: 0 80px 60px;
		padding: 25px 63px 50px 63px;
	}
}

#sec_data .data01 .data_ttl{
	font-size: 2.6rem;
	padding: 4px 35px;
}
#sec_data .data01 .data_body{
	display: flex;
	align-items: center;
	gap: 80px;
}
#sec_data .data01 .data_img{
	padding-top: 74px;
	width: 455px;
}
#sec_data .data01 .data_detail{
	flex: 1;
}
#sec_data .data01 .data_img img{
	width: 455px;
	height: auto;
}
#sec_data .data01 .data_ttl2{
	font-size: 3.6rem;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.7;
}
#sec_data .data01 .data_txt{
	letter-spacing: 0.06em;
	line-height: 2.25;
	margin-bottom: 30px;
}
#sec_data .data01 .data_txt:last-of-type{
	margin-bottom: 0;
}
@media screen and (max-width: 1200px){
	#sec_data .overall_data .data01{
		padding: 25px 60px 50px 60px;
	}
	#sec_data .data01 .data_body{
		flex-direction: column;
		gap: 30px;
	}
	#sec_data .data01 .data_txt{
		margin-bottom: 0;
	}
}


/*all staff（data02、data03）*/
#sec_data .all-staff_data{
	margin-bottom: 82px;
}
#sec_data .all-staff_data .data_ttl3{
	margin-bottom: 55px;
}
#sec_data .all-staff_data .data_box{
	width: 50%;
	height: 393px;
}
#sec_data .all-staff_data .data02{
	display: flex;
	border-right: 1px solid var(--dark-gray-color);
}
#sec_data .all-staff_data .data02 .data_item{
	width: 50%;
}
#sec_data .all-staff_data .data02 .icon_img{
	margin-top: 114px;
}
#sec_data .all-staff_data .data02 .icon_img{
	height: 112px;
}
	
#sec_data .all-staff_data .data02 .data_ttl2{
	font-size: 2.3rem;
	margin-bottom: 20px;
}
#sec_data .all-staff_data .data02 .num{
	color:var(--main-color);
	font-size: 5.8rem;
}
#sec_data .all-staff_data .data02 .num_mod{
	color:var(--main-color);
	font-size: 3.8rem;
	vertical-align: 0px;
}
#sec_data .all-staff_data .data03{
	text-align: center;
}
#sec_data .all-staff_data .data03 img{
	padding-top: 20px;
	width: 285px;
	height: auto;
}
#sec_data .all-staff_data .data02,
#sec_data .all-staff_data .data03{
	border-top: 1px solid var(--dark-gray-color);
}
@media screen and (max-width: 1200px){
	#sec_data .all-staff_data{
		width: 90%;
		margin:0 auto 82px;
	}
}

/*freelance_data（data04〜data09）*/
#sec_data .freelance_data{
	margin-bottom: 117px;
}
#sec_data .freelance_data .data04,
#sec_data .freelance_data .data05{
	height: 300px;
	border-top: 1px solid var(--dark-gray-color);
}
#sec_data .freelance_data .data04{
	width: 33.5%;
}
#sec_data .freelance_data .data04 .icon_img{
	margin-bottom: 30px;
}
#sec_data .freelance_data .data05{
	width: 66.5%;
	display: flex;
}
#sec_data .freelance_data .data05 .data_item{
	width: 33.3333%;
	/* height: 300px; */
}
#sec_data .freelance_data .data06,
#sec_data .freelance_data .data07{
	height: 500px;
	width: 50%;
}
#sec_data .freelance_data .data04,
#sec_data .freelance_data .data06,
#sec_data .freelance_data .data08{
	border-right: 1px solid var(--dark-gray-color);
}
#sec_data .freelance_data .data08,
#sec_data .freelance_data .data09{
	border-bottom: none;
	height: auto;
	width: 50%;
}
#sec_data .freelance_data .data08 .note,
#sec_data .freelance_data .data09 .note{
	margin-bottom: 30px;
}
#sec_data .freelance_data .data_bar{
	margin-top: 97px;
	text-align: center;
}
#sec_data .freelance_data .data_pie{
	margin-top: 43px;
	text-align: center;
}
#sec_data .freelance_data .data09 .data_pie{
	margin-top: 30px;
} 
#sec_data .freelance_data .data09 .note_txt{
	font-weight: 500;
	color: #a0a0a0;
	margin-top: 10px;
}
@media screen and (max-width: 1200px){
	#sec_data .freelance_data{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width: 980px){
	#sec_data .freelance_data .data04,
	#sec_data .freelance_data .data05{
		width: 50%;
	}
	#sec_data .freelance_data .data06,
	#sec_data .freelance_data .data07{
		height: auto;
		padding-bottom: 60px;
	}
	#sec_data .freelance_data .data08,
	#sec_data .freelance_data .data09{
		width: 100%;
	}
	#sec_data .freelance_data .data08{
		border-right: none;
	}
	#sec_data .freelance_data .data09{
		border-top: 1px solid var(--dark-gray-color);
	}
}


/*employee_data_data（data10〜data16）*/
#sec_data .employee_data .data_ttl4 {
	background-color: var(--main-color3);
}
#sec_data .employee_data .num{
	color:var(--main-color3);
	font-size: 4.6rem;
	line-height: 1;
}
#sec_data .employee_data .data10 {
	width: 33.5%;
}
#sec_data .employee_data .data10 .icon_img{
	margin-bottom: 30px;
}
#sec_data .employee_data .data11 {
	width: 66.5%;
	display: flex;
}
#sec_data .employee_data .data11 .data_item{
	width: 33.3333%;
}
#sec_data .employee_data .data10,
#sec_data .employee_data .data11{
	height: 300px;
	border-top: 1px solid var(--dark-gray-color);
}
#sec_data .employee_data .data12{
	width: 47.45%;
}
#sec_data .employee_data .data13{
	width: 52.55%;
}
#sec_data .employee_data .data10,
#sec_data .employee_data .data12,
#sec_data .employee_data .data15{
	border-right: 1px solid var(--dark-gray-color);
}
#sec_data .employee_data .data12 .data_bar{
	margin-top: 73px;
	text-align: center;
}
#sec_data .employee_data .data13 .data_bar{
	margin-top: 100px;
	text-align: center;
}
#sec_data .employee_data .data12,
#sec_data .employee_data .data13{
	height: 542px;
}
#sec_data .employee_data .data14{
	width: 52.55%;
	height: 646px;
}
#sec_data .employee_data .data14 .data_pie{
	margin-top: 70px;
	text-align: center;
}
#sec_data .employee_data .data14 .note_txt{
	font-weight: 500;
	color: #a0a0a0;
	margin-top: 10px;
}
#sec_data .employee_data .data15{
	display: flex;
	width: 39.33%;
	border-bottom: none;
}

#sec_data .employee_data .data16{
	width: 60.67%;
	border-bottom: none;
}

#sec_data .employee_data .data17{
	width: 47.45%;
	border-right:1px solid var(--dark-gray-color) ;
}
#sec_data .employee_data .data17 .data_pie{
	margin-top: 70px;
	text-align: center;
}
#sec_data .employee_data .data15,
#sec_data .employee_data .data16{
	height: 413px;
	text-align: center;
}
#sec_data .employee_data .data15 .data_item{
	width: 58.7%;
}
#sec_data .employee_data .data15 .data_item:first-of-type{
	width: 41.3%;
}
#sec_data .data15 .r-border:after{
	height: 100px;
}
#sec_data .employee_data .data16 .data_bar{
	margin-top: 92px;
}
#sec_data .employee_data .data15 .note_txt{
	font-size: 1.2rem;
	font-weight: 300;
	margin-top: 16px;
}
@media screen and (max-width: 1200px){
	#sec_data .employee_data{
		width: 90%;
		margin:0 auto;
	}
}
@media screen and (max-width: 980px){
	#sec_data .employee_data .data10{
		width: 47.45%;
	}
	#sec_data .employee_data .data11{
		width: 52.55%;
	}
	#sec_data .employee_data .data12,
	#sec_data .employee_data .data13{
		height: auto;
		padding-bottom: 60px;
	}
	#sec_data .employee_data .data17{
		width: 100%;
		height: auto;
		border-right: none;
	}
	#sec_data .employee_data .data14{
		width: 100%;
		height: auto;
	}
	#sec_data .employee_data .data17 .note,
	#sec_data .employee_data .data14 .note{
		margin-bottom: 30px;
	}
	#sec_data .employee_data .data15,
	#sec_data .employee_data .data16{
		width: 100%;
		height: 360px;
		border-top: 1px solid var(--dark-gray-color);
	}
	#sec_data .employee_data .data15 .data_item{
		width: 52.55%;
	}
	#sec_data .employee_data .data15 .data_item:first-of-type{
		width: 47.45%;
	}
	#sec_data .employee_data .data15{
		border-right: none;
	}
	#sec_data .employee_data .data15 br:nth-last-of-type(2){
		display: none;
	}
}



/*sec_company
--------------------------------------------*/
#sec_company{
	padding-top: 125px;
	margin-bottom: 160px;
}
#sec_company .sec_ttl{
	font-size: 3rem;
	letter-spacing: 0.06em;
	font-weight: 400;
	margin-bottom: 10px;
}
#sec_company .recruitment-pitch{
	margin-bottom: 80px;
}
@media screen and (max-width: 1200px){
	.sec_company_inner{
		width: 90%;
	}
}





/*sec_news
--------------------------------------------*/
#sec_news{
	background: var(--light-gray-color-bg);
	padding: 80px 0 140px;
}

#sec_news .news-list{
	padding-top: 60px;
}

#sec_news .news-item{
	background: #fff;
	padding: 20px 30px;
	margin-bottom: 30px;
}

#sec_news .news-item:last-of-type{
	margin-bottom: 0;
}

#sec_news .news-item .article_inner{
	display: flex;
	gap: 30px;
}

#sec_news .news-item .date{
	color: var(--main-color);
}

#sec_news .news-item .ttl{
	font-size: 1.6rem;
}

#sec_news .more_btn{
	max-width: 300px;
	text-align: center;
	margin: 60px auto 0;
}


