@charset "utf-8";
.rec-ct02 {
    padding-top: 70px;
}

.rec-ct02-ct {
    background: url(../img/recruit/rec-img1.jpg) right top no-repeat;
    min-height: 674px;
    position: relative;
}

.rec-ct02-box {
    font-size: 18px;
    line-height: 160%;
    color: #fff;
    background: #0f3e80;
    padding: 60px 30px 45px 30px;
    display: inline-block;
    max-width: 240px;
    position: absolute;
    left: 50px;
    top: -40px;
}

.rec-ct02-box:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-top: 29px solid #ffd331;
    border-right: 34px solid transparent;
}

.wrap_recruit_row1 {
    margin-top: 120px;
    position: relative;
}

.recruit_row1_box2 {
    position: absolute;
    right: 0;
    bottom: 100px;
    background: rgba(255, 255, 255, 0.9);
    max-width: 610px;
    padding: 45px 80px;
    font-size: 24px;
    color: #0f3e80;
    line-height: 140%;
    border: solid 1px #859dbf;
}

.recruit_row1 {
    background: url(../img/recruit/rc1_1.jpg) left top no-repeat;
    min-height: 600px;
    position: relative;
}

.cl-ffd331 {
    color: #ffd331;
}

.rec-ct02-box-title {
    font-size: 30px;
    font-weight: bold;
    display: block;
    text-align: center;
}

.rec-ct02-info {
    position: absolute;
    bottom: 50px;
    left: 180px;
    background: url(../img/recruit/rec-img3.png) left top no-repeat;
    width: 720px;
    min-height: 188px;
    padding: 30px;
    color: #0f3e80;
    font-size: 24px;
    line-height: 140%;
}

.rec-ct02-info .f-18 {
    font-size: 18px !important;
}

.btn-rec-more {
    display: inline-block;
    float: right;
    padding-top: 10px;
}

.rec-ct03 {
    padding-top: 65px;
}

.rec-ct03-ct {
    background: url(../img/recruit/rec-img2.png) left top no-repeat;
    min-height: 1120px;
    position: relative;
}

.rec-ct03-box {
    font-size: 18px;
    line-height: 160%;
    color: #fff;
    background: #0f3e80;
    padding: 40px 0;
    display: block;
    max-width: 240px;
    position: relative;
    margin-left: 52px;
    margin-top: 70px;
    position: absolute;
    bottom: 0;
    letter-spacing: -1px;
}

.rec-ct03-box-title {
    font-size: 30px;
    font-weight: bold;
    display: block;
    text-align: center;
}

.rec-ct03-box:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-top: 29px solid #ffd331;
    border-right: 34px solid transparent;
}

.rec-ct03-info01 {
    position: absolute;
    top: 50px;
    left: 200px;
    background: url(../img/recruit/rec-img4.png) left top no-repeat;
    min-height: 340px;
    padding: 30px 30px 30px 150px;
    color: #0f3e80;
    font-size: 24px;
    line-height: 140%;
    width: 440px;
}

.rec-ct03-info01 .f-18 {
    font-size: 18px !important;
}

.rec-ct03-info01 .btn-rec-more {
    position: absolute;
    bottom: -18px;
    right: -40px;
}

.rec-ct03-info-title {
    display: inline-block;
    padding-bottom: 10px;
}

.rec-ct03-info02 {
    position: absolute;
    top: 490px;
    right: 170px;
    background: url(../img/recruit/rec-img5.png) left top no-repeat;
    min-height: 340px;
    padding: 30px 150px 30px 40px;
    color: #0f3e80;
    font-size: 24px;
    line-height: 140%;
    width: 440px;
}

.rec-ct03-info02 .f-18 {
    font-size: 18px !important;
}

.rec-ct03-info02 .btn-rec-more {
    position: absolute;
    bottom: -18px;
    right: 50px;
}

.rec-ct04 {
    width: 100%;
    overflow: hidden;
    margin-top: 115px;
    position: relative;
}

