@charset "UTF-8";

/*  sec01 -------------------------------------------*/
.sec01{
    position: relative;
    padding: 0 0 60px 0;
    box-sizing: border-box;
}
.sec01:after{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    display: block;
    content: '';
    width: 100%;
    height: 500px;
    background: #f5f5f5;
    z-index: -1;
}

.sec01 .img{
    margin: 0 auto 45px auto;
    text-align: center;
}
.sec01 .lead{
    text-align: center;
    font-size: 2.8rem;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .sec01{
        padding: 0 0 8% 0;
    }

    .sec01:after{
        height: 60vw;
    }

    .sec01 .img{
        width: 92%;
        margin: 0 auto 4% auto;
    }
    .sec01 .lead{
        width: 92%;
        margin: 0 auto;
        font-size: 5.8vw;
    }

}

/*  sec02 -------------------------------------------*/
.sec02{
    position: relative;
    padding: 55px 0 90px 0;
    box-sizing: border-box;
}
.sec02 .bg_gray.first:before{
    position: absolute;
    top: 0;
    right: -166px;
    display: block;
    content: '';
    background: url("../img/recruit/txt_requirements.png") no-repeat center center;
    background-size: 100% auto;
    width: 166px;
    height: 1136px;
}

.sec02 .secTitle h2,
.sec03 .secTitle h2{
    font-size: 2.5rem;
    font-weight: 700;
}
.sec02 .secTitle,
.sec03 .secTitle{ margin-bottom: 45px;}
.sec02 .secTitle span,
.sec03 .secTitle span{
    font-size: 2.0rem;
    color: #f5f5f5;
    margin-left: 25px;
    letter-spacing: .2rem;
}

.sec02 .bg_gray{
    position: relative;
    width: 92%;
    max-width: 840px;
    background: #f5f5f5;
    margin-left: 90px;
    padding: 30px 40px 45px 40px;
    box-sizing: border-box;
}
.sec02 .box+.box{ margin-top: 75px;}
.sec02 .tbl01{
    width: 100%;
    margin: 0 auto;
    border-collapse: collapse;
    border-spacing: 0;
    box-sizing: border-box;
}

.sec02 .tbl01 th,.sec02 .tbl01 td{
    font-size: 1.4rem;
    padding: 15px 0;
    border-bottom: 1px solid #c8c8c8;
    box-sizing: border-box;
}
.ie .sec02 .tbl01 th,.ie .sec02 .tbl01 td{
    padding: 17px 0 13px 0;
}
.sec02 .tbl01 th{
    width: 112px;
    font-weight: 700;
    padding-left: 30px;
}

.sec02 .tbl01 td{ padding-left: 55px;}
.ie .sec02 .tbl01 td{ padding-left: 55px !important;}



@media screen and (max-width: 1145px) {
    .sec02 .bg_gray.first:before{
        right: -13vw;
        background: url("../img/recruit/txt_requirements.png") no-repeat center top;
        background-size: 100% auto;
        width: 14vw;
        max-width: 166px;
        height: 1136px;
    }
    #content{ overflow: hidden;}

}
@media screen and (max-width: 767px) {
    #content{ overflow: inherit;}
    .sec02{
        padding: 9% 0 12% 0;
    }
    .sec02.wrap{ width: 92%;}
    .sec02 .bg_gray.first:before{
        display: none;
    }
    .sec02 .secTitle{
        position: relative;
        padding-top: 5%;
        background: url("../img/recruit/txt_requirements_sp.png") no-repeat center top;
        background-size: 100% auto;
    }
    .sec02 .secTitle h2,
    .sec03 .secTitle h2{
        font-size: 6.4vw;
        font-weight: 700;
        text-align: center;
    }
    .sec02 .secTitle,
    .sec03 .secTitle{ margin-bottom: 10%;}
    .sec02 .secTitle span,
    .sec03 .secTitle spann{
        font-size: 4vw;
        margin-left: 0;
    }
    .secTitle span:after { display: none;}
    .secTitle span:before {
        display: block;
        content: '';
        width: 62vw;
        height: 1px;
        margin: 4% auto;
        background: #646464;
    }

    .sec02 .bg_gray{
        width: 100%;
        max-width: inherit;
        background: #f5f5f5;
        margin: 0 auto;
        padding: 6%;
    }
    .sec02 .box+.box{ margin-top: 12%;}


    .sec02 .tbl01 th,.sec02 .tbl01 td{
        font-size: 3.6vw;
        padding: 3% 0;
    }

    .sec02 .tbl01 th{
        vertical-align: top;
        width: 22vw;
        padding-left: 0;
    }
    .sec02 .tbl01 td{ padding-left: 0;}

}

