@charset "utf-8";

.zeh #h2-title::before {
    background-position: center bottom;
}

.zeh #contents .main .mainInner {
    padding-bottom: 16.666666666666664vw;
    padding-top: 14.583333333333334vw;
}

.zeh .article-area .inner {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

.zeh .article-area .article-head .inner {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    /*padding: 0 !important;*/
}

.zeh .article-area .article-head {
    width: 110px;
}

.zeh .article-area .article-body {
    width: 100%;
    margin: 0 0 0 -110px;
    padding: 0 0 0 170px;
}


.zeh .article-area .article-body .tableBox {
    padding: 60px 0;
    max-width: 835px;
    width: 100%;
    margin: 0 auto;
}

.zeh .article-area .article-body .tableBox p {
    text-align: right;
    font-size: 80%;
}

.zeh .article-area .article-body .tableBox table {
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
    margin: 0 auto 25px !important;
}

.zeh .article-area .article-body .tableBox table thead th {
    padding: 15px 7px;
    text-align: center;
    background-color: #d0eefd;
    font-weight: 600;
    border-right: 1px solid #FFFFFF;
}

.zeh .article-area .article-body .tableBox table tbody tr th,
.zeh .article-area .article-body .tableBox table tbody tr td {
    padding: 15px 7px;
    text-align: center;
    border-right: 1px solid #DFDFDF;
    border-bottom: 1px solid #CCCCCC;
}

.zeh .article-area .article-body .tableBox table tbody tr th {
    background-color: #fafdff !important;
}

.zeh .article-area .article-body .tableBox table tbody tr td:last-child {
    border-right: none;
}

.zeh .article-area .article-body .tableBox table tbody tr:last-child th {
    border-bottom: none;
}

.zeh .article-area .article-body .suppleBox {
    padding: 25px 0 0;
    font-size: 90%;
}

.zeh .article-area .article-body .suppleBox ol {
    list-style: none;
    counter-reset: supplenum;
}

.zeh .article-area .article-body .suppleBox ol li {
    padding: 0 0 0 70px;
    position: relative;
}

.zeh .article-area .article-body .suppleBox ol li::before {
    counter-increment: supplenum;
    content: '（※' counter(supplenum) '）';
    position: absolute;
    left: 0;
}

.zeh .article-area .article-body .goalbox {
    width: 100%;
}

.zeh .article-area .article-body .goalbox dl {
    display: table;
    max-width: 640px;
    margin: 0 auto;
    width: 100%;
    border: 1px solid #8cbbd2;
    font-weight: 600;
}

.zeh .article-area .article-body .goalbox dl dt,
.zeh .article-area .article-body .goalbox dl dd {
    display: table-cell;
    padding: 20px 10px;
    text-align: center;
}

.zeh .article-area .article-body .goalbox dl dt {
    background-color: #8cbbd2;
    color: #FFFFFF;
}

.zeh #contents:before {
    background-image: url(../images/zeh/contents-before.svg);
    /*width:217px;
    padding-top:194px;
    right:100px;
    top:25px*/
    width: 11.302083333333334vw;
    padding-top: 10.104166666666666vw;
    right: 5.208333333333334vw;
    top: 1.3020833333333335vw;
}

.zeh #contents .section-area.main .mainInner:after {
    background-image: url(../images/zeh/section-after.svg);
    /*width:151px;
    height: auto;
    padding-top: 200px;*/
    width: 7.864583333333333vw;
    height: auto;
    padding-top: 10.416666666666668vw;
    bottom: 3.125vw;
    right: 3.125vw;
    left: inherit;
}


@media screen and (max-width: 1280px) {
    .zeh #contents .main .mainInner {
        padding-bottom: 21.875vw;
        padding-top: 18.75vw;
    }

    .zeh #contents .section-area.main .mainInner:after {
        /*width:121px;
        height: auto;
        padding-top: 200px;*/
        width: 9.453125vw;
        padding-top: 12.5vw;
        bottom: 4.6875vw;
        right: 4.6875vw;
        left: inherit;
    }

    .zeh .article-area .article-head {
        /*width: 110px;*/
        width: 8.59375vw;
    }

    .zeh .article-area .article-body {
        /*margin: 0 0 0 -110px;
        padding: 0 0 0 170px;*/
        margin: 0 0 0 -8.59375vw;
        padding: 0 0 0 13.28125vw;
    }


    .zeh .article-area .article-body .tableBox {
        padding: 50px 0;
    }
}

@media screen and (max-width: 1136px) {
    .zeh .article-area .article-head {
        /*width: 110px;*/
        width: 9.683098591549296vw;
    }

    .zeh .article-area .article-body {
        /*margin: 0 0 0 -110px;
        padding: 0 0 0 170px;*/
        margin: 0 0 0 -9.683098591549296vw;
        padding: 0 0 0 14.964788732394366vw;
    }
}

@media screen and (max-width: 1024px) {


    .zeh .article-area .article-head {
        /*width: 100px;*/
        width: 9.765625vw;
    }

    .zeh .article-area .article-body {
        /*margin: 0 0 0 -100px;
        padding: 0 0 0 150px;*/
        margin: 0 0 0 -9.765625vw;
        padding: 0 0 0 14.6484375vw;
    }


    .zeh .article-area .article-body .tableBox {
        padding: 40px 0;
    }

    .zeh .article-area .article-body .tableBox table thead th {
        padding: 12.5px 5px;

    }

    .zeh .article-area .article-body .tableBox table tbody tr th,
    .zeh .article-area .article-body .tableBox table tbody tr td {
        padding: 12.5px 5px;
    }

    .zeh .article-area .article-body .suppleBox ol li {
        padding: 0px 0 0 60px;
    }

    .zeh .article-area .article-body .goalbox dl dt,
    .zeh .article-area .article-body .goalbox dl dd {
        padding: 15px 5px;
    }
}

