/* base */
#scCrossPiece,
.cp_SocialMedia,
.cm_BreadcrumbNav,
.cp_SocialMedia_inner,
.cp_PageTitle,
.cp_pageTop,
.cp_pageTop.show,
footer{
	opacity: 0;
	display: none;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,header,footer,nav,a,img,figure,address,span,strong,small,aside,main,em,i,article,section{
	position: relative;
	/* display: block; */
	margin:0;
	padding:0;
	box-sizing: border-box;
	font-style: normal;
	font-weight: inherit;
}


table{
	border-collapse:collapse;border-spacing:0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;	
}

th,td{
	position: relative;
	margin:0;
	padding:0;
	box-sizing: border-box;
	font-style: normal;
	font-weight: inherit;
}

figure{
	display: block;
	margin: 0;
	line-height: 0;
}

main{
	display: block;
}

:root{
  
  --komatsu-blue: #140a9a;
  --komatsu-lightblue: #c4c2e6;
  --komatsu-yellow: #F6C952;
  --komatsu-lightyellow: #fcefcb;
  --komatsu-gray: #A6ABAE;
  --komatsu-middlegray: #D2D2D2;
  --komatsu-lightgray: #F6F6F6;
}

.recruit-content_header{
	/* margin: 100px auto 0; */
	margin-top: 100px;
}

.recruit-content_header.cms{
	/* margin-top: calc(100px - 89px) ; */
}

.recruit-content_header.prv{
	margin-top: 0;
}

@media screen and (max-width: 474px) {
	
}

.recruit-content_header.prv{
	margin-top: 0;
}

.recruit-content{
    max-width: var(--cp-max-width);
    line-height: 1.6;
    font-size: 15px;
	overflow: hidden;
	font-weight: 400;
	margin-left: auto;
	margin-right: auto;
}

.recruit-content a{
	display: inline-block;
	text-decoration: none;
	box-sizing: border-box;
	color: #000;
}

.recruit-content a.txtlink{
    transition: all 500ms 0s ease;
    display: inline;
    width: auto;
    color: var(--komatsu-blue);
    text-decoration: underline;
	padding: 0px 3px;
}

.recruit-content a.txtlink:hover{
	background-color: var(--komatsu-yellow);
	color: var(--komatsu-blue);
	text-decoration: none;
}


.recruit-content a[href*=".pdf"]::after {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-top: -2px;
  margin-left: 3px;
  background: url(/-/media/HOME/recruit/new/images/ico_pdf.png) no-repeat;
  background-size: auto;
  background-size: cover;
  vertical-align: middle;
  content: " ";
}


.recruit-content i{
	display: inline-block;
}

.recruit-content img{
	max-width: 100%;
}

@media screen and (max-width: 1023px){

	.recruit-content_header{
		/* margin-top: 9.765625vw; */
		margin-top: 50px;
	}

}


@media screen and (max-width: 767px) {
	.recruit-content{
		
		font-size: 14px;
	}
}

.recruit-content .bg_blue{
	background-color: var(--komatsu-blue);
}

.recruit-content .bg_lightblue{
	background-color: var(--komatsu-lightblue);
}

.recruit-content .bg_gray{
	background-color: var(--komatsu-gray);
}

.recruit-content .bg_middlegray{
	background-color: var(--komatsu-middlegray);
}

.recruit-content .bg_lightgray{
	background-color: var(--komatsu-lightgray);
}

.recruit-content .bg_yellow{
	background-color: var(--komatsu-yellow);
}

.recruit-content .bg_white{
	background-color: #FFF;
}

.recruit-content .bg_gra_u{
	background: #0E0855;
	background: linear-gradient(0deg, rgba(14, 8, 85, 1) 0%, rgba(21, 9, 154, 1) 100%);
}

.recruit-content .bg_gra_d{
	background: #0E0855;
	background: linear-gradient(180deg, rgba(14, 8, 85, 1) 0%, rgba(21, 9, 154, 1) 100%);
}







.recruit-content section{
	overflow: hidden;
}

.recruit-content .flex{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.recruit-content .flex_reverse{
	flex-direction: row-reverse;
}

.recruit-content .flex_center{
	flex-wrap: wrap;
	align-content: center;
}

.inner_xlarge{
	width: 80%;
	max-width: 1180px;
	margin: 0 auto;
}

.recruit-content .inner_big{
	width: calc(100% - 110px) ;
	margin: 0 auto;
	z-index: 7;
}

.recruit-content .inner_big.inner_sp_only{
	width: 100%;
}

@media screen and (max-width: 1440px){
	.recruit-content .inner_big {
		width: 92.6vw;
	}
}

@media screen and (max-width: 1023px){
	.recruit-content .inner_big {
		width: calc(100% - 40px) ;
	}
}

@media screen and (max-width: 767px){

	.recruit-content .inner_big.inner_sp_only{
		width: calc(100% - 40px) ;
	}

	.recruit-content .inner_big.inner_sp_no{
		width: 100%;
	}
}

@media screen and (max-width: 480px){
	.recruit-content .inner_big {
		width: calc(100% - 30px) ;
	}

	.recruit-content .inner_big.inner_sp_only{
		width: calc(100% - 30px) ;
	}
}



.recruit-content .inner_middle{
	width: 92.48120301%;
	margin: 0 auto;
}

.recruit-content .inner_middle.inner_sp_only{
	width: 100%;
}

@media screen and (max-width: 767px){
	.recruit-content .inner_middle{
		width: 90%;
		margin: 0 auto;
	}

	.recruit-content .inner_middle.inner_sp_only{
		width: 90%;
	}

	.recruit-content .inner_middle.inner_sp_no{
		width: 100%;
	}

}

@media screen and (max-width: 480px){
	.recruit-content .inner_middle{
		width: 88%;
		margin: 0 auto;
	}

	.recruit-content .inner_middle.inner_sp_only{
		width: 88%;
	}
}



.recruit-content .inner_small{
	width: 87.21804511%;
	margin: 0 auto;
}

.recruit-content .inner_small.inner_sp_only{
	width: 100%;
}

@media screen and (max-width: 1440px){
	.recruit-content .inner_small{
		width: 88%;
	}
}

@media screen and (max-width: 1023px){
	.recruit-content .inner_small{
		width: 89.5%;
	}
}

@media screen and (max-width: 767px){

	.recruit-content .inner_small.inner_sp_only{
		width: 89.5%;
	}

	.recruit-content .inner_small.inner_sp_no{
		width: 100%;
	}

}


@media screen and (max-width: 480px){
	.recruit-content .inner_small{
		width: 94%;
	}

	.recruit-content .inner_small.inner_sp_only{
		width: 90%;
	}
}

.recruit-content .inner_1000{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}

.recruit-content .inner_1000_max{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}


.recruit-content .inner_1100{
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
}


.recruit-content .inner_1160{
	width: 100%;
	max-width: 1160px;
	margin: 0 auto;
}








.recruit-content .pr-nbsp{
	padding-right: .5em;
}



.recruit-content .rhombus_r{
	transform-origin: right top;
	transform: skewX(35deg);
}

.recruit-content .rhombus_l{
	transform-origin: left bottom;
	transform: skewX(-35deg);
}

.recruit-content .arrow_r::before,
.recruit-content .arrow_u::before,
.recruit-content .arrow_d::before{
	content: "";
	position: absolute;
	display: block;
	width: 7px;
	height: 7px;
	border-top: var(--komatsu-blue) solid 1px;
    border-right: var(--komatsu-blue) solid 1px;
	transform: rotate(45deg);
	top: calc(50% - 4px) ;
}

.recruit-content .arrow_u::before{
	transform: rotate(-45deg);
}

.recruit-content .arrow_d::before{
	transform: rotate(135deg);
}


.recruit-content .bt_more{
    display: flex;
    flex-wrap: wrap;
	align-content: center;
    width: 240px;
    height: 46px;
    border-radius: 23px;
    background-color: var(--komatsu-blue);
    color: #FFF;
    z-index: 5;
    padding-left: 20px;
	cursor: pointer;
}

.recruit-content .bt_more a{
	color: #FFF;
}

.recruit-content .bt_more.bt_long{
	width: 100%;
}

.recruit-content a.bt_size_360{
	width: 100%;
	max-width: 360px;
}

.recruit-content a .bt_more{
	transition: all 500ms 0s ease;
}

.recruit-content a:hover .bt_more{
	opacity: .8;
}

.recruit-content .bt_more::before{
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 8px;
    right: 20px;
    border-color: #FFF;
	z-index: 16;
}

.recruit-content .bt_more.bt_more_w,
.recruit-content .bt_more.bt_more_w a{
	background-color: #FFF;
    color: var(--komatsu-blue);
}

.recruit-content .bt_more.bt_more_w::before{
	border-color: var(--komatsu-blue);
}

.recruit-content .bt_more.bt_more_smallonly{
	width: 200px;
}

.recruit-content .bt_more.bt_more_smallonly{
	width: 60px;
	height: 60px;
	border-radius: 30px;
}

.recruit-content .bt_more.bt_more_smallonly span{
	display: none;
}

.recruit-content .bt_more.bt_more_smallonly::before{
	right: 46%;
}


@media screen and (max-width: 540px) {

	.recruit-content .bt_more{
		width: 200px;
	}

    .recruit-content .bt_more.bt_more_small{
        width: 60px;
        height: 60px;
        border-radius: 30px;
    }

    .recruit-content .bt_more.bt_more_small span{
        display: none;
    }

    .recruit-content .bt_more.bt_more_small::before{
        right: 46%;
    }

}

@media screen and (max-width: 360px) {

    .recruit-content .bt_more.bt_more_small,
	.recruit-content .bt_more.bt_more_smallonly{
        width: 50px;
        height: 50px;
    }

}



.recruit-content .bt_plus{
	transition: all 500ms 0s ease;
    display: flex;
    flex-wrap: wrap;
	align-content: center;
    width: 240px;
    height: 46px;
    border-radius: 23px;
    background-color: var(--komatsu-middlegray);
    color: var(--komatsu-blue);
    z-index: 5;
    padding-left: 20px;
	cursor: pointer;
}

.recruit-content .bt_plus.bt_plus_b{
	background-color: var(--komatsu-blue);
    color: #FFF;
}

.recruit-content .bt_plus:hover{
	opacity: .8;
}

.recruit-content .bt_plus::before,
.recruit-content .bt_plus::after{
	transition: all 500ms 0s ease;
	content: "";
    position: absolute;
    display: block;
    width: 12px;
    height: 2px;
    right: 20px;
	top: 50%;
	transform: translateY(-50%);
    background-color: var(--komatsu-blue);
	z-index: 10;
}


.recruit-content .bt_plus.bt_plus_b::before,
.recruit-content .bt_plus.bt_plus_b::after{
	background-color: #FFF;
}

.recruit-content .bt_plus::after{
	transform: translateY(-50%) rotate(90deg);
}

.recruit-content .bt_plus:hover{
	opacity: .7;
}

.recruit-content .bt_plus.active::before{
	transform: translateY(-50%) rotate(720deg);
}

.recruit-content .bt_plus.active::after{
	transform: translateY(-50%) rotate(720deg);
}




.recruit-content .bt_long{
	transition: all 500ms 0s ease;
    display: flex;
    flex-wrap: wrap;
	align-content: center;
    width: 100%;
    height: 46px;
    border-radius: 23px;
    background-color: var(--komatsu-blue);
    color: #FFF;
    z-index: 5;
    padding-left: 20px;
	cursor: pointer;
}

.recruit-content .bt_long.bg_yellow{
	background-color: var(--komatsu-yellow);
	color: var(--komatsu-blue);
}

.recruit-content .bt_long.bg_yellow.arrow_r::before{
	border-color: var(--komatsu-blue);
}


.recruit-content a:hover .bt_long{
	opacity: .8;
}

.recruit-content .bt_long::before{
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 8px;
    right: 20px;
    border-color: #FFF;
}











.recruit-content .notetxt,
.recruit-content .notebox .note{
    display: inline-block;
    padding-left: 1em;
    font-size: 90%;
	line-height: 1.4;
	padding-bottom: 2px;
}

.recruit-content .notebox .note.note_num{
	padding-left: 2em;
}

.recruit-content .notetxt::before,
.recruit-content .notebox .note::before{
    content: "※";
    position: absolute;
    left: 0;
}

.recruit-content .notebox .note.note_num::before{
	content: "※"attr(data-note);
}


.recruit-content #recruit_Top{
	display: block;
	height: 0;
	padding-top: 100px; /* ヘッダーの高さを入力 */
    margin-top: -100px; /* ヘッダーの高さを入力 */
}


.recruit-content #recruit_pageTop{
	z-index: 40;
	position: fixed;
	right: 10px;
	bottom: 80px;
	opacity: 0;
	-webkit-transition: opacity 0.4s;
	transition: opacity 0.4s;
}

