@charset "UTF-8";
/*

    OFFSHORE Theme Recruit

*/

.bold {
    font-weight: bold;
}
.position {
    font-weight: normal;
    font-size: 1.4rem;
}

a {
    color: #333333;
    text-decoration: underline;
}
a:hover {
    text-decoration: none;
}

.textCenter {
    text-align: center;
}
.textRight {
    text-align: right;
}


/* ---------------------------------------------------------

    SECTION

------------------------------------------------------------ */

.upperLine {
    border-bottom: 1px solid #6ABB3A;
}
.localNav {
    width: 960px;
    margin: 0 auto;
    padding: 12px 0;
}
.localNav ul {
    list-style: none;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.localNav ul li {
    font-size: 1.4rem;
    line-height: 1.4;
    background-image: url(../../comm/img/sp_arrow_b.png);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    padding: 0 0 0 20px;
    margin: 8px 26px 8px 0;
}
.activePage {
    color: #6ABB3A;
}

#recruitConcept h2 {
    color: #6ABB3A;
    font-size: 2.0rem;
    font-weight: bold;
}
#recruitConcept .flex {
    display: flex;
    justify-content: space-between;
}
#recruitConcept .flex>div {
    width: 465px;
    font-size: 1.4rem;
    height: 1.6;
}

#recruitConcept .sign {
    width: 105px;
    height: auto;
}

.seven_inner {
    width: 700px;
    padding: 25px 38px 25px 38px;
    margin: 0 auto;
    background-color: #FFF4C8;
}
.seven_inner dt {
    float:left;
    clear:left;
    width:150px;
    margin: 0 10px 15px 0;
}
.seven_inner dt img {
    width: 150px;
    height: auto;
}
.seven_inner dd {
    float:left;
}

.jobCategory {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
}
.jobCategory li {
    display: block;
    width: 230px;
    background-color: #EAEAEA;
}
.jobCategory .categoryPhoto {
    width: 100%;
    height: auto;
}
.jobCategory .jobCategoryEle {
    padding: 15px 10px; 
}
.jobCategory a {
    text-decoration: none;
}
.jobCategory h2 {
    font-size: 1.6rem;
    color: #6ABB3A;
    margin-bottom: 25px;
}
.jobCategory p {
    font-size: 1.4rem;
    color: #000000;
}
.jobCategory .arrow {
    width: 16px;
    height: 16px;
    margin: 0 7px 6px 0;
}

#jobDetail p {
    font-size: 1.4rem;
}
#jobDetail h2 {
    color: #6ABB3A;
    line-height: 1.4;
    font-size: 2.4rem;
}
#jobDetail h2 .h2_sub {
    font-size: 1.6rem;
    font-weight: normal;
}
#jobDetail .flex {
    display: flex;
    align-items: flex-start;
    
}
#jobDetail .flex>*:first-child {
    margin-right: 25px;
}

.jobThumbnail {
    border-top: 1px dotted #ddd;
}
.jobThumbnail nav {
    width: 613px;
    margin: 0 auto;
}
.jobThumbnail nav ul {
    list-style: none;
    display: flex;
    justify-content: space-between;
}
.jobThumbnail nav ul li {
    font-size: 1.2rem;
}

#recruitInfo p,
#recruitInfo td {
    font-size: 1.4rem;
    line-height: 1.4;
}

#recruitInfo #new p {
    line-height: 4;
}

#recruitInfo h2 {
    display: block;
    width: 100%;
    padding: 8px 0 0 16px;
    height: 40px;
    background-color: #6ABB3A;
    line-height: 1;
}

#recruitInfo table {
    width: 100%;
    border-collapse: collapse;
}
#recruitInfo tr {
    border-bottom: 1px solid #A2A2A2;
}
#recruitInfo tr:first-child {
    border-top: 1px solid #A2A2A2;
}
#recruitInfo th,
#recruitInfo td {
    padding: 12px 25px;
    background-color: #FFFFFF;
}
#recruitInfo th {
    width: 160px;
    font-size: 1.6rem;
    font-weight: bold;
    background-color: #E3E3E3;
}
#recruitInfo td,
#recruitInfo td li {
    font-size: 1.4rem;
}
#recruitInfo table ul {
    margin-left: 20px;
}
#recruitInfo h2.entry {
    background-color: #FF8000;
}
#recruitInfo .entryFlow dt {
    font-size: 1.8rem;
    font-weight: bold;
    color: #FF8000;
    margin-bottom: 15px;
}
#recruitInfo .entryFlow dd {
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding-left: 20px;
}
#recruitInfo .address {
    font-size: 1.4rem;
    margin-top: 20px;
}

