@charset "utf-8";
/* CSS Document */

#job {
	background-color: #ffffff;
	color: #000000;
}

#job .subpage_mv2 {
    padding: 85px 0px 170px;
}

#job .subpage_mv2:after {
    display: none;
}

#job .subpage_mv2 .page_title {
    padding: 80px 0px 0px;
}

#job .subpage_mv2 .page_title .category {
    color: #ffffff;
}

#job .subpage_mv2 .lead_text {
    margin: 120px auto 0px;
}

#job .subpage_mv2 .mv_bg_slide {
	position: absolute;
    width: 100%;
    height: 100%;
    top: 85px;
	z-index: -2;
}

#job .subpage_mv2 .mv_bg_slide .slick-track {
    height: 100%;
}

#job .subpage_mv2 .mv_bg_slide .slick-list {
    height: 100%;
}

#job .subpage_mv2 .mv_bg_slide .bg_item {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%;
}

#job .subpage_mv2 .mv_bg_slide .slide1 {
	background-image: url("../img/job/bg_slide1.jpg");
}

#job .subpage_mv2 .mv_bg_slide .slide2 {
	background-image: url("../img/job/bg_slide2.jpg");
}

#job .subpage_mv2 .mv_bg_slide .slide3 {
	background-image: url("../img/job/bg_slide3.jpg");
}



#job .contents {
	padding: 100px 0px 150px;
}

#job .overview {
	position: relative;
    padding: 0px 0px 150px;
}

#job .overview:after {
	position: absolute;
    content: "";
    top: 80px;
    left: 0;
    width: 100%;
    height: calc(100% - 80px);
	background: -webkit-linear-gradient(-30deg, #0e7f80 15%, #00a082 30%, #007db9 55%);
    background: -moz-linear-gradient(-30deg, #0e7f80 15%, #00a082 30%, #007db9 55%);
    background: linear-gradient(120deg, #0e7f80 15%, #00a082 30%, #007db9 55%);
    background-size: 230% 230%;
    animation: bggradient 13s ease infinite;
    z-index: -5;
}

#job .overview .flow_area {
    padding:50px 40px 70px;
    margin: -80px auto 0px;
    background-color: #ffffff;
    border-radius: 10px;
    animation-delay: 1.5s;
}

#job .overview .flow_area .sp_scroll_text {
	display: none;
}


#job .overview .flow_area .map_box,
#job .overview .flow_area .job_category {
    margin-top: 20px;
}

#job .overview .flow_area .map_box .job_flow {
    overflow: hidden;
    border-radius: 10px;
    align-items: stretch;
	border:solid 1px #007db9;
}

#job .overview .flow_area .map_box .job_flow .jf_item {
    width: 10%;
    color: #007db9;
    padding: 10px;
    display: flex;
    border-right: solid 1px #007db9;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
    transform: skewX(-25deg);
}

#job .overview .flow_area .map_box .job_flow .jf_item:first-of-type,
#job .overview .flow_area .map_box .job_flow .jf_item:nth-of-type(7) {
    width: 12.5%;
}

#job .overview .flow_area .map_box .job_flow .jf_item:nth-of-type(5),
#job .overview .flow_area .map_box .job_flow .jf_item:last-of-type {
    width: 17.5%;
}

#job .overview .flow_area .map_box .job_flow .jf_item:last-of-type {
	border-right:none;
}

#job .overview .flow_area .map_box .job_flow .jf_item p {
    transform: skewX(25deg);
}

#job .overview .flow_area .map_box .job_flow .jf_item p br {
    display: none;
}

#job .overview .flow_area .map_box .job_category .fl {
    align-items: stretch;
}

#job .overview .flow_area .map_box .job_category > div,
#job .overview .flow_area .map_box .job_category > div .jc_item + .jc_item {
    margin-top: 7px;
}

#job .overview .flow_area .map_box .job_category .block1 {
    width: 30.5%;
}

#job .overview .flow_area .map_box .job_category .block2 {
    width: 9.5%;
}

#job .overview .flow_area .map_box .job_category .block3 {
    width: 38%;
}

#job .overview .flow_area .map_box .job_category .block4 {
    width: 18.5%;
}

