
.sp {
    display: none;
}

.w-100 img{
    width: 100%;
}

.recruit_top{
    position:relative; /* 相対位置指定 */
    display:flex;

}

.recruit_top_w{
    
}

.recruit_top_p {
    font-family: 'Lato', sans-serif;
    position: absolute;
    font-style: italic;
}


.btn {
    border: 1px solid #000000;
    border-radius: 0;
    text-decoration: none;
    padding: 0.5rem 6rem;
    font-size: 1.2em;
    width: 220px;
    height: 50px;
    color: #333333;
}
.btn:visited {
    color: #333333;
}

.stickarrow {
    width: 60px;
    height: 8px;
    border-bottom: 1px solid #00aeef;
    border-right: 1px solid #00aeef;
    transform: skew(45deg);
    margin-left: 125px;
    margin-top: -25px;
}

.title{
    font-size:3rem;
    font-weight: bold;
    margin-bottom:0;
}

.sub_titele{
    font-size:1.5rem;
    font-weight: bold;
    margin-bottom:0;
}


.recruit_subtitle{
    font-size: 1.5rem;
    font-weight: bold;
}

.recruit_company{
    position:relative; /* 相対位置指定 */
}


.recruit_company_tittle{
    position: absolute;
    text-align: right;
    z-index: 2;
    left: 45%;
    top: 25%;
}



.company_title{
    font-size: 2.5rem;
    margin-top:5rem;
    font-family: 'Lato', sans-serif;
    font-style: italic;
}

.company_title::before {
    content: '';
    position: absolute;
    top: 0;
    left: 60%;
    right: 0;
    width: 3px;
    height: 80px;
    margin: auto;
    background-color: #afeeee;
}

.company_subtitle{
    text-align: right;
    left: 60%;
}

.company_m{
    margin-top:12rem;
}

.company_area {
    margin: 0 auto;
}

.company_img {
    text-align:left;
    position:relative;
    margin-top: 120px;
}

.company_img img{
    width:80%;
}

.flowtitle_right{
    display: inline-block;
    font-size: 3.0rem;
    height: 70px;
    line-height: 70px;
    bottom: 310px;
    margin-left: 76%;
    position: absolute;
    text-align:right;
    font-family: 'Lato', sans-serif;
    font-style: italic;
}

.flowtitle_right::before {
    content: '';
    position: absolute;
    bottom: 70px;
    left: 50%;
    width: 3px;
    height: 100px;
    background-color: #afeeee;
}

.recruit_text_right_p1{
    display: inline-block;
    font-size: 1rem;
    height: 70px;
    bottom: 230px;
	text-align: right;
    margin-left: 64%;
    line-height: 1.8;
    font-weight: bold;
    position: absolute;
}

.recruit_text_right_p2{
    display: inline-block;
    font-size: 1rem;
    height: 70px;
    bottom: 200px;
    margin-left: 69%;
    line-height: 1.8;
    font-weight: bold;
    position: absolute;
}

.recruit_text_right_p3{
    display: inline-block;
    font-size: 1rem;
    height: 70px;
    bottom: 170px;
    margin-left: 67.3%;
    line-height: 1.8;
    font-weight: bold;
    position: absolute;
}

.bule-box-h{
    margin-top: 3rem;
}



.bule-box{
    height: 78%;
    padding:2em;
    margin: 2em 0;
    background: #FFF;
    border: solid 5px #afeeee;/*線*/
    border-radius: 10px;/*角の丸み*/
}

.bule-box-title{
    text-align: center;
    padding-top: 10px;
    font-size: 1.4rem;
    margin-bottom: 0px;
    font-weight: bold;
}

.bule-box-text{
    padding:10px;
    margin-bottom: 0px;
}

.flowtitle{
    font-family: 'Lato', sans-serif;
    display: inline-block;
    font-size: 3rem;
    height: 70px;
    margin-top: 2rem;
    font-style: italic;
}

.flowtitle_2{
    font-family: 'Lato', sans-serif;
    display: inline-block;
    font-size: 3rem;
    height: 70px;
    margin-top: 5rem;
    font-style: italic;
}

.flowtitle::before {
    
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 3px;
    height: 80px;
    margin: auto;
    background-color: #afeeee;
}

.flowtitle_2::before {
    
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 3px;
    height: 80px;
    margin: auto;
    background-color: #afeeee;
}

.member_box {
    width:100%;
    margin:0;
    padding:0;
    position:relative; /* 相対位置指定 */
}

.member_box:after {
    content: "";         /* 擬似要素を実体化 */
    clear: both;        /* floatを解除する */
    display: block;     /* ブロック要素にする */
}


.member_img{
    float:right;
}
.member_img after{
    content: "";         /* 擬似��素を実体化 */
    clear: both;        /* floatを解除する */
    display: block;     /* ブロック要素にする */
}