.recruit-content #recruit_pageTop.show{
	opacity: 1;
}

.recruit-content #recruit_pageTop img {
	width: 64px;
	height: 64px;
}


@media screen and (max-width: 540px) {
	.recruit-content #recruit_pageTop{
		bottom: 110px;
	}
}



.recruit-content a .hover_img{
	overflow: hidden;
	z-index: 1;
	line-height: 0;
}

.recruit-content a .hover_img img{
	transition: all 500ms 0s ease;
	
}

.recruit-content a:hover .hover_img img{
	transform: scale(1.1);
}

.recruit-content .recurit_padding_tbset_80{
	padding: 80px 0px;
}

.recruit-content .recurit_padding_bottom_80{
	padding: 0px 0px 80px;
}

.recruit-content .recurit_padding_tbset_100{
	padding: 100px 0px;
}

@media screen and (max-width: 1023px){
	.recruit-content .recurit_padding_tbset_80{
		padding: 7.82013685vw 0px;
	}

	.recruit-content .recurit_padding_bottom_80{
		padding: 0px 0px 7.82013685vw;
	}

	.recruit-content .recurit_padding_tbset_100{
		padding: 9.77517107vw 0px;
	}
}

@media screen and (max-width: 767px){
	.recruit-content .recurit_padding_tbset_80{
		padding: 40px 0px;
	}

	.recruit-content .recurit_padding_tbset_100{
		padding: 50px 0px;
	}

	.recruit-content .recurit_padding_bottom_80{
		padding: 0px 0px 40px;
	}
}
/* base */