#job .overview .flow_area .map_box .job_category .jc_item p {
    position: relative;
    display: block;
    padding: 10px 10px;
    border-radius: 25px;
    background-color: #007db9;
    color: #ffffff;
    font-size: 15px;
    text-align: center;
    z-index: 1;
}

#job .overview .flow_area .map_box .job_category .block1 .item1 {
    width: 67%;
}

#job .overview .flow_area .map_box .job_category .block2 .item3 p {
    padding: 35px 10px;
}

#job .overview .flow_area .map_box .job_category .block4 .item6 p {
    padding: 24px 10px;
}

#job .overview .flow_area .map_box .job_category .block1 .item2 p,
#job .overview .flow_area .map_box .job_category .block3 .item5 p,
#job .overview .flow_area .map_box .job_category .block4 .item6 p {
    background-color: #0e7f80;
}

#job .overview .flow_area .memo {
    margin-top: 30px;
}

#job .overview .flow_area .memo p {
    position: relative;
    display: inline-block;
    padding-left: 40px;
    font-size: 13px;
}

#job .overview .flow_area .memo p:before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    width: 30px;
    height: 15px;
    border-radius: 10px;
    background-color: #0e7f80;
}

#job .overview .flow_area .memo p + p {
    margin-left: 20px;
}

#job .overview .flow_area .memo p + p:before {
    background-color: #007db9;
}


#job .overview .suitable_area {
	padding: 100px 40px 0px;
	color: #ffffff;
}

#job .overview .suitable_area .blue_tag:before {
    background-color: #ffffff;
}

#job .overview .suitable_area .blue_tag + p {
	font-size: 15px;
    margin-top: 30px;
}

#job .overview .suitable_area .blue_tag + p span {
	display: none;
}


#job .overview .suitable_area .table_box {
    margin-top: 30px;
}

#job .overview .suitable_area .table_box table {
    width: 100%;
	color: #ffffff;
}

#job .overview .suitable_area .table_box table th,
#job .overview .suitable_area .table_box table td {
    font-size: 12px;
    padding: 7px 7px;
    text-align: center;
	vertical-align: middle;
    font-weight: 500;
    word-break: break-all;
	border-right: solid 1px #ffffff;
	border-bottom: solid 1px #ffffff;
}

#job .overview .suitable_area .table_box table .label {
    text-align: left;
}

#job .overview .suitable_area .table_box table .label a {
    position: relative;
    display:block;
    color: #fff;
}

#job .overview .suitable_area .table_box table .label a:after {
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    border: 0;
    border-bottom: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    margin: 4px 0px 0px 5px;
}

#job .overview .suitable_area .table_box table .label a:hover {
    opacity: 0.6;
}

#job .overview .suitable_area .table_box table td {
	width: 10%;
}


#job .overview .suitable_area .table_box table .info_tab p {  
	position: relative;
    font-size: 13px;
}

#job .overview .suitable_area .table_box table .info_tab p span {
    position: absolute;
    top: -10px;
    padding-left: 20px;
}

#job .overview .suitable_area .table_box table .info_tab p span:before {
    position: absolute;
    content: "";
    width: 55px;
    height: 1px;
    top: 15px;
    left: -18px;
    background-color: #ffffff;
    transform: rotate(40deg);
}

#job .overview .suitable_area .memo {
	margin-top: 20px;
    justify-content: flex-start;
}

#job .overview .suitable_area .memo p {
	font-size: 12px;
	margin-right: 20px;
}





#job .job_list {
    padding: 0px 0px 150px;
}

#job .job_list .job_item .info_area {
    padding: 100px 0px 70px;
}

#job .job_list .job_item .info_area .gradation_label {
    margin:0px 0px 50px -40px;
}

#job .job_list .job_item .info_area .info_box {
    align-items: flex-start;
}

#job .job_list .job_item .info_area .info_box p {
    width: 50%;
	font-size: 15px;
    line-height: 1.7;
}

#job .job_list .job_item .info_area .info_box .img_box {
	max-width: 485px;
    width: 47%;
    margin-top: -30px;
}