@media screen and (max-width: 960px) {}

@media screen and (max-width: 835px) {
    .zeh .article-area .article-head {
        /*width: 90px;*/
        width: 10.778443113772456vw;
    }

    .zeh .article-area .article-body {
        /*margin: 0 0 0 -90px;
        padding: 0 0 0 130px;*/
        margin: 0 0 0 -10.778443113772456vw;
        padding: 0 0 0 17.964071856287426vw;
    }

}

@media screen and (max-width: 750px) {
    .zeh #contents:before {
        /*width:130px;
        padding-top:116px;
        right:80px;
        top:15px*/
        width: 17.333333333333336vw;
        padding-top: 15.466666666666667vw;
        right: 1.3333333333333335vw;
        top: 2vw;
    }

    .zeh .article-area .article-head {
        /*width: 80px;*/
        width: 10.666666666666668vw;
    }

    .zeh .article-area .article-body {
        /*margin: 0 0 0 -80px;
        padding: 0 0 0 110px;*/
        margin: 0 0 0 -10.666666666666668vw;
        padding: 0 0 0 14.666666666666666vw;
    }

    .zeh .article-area .article-body .tableBox {
        padding: 25px 0;
        ;
    }

    .zeh .article-area .article-body .tableBox table,
    .zeh .article-area .article-body .tableBox thead,
    .zeh .article-area .article-body .tableBox tbody,
    .zeh .article-area .article-body .tableBox tr,
    .zeh .article-area .article-body .tableBox th,
    .zeh .article-area .article-body .tableBox td {
        display: block;
        width: 100%;
    }

    .zeh .article-area .article-body .tableBox table {
        letter-spacing: 0;
        border: none !important
    }

    /* PC用の見出し行(年度)は非表示 */
    .zeh .article-area .article-body .tableBox table thead {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .zeh .article-area .article-body .tableBox table tbody tr {
        margin-bottom: 16px;
        border: 1px solid #CCCCCC;
        overflow: hidden;
    }

    .zeh .article-area .article-body .tableBox table tbody tr th {
        width: 100%;
        border: none;
        border-bottom: 1px solid #CCCCCC !important;
        background-color: #d0eefd !important;
        padding: 5px 10px !important;
        font-weight: 600;
    }

    .zeh .article-area .article-body .tableBox table tbody tr td {
        border: none;
        border-bottom: 1px solid #DFDFDF;
        text-align: right;
        padding: 10px 10px 10px 140px !important;
        position: relative;
        padding-left: 45%;
        border-bottom: 1px solid #CCCCCC !important;
    }

    .zeh .article-area .article-body .tableBox table tbody tr th,
    .zeh .article-area .article-body .tableBox table tbody tr td {
        padding: 15px 7px;
        text-align: center;
        border-right: none !important;
    }

    .zeh .article-area .article-body .tableBox tbody td:last-child {
        border-bottom: none !important;
    }

    /* data-label属性の値をセル左側に項目名として表示 */
    .zeh .article-area .article-body .tableBox tbody td::before {
        content: attr(data-label);
        background-color: #fafdff !important;
        position: absolute;
        left: 0;
        top: 0px;
        color: #666;
        font-weight: 500;
        height: 100%;
        width: 100px;
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        padding: 0 15px;
        border-right: 1px solid #DFDFDF;
    }
}

@media screen and (max-width: 640px) {
    .zeh #contents:before {
        /*top:200px;*/
        top: 31.25vw;
    }

    .zeh #contents .main .mainInner {
        padding-bottom: 26.5625vw;
        padding-top: 50.78125vw;
    }

    .zeh #contents .section-area.main .mainInner:after {
        width: 14.21875vw;
        padding-top: 18.75vw;
        bottom: 4.6875vw;
        right: 4.6875vw;
        left: inherit;
    }

    .zeh .article-area .article-head {
        /*width: 70px;*/
        width: 10.9375vw;
    }

    .zeh .article-area .article-body {
        /*margin: 0 0 0 -70px;
        padding: 0 0 0 95px;*/
        margin: 0 0 0 -10.9375vw;
        padding: 0 0 0 14.84375vw;
    }

}

@media screen and (max-width: 480px) {
    .zeh #contents:before {
        /*width: 22.083333333333332vw;
        padding-top: 14.791666666666666vw;
        right: 1.3333333333333335vw;
        top:150px*/
        top: 31.25vw;
    }

    .zeh #contents .main .mainInner {
        padding-top: 53.125vw;
        padding-bottom: 35.41666666666667vw;
    }

    .zeh #contents .section-area.main .mainInner:after {
        width: 18.958333333333332vw;
        padding-top: 25vw;
        bottom: 4.6875vw;
        right: 4.6875vw;
        left: inherit;
    }


    .zeh .article-area .article-body .tableBox table tbody tr td {
        padding: 5px 10px 5px 110px !important;
    }

    /* data-label属性の値をセル左側に項目名として表示 */
    .zeh .article-area .article-body .tableBox tbody td::before {

        width: 80px;
        padding: 0 10px;
    }

}

@media screen and (max-width: 350px) {}