.rec-ct04 table {
    width: 100%;
}

.rec-ct04 table tr td {
    border-bottom: 1px #0f3e80 solid;
    border-top: 1px #0f3e80 solid;
    padding: 7px 0;
    color: #0f3e80;
    font-size: 18px;
    line-height: 27px;
    padding-left: 30px;
}

.rec-ct04 table tr td:first-child {
    white-space: nowrap;
    width: 240px;
    padding-left: 100px;
}

.rec-ct04 table tr:first-child td {
    border-top: none;
}

.preparation {
    padding-top: 80px;
    width: 100%;
    overflow: hidden;
    text-align: center;
    min-height: 500px;
}

.wrap_recruit_row2 {
    position: relative;
    width: 100%;
    margin-top: 115px;
}

.recruit_row_main {
    position: relative;
}

.esuke_info {
    position: absolute;
    top: -20px;
    right: 50px;
    width: 855px;
    background: url(../img/recruit/bg-rc1.png) right top no-repeat;
    min-height: 247px;
    padding: 60px 50px 60px 50px;
}
.esuke_info_b {
    position: absolute;
    top: 130px;
    right: 40px;
    width: 708px;
    background: url(../img/recruit/bg-rc2.png) right top no-repeat;
    min-height: 335px;
    padding: 70px 170px 60px 170px;
	font-size: 18px;
	color: #0f3e80;
	line-height: 140%;
}
.esuke_info_b p {
	font-weight: bold;
	line-height: 180%;
	margin-bottom: 10px;
}

.esuke_img2 {
    position: absolute;
    top: 230px;
    right: 0;
}

.esuke_info2 {
    position: relative;
    bottom: -25px;
    left: 50px;
    width: 100%;
    max-width: 850px;
    border: 1px #859dbf solid;
    background: rgba(255, 255, 255, 0.9);
    padding: 60px 50px 60px 50px;
}

.btn-rec-more {
    position: absolute;
    right: 50px;
    bottom: 37px;
}
.btn-rec-more_b {
    position: absolute;
    right: 180px;
    bottom: 0;
}
.btn-rec-more2 {
    position: absolute;
    right: 105px;
    bottom: -30px;
}

.esuke_info table th, .esuke_info table td {
    vertical-align: middle;
    font-size: 18px;
    color: #0f3e80;
    text-align: left
}

.esuke_info table th {
    font-weight: bold;
    line-height: 180%;
}

.esuke_info table td {
    line-height: 140%;
    padding-left: 30px;
}

.esuke_info_b table th, .esuke_info_b table td {
    vertical-align: middle;
    font-size: 18px;
    color: #0f3e80;
    text-align: left
}

.esuke_info_b table th {
    font-weight: bold;
    line-height: 180%;
}

.esuke_info_b table td {
    line-height: 140%;
    padding-left: 30px;
}



.esuke_info2 table th, .esuke_info2 table td {
    vertical-align: middle;
    font-size: 18px;
    color: #0f3e80;
    text-align: left
}

.esuke_info2 table th {
    font-weight: bold;
    line-height: 180%;
}

.esuke_info2 table td {
    line-height: 140%;
    padding-left: 30px;
}

.wrap_recruit_row3 {
    margin-top: 90px;
}

.recruit_row3_main {
    position: relative;
    width: 100%;
}

.application_des {
    background: url(../img/recruit/cr_bg3.png) right top no-repeat;
    min-height: 188px;
    padding: 45px 0 0 165px;
    width: 660px;
    font-size: 24px;
    color: #0f3e80;
    line-height: 140%;
    position: absolute;
    right: 60px;
    top: 55px;
}

.application_des2 {
    background: url(../img/recruit/cr-bg4.png) right top no-repeat;
    padding: 45px 50px;
    width: 580px;
    font-size: 24px;
    color: #0f3e80;
    line-height: 140%;
    position: absolute;
    right: 305px;
    bottom: -30px;
}