/*  sec03 -------------------------------------------*/
.sec03{
    padding: 0 0 50px 0;
    box-sizing: border-box;
}


.sec03 .text{
    width: 770px;
    margin: 0 0 0 auto;
    font-size: 1.4rem;
    line-height: 2.14;
}

.sec03 .bg_gray{
    width: 92%;
    max-width: 900px;
    margin: 40px auto 0 auto;
    background: #f5f5f5;
    padding: 30px 40px 60px 40px;
    box-sizing: border-box;
}
.sec03 .bg_gray h2{
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 75px;
}
.sec03 .bg_gray h2 span{
    display: block;
    font-size: 3.5rem;
    letter-spacing: .3rem;
    margin-bottom: 32px;
}
.form_style{
    border-top: 1px solid #c8c8c8;
}

.form_style th {
    width: 280px;
}
.radio-input, .form_style .checkbox-input{ padding: 0;}

.form_style input.zip_num01{
    width: 90px;
    margin-right: 5px;
}
.form_style input.zip_num02{
    width: 120px;
    margin-left: 5px;
}

.form_style textarea.address_text{height: 41px;}

.sec03 .btn_wrap02{ margin-top: 50px;}
.sec03 .btn_wrap02 ul{
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec03 .btn_wrap02 ul li{
    width: 30%;
    max-width: 260px;
}
.sec03 .btn_wrap02 ul li+li{ margin-left: 60px;}

.sec03 .btn_wrap02 .btn a{
    max-width: inherit;
    color: #FFF;
    background: #646464;
    padding: 13px 0;
}


@media screen and (max-width: 767px) {
    .sec03 .ttl_band{
        padding: 16vw 3%;
        margin-bottom: 10%;
    }
    .sec03{
        padding: 0 0 14% 0;
        box-sizing: border-box;
    }

    .sec03 .wrap{ width: 100%;}

    .sec03 .bg_gray{
        width: 94%;
        max-width: inherit;
        margin: 12% auto 0 auto;
        padding: 6% 4% 10% 4%;
    }
    .sec03 .text{
        width: 86%;
        margin: 0 auto;
        font-size: 3.6vw;
        line-height: 2;
    }
    .form_style th {
        width: 100%;
    }

    .form_style input.zip_num01{
        width: 22vw;
    }
    .form_style input.zip_num02{
        width: 28vw;
    }

    .sec03 .btn_wrap02{ margin-top: 12%;}
    .sec03 .btn_wrap02 ul{
        display: block;
    }
    .sec03 .btn_wrap02 ul li{
        width: 70%;
        max-width: inherit;
        margin: 0 auto;
    }
    .sec03 .btn_wrap02 ul li+li{ margin-left: auto; margin-top: 7%;}

    .sec03 .btn_wrap02 .btn a{
        text-align: left;
        width: 100%;
        padding: 5% 10%;
    }
    .sec03 .btn_wrap02 .btn a:after{
        position: absolute;
        right: 10%;
        top: 50%;
        margin-top: -2vw;
    }
    .form_style textarea {
        height: 46vw;
    }
    .form_style textarea.address_text{height: 17vw;}
    .form_style textarea.qualification_txt{height: 38vw;}

}