.member_schedule_img{
    width: 100%;
}


.position_reset{
    position: static;
}

.shadow_box{
    position: absolute;
    z-index: 1;
    width: 40%;
    height: 109%;
    background: #000;
    left: 16%;
    top: 13%;
    opacity:0.3;
}

.member_text {
    border: 1px solid rgba(0,0,0,0.3);
    line-height: 2rem;
    width: 40%;
    font-size: 90%;
    text-align: left;
    bottom: 0px;
    padding: 2% 2% 10% 2%;
    color: #333333;
    background: #fff;
    position: absolute;
    z-index: 2;
    left: 15%;
    top: 10%;
    height: 108%;
}

.member_box_2 {
    width:100%;
    margin:0;
    padding:0;
    position:relative; /* 相対位置指定 */
    margin-top:15rem;

}

.member_box_2:after {
    content: "";         /* 擬似要素を実体化 */
    clear: both;        /* floatを解除する */
    display: block;     /* ブロック要素にする */
}


.member_text_2{
    border: 1px solid rgba(0,0,0,0.3);
    line-height: 2rem;
    width: 40%;
    font-size: 90%;
    text-align: left;
    bottom: 0px;
    padding: 2% 2% 10% 2%;
    color: #333333;
    background: #fff;
    position: absolute;
    z-index: 2;
    left: 45%;
    top: 10%;
    height: 108%;
}

.shadow_box_2{
    position: absolute;
    z-index: 1;
    width: 40%;
    height: 109%;
    background: #000;
    left: 46%;
    top: 13%;
    opacity:0.3;
}


.title2{
    margin-top: -5%;
}

.training img{
    width: 100%;
}

.mt-flowtitle{
    margin-top: 8rem;
}


.trainingcontent {
    width:100%;
    margin:0;
    padding:0;
    position:relative; /* 相対位置指定 */
}


.trainingtext {
    line-height: 2rem;
    width: 53%;
    font-size: 90%;
    text-align: left;
    bottom: 0px;
    margin: -12.5% 45%;
    padding: 2%;
    color: #333333;
    background: #fff;
    opacity: 0.9;
    position: absolute;
    left: 8px;
    height: 17rem;
}

.trainingtext1 {
    line-height: 2rem;
    width: 53%;
    font-size: 120%;
	font-weight: bold;
    text-align: center;
    bottom: 0px;
    margin: -11% 45.7%;
    padding: 2%;
    color: #333333;
    background: #fff;
    opacity: 0.9;
    position: absolute;
}



.benefits_list{
    margin: 1% 0%;
}


.contents_service{
    display: flex;
    flex-direction: row;
}
.info-box{
    padding:4em;
    margin: 1em 0;
    background: #FFF;
    border: solid 2px #c9c9c9;/*線*/
}


.recruit_info_title {
    padding: 0.25em 0.5em 1.5em;/*上下 左右の余白*/
    color: #494949;/*文字色*/
    background: transparent;/*背景透明に*/
    border-left: solid 3px #afeeee;/*左線*/
    width: 100%;
    height: 30%


}

.recruit_info_title1{
    font-size: 1.8rem;
    margin-bottom: 0.5rem;
    font-weight: bold;

}

.recruit_info_title2{
    margin-bottom: 0.5rem;
    font-weight: bold;
}

.recruit_info_text{
    padding-left: 15%;
    line-height: 2rem;
}

.recruit_title{
    font-size: 1.5rem;
    font-weight: bold;
}

.table-box {
    width: 100%;
}
.table-responsive2 {
    width: 100%;
    margin: 0 auto 20px;
    border-collapse: collapse;
}

.table-responsive2 th{
    width: 20%;
    font-weight: bold;
}

.table-responsive2 th, .table-responsive2 td {
    border: none;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    text-align: left;
    padding: 3%;
}




.btn-bk {
    background: #000000;
    border: 2px solid #000000;
    border-radius: 0;
    color: white!important;
    text-decoration: none;
    padding: 1rem 3rem;
    font-size: 1.5em;
    font-weight: bold;
    max-width: 100%;
    transition: background 0.2s, color 0.2s;
}
.btn-bk:hover {
    background: white;
    color: #000000 !important;
    text-decoration: none!important;
}

.btn-more {
    position: relative;
    overflow: hidden;
    transition: background 0.4s ease-in-out, color 0.4s ease-in-out;
}
.btn-more.center {
    margin-left: 22px;
}
.btn-more:hover {
    
    background: #595959;
    border-color: #595959;
    color: #fff;
}
.btn-more:active {
}
.btn-more span {
    position: absolute;
    display: block;
    border-radius: 50%;
    background-color: #595959;
    transition: width 0.4s ease-in-out, height 0.4s ease-in-out;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 0;
    height: 0;
}
.btn-more:hover span {
    width: 260px;
    height: 260px;
}