.rec-ct02-box2 {
    font-size: 18px;
    line-height: 160%;
    color: #fff;
    background: #0f3e80;
    padding: 60px 0 45px 30px;
    display: inline-block;
    max-width: 250px;
    position: absolute;
    left: 50px;
    bottom: -85px;
}

.rec-ct02-box2:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-top: 29px solid #ffd331;
    border-right: 34px solid transparent;
}

.rc_img_sp {
    display: none
}

.remodal_img {
    width: 50%;
    float: left;
    text-align: left;
}

.remodal_info {
    width: 50%;
    float: left;
    text-align: left;
    padding: 50px 50px 50px 40px;
    font-size: 16px;
    color: #000000;
}

.remodal_info_tt {
    font-size: 16px;
    font-weight: bold;
    color: #0f3e80;
    line-height: 140%;
}

.remodal_info_item {
    margin-bottom: 30px;
    line-height: 180%;
}
.Yusuke .remodal_info_item{
    margin-bottom: 25px;
}
.remodal_info_item:first-child {
    margin-top: 20px;
}

.remodal_info_item:last-child {
    margin-bottom: 0;
}

.remodal_q {
    color: #0f3e80;
    border-bottom: 1px solid #859dbf;
}

.remodal_a {
    padding-top: 5px;
}
.rc_br_hide{
    display: none
}

.top_des {
    font-size: 20px;
    color: #0f3e80;
    font-weight: bold;
    width: 100%;
    line-height: 140%;
    padding-top: 50px;
    padding-bottom: 20px;
}



/* RWD */