#job .job_list .job_item .person_area {
    padding: 50px 0px 80px;
	background-color:#F0F0F0;
}

#job .job_list .job_item .person_area .inner {
    max-width: 1050px;
}

#job .job_list .job_item .person_area h3 {
    text-align: center;
	font-size:20px;
}

#job .job_list .job_item .person_area .member_list {
    margin-top: 50px;
}

#job .job_list .job_item .person_area .member_list .member_item {
    width: 48%;
    margin: 20px 0px;
    justify-content: flex-start;
}

#job .job_list .job_item .person_area .member_list .member_item .img_box {
	max-width: 200px;
    width: 45%;
}

#job .job_list .job_item .person_area .member_list .member_item .profile {
	width:52%;
    margin-left: 5%;
}

#job .job_list .job_item .person_area .member_list .member_item .profile p {
    font-size: 12px;
}

#job .job_list .job_item .person_area .member_list .member_item .profile .name {
    font-size: 18px;
	font-weight: 500;
	margin-top: 5px;
}

#job .job_list .job_item .person_area .member_list .member_item .profile .name .join {
    display: inline-block;
	margin-left: 15px;
	font-size: 13px;
	font-weight: normal;
}

#job .job_list .job_item .person_area .member_list .member_item .profile .btn_wrap {
    max-width: 150px;
	margin-top: 15px;
}



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

#job .subpage_mv2 {
    height: 900px;
}


#job .subpage_mv2 .lead_text {
	margin: 0px auto 0px;
    position: absolute;
    width: 80%;
    top: 60%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

#job .subpage_mv2 .lead_text br {
	display: none;
}


#job .overview .flow_area .map_box .job_category .jc_item p {
    font-size: 13px;
}

#job .overview .flow_area .map_box .job_category .block4 .item6 p {
    padding: 25.25px 10px;
}
	
	


#job .job_list .job_item .info_area .gradation_label {
    margin: 0px 0px 50px 0px;
}


#job .job_list .job_item .person_area .member_list .member_item .img_box {
    width: 40%;
}
	
#job .job_list .job_item .person_area .member_list .member_item .profile {
    width: 55%;
}



}




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


#job .subpage_mv2 {
    height: 100vh;
}


#job .subpage_mv2 .lead_text {
    top: auto;
    bottom: 15%;
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

#job .subpage_mv2 .mv_bg_slide .slide1 {
	background-image: url("../img/job/bg_slide1_sp.jpg");
}

#job .subpage_mv2 .mv_bg_slide .slide2 {
	background-image: url("../img/job/bg_slide2_sp.jpg");
}

#job .subpage_mv2 .mv_bg_slide .slide3 {
	background-image: url("../img/job/bg_slide3_sp.jpg");
}



#job .overview .flow_area {
    padding: 30px 30px 50px;
}


#job .overview .flow_area .map_box .job_flow .jf_item {
    font-size: 12px;
    transform: skewX(-10deg);
}

#job .overview .flow_area .map_box .job_flow .jf_item p {
    transform: skewX(10deg);
}

#job .overview .flow_area .map_box .job_flow .jf_item p br {
    display: block;
}

#job .overview .flow_area .map_box .job_category .jc_item p {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 15px;
}


#job .overview .flow_area .map_box .job_category .block2 .item3 p {
    padding: 23.5px 10px;
}

#job .overview .flow_area .map_box .job_category .block4 .item6 p {
    padding: 14px 10px;
    letter-spacing: 0px;
}

#job .overview .flow_area .map_box .job_category .block4 .item6 p br {
	display: none;
}



#job .overview .suitable_area {
    padding:80px 30px 0px;
}

#job .overview .suitable_area .table_box table .info_tab p span:before {
    width: 45px;
    top: 20px;
    left: -15px;
    transform: rotate(90deg);
}



#job .job_list {
    padding: 0px 0px 100px;
}

#job .job_list .job_item .info_area .info_box p {
    font-size: 14px;
}

#job .job_list .job_item .person_area .member_list .member_item .profile p br {
    display: none;
}


#job .job_list .job_item .person_area .member_list .member_item .profile .name {
    font-size: 15px;
}