.stickarrow-more {
    display: inline-block;
    position: relative;
    top: -4px;
    width: 60px;
    height: 8px;
    border-bottom: 1px solid #00aeef;
    border-right: 1px solid #00aeef;
    transform: skew(45deg);
    margin-left: -40px;
}

.mt-btn{
    margin-top: 5rem;
}
.mb-btn{
    margin-bottom: 4rem;
}

@media screen and (max-width: 1200px) {
        .btn-bk {
        font-size: 1em;
    }
}

@media screen and (max-width: 768px) {
    .pc{
    display: none;
    }
    
    .sp{
        display: block;
    }
    .recruit_subtitle {
    font-size: 0.7rem;
        
    }
    
    .recruit_top_p{
        
    }
    
    .recruit_company img{
        width: 300px;
        height: 200px;
        overflow: hidden;
    }
    
    .company_area_sp {
    margin-bottom: 200px;
    }

    .company_sp {
        width: 100%;
        margin-top: 50px
    }

    .flowtitle_right_sp{
        font-family: 'Lato', sans-serif;
        display: inline-block;
        font-size: 3rem;
        height: 40px;
        line-height: 25px;
        bottom: -40px;
        margin: 0 auto;
        font-style: italic;
    }

    .flowtitle_right_sp::before {
        content: '';
        position: absolute;
        bottom: 70px;
        left: 50%;
        width: 3px;
        height: 70px;
        background-color: #afeeee;
    }

    .recruit_text_right{
        font-size: 1rem;
        height: 50px;
        bottom: -85px;
        line-height: 1.5;
        font-weight: bold;
        position: absolute;
        margin-bottom: 10px
    }
        .sp-bule-box-wp{
            padding-right: 0px; 
             padding-left: 0px;
        }
        
        .more-mt{
            margin-top: 5rem;
        }
        
        .bule-box{
            margin: 0.5rem 1rem;
            padding: 0.5em;
            height: auto;
        }
        
        .bule-box-title{
            padding-top:0;
        }
    
        .bule-box-text {
            padding: 5px 5px 5px 5px;
        }
    
        .bule-box-h {
            margin-top: 17rem;
        }
    
        .member_img {
            max-width: 88%;
        }
    
        .member_text {
            width: 75%;
            font-size: 75%;
            left: 5%;
            top: 90%;
            height: 170%;
        }
    
        .member_text_2 {
            width: 75%;
            font-size: 75%;
            left: 21%;
            top: 95%;
            height: 170%;
        }    
    
        .shadow_box {
            width: 75%;
            height: 172%;
            left: 6%;
            top: 90%;
        }
    
        .shadow_box_2 {
            width: 75%;
            height: 172%;
            left: 22%;
            top: 97%;
        }
    
    
        .recruit_info_title {
            height: 20%;
        }
    
        .member_box_2 {
            margin-top: 30rem;
            margin-bottom:15rem;
        }
        
        .member_img_2{
            max-width: 88%;
        }
    
    .flowtitle {
        margin-top: 2rem;
        margin-bottom: 0rem;
        line-height:2.5rem;
    }
    
    .flowtitle_2{
        margin-bottom: 0;
    }
    
    .title2-m{
        margin-top:0.5em;
    }

    
    .trainingtext {
        width: 90%;
        font-size: 90%;
        margin: 0% 5%;
        left: 0px;
        top: 48%;
        line-height: 4vh;
        height: 50%;
    }
    


    .trainingcontent-bk{
        position: absolute;
    }
    
    .contents_service{
    display: block;
    }
    
    .recruit_info_text {
    padding-left:0%;
    }
    .benefits_list{
        position: absolute;
        width: 90%!important;
        margin:65% 5% 0% 5%;
    }
    
    .sp-position{
        margin-top: 115%;
    }
    .info-box {
        padding: 1em;
        margin: 1em 1rem;
    }
    .table-box {
        margin: 0 1rem;
    }
    
    .table-responsive2 th, .table-responsive2 td {
    font-size: 4vw;
    }
}

@media screen and (max-width: 360px) {
    .shadow_box{
        height: 202%;
    }
    
    .member_text{
        height: 200%;
    }
    .member_text_2{
        height:200%;
    }
    .shadow_box_2{
        height:202%;
    }
    .mt-flowtitle{
        margin-top:16rem;
    }
    
    .trainingtext{
        top: 46%;
        height: 53%;
    }
    
}

@media screen and (max-width: 340px) {
    .member_text{
        height: 225%;
    }
    
    .shadow_box{
        height: 227%;
    }
    
    .trainingtext {
    top: 42%;
    height: 56%;
    }
    
    
}