@media screen and (max-width:767px) {
	   .top_des{
       padding-top: 30px;
       padding-bottom: 20px;
       padding-left: 10px;
       padding-right: 10px;
   }
    .rec-ct04 table tr td {
        font-size: 14px;
        line-height: 160%;
    }
    .rec-ct04 table tr td:first-child {
        padding-left: 0;
        width: inherit;
    }
    .rec-ct02-box, .rec-ct02-info, .rec-ct03-info01, .rec-ct03-info02 {
        font-size: 14px;
        line-height: 160%;
    }
    .rec-ct02-box-title, .rec-ct03-box-title {
        font-size: 25px;
    }
    .wrap_recruit_row1 {
        margin-top: 40px;
    }
    .recruit_row1 {
        padding: 15px;
        background-size: cover;
        min-height: auto;
    }
    .rec-ct02-box {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        top: 0;
    }
    .recruit_row1_box2 {
        position: static;
        max-width: 100%;
        margin-top: 30px;
        font-size: 14px;
        padding: 15px;
    }
    .rec-ct02-info {
        background: rgba(255, 255, 255, 0.8);
        border: 1px #0f3e80 solid;
        width: 300px;
        left: 15px;
    }
    .rec-ct03-ct {
        background-size: contain;
        min-height: 850px;
    }
    .rec-ct03-info01, .rec-ct03-info02 {
        left: 15px;
        background: rgba(255, 255, 255, 0.8);
        border: 1px #0f3e80 solid;
        width: 300px;
        min-height: 210px;
        padding: 15px;
    }
    .rec-ct03-info02 {
        right: 55px;
        left: inherit;
        top: 310px;
    }
    .rec-ct03-info02 .btn-rec-more {
        right: -40px;
    }
    .rec-ct04 {
        padding-left: 10px;
        padding-right: 10px;
        margin-top: 30px;
    }
    .esuke_img {
        width: 100%;
        text-align: center;
    }
    .esuke_info, .esuke_info2 {
        position: relative;
        width: 100%;
        background-image: none;
        border: 1px #859dbf solid;
        background: rgba(255, 255, 255, 0.9);
        min-height: auto;
        margin-top: 15px;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        padding: 15px 15px 50px 15px;
    }
    .esuke_info_b {
        position: relative;
        width: 100%;
        background-image: none;
        border: 1px #859dbf solid;
        background: rgba(255, 255, 255, 0.9);
        min-height: auto;
        margin-top: 15px;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        padding: 15px 15px 50px 15px;
		font-size: 16px;
    }	
	
	
	
    .btn-rec-more img, .btn-rec-more2 img {
        max-width: 250px;
    }
    .esuke_img2 {
        position: relative;
        width: 100%;
        text-align: center;
        margin-top: 50px;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }
    .esuke_info2 {
        position: relative;
        width: 100%;
        background-image: none;
        border: 1px #859dbf solid;
        background: rgba(255, 255, 255, 0.9);
        min-height: auto;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }
    .wrap_recruit_row2 {
        padding-left: 10px;
        padding-right: 10px;
        margin-top: 50px;
    }
    .btn-rec-more, .btn-rec-more2 {
        bottom: -30px;
        right: 0;
        width: 100%;
        text-align: center;
        display: block;
    }
    .btn-rec-more_b {
        bottom: -30px;
        right: 0;
        width: 100%;
        text-align: center;
        display: block;
    }	
    .application_img {
        display: none
    }
    .wrap_recruit_row3 {
        padding-left: 10px;
        padding-right: 10px;
    }
    .rc_img_sp {
        display: block;
        width: 100%;
        text-align: center;
    }
    .application_des, .application_des2 {
        position: relative;
        width: 100%;
        background-image: none;
        border: 1px #859dbf solid;
        background: rgba(255, 255, 255, 0.9);
        padding: 15px;
        font-size: 16px;
        margin-top: 15px;
        margin-bottom: 15px;
        min-height: auto;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }
    .rec-ct02-box2 {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        top: 0;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        margin-bottom: 15px;
        padding-top: 40px;
    }
    .esuke_info table th, .esuke_info table td, .esuke_info2 table th, .esuke_info2 table td {
        display: block;
        width: 100%;
        font-size: 14px;
    }
    .esuke_info table td, .esuke_info2 table td {
        padding-left: 0;
    }
    .esuke_info_b table th, .esuke_info_b table td {
        display: block;
        width: 100%;
        font-size: 14px;
    }
    .esuke_info_b table td {
        padding-left: 0;
    }	
	
    .remodal_img{
        width: 100%;
        text-align: center;
    }
    .remodal_info{
        width: 100%;
        padding: 15px;
        margin-top: 30px;
    }
    .rc_br_hide{
        display: block
    }
    .remodal_info_item, .Yusuke .remodal_info_item{
        margin-bottom: 15px;
    }
    .remodal_info_item:first-child{
        margin-top: 15px;
    }
}

@media screen and (max-width: 640px) {
    .rec-ct03-ct {
        background-size: contain;
        min-height: 790px;
    }
    .rec-ct03-info01, .rec-ct03-info02 {
        width: 240px;
    }
    .rec-ct03-box {
        left: 50%;
        transform: translateX(-50%);
        margin-left: 0;
        width: 240px;
    }
}

@media screen and (max-width: 520px) {
    .rec-ct04 table tr td {
        font-size: 13px;
    }
    .rec-ct02-ct {
        min-height: 580px;
    }
    .rec-ct02-info {
        width: 240px;
        padding: 15px;
        left: 50%;
        transform: translateX(-50%);
    }
    .rec-ct03-info01 {
        transform: translateX(-50%);
        left: 50%;
    }
    .rec-ct03-info02 {
        transform: translateX(-50%);
        left: 50%;
        right: inherit;
    }
    .rec-ct03-info01 .btn-rec-more, .rec-ct03-info02 .btn-rec-more {
        right: 0;
    }
    .rec-ct04 table tr td {
        padding-left: 10px;
    }
    .rec-ct04 table tr td:first-child {
        padding-left: 0;
    }
}
@media screen and (max-width:480px) {
    .top_des{
        font-size: 18px;
    }
}









