/*-----------------------------------------仕事をお探しの方はこちら 採用情報 ファーストビュー-----------------------------------------*/

.subfirstview {
    background-color: #eef3fa;
    overflow: hidden;
}

.lowerview {
    max-width: 1300px;
    margin: 0 auto;
    padding: 100px 0 60px;
    position: relative;
}

.lower-title {
    text-align: left;
    position: relative;
    padding-left: 20px;
}

.lower-title h2 {
    font-size: 56px;
    letter-spacing: 0.1em;
    margin: 0;
    position: relative;
    color: #0e5797;
}

.lower-title p {
    font-size: 14px;
    color: #0e5797;
    margin-bottom: 10px;
    font-weight: bold;
}

.underline {
    position: absolute;
    top: 85%;
    height: 2px;
    background-color: #0e5797;
    margin-top: 0;
    left: -650px;
    width: 0;
    transition: width 0.4s ease;
}



@media screen and (max-width:1024px) {
    .lower-title h2 {
        font-size: 36px;
    }
}

@media screen and (max-width: 767px) {
    .lower-title h2 {
        font-size: 28px;
    }
}

@media screen and (max-width: 480px) {
    .lower-title h2 {
        font-size: 24px;
    }
}



/*-----------------------------------------パンクズリスト-----------------------------------------*/

.breadcrumbs {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 20px;
    padding-bottom: 50px;
    font-size: 12px;
}

.breadcrumbs a {
    color: #0e5797;
}



/*-----------------------------------------メニューリスト-----------------------------------------*/

.transition_container {
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 10px;
    padding-bottom: 50px;
    max-width: 1300px;
    margin: 0 auto;
}

.transition_box {
    position: relative;
}

.transition_box a {
    color: #0e5797;
    position: relative;
}


.transition_box a.btn_tr {
    text-align: left;
    position: relative;
    text-decoration: none;
    display: inline-block;
    background-color: #fff;
    border-radius: 4px;
    padding: 20px 40px 20px 20px;
    color: #0e5797;
    transition: all 0.3s;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
    border-radius: 50px;
    width: 100%;
}

.transition_box a.btn_tr:before,
.transition_box a.btn_tr:after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: all 0.3s;
}

.transition_box a.btn_tr:before {
    right: 15px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #0e5797;
}

.transition_box a.btn_tr:after {
    right: 24.5px;
    bottom: 2px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.transition_box a.btn_tr:hover {
    background-color: #0e5797;
    color: #fff;
}

.transition_box a.btn_tr:hover:before {
    background: #fff;
}

.transition_box a.btn_tr:hover:after {
    border-color: #0e5797;
}

@media screen and (max-width:480px) {
    .transition_container {
        grid-template-columns: auto auto;
    }
}


/*-----------------------------------------ファースト画像-----------------------------------------*/

.subview {
    position: relative;
    top: -50px;
    background: url(../images/member.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center 75%;
    border-radius: 0 50px 0 0;
    width: 95%;
    height: 450px;
    margin-bottom: 50px;
}


/*-----------------------------------------採用情報 拠点 01 page-recruit.php single-recruit.php-----------------------------------------*/


#section01 {
    background: #fff;
}


#section02 {
    background-color: #fff;
}

.support {
    padding: 50px 20px 100px;
    max-width: 1300px;
    margin: 0 auto;
}

.support_container {
    display: block;
    overflow: hidden;
}

.support_container .support-title01 {
    padding: 15px 30px 15px 30px;
    margin-bottom: 20px;
    background-color: #0e5797;
    color: #fff;
    text-align: left;
    border-radius: 0 18px 0 18px;
    width: 100%;
    margin: 0 0 20px auto;
}

.support-title01 h3 {
    color: #fff;
}


.support_left img {
    width: 100%;
    border-radius: 20px;
}


/*-----------------------------------------採用情報 詳細ページ 01 single-recruit.php-----------------------------------------*/
/*-----------------------------------------スライドショー single-recruit.php-----------------------------------------*/

.slider_boxarea {
    position: relative;
    width: 100%;
    height: 650px;
    margin: 0 auto;
    overflow: hidden;
}

.slide_box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s;
}

.slide_box.active {
    opacity: 1;
}

