@charset "utf-8";

.bg-area {
    background-color: #FFF7E0;
    background-size: 80px 80px;
    background-image: linear-gradient(rgba(246, 232, 190, 0.7) 1%, rgba(246, 232, 190, 0.7) 1%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0) 99%, rgba(246, 232, 190, 0.7) 99%, rgba(246, 232, 190, 0.7) 100%), linear-gradient(90deg, rgba(246, 232, 190, 0.7) 1%, rgba(246, 232, 190, 0.7) 1%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0) 99%, rgba(246, 232, 190, 0.7) 99%, rgba(246, 232, 190, 0.7) 100%), linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 25%, rgba(246, 232, 190, 0.4) 25%, rgba(246, 232, 190, 0.4) 26%, rgba(0, 0, 0, 0) 26%, rgba(0, 0, 0, 0) 50%, rgba(246, 232, 190, 0.4) 50%, rgba(246, 232, 190, 0.4) 51%, rgba(0, 0, 0, 0) 51%, rgba(0, 0, 0, 0) 75%, rgba(246, 232, 190, 0.4) 75%, rgba(246, 232, 190, 0.4) 76%, rgba(0, 0, 0, 0) 76%, rgba(0, 0, 0, 0) 100%), linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 25%, rgba(246, 232, 190, 0.4) 25%, rgba(246, 232, 190, 0.4) 26%, rgba(0, 0, 0, 0) 26%, rgba(0, 0, 0, 0) 50%, rgba(246, 232, 190, 0.4) 50%, rgba(246, 232, 190, 0.4) 51%, rgba(0, 0, 0, 0) 51%, rgba(0, 0, 0, 0) 75%, rgba(246, 232, 190, 0.4) 75%, rgba(246, 232, 190, 0.4) 76%, rgba(0, 0, 0, 0) 76%, rgba(0, 0, 0, 0) 100%);
}

.line-top {
    width: 100%;
    height: 30px;
    background-image: url(../../../images/color-line_top.png);
    background-size: contain;
    background-repeat: repeat-x;
}

.line-bottom {
    width: 100%;
    height: 30px;
    background-image: url(../../../images/color-line_bottom.png);
    background-position: left bottom;
    background-size: contain;
    background-repeat: repeat-x;
}