/* basic *********************************/

/* main */

.recruit-content main.main_basic{
	padding: 130px 0px 0px;
	color: #FFF;
	background-size: cover;
	height: 410px;
}

.recruit-content main.main_basic h1{
	font-size: 32px;
	font-weight: 500;
	line-height: 1;
}

.recruit-content main.main_basic h2{
	font-size: 48px;
	font-weight: 500;
}

.recruit-content main.main_basic h2 i,
.recruit-content main.main_basic h2 em{
	display: inline-block;
}

.recruit-content main.main_basic h2 span{
	display: inline-block;
	font-size: 90%;
}

.recruit-content main.main_basic small{
	display: inline-block;
	font-size: 18px;
	padding-top: 7px;
	line-height: 1;
	
}

.recruit-content main.main_basic.main_mb{
	margin-bottom: 60px;
}


@media screen and (max-width: 767px) {

	.recruit-content main.main_basic{
		padding: 0px 0px 0px;
		color: #FFF;
		background-size: cover;
		height: auto;
	}

	.recruit-content main.main_basic .inner_middle{
		width: 95%;
		padding-top: 60%;
		min-height: 180px;
	}

	.recruit-content main.main_basic #titlebox{
		position: absolute;
		bottom: 30px;
		bottom: calc(3.91134289vw + 5px) ;
	}
	

	.recruit-content main.main_basic h1{
		font-size: 4.5vw;
		font-weight: 500;
	}

	.recruit-content main.main_basic h2{
		font-size: 6.2vw;
		font-weight: 500;
	}

	.recruit-content main.main_basic small{
		font-size: 16px;
		padding-top: 1.30378096vw;
	}

	.recruit-content main.main_basic.main_mb{
		margin-bottom: 50px;
	}
}