.slider_boxarea img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* サムネイル */
.thumbnail_box {
    width: 100%;
    margin: 10px auto 0;
    display: flex;
    justify-content: flex-start;
    flex-wrap: nowrap;
    box-sizing: border-box;
}

.thumbnail_box .thumb {
    width: 25%;
    aspect-ratio: 2 / 1;
    object-fit: cover;
    cursor: pointer;
    opacity: 0.6;
    border: 2px solid transparent;
    transition: opacity 0.3s, border 0.3s;
}

.thumbnail_box .thumb.active {
    opacity: 1;
    border: 2px solid #333;
}



.support_txt h3 {
    color: #0e5797;
    margin: 50px 0 30px;
}

.support_txt p {
    line-height: 2;
}


.table_design {
    width: 100%;
    text-align: center;
    border-collapse: collapse;
    border-spacing: 0;
}

.table_design th,
.table_design td {
    font-family: "Noto Sans JP", sans-serif;
    padding: 20px 10px;
    border-bottom: solid 1px #eee;
    text-align: left;
}

.table_design th:nth-child(1) {
    border-bottom: solid 1px #778ca3;
}


.table_support {
    margin-top: 50px;
}

.gmap {
    margin: 50px 0;
    padding-bottom: 100px;
    border-bottom: 1px solid #eee;
}

.gmap iframe {
    vertical-align: bottom;
}


.btn_bk {
    background-color: #fff;
}

.btn_support_area {
    padding-top: 50px;
    /*display: grid;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);*/
    display: flex;
    justify-content: center;
    gap: 20px;
    text-align: center;
    max-width: 750px;
    margin: 0 auto;
}

.btn01_area{
    width: 50%;
}

.btn01_area a {
    display: block;
    text-align: center;
    border: 1px solid #0e5797;
    border-radius: 10px;
    padding: 30px 10px;
    background-color: #0e5797;
    color: #fff;
    transition: 0.3s;
    position: relative;
}

.btn01_area a:hover {
    display: block;
    text-align: center;
    border: 1px solid #0e5797;
    border-radius: 10px;
    padding: 30px 10px;
    background-color: #fff;
    color: #0e5797;
}

.btn01_area i {
    position: absolute;
    top: 50%;
    right: 6%;
    transform: translate(-50%, -50%);
}

.btn02_area{
    width: 50%;
}

.btn02_area a {
    display: block;
    text-align: center;
    border: 1px solid #3bb88d;
    border-radius: 10px;
    padding: 30px 10px;
    background-color: #3bb88d;
    color: #fff;
    transition: 0.3s;
    position: relative;
}

.btn02_area a:hover {
    display: block;
    text-align: center;
    border: 1px solid #3bb88d;
    border-radius: 10px;
    padding: 30px 10px;
    background-color: #fff;
    color: #3bb88d;
}

.btn01_area_bk:first-child{
    margin: 0 0 0 20px;
}

.btn02_area_bk:last-child{
    margin: 0 20px 0 0;
}


@media screen and (max-width:540px) {
    .btn_support_area {
        grid-template-columns: auto;
        flex-wrap: wrap;
    }
    .btn01_area{
        width:100%;
    }
    .btn02_area{
        width:100%;
    }
    .btn_support_area_bk{
        margin: 0 20px;
    }
    .btn01_area_bk:first-child{
        margin: 0;
    }

    .btn02_area_bk:last-child{
        margin: 0;
    }
    
}

@media screen and (max-width:480px) {
    .slider_boxarea {
        height: 250px;
    }

    .table_design_recruit_sp tr {
        display: flex;
        flex-wrap: wrap;
    }

    .table_design_recruit_sp th,
    .table_design_recruit_sp td {
        width: 100%;
    }

    .gmap {
        margin: 50px 0 0;
    }

    .gmap iframe {
        height: 300px;
    }

    .support_left img {
        border-radius: 10px;
    }
}



/*-----------------------------------------就職者の声 02 採用情報詳細ページ-----------------------------------------*/

.voice {
    padding: 50px 20px 100px;
    max-width: 1300px;
    margin: 0 auto;
}

.voice_area {
    display: grid;
    grid-template-columns: calc(50% - 15px) calc(50% - 15px);
    gap: 30px;
}