.title {
    width: 100%;
    height: 140px;
    background-color: #14A17A;
    background-image: radial-gradient(#31b791 1px, rgba(0, 0, 0, 0) 1px);
    background-size: 20px 20px;
}

.title-inner {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 42.5px 0 42.5px;
}

.title-inner img {
    max-width: 100%;
    height: auto;
}

.heading {
    max-width: 900px;
    margin: 0 auto;
    padding: 50px 0
}

.heading img {
    width: 353px;
    max-width: 100%;
    height: auto;
}

.flow {
    width: 100%;
    height: auto;
    margin-bottom: 5rem;
}

.flow-content {
    background-color: #ffffff;
    margin: 0 10px;
    padding: 3rem max(4.5rem,8%);
}

.recruitment .main .wrap.flow .flow-content div{
    margin-bottom: 1.5rem;
}

.flow-list {
    width: 100%;
    height: auto;
    margin: 2rem auto;
    display: flex;
    justify-content: space-between;
}

.flow-item.text-item {
    flex: 1 1 50%;
    height: auto;
}

.flow-item.img-item {
    flex: 1 1 50%;
    height: auto;
    text-align: right;
}

.flow-item ._title {
    font-size: 2.0rem;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 2.6rem;
    position: relative;
}

.flow-item ._title::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: linear-gradient(rgba(0, 0, 0, 0) 80%, #14a17a 80%);
    opacity: 0.5;
}

.flow-item ._text {
    font-size: 1.2em;
    line-height: 1.5em;
    margin-bottom: 30px;
    margin-right: 2rem;
    text-align:justify;
}

.text-item-container {
    text-align: center;
}

p.text-item {
    width: 70%;
    margin: 0 auto;
    font-size: 1.2em;
    margin-bottom: 1em;
    line-height: 1.5em;
}

/* 追記 */

br.br_sp {
    display: none;
}

/* 見出し（h2）の下線 */
.flow-content h2._title::after {
    content: "";
    position: absolute;
    width: 23rem;
    height: 2.5rem;
    left: 50%;
    transform: translate(-50%, 23%);
    background: linear-gradient(rgba(0, 0, 0, 0) 80%, #23a17a 80%);
}

.recruitment .main-img img {
    width: 100%;
    min-width: 15rem;
    height: auto;
}

.contents-header img {
    width: 100%;
}

#faq-section img {
    margin-top: 0.5rem;
}

table {
    margin: auto;
    margin-bottom: 5rem;
    border-spacing: 0;
    border-collapse: collapse;
    border: 1px solid #A3A3A3;    
}

th {
    max-width: 28rem;
    min-width: 8rem;
    font-weight: bold;
    padding: 1rem;
    background-color: #FFF8E0;
    border: 1px solid #A3A3A3;
    text-align: center;
    padding: 2rem 3rem;
}

td {
    border: 1px solid #A3A3A3;
    text-align: justify;
    padding: 2rem 3rem;
    line-height: 1.6em;
}

/* .table-wrapper ul {
    list-style: disc;
} */

.table-wrapper li {
    text-indent: -1.5rem;
    padding-left: 0.5rem;
}


.recruitment .main .wrap.flow .flow-contente {
    font-size: 2.2rem;
    padding: 30px 0;
    font-weight: bold;
    line-height: 2.2rem;
    text-align: center;
}

.recruitment .main .wrap.flow .flow-contente {
    font-size: 2.2rem;
    padding: 30px 0;
    font-weight: bold;
    line-height: 2.2rem;
    text-align: center;
}

.recruitment .main .wrap.flow h2._title {
    font-size: 2.2rem;
    padding: 30px 0;
    font-weight: bold;
    line-height: 2.2rem;
    text-align: center;
    padding-top: 5rem;
}

.contact-us-btn-container {
    text-align: center;
}

.contact-us-btn {
    display: inline-block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 1.6rem;
    color: #ffffff;
    background-color: #14A17A;
    border: none;
    border-radius: 25px;
    width: 100%;
    max-width: 28rem;
    padding: 1.5rem;
    position: relative;
    -webkit-filter: drop-shadow(0.6rem 0.6rem 0.3rem #d6d6d6);
            filter: drop-shadow(0.6rem 0.6rem 0.3rem #d6d6d6);
    -webkit-transition: -webkit-filter .8s;
    transition: -webkit-filter .8s;
    -o-transition: filter .8s;
    transition: filter .8s;
    transition: filter .8s, -webkit-filter .8s;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.contact-us-btn:hover,
.contact-us-btn:focus {
    -webkit-filter: drop-shadow(0rem 0rem 0rem #fff);
            filter: drop-shadow(0rem 0rem 0rem #fff);
    cursor: pointer;
}

.contact-us-btn:active {
    filter: contrast(130%);
}

@supports not (filter: contrast(100%)) {
    .contact-us-btn:active {
        opacity: 0.8;
    }
  }


@media screen and (max-width: 559px) {

    .title {
        height: 100px;
    }

    .title-inner {
        padding: 32.5px 0 32.5px;
    }

    .title-inner img {
        height: 35px;
        width: auto;
    }

    .heading img {
        max-width: min(95%,224px);
    }

    .flow-content {
        display: block;
        padding: 3rem 2rem;
    }

    .recruitment .main .wrap.flow h2._title {
        padding-top: 2rem;
        line-height: 2.9rem;
    }

    .recruitment .main .wrap.flow .flow-list {
        flex-direction: column;
    }

    br.br_sp {
        display: block;
    }

    .flow-item.text-item {
        width: 100%;
        flex: 1 1 100%;
        height: auto;
        padding-bottom: unset;
    }

    .flow-item.img-item {
        width: 100%;
        flex: 1 1 100%;
        height: auto;
        padding-bottom: unset;
    }

    .flow-item ._title {
        font-size: 1.8rem;
    }

    .flow-item ._text {
        font-size: 1em;
        margin-right: unset;
        padding-left: 5px;
    }

    p.text-item {
        width: 90%;
        margin: 0 auto;
        font-size: 1em;
        margin-bottom: 1em;
        line-height: 1.5em;
    }

    table {
        margin-bottom: 3rem;  
    }

    div.table-wrapper th,
    div.table-wrapper td {
        display: block;
        padding: 1rem 0px;
    }

    div.table-wrapper th {
        min-width: 100%;
        padding: 1rem 0px;
        border: 0px;
    }

    div.table-wrapper td {
        padding: 1rem;
        border: 0px;
        border-top: 1px solid #A3A3A3;
        border-bottom: 1px solid #A3A3A3;
        text-align: center;
    }

    /* tableタグのborderと重複しない為のスタイル */
    div.table-wrapper tr:last-child td {
        border-bottom: 0px;
    }

    /* .table-wrapper ul {
        padding-left: 16px;
    } */

    .table-wrapper li {
        text-indent: -0.5rem;
        padding-left: 0.5rem;
    }
    
    .contact-us-btn {
        width: 100%;
        padding: 1rem;
        line-height: normal;
    }
}