@media screen and (max-width: 480px) {

	.recruit-content main.main_basic small{
		font-size: 14px;
		padding-top: 5px;
	}
	
	.recruit-content main.main_basic h1{
		font-size: 19px;
		font-weight: 500;
	}

	.recruit-content main.main_basic h2{
		font-size: 28px;
		font-weight: 500;
		line-height: 1.2;
		padding-top: 5px;
	}
}

/* main */

/* firstbox */

.recruit-content .firstbox{
    padding-top: 60px;
}

.recruit-content .firstboxbottom{
	padding-bottom: 80px;
}

.recruit-content .firstboxbottom_s{
	padding-bottom: 60px;
}

.recruit-content .firstbox #first_titlebox{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

.recruit-content .firstbox #first_titlebox.titlebox_max{
	max-width: none;
}

.recruit-content .firstbox #first_titlebox h2{
    color: var(--komatsu-blue);
	font-size: 30px;
	font-weight: 500;
	line-height: 1.4;
	padding-bottom: 30px;
	text-align:justify;
    text-justify:distribute;
}

.recruit-content .firstbox #first_titlebox p{
    line-height: 2;
    text-align:justify;
    text-justify:distribute;
}

.recruit-content .firstbox #first_titlebox.first_titlebox_center{
	text-align: center;
}


@media screen and (max-width: 767px){
	.recruit-content .firstbox{
        padding-top: 50px;
    }

	.recruit-content .firstboxbottom,
	.recruit-content .firstboxbottom_s{
		padding-bottom: 50px;
	}

	.recruit-content .firstbox #first_titlebox h2{
		font-size: 26px;
		padding-bottom: 25px;
	}
}

/* @media screen and (max-width: 480px){
	
	.recruit-content .firstbox #first_titlebox h2{
		font-size: 18px;
	}
} */


/* firstbox */


/* ブロックの上下padding （三角形表示用スペース） */


.recruit-content .ourpdtop{
    padding-top: 80px;
}

.recruit-content .ourpdbottom{
    padding-bottom: 80px;
}


@media screen and (max-width: 1023px) {
    .recruit-content .ourpdtop{
        padding-top: 7.82013685vw;
    }

    .recruit-content .ourpdbottom{
        padding-bottom: 7.82013685vw;
    }
}

@media screen and (max-width: 767px){

    .recruit-content .ourpdtop{
        padding-top: 40px;
    }

    .recruit-content .ourpdbottom{
        padding-bottom: 40px;
    }
}


/* ブロックの上下padding （三角形表示用スペース） */


/* sub-bar */

.recruit-content .sub-bar{
	font-size: 18px;
    background-color: var(--komatsu-blue);
    color: #FFF;
    padding: 13px 20px 15px;
    line-height: 1;
}

@media screen and (max-width: 767px){
	.recruit-content .sub-bar{
		padding: 10px 20px 12px;
	}
}

/* sub-bar */

/* scroll bar */

.recruit-content .scroll_bar{
    overflow-x: auto;
}

@-moz-document url-prefix() {
    .recruit-content .scroll_bar{
        overflow-x: auto;
		scrollbar-color: var(--komatsu-gray) var(--komatsu-lightgray);
        border: none;
        border-radius:0px;
    }

	.recruit-content .scroll_bar.scroll_bar_blue{
        scrollbar-color: var(--komatsu-blue) var(--komatsu-lightgray);
    }

	.recruit-content .scroll_bar.scroll_bar_white{
        scrollbar-color: #FFF rgba(255,255,255,.2);
    }
}

.recruit-content .scroll_bar::-webkit-scrollbar{
    scrollbar-width: thin;
	scrollbar-color: var(--komatsu-gray);
    border-radius:0px;
    border: none;
}

.recruit-content .scroll_bar.scroll_bar_blue::-webkit-scrollbar{
	scrollbar-color: var(--komatsu-blue);
}

.recruit-content .scroll_bar.scroll_bar_white::-webkit-scrollbar{
	scrollbar-color: #FFF;
}