.voice_area h3 {
    color: #0e5797;
    margin: 0px 0 30px;
}

.voice_area p {
    margin: 5px 0;
    font-family: sans-serif;
}

.voice_box {
    background-color: #dee8f3;
    padding: 40px;
    border-radius: 20px;
}

/* 投稿ID 33 だけ */
.postid-33 .voice_area {
    display: grid;
    grid-template-columns: auto;
    gap: 30px;
}


@media screen and (max-width:999px) {
    .voice_area {
        grid-template-columns: auto;
    }
}

@media screen and (max-width:480px) {
    .voice {
        padding: 50px 20px 50px;
    }
}


/*-----------------------------------------就労までの流れ 採用情報詳細ページ 02 single-recruit.php-----------------------------------------*/


#section03 {
    background-color: #eef3fa;
}

.flow {
    padding: 50px 20px 100px;
    max-width: 1300px;
    margin: 0 auto;
}

.flow img {
    margin-top: 100px;
    width: 100%;
}


.flow_h2 h2 {
    margin-bottom: 50px;
    text-align: left;
}

.flow_h2 h2 {
    font-size: 56px;
}

.flow_h2 span {
    display: block;
    font-size: 14px;
    color: #0e5797;
}


.flow_flex {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 50px;
}

.flow_box {
    width: 23%;
}

.flow_box img {
    width: 100%;
}

.flow_box h3 {
    margin: 25px auto;
    text-align: center;
    font-size: 24px;
}


@media screen and (min-width:960px) and (max-width:1300px) {
    .flow_box h3 {
        margin: 25px auto;
        text-align: center;
        font-size: 20px;
    }
}

@media screen and (min-width:540px) and (max-width:959px) {
    .flow_box {
        width: 45%;
    }

    .flow_box h3 {
        margin: 25px auto;
        text-align: center;
        font-size: 20px;
    }
}

@media screen and (max-width:539px) {
    .flow_box {
        margin: 0 auto;
        width: 100%;
        text-align: center;
    }

    .flow_box img {
        width: 50%;
    }

    .flow_box h3 {
        margin: 25px auto;
        text-align: center;
        font-size: 18px;
    }

    .flow_box h3 br {
        display: none;
    }

    .flow_box p {
        text-align: left !important;
    }
}

@media screen and (max-width:480px) {
    .flow {
        padding: 50px 20px 50px;
    }

    .flow img {
        margin-top: 20px;
    }
}

@media screen and (max-width:1024px) {
    .flow_h2 h2 {
        font-size: 36px;
    }
}

@media screen and (max-width:767px) {
    .flow_h2 h2 {
        font-size: 28px;
    }
}

@media screen and (max-width:480px) {
    .flow_h2 h2 {
        font-size: 24px;
    }
}


/*-----------------------------------------応募・見学 ボタン-----------------------------------------*/

.retrun_area {
    background-color: #fff;
    padding-top: 50px;
    padding-bottom: 100px;
    margin: 0;
}

.retrun {
    position: relative;
    max-width: 200px;
    margin: 0 auto;
}


.retrun a {
    width: 250px;
    font-size: 13px;
    font-weight: bold;
    background-color: #0e5797;
    color: #fff;
    border-radius: 10px;
    padding: 15px 35px 15px 30px;
    transition: 0.3s;
}


.retrun a:hover {
    background-color: #fff;
    color: #0e5797;
    border-radius: 10px;
    padding: 15px 35px 15px 30px;
}


.retrun::before {
    content: "";
    display: block;
    position: absolute;
    width: 15px;
    height: 1px;
    background: #fff;
    top: 0;
    right: 15px;
    bottom: 0;
    margin: auto;
    z-index: 1;
    transition: 0.3s;
}

.retrun::after {
    content: "";
    display: block;
    position: absolute;
    width: 8px;
    height: 1px;
    background: #fff;
    rotate: 40deg;
    top: -5px;
    right: 14px;
    bottom: 0;
    margin: auto;
    z-index: 1;
    transition: 0.3s;
}

.retrun:hover::after,
.retrun:hover::before {
    background: #0e5797 !important;
}

.retrun span {
    font-size: 18px;
}