#job .job_list .job_item .person_area .member_list .member_item .profile .name .join {
    margin-left: 10px;
    font-size: 10px;
}

#job .job_list .job_item .person_area .member_list .member_item .profile .btn_wrap a {
    padding: 5px 10px;
    font-size: 12px;
}



}




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

#job .subpage_mv2 {
    padding: 65px 0px 0px;
}

#job .overview:after {
    top: 0px;
    height: 100%;
}


#job .subpage_mv2 .mv_bg_slide .slick-list,
#job .subpage_mv2 .mv_bg_slide .bg_item {
    height: calc(100vh - 65px);
}

#job .subpage_mv2 .mv_bg_slide {
    top: 65px;
}

#job .subpage_mv2 .page_title {
    padding: 50px 0px 0px;
}

#job .subpage_mv2 .lead_text {
    margin: 30px auto 30px;
    bottom: 10%;
}



#job .overview {
    padding: 80px 0px 80px;
}

#job .overview .flow_area {
    margin: 0px auto 0px;
    animation-delay: 0s;
}

#job .overview .flow_area .sp_scroll_text {
    display: block;
    font-size: 12px;
    margin-top: 30px;
}

#job .overview .flow_area .sp_scroll {
    overflow-x: scroll;
    padding-bottom: 15px;
    margin: 10px auto 0px;
}

#job .overview .flow_area .map_box {
    width: 230%;
}

#job .overview .flow_area .memo {
    width: 230%;
}

#job .overview .flow_area .memo p {
    padding-left: 25px;
    font-size: 12px;
}

#job .overview .flow_area .memo p:before {
    width: 18px;
    height: 12px;
    border-radius: 8px;
}



#job .overview .suitable_area {
    padding: 80px 0px 0px 30px;
}

#job .overview .suitable_area .blue_tag + p {
    font-size: 12px;
}

#job .overview .suitable_area .blue_tag + p span {
	display: block;
}

#job .overview .suitable_area .sp_scroll {
    overflow-x: scroll;
    padding-bottom: 15px;
    margin: 30px auto 0px;
}

#job .overview .suitable_area .table_box {
    width: 185%;
    margin-top: 0px;
}

#job .overview .suitable_area .table_box table .label {
	position:sticky;
    left: 0;
    color: #007db9;
    background-color: #ffffff;
}
	
#job .overview .suitable_area .table_box table .label:before{
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
    border: 1px solid #007db9;
 }

#job .overview .suitable_area .table_box table .label a {
	color: #007db9;
    padding-right: 1rem;
}

#job .overview .suitable_area .table_box table .info_tab p span:before {
    background-color: #007db9;
}

#job .overview .suitable_area .table_box table .label a:after {
    border-bottom: solid 2px #007db9;
    border-right: solid 2px #007db9;
}


#job .job_list .job_item .info_area .gradation_label {
    margin: 0px 0px 30px 0px;
}

#job .job_list .job_item .info_area {
    padding: 70px 0px 70px;
}

#job .job_list .job_item .info_area .info_box {
    flex-direction: column-reverse;
}

#job .job_list .job_item .info_area .info_box .img_box {
    max-width: 100%;
    width: 100%;
    margin-top: 0px;
}

#job .job_list .job_item .info_area .info_box p {
	width: 100%;
	margin-top: 20px;
    font-size: 13px;
}



#job .job_list {
    padding: 0px 0px 50px;
}

#job .job_list .job_item .person_area h3 {
    font-size: 16px;
}

#job .job_list .job_item .person_area .member_list {
    margin-top: 30px;
}

#job .job_list .job_item .person_area .member_list .member_item {
    width: 100%;
    margin: 7px 0px;
}

#job .job_list .job_item .person_area .member_list .member_item:not(:first-of-type) {
    margin-top: 20px;
}

#job .job_list .job_item .person_area .member_list .member_item .img_box {
    width: 33%;
}

#job .job_list .job_item .person_area .member_list .member_item .profile {
    width: 62%;
}

#job .job_list .job_item .person_area .member_list .member_item .profile p {
    font-size: 10px;
}


#job .job_list .job_item .person_area .member_list .member_item .profile .name {
    font-size: 13px;
}



}