.recruit-content .scroll_bar::-webkit-scrollbar-thumb {
	background-color: var(--komatsu-lightgray);
    border-radius: 0px;
    border: none;
}

.recruit-content .scroll_bar.scroll_bar_blue::-webkit-scrollbar-thumb {
	background-color: var(--komatsu-lightgray);
	background-color: var(--komatsu-blue);
}

.recruit-content .scroll_bar.scroll_bar_white::-webkit-scrollbar-thumb {
    background-color: rgba(255,255,255,.1);
}


.recruit-content .scroll_bar::-webkit-scrollbar-track {
    background-color: var(--komatsu-lightgray);
}

.recruit-content .scroll_bar.scroll_bar_blue::-webkit-scrollbar-track {
    background-color: var(--komatsu-middlegray);
}

.recruit-content .scroll_bar.scroll_bar_white::-webkit-scrollbar-track {
    background-color: rgba(255,255,255,.1);
} 

/* scroll bar */


/* title_bar */

.recruit-content h2.title_bar{
    font-size: 28px;
    line-height: 1.6;
    font-weight: 500;
    color: var(--komatsu-blue);
    padding-bottom: 25px;
	text-align: center;
}

.recruit-content h2.title_bar span{
	display: inline-block;
}

.recruit-content h2.title_bar:not(.recruit-content .no_line)::before{
    content: "";
    position: absolute;
    display: block;
    width: 50px;
    height: 5px;
    bottom: 0;
	left: calc(50% - 25px) ;
    background-color: var(--komatsu-blue);
}

.recruit-content h2.title_bar.txt_left{
	text-align: left;
}

.recruit-content h2.title_bar.txt_left::before{
	left: 0;
}

@media screen and (max-width: 767px) {

    .recruit-content h2.title_bar{
        font-size: 24px;
		padding-bottom: 20px;
    }

	.recruit-content h2.title_bar::before{
    	width: 40px;
		left: calc(50% - 20px) ;
	}
}


/* title_bar */


/* number_list */

.recruit-content .number_list li{
	width: 31.5%;
	display: flex;
  	flex-direction: column;
}

.recruit-content .number_list li h4{
	background-color: var(--komatsu-yellow);
	font-size: 18px;
	text-align: center;
	padding: 5px 10px;
	line-height: 1.4;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-content: center;
	flex-grow: 1;
}

.recruit-content .number_list li h4 span{
	display: inline-block;
}

.recruit-content .number_list li div figure img{
	max-height: 80px;
	margin: 0 auto;
	padding: 5px 0px 15px;
}

.recruit-content .number_list li div.twolines figure img{
	max-height: 102px;
}

@media screen and (max-width: 1023px) {

	.recruit-content .number_list{
		max-width: 600px;
		margin: 0 auto;
	}

	.recruit-content .number_list li{
		width: 47.5%;
		margin-bottom: 20px;
	}

	.recruit-content .number_list li.long{
		width: 100%;
	}
}


@media screen and (max-width: 767px) {
	.recruit-content .number_list li h4{
		font-size: 16px;
	}
}

@media screen and (max-width: 480px) {
	.recruit-content .number_list li{
		width: 48%;
		margin-bottom: 10px;
	}

	.recruit-content .number_list li h4{
		font-size: 14px;
	}
}

@media screen and (max-width: 360px) {
	.recruit-content .number_list li h4{
		font-size: 13px;
		letter-spacing: 0;
	}
}

/* number_list */



.recruit-content #recommendbox{
    padding: 100px 0px 120px;
   
}

.recruit-content #recommendbox h2{
    font-size: 55px;
    font-weight: 500;
    line-height: 1;
    color: #FFF;
    opacity: .5;
    text-align: center;
    padding-bottom: 50px;
}

.recruit-content #recommendbox a{
    transition: all 500ms 0s ease;
    display: block;
    width: 47%;
    max-width: 340px;
    margin: 0 auto;
    color: #FFF;
}

.recruit-content #recommendbox a:hover{
    opacity: .8;
}

.recruit-content #recommendbox a figure{
    overflow: hidden;
}

.recruit-content #recommendbox a figure img{
    transition: all 500ms 0s ease;
}

.recruit-content #recommendbox a:hover figure img{
    transform: scale(1.1);
}

.recruit-content #recommendbox a div{
    display: block;
    padding-bottom: 20px;
    padding-top: 20px;
    line-height: 1;
    font-size: 16px;
    color: #FFF;
    border-bottom: #FFF solid 1px;
}

/* .recruit-content #recommendbox a div:hover{
    padding-left: 1em;
} */

.recruit-content #recommendbox a div::before{
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 8px;
    right: 10px;
    border-color: #FFF;
}

@media screen and (max-width: 1023px) {
    .recruit-content #recommendbox{
        padding: 9.77517107vw 0px 11.73020528vw;
    }

    .recruit-content #recommendbox h2{
        padding-bottom: 40px;
    }
}

@media screen and (max-width: 767px) {
    .recruit-content #recommendbox{
        padding:  60px 0;
    }

    .recruit-content #recommendbox h2{
        font-size: 40px;
		padding-bottom: 30px;
    }

	.recruit-content #recommendbox a div{
		padding-bottom: 15px;
		padding-top: 15px;
		font-size: 14px;
	}
}