#recruitInfo .privacy {
    padding: 18px 0;
    border-top: 1px dotted #A4A4A4;
    border-bottom: 1px dotted #A4A4A4;
}
#recruitInfo .privacy h2 {
    background: none;
    padding: 0;
    margin-bottom: 15px;
    text-align: center;
    font-size: 1.4rem;
    font-weight: bold;
}
#recruitInfo .privacy dt,
#recruitInfo .privacy dd {
    font-size: 1.2rem;
}
#recruitInfo .privacy dt {
    font-weight: bold;
}
#recruitInfo .privacy dd {
    padding-left: 12px;
    margin-bottom: 15px;
}
#recruitInfo .complaint {
    font-size: 1.4rem;
}

#recruitConcept h2 {
    color: #6ABB3A;
    font-size: 2.0rem;
    font-weight: bold;
}
#recruitConcept .flex {
    display: flex;
    justify-content: space-between;
}
#recruitConcept .flex>div {
    width: 465px;
    font-size: 1.4rem;
    height: 1.6;
}

#recruitConcept .sign {
    width: 105px;
    height: auto;
}


/* ---------------------------------------------------------

    RESPONSIVE

------------------------------------------------------------ */

@media (max-width: 767px) {

    #recruitConcept h2 {
        font-size: 1.4rem;
    }
    #recruitConcept .flex {
        display: block;
    }
    #recruitConcept .flex>div {
        width: 100%;
        font-size: 1.2rem;
        line-height: 1.6;
    }

    #recruitConcept .sign {
        width: 70px;
        height: auto;
    }
    
    .seven_inner {
        width: 100%;
        padding: 13px 16px 13px 16px;
        margin: 0 auto;
        background-color: #FFF4C8;
    }
    #recruitConcept p {
        font-size: 1.2rem;
    }

    .seven_inner dt {
        float:none;
        clear:none;
        margin: 0 0 5px 0;
    }
    .seven_inner dt img {
        width: 112.5px;
        height: auto;
    }
    .seven_inner dd {
        float:none;
        margin: 0 0 10px 0;
        font-size: 1.1rem;
    }
    
    #recruitCategory p {
        font-size: 1.2rem;
    }
    .jobCategory li {
        width: 46%;
        margin: 2%;
    }
    .jobCategory .jobCategoryEle {
        padding: 15px 10px; 
    }
    .jobCategory h2 {
        font-size: 1.3rem;
    }
    .jobCategory p {
        font-size: 1.4rem;
    }
    .jobCategory .arrow {
        width: 12px;
        height: 12px;
        margin: 0 7px 6px 0;
    }

    #jobDetail p.naText {
        font-size: 1.0rem;
    }
    #jobDetail .flex {
        display: block;
    }
    #jobDetail .flex>*:first-child {
        margin-right: 0;
    }
    #jobDetail .flex img {
        margin-top: 15px;
    }
    
    #recruitInfo h2 {
        padding: 10px 4px;
        height: auto;
    }
    #recruitInfo h2 img {
        display: block;
        margin: 0 auto;
    }

    #recruitInfo th,
    #recruitInfo td {
        padding: 6px 10px;
    }
    #recruitInfo th {
        width: auto;
        white-space: nowrap;
        font-size: 1.1rem;
    }
    #recruitInfo td,
    #recruitInfo td li {
        font-size: 1.1rem;
    }

    #recruitInfo .entryFlow dt {
        font-size: 1.2rem;
        margin-bottom: 7px;
    }
    #recruitInfo .entryFlow dd {
        font-size: 1.2rem;
        margin-bottom: 10px;
        padding-left: 10px;
    }
    #recruitInfo .address {
        font-size: 1.2rem;
        margin-top: 10px;
    }

    #recruitInfo .privacy dt,
    #recruitInfo .privacy dd {
        font-size: 1.0rem;
    }
    #recruitInfo .privacy dd {
        padding-left: 10px;
        margin-bottom: 7px;
    }
    #recruitInfo .complaint {
        font-size: 1.2rem;
    }
}