@media screen and (max-width: 480px) {
	.recruit-content #recommendbox a{
		width: 100%;
		max-width: 340px;
	}

	.recruit-content #recommendbox a:nth-child(n+2){
		margin-top: 40px;
	}

	.recruit-content #recommendbox a div{
		font-size: 16px;
	}
}





/* categorybox */



.recruit-content #categorybox{
    padding: 80px 0px 80px;
	margin-top: 50px;
}

.recruit-content #categorybox h2 {
    font-size: 26px;
    font-weight: 500;
    line-height: 1;
	color: var(--komatsu-blue);
}

.recruit-content #categorybox ul{
    padding-top: 50px;
}

.recruit-content #categorybox ul li{
    width: 47.4137931%;
    border-bottom: var(--komatsu-blue) solid 1px;
    margin-bottom: 15px;
}

.recruit-content #categorybox ul li a{
    transition: all 500ms 0s ease;
    display: block;
    padding-bottom: 20px;
    padding-top: 20px;
    line-height: 1;
    font-size: 16px;
    color: var(--komatsu-blue);
}

.recruit-content #categorybox ul li a:hover{
    padding-left: .5em;
}

.recruit-content #categorybox ul li a::before{
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 8px;
    right: 10px;
}


@media screen and (max-width: 1023px) {
    .recruit-content #categorybox{
        padding: 7.82013685vw 0px 7.82013685vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-content #categorybox{
        padding:  40px 0;
    }

	.recruit-content #categorybox h2 {
    	font-size: 22px;
	}

	.recruit-content #categorybox ul{
		padding-top: 20px;
	}

	.recruit-content #categorybox ul li a{
		font-size: 14px;
		padding-bottom: 15px;
    	padding-top: 15px;
	}
}

@media screen and (max-width: 540px) {

    .recruit-content #categorybox ul li{
        width: 100%;
    }

}












html:has(#modalbox.active) {
  overflow: hidden;
}

.recruit-content #modal_item{
	clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
    display: none;
}

.recruit-content #modalbox{
	transition: all 500ms 0s ease;
	display: none;
}

.recruit-content #modalbox #modal_inner{
	position: relative;
	width: calc(100% - 200px) ;
    max-width: 1440px;
    padding: 20px;
	z-index: 10;
    background-color: #FFF;
    border-radius: 20px;
    margin: 0 auto;
}

.recruit-content #modalbox .bt_plusclose{
    position: absolute;
    width: 46px;
    height: 46px;
    top: 0px;
    left: calc(100% + 15px) ;
    z-index: 5;
    cursor: pointer;
}

.recruit-content #modalbox .bt_plusclose::before,
.recruit-content #modalbox .bt_plusclose::after{
    content: "";
    position: absolute;
    display: block;
    width: 50px;
    height: 1px;
    top: 50%;
    left: 50%;
    background-color: #FFF;
}

.recruit-content #modalbox .bt_plusclose::before{
    transform: translate(-50%,-50%) rotate(-45deg);
}

.recruit-content #modalbox .bt_plusclose::after{
    transform: translate(-50%,-50%) rotate(45deg);
}

.recruit-content #modalbox.active{
	position: fixed;
    display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 10000;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	padding: 50px 0px;
	clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
}

.recruit-content #modalbox.active.active_on{
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.recruit-content #modalbox.active.active_on.active_off{
	clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
}

.recruit-content #modalbox #overlay{
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 1;
    background: rgba(0, 0, 0, .9);
}


@media screen and (max-width: 1023px) {

	.recruit-content #modalbox #modal_inner{
		width: calc(100% - 60px);
		padding: 0px 15px 20px;
	}

	.recruit-content #modalbox .bt_plusclose{
		position: absolute;
		width: 46px;
		height: 46px;
		top: -50px;
		left: calc(100% - 46px) ;
		z-index: 5;
		cursor: pointer;
	}

	.recruit-content #modalbox.active{
		padding: 70px 0px 70px;
	}


}

@media screen and (max-width: 767px) {


	#recruit-culture-balance  #modalbox #modal_inner{
		width: 88%;
		padding: 0px 10px 15px;
	}
}





/* basic *********************************/



/* joinusbox *********************************/

.recruit-content #joinusbox article {
    position: relative;
    height: 400px;
}

.recruit-content #joinusbox article::before{
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-color: var(--komatsu-gray);
    top: 0;
    left: 0;
    z-index: 5;
    mix-blend-mode: multiply;
}

.recruit-content.nomix #joinusbox article::before{
	mix-blend-mode: normal;
}

.recruit-content #joinusbox article h2{
    position: absolute;
    font-size: 70px;
    font-weight: 500;
    color: #FFF;
    line-height: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 10;
    white-space: nowrap;
}

.recruit-content #joinusbox article ul{
    position: absolute;
    z-index: 25;
    bottom: 60px;
    left: 50%;
    transform: translateX(-50%);
}

.recruit-content #joinusbox article ul.type_2{
    width: 90%;
    max-width: 800px;
}

.recruit-content #joinusbox article ul.type_3{
    width: 90%;
    max-width: 1000px;
}

.recruit-content #joinusbox article ul li{
    max-width: 350px;
    height: 60px;
}

.recruit-content #joinusbox article ul li::before{
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 30px;
    background-color: #FFF;
    z-index: 1;
}

.recruit-content #joinusbox article ul.type_3 li{
    width: 32%;
}

.recruit-content #joinusbox article ul.type_2 li{
    width: 49%;
}

.recruit-content #joinusbox article ul li a{
    transition: all 500ms 0s ease;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    border-radius: 30px;
    color: var(--komatsu-blue);
    align-content: center;
    padding: 0px 30px;
    line-height: 1.2;
    justify-content: center;
    z-index: 2;
}



.recruit-content #joinusbox article ul li a:hover{
    opacity: .8;
}

.recruit-content #joinusbox article ul li .arrow_r::before{
    right: 20px;
}


.recruit-content #joinusbox article div {
    height: 100%;
    z-index: 1;
}

.recruit-content #joinusbox article div figure{
    display: block;
    width: 33.333333333%;
    height: 100%;
    background-size: cover;
    background-position: center center;
}

.recruit-content #joinusbox article div figure#joinus_bg_1{
    background-image: url(/-/media/HOME/recruit/new/images/index/joinus_1.webp);
    
}

.recruit-content #joinusbox article div figure#joinus_bg_2{
    background-image: url(/-/media/HOME/recruit/new/images/index/joinus_2.webp);
}

.recruit-content #joinusbox article  div figure#joinus_bg_3{
    background-image: url(/-/media/HOME/recruit/new/images/index/joinus_3.webp);
}


@media screen and (max-width: 767px) {
    .recruit-content #joinusbox article ul li a{
        padding: 12px;
    }

    .recruit-content #joinusbox article ul li .arrow_r::before{
        display: none;
    }
}


@media screen and (max-width: 540px) {

    .recruit-content #joinusbox article h2{
        padding-bottom: 20px;
    }

    .recruit-content #joinusbox article {
        height: 500px;
    }

    .recruit-content #joinusbox article ul{
        bottom: 20px;
    }

    .recruit-content #joinusbox article ul li{
        height: 46px;
    }

    .recruit-content #joinusbox article ul.type_2 li,
    .recruit-content #joinusbox article ul.type_3 li{
        width: 100%;
        margin: 0 auto 10px;
    }

    .recruit-content #joinusbox article ul li a{
        border-radius: 23px;
    }

    .recruit-content #joinusbox article div figure#joinus_bg_1,
    .recruit-content #joinusbox article  div figure#joinus_bg_3{
        display: none;
    }

    .recruit-content #joinusbox article div figure#joinus_bg_2{
        width: 100%;
    }

}


/* joinusbox *********************************/































/* recruit_footer

  --- nav.css

recruit_footer */



/* ********************************************************************************************************************************************** */


.recruit-content .only_1350,
.recruit-content .only_1200,
.recruit-content .only_1023,
.recruit-content .only_900,
.recruit-content .only_800,
.recruit-content .only_767,
.recruit-content .only_640,
.recruit-content .only_540,
.recruit-content .only_480,
.recruit-content .only_360{
	display: none;
}

.recruit-content .no_1350,
.recruit-content .no_1200,
.recruit-content .no_1023,
.recruit-content .no_900,
.recruit-content .no_800,
.recruit-content .no_767,
.recruit-content .no_640,
.recruit-content .no_540,
.recruit-content .no_480,
.recruit-content .no_360{
	display: inline-block;
}


@media screen and (max-width: 1350px) {
	.recruit-content .only_1350{display: inline-block;}
	.recruit-content .no_1350{display: none;}
}


@media screen and (max-width: 1200px) {
	.recruit-content .only_1200{display: inline-block;}
	.recruit-content .no_1200{display: none;}
}


@media screen and (max-width: 1023px) {
	.recruit-content .only_1023{display: inline-block;}
	.recruit-content .no_1023{display: none;}
}

@media screen and (max-width: 900px) {
	.recruit-content .only_900{display: inline-block;}
	.recruit-content .no_900{display: none;}
}

@media screen and (max-width: 800px) {
	.recruit-content .only_800{display: inline-block;}
	.recruit-content .no_800{display: none;}
}

@media screen and (max-width: 767px) {
	.recruit-content .only_767{display: inline-block;}
	.recruit-content .no_767{display: none;}
}

@media screen and (max-width: 640px) {
	.recruit-content .only_640{display: inline-block;}
	.recruit-content .no_640{display: none;}
}

@media screen and (max-width: 540px) {
	.recruit-content .only_540{display: inline-block;}
	.recruit-content .no_540{display: none;}
}

@media screen and (max-width: 480px) {
	.recruit-content .only_480{display: inline-block;}
	.recruit-content .no_480{display: none;}
}

@media screen and (max-width: 360px) {
	.recruit-content .only_360{display: inline-block;}
	.recruit-content .no_360{display: none;}
}



.fade_set,
.fade_set_on,
.fade_set_fast{
	opacity: 0;
	transform: translateY(40px);
}

.fade_set_on{
	opacity: 0;
	transform: translateY(40px);
	animation: fade_settion .7s forwards cubic-bezier(.49,.15,.48,.78) .2s;
}

.fade_set_fast_on{
	opacity: 0;
	transform: translateY(40px);
	animation: fade_settion .5s forwards cubic-bezier(.49,.15,.48,.78) .1s;
}

.alpha_set{
	opacity: 0;
}

.alpha_set_on{
	opacity: 0;
	animation: alpha_100 .5s forwards cubic-bezier(.49,.15,.48,.78) .1s;
}

.recruit-content .photo_anime_set::before,
.recruit-content .photo_anime_set_on::before{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
	background-color: var(--komatsu-blue);
}

.recruit-content .photo_anime_set_on::before{
    clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
    animation: inview_side_animetion_lr .4s forwards cubic-bezier(.49,.15,.48,.78) .1s, inview_side_animetion_lr_out .4s forwards cubic-bezier(.49,.15,.48,.78) .8s;
	z-index: 20;
}

.recruit-content .photo_anime_set .photo_on{
	clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
}

.recruit-content .photo_anime_set_on .photo_on{
	clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
    animation: inview_side_animetion_lr .5s forwards cubic-bezier(.49,.15,.48,.78) .1s;
}

.recruit-content .fade_set .alpha_on{
	opacity: 0;
}

.recruit-content .fade_set_on .alpha_on{
	opacity: 0;
	animation: alpha_100 .5s forwards cubic-bezier(.49,.15,.48,.78) 1.5s;
}

.recruit-content .slide_lr_set{
	clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
}

.recruit-content .slide_lr_set_on{
	clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
	animation: inview_side_animetion_lr .5s forwards cubic-bezier(.49,.15,.48,.78) .3s;
}

.recruit-content .slide_rl_set{
	clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
}

.recruit-content .slide_rl_set_on{
	clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
	animation: inview_side_animetion_rl .5s forwards cubic-bezier(.49,.15,.48,.78) .3s;
}


@keyframes fade_settion {
	0% {
		opacity: 0;
		transform: translateY(40px);
	}
	100% {
		opacity: 1;
		transform: translateY(0px);	
	}
}

@keyframes fade_settion_slow {
	0% {
		opacity: 0;
		transform: translateY(20px);
	}
	100% {
		opacity: 1;
		transform: translateY(0px);	
	}
}

@keyframes inview_side_animetion_lr {
	0% {
		clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
	}
	100% {
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
	}
}

@keyframes inview_side_animetion_rl {
	0% {
		clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
	}
	100% {
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
	}
}

@keyframes inview_side_animetion_lr_out {
	0% {
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
	}
	100% {
		clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
	}
}


@keyframes inview_side_animetion_l {
	0% {
		opacity: 0;
		transform: translateX(-40px);
	}
	100% {
		opacity: 1;
		transform: translateX(0px);	
	}
}

@keyframes inview_side_animetion_r {
	0% {
		opacity: 0;
		transform: translateX(40px);
	}
	100% {
		opacity: 1;
		transform: translateX(0px);	
	}
}



@keyframes y_idou_0{
	0% {
		transform: translateY(100%);
	}
	100% {
		transform: translateY(0%);
	}
}



@keyframes scale_small {
	0% {
		transform: scale(1.1);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes scale_big{
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.1);
    }
}


@keyframes width_100 {
	0% {
		width: 0%;
	}
	100% {
		width: 100%;
	}
}

@keyframes width_0 {
	0% {
		width: 100%;
	}
	100% {
		width: 0%;
	}
}

@keyframes height_100 {
	0% {
		height: 0%;
	}
	100% {
		height: 100%;
	}
}

@keyframes height_0 {
	0% {
		height: 100%;
	}
	100% {
		height: 0%;
	}
}

@keyframes alpha_100 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes alpha_0 {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}


@keyframes overray_on{
	0% {
        height: 20vh;
        top: -20vh;
        border-bottom-left-radius: 50% 20vh;
        border-bottom-right-radius: 50% 20vh;
	}
    60%{
        height: 100vh;
        top: 0vh;
        border-bottom-left-radius: 50% 10vh;
        border-bottom-right-radius: 50% 10vh;
    }
	100% {
		height: 100vh;
        top: 0vh;
        border-bottom-left-radius: 50% 0vh;
        border-bottom-right-radius: 50% 0vh;
	}
}


@keyframes overray_off {
	0% {
        height: 100vh;
        top: 0vh;
        border-bottom-left-radius: 50% 0vh;
        border-bottom-right-radius: 50% 0vh;
	}
    30%{
        height: 100vh;
        top: 0vh;
        border-bottom-left-radius: 50% 10vh;
        border-bottom-right-radius: 50% 10vh;
    }
	100% {
		height: 20vh;
        top: -20vh;
        border-bottom-left-radius: 50% 20vh;
        border-bottom-right-radius: 50% 20vh;
	}
}


