/* Browser Reset
================================================ */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, pre, a, img, dl, dt, dd, ol, ul, li, label, table, tbody, thead, tr, th, td, article, header, hgroup, menu, nav, section {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

footer, header, hgroup, menu, nav, section {
    display: block;
}

ol, ul {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

a {
    text-decoration: none;
    color: inherit;
}

.container {
    max-width: 1440px;
}
/* common
================================================ */
body {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    color: #222;
    line-height: 1.5em;
}

a.underline {
    display: inline-block;
    color: #999;
    border-bottom: 1px solid #999;
}

    a.underline:hover {
        color: #222;
    }

table {
    width: 100%;
    border-top: 1px solid #DDD;
}
    table.borderless {
        border-top: none;
    }

    table tr {
        border-bottom: 1px solid #DDD;
    }

        table tr.borderless {
            border-bottom: none;
        }

        table tr th, table tr td {
            height: 70px;
            vertical-align: middle;
        }

        table tr th {
            font-weight: 500;
            text-align: left;
        }

    table.typeA tr th {
        width: 14%;
    }

    table.typeA tr td {
        width: 36%;
    }

    table.typeB tr th {
        width: 14%;
    }

    table.typeB tr td {
        width: 86%;
    }

    table.typeC {
        border-top: none;
        table-layout: fixed;
    }
        /* thead,tbody に分けている為、1行目の罫線なしが不要。(bootstrap-table では thead が必要) */
        /*table.typeC tr:first-child { border-bottom: none; }*/
        table.typeC tr th, table.typeC tr td {
            height: 60px;
            padding-left: 20px;
            padding-right: 20px;
        }

            table.typeC tr th.btncell-three, table.typeC tr td.btncell-three {
                width: 330px;
            }

            table.typeC tr th.btncell-two-a, table.typeC tr td.btncell-two-a {
                width: 260px;
            }

            table.typeC tr th.btncell-two-b, table.typeC tr td.btncell-two-b {
                width: 210px;
            }

            table.typeC tr th.btncell-one, table.typeC tr td.btncell-one {
                width: 120px;
            }

        table.typeC tr th {
            font-weight: 500;
            background-color: #EBEEF3;
        }

input[type="text"] {
    padding: 9px 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
}

    input[type="text"].w-small {
        width: 240px;
    }

    input[type="text"].w-medium {
        width: 480px;
    }

    input[type="text"].w-large {
        width: 70%;
    }

    input[type="text"].w-full {
        width: 95%;
    }

    input[type="text"].w-390 {
        width: 390px;
    }

/* email、password のスタイルを追加 */
input[type="email"] {
    padding: 9px 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
}

    input[type="email"].w-small {
        width: 240px;
    }

    input[type="email"].w-medium {
        width: 480px;
    }

    input[type="email"].w-large {
        width: 70%;
    }

    input[type="email"].w-full {
        width: 95%;
    }

    input[type="email"].w-390 {
        width: 390px;
    }

input[type="password"] {
    padding: 9px 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
}

    input[type="password"].w-small {
        width: 240px;
    }

    input[type="password"].w-medium {
        width: 480px;
    }

    input[type="password"].w-large {
        width: 70%;
    }

    input[type="password"].w-full {
        width: 95%;
    }

    input[type="password"].w-390 {
        width: 390px;
    }

select[readonly] {
    pointer-events: none;
    filter: none;
    background-color: #E9ECEF;
    /*opacity: .5;*/
}

input[type="radio"][readonly],
input[type="radio"][readonly] + label,
input[type="checkbox"][readonly],
input[type="checkbox"][readonly] + label {
    pointer-events: none;
    filter: none;
    opacity: .5;
}

input[type="radio"] {
    width: 20px;
    height: 20px;
    border: 2px solid #CCC;
    vertical-align: -4px;
    margin-right: 5px;
}

input[type="checkbox"] {
    width: 20px;
    height: 20px;
    vertical-align: -4px;
    margin: 0 5px 0 0;
}

input[type="number"] {
    padding: 9px 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
}

input[type="date"] {
    padding: 9px 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
}

input[type="datetime-local"] {
    padding: 9px 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
}

/* textarea のサイズを追加 */
textarea {
    padding: 9px 10px;
    font-size: 16px;
    line-height: 1.5em;
    border: 2px solid #CCC;
    border-radius: 5px;
    box-sizing: border-box;
}

    textarea.w-small {
        width: 240px;
    }

    textarea.w-medium {
        width: 480px;
    }

    textarea.w-large {
        width: 70%;
    }

    textarea.w-full {
        width: 100%;
    }

    textarea.w-390 {
        width: 390px;
    }

    textarea.h-6line {
        height: 10.5em;
    }

    textarea.h-16line {
        height: 25em;
    }

select {
    -webkit-appearance: none;
    appearance: none;
}

    select::-ms-expand {
        display: none;
    }

select {
    width: 504px;
    height: 40px;
    padding-left: 10px;
    font-size: 16px;
    border: 2px solid #CCC;
    border-radius: 5px;
    background-image: url(../img/arrow_pulldown.svg);
    background-position: right 2px center;
    background-repeat: no-repeat;
}

    select:disabled {
        background-image: none;
    }

.selectbox {
    position: relative;
}

button {
    cursor: pointer;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1em;
    font-weight: 400;
}

.flbox__sb-nwrp {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
}

.flbox__sb-nwrp-fs {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.flbox__fs-nwrp {
    display: flex;
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: center;
}

.flbox__fe-nwrp {
    display: flex;
    justify-content: flex-end;
    flex-wrap: nowrap;
    align-items: center;
}

.flbox__fe-nwrp .flbox__item-left {
    margin-right: auto;
}

.flbox__fe-nwrp-fs {
    display: flex;
    justify-content: flex-end;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.flbox__cnt-nwrp {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    align-items: center;
}

.flbox__ai-end {
    align-items: flex-end;
}

/* ボタン配置の設定(中央揃えと右揃えが存在する場合の設定(使用画面：事業体：利用者情報) */
/* 中央揃えが存在しない場合 */
.flbox__cnt-nwrp-right {
    position: relative;
    left: 508px;
}

/* 中央揃えが存在する場合 */
.flbox__cnt-nwrp + .flbox__cnt-nwrp-right {
    position: relative;
    left: 298px;
}

.fc-atten {
    color: #D40505;
}

.fs-18 {
    font-size: 1.125em;
    line-height: 1.5em;
}

.ta-center {
    text-align: center;
}

.bgc-lg {
    background-color: #EEE;
}

.bgc-lgreen {
    background-color: #ECF4E1;
}

/* 背景色の設定(使用画面：事業体：審査チェックリスト) */
.bgc-lblue {
    background-color: #E5F0F8;
}

/* ============================================================================
 * サイズ(幅)指定
 * ========================================================================= */
/* %指定 */
.wd-4p {
    width: 4%;
}

.wd-5p {
    width: 5%;
}

.wd-10p {
    width: 10%;
}

.wd-13p {
    width: 13%;
}

.wd-15p {
    width: 15%;
}

.wd-20p {
    width: 20%;
}

.wd-25p {
    width: 25%;
}

.wd-30p {
    width: 30%;
}

.wd-35p {
    width: 35%;
}

.wd-40p {
    width: 40%;
}

.wd-45p {
    width: 45%;
}

.wd-50p {
    width: 50%;
}

.wd-75p {
    width: 75%;
}

.wd-87p {
    width: 87%;
}

.wd-full {
    width: 100%;
}

/* em指定 */
.wd-6em {
    width: 6em;
}

.wd-8em {
    width: 8em;
}

.wd-10em {
    width: 10em;
}

.wd-12em {
    width: 12em;
}

.wd-14em {
    width: 14em;
}

.wd-16em {
    width: 16em;
}

.wd-20em {
    width: 20em;
}

.wd-67em {
    width: 67em;
}

.mt-10 {
    margin-top: 10px;
}

.mt-15 {
    margin-top: 15px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-25 {
    margin-top: 25px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-50 {
    margin-top: 50px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mb-40 {
    margin-bottom: 40px;
}

.ml-3 {
    margin-left: 10px;
}

.ml-10 {
    margin-left: 10px;
}

.ml-35 {
    margin-left: 35px;
}

/* Header
================================================ */
.header {
    width: 100%;
    background-color: #222222;
}

.header__outer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    max-width: 1440px;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px;
}

.header__name {
    padding: 23px 0;
    font-size: 1.25em;
    font-weight: 600;
    color: #FFF;
}

.header__account {
    color: #FFFFFF;
}
.header__account a:hover{
    color: #FFFFFF;
}

    .header__account a.user-g::before {
        content: url("../img/icon_avatar_u.svg");
        vertical-align: middle;
        margin-right: 10px;
    }

    .header__account a.user-g::after {
        content: url("../img/arrow_right_g.svg");
        vertical-align: middle;
        margin-left: 8px;
        position: relative;
        bottom: 3px;
    }

    .header__account a.user-b::before {
        content: url("../img/icon_avatar_p.svg");
        vertical-align: middle;
        margin-right: 10px;
    }

    .header__account a.user-b::after {
        content: url("../img/arrow_right_b.svg");
        vertical-align: middle;
        margin-left: 8px;
        position: relative;
        bottom: 3px;
    }

    /*利用者とベンダーは三角形のアイコンを表示しない*/
    .header__account p.user-g::before {
        content: url("../img/icon_avatar_u.svg");
        vertical-align: middle;
        margin-right: 10px;
    }

    .header__account p.user-b::before {
        content: url("../img/icon_avatar_p.svg");
        vertical-align: middle;
        margin-right: 10px;
    }

/* Nav Menu
================================================ */
.navmenu {
    width: 100%;
}

.navmenu__outer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: nowrap;
    max-width: 1440px;
    margin: 0 auto;
    padding: 10px 40px;
}

.navmenu__item a {
    display: block;
    width: 10.5em;
    padding: 16px 0;
    color: #FFF;
    text-align: center;
}

    .navmenu__item a.userinfo::before {
        content: url("../img/icon_user.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 1px;
    }

    .navmenu__item a.inquiry::before {
        content: url("../img/icon_mail.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 1px;
    }

    .navmenu__item a.forms::before {
        content: url("../img/icon_forms.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: -1px;
    }

    .navmenu__item a.logout::before {
        content: url("../img/icon_logout.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 0;
    }

    .navmenu__item a.mainte::before {
        content: url("../img/icon_mainte.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 0;
    }

    .navmenu__item a.const::before {
        content: url("../img/icon_const.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 1px;
    }

    .navmenu__item a.schedule::before {
        content: url("../img/icon_schedule.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 0;
    }

    .navmenu__item a.faq::before {
        content: url("../img/icon_faq.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 0;
    }

    .navmenu__item a.top::before {
        content: url("../img/icon_top.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 0;
    }

/*利用者側システム画面背景色設定*/
#user {
    background-color: #EBEEF3;
}

    #user .navmenu {
        background-color: #95BF55;
    }

    #user .navmenu__item {
        border-left: 1px solid #CADFAA;
    }

        #user .navmenu__item:last-child {
            border-right: 1px solid #CADFAA;
        }

/*事業体側システム画面背景色設定*/
#provider {
    background-color: #EBEEF3;
}

    #provider .navmenu {
        background-color: #5497D1;
    }

    #provider .navmenu__item {
        border-left: 1px solid #AACBE8;
    }

        #provider .navmenu__item:last-child {
            border-right: 1px solid #AACBE8;
        }

/*ベンダー側システム画面背景色設定*/
#vendor {
    background-color: #EBEEF3;
}

    #vendor .navmenu {
        background-color: #f76a65;
    }

    #vendor .navmenu__item {
        border-left: 1px solid #AACBE8;
    }

        #vendor .navmenu__item:last-child {
            border-right: 1px solid #AACBE8;
        }

/* ヘッダー固定表示設定
================================================ */
div.fixed-body {
    overflow-y: auto;
}

/* Main
================================================ */
.sysbody {
    width: 100%;
    background-color: #EBEEF3;
}

.sysbody__outer {
    max-width: 1440px;
    margin: 0 auto;
    padding: 60px 40px;
}

.sysbody__column__brdless {
    margin-top: 40px;
    background-color: #FFF;
    text-align: center;
}

.sysbody__column__center {
    text-align: center;
}

.sysbody__columnttl {
    font-size: 1.25em;
    font-weight: 600;
}

.sysbody__columnsubttl-g {
    padding: 10px 12px 12px 25px;
    font-size: 1.125em;
    font-weight: 600;
    background-color: #ECF4E1;
    position: relative;
}

    .sysbody__columnsubttl-g::before {
        content: "";
        width: 6px;
        height: 30px;
        margin-right: 10px;
        background-color: #95BF55;
        border-radius: 3px;
        position: absolute;
        bottom: 8px;
        left: 10px;
    }

.sysbody__columnsubttl-b {
    padding: 10px 12px 12px 25px;
    font-size: 1.125em;
    font-weight: 600;
    background-color: #E5F0F8;
    position: relative;
}

    .sysbody__columnsubttl-b::before {
        content: "";
        width: 6px;
        height: 30px;
        margin-right: 10px;
        background-color: #5497D1;
        border-radius: 3px;
        position: absolute;
        bottom: 8px;
        left: 10px;
    }

.sysbody__popupttl-g {
    padding-left: 14px;
    font-size: 1.125em;
    font-weight: 600;
    position: relative;
}

    .sysbody__popupttl-g::before {
        content: "";
        width: 6px;
        height: 30px;
        margin-right: 10px;
        background-color: #95BF55;
        border-radius: 3px;
        position: absolute;
        top: -2px;
        left: 0;
    }

.sysbody__popupttl-b {
    padding-left: 14px;
    font-size: 1.125em;
    font-weight: 600;
    position: relative;
}

    .sysbody__popupttl-b::before {
        content: "";
        width: 6px;
        height: 30px;
        margin-right: 10px;
        background-color: #5497D1;
        border-radius: 3px;
        position: absolute;
        top: -2px;
        left: 0;
    }

.sysbody__popupttl-v {
    padding-left: 14px;
    font-size: 1.125em;
    font-weight: 600;
    position: relative;
}

    .sysbody__popupttl-v::before {
        content: "";
        width: 6px;
        height: 30px;
        margin-right: 10px;
        background-color: #f76a65;
        border-radius: 3px;
        position: absolute;
        top: -2px;
        left: 0;
    }

.sysbody__flow .flow__ilem {
    display: inline-block;
    width: 240px;
    padding: 1em 0;
    font-weight: 500;
    background-color: #FFF;
    border: 1px solid #CCC;
    text-align: center;
}

.sysbody__flow .flow__arrow {
    margin: 0 30px;
}

.sysbody__flow .active {
    color: #FFF;
    background-color: #222;
}

.sysbody__fileup {
    margin-top: 30px;
    padding: 80px 40px;
    text-align: center;
    border: 2px solid #DDD;
    border-radius: 16px;
}

.sysbody__message {
    margin-top: 30px;
    padding: 40px;
    border: 2px solid #DDD;
    border-radius: 16px;
}

.sysbody__message__inner {
    width: 90%;
    margin: 0 auto;
}
/* 吹き出しの幅がテキストの文字数によって可変とならないため、auto に変更（使用画面：問い合わせ） */
.sysbody__message .balloon__left {
    display: inline-block;
    width: auto;
    margin-top: 2em;
    margin-right: 10px;
    padding: 1em 1.5em;
    background-color: #E1E5EB;
    border-radius: 16px;
    position: relative;
}

    .sysbody__message .balloon__left::before {
        content: "";
        position: absolute;
        top: 8px;
        left: -32px;
        border: 10px solid transparent;
        border-right: 28px solid #E1E5EB;
        -webkit-transform: rotate(20deg);
        transform: rotate(20deg);
    }

.sysbody__message .balloon__user {
    color: #FFF;
    background-color: #95BF55;
}

    .sysbody__message .balloon__user::before {
        border-right-color: #95BF55;
    }
/* 吹き出しの幅がテキストの文字数によって可変とならないため、auto に変更（使用画面：事業体：問い合わせ、事業体：問い合わせ） */
.sysbody__message .balloon__right {
    display: inline-block;
    width: auto;
    margin-top: 2em;
    margin-left: 10px;
    padding: 1em 1.5em;
    background-color: #E1E5EB;
    border-radius: 16px;
    position: relative;
}

    .sysbody__message .balloon__right::after {
        content: "";
        position: absolute;
        top: 8px;
        right: -32px;
        border: 10px solid transparent;
        border-right: 28px solid #E1E5EB;
        -webkit-transform: rotate(160deg);
        transform: rotate(160deg);
    }

.sysbody__message .balloon__provider {
    color: #FFF;
    background-color: #5497D1;
}

    .sysbody__message .balloon__provider::after {
        border-right-color: #5497D1;
    }

.sysbody__scroll {
    height: auto;
    overflow: auto;
    margin-bottom: 40px;
    padding-bottom: 40px;
    padding-right: 24px;
    border-bottom: 5px solid #CCC;
}

.sysbody__btnarea {
    margin-top: 50px;
}

#user .sysbody__pagettl {
    font-size: 1.5em;
    font-weight: 600;
    position: relative;
    bottom: -2px;
}

    #user .sysbody__pagettl::before {
        content: "";
        width: 8px;
        height: 40px;
        margin-right: 15px;
        background-color: #95BF55;
        border-radius: 4px;
        vertical-align: middle;
        display: inline-block;
        position: relative;
        bottom: 2px;
    }

#user .sysbody__submenu a {
    display: block;
    width: 150px;
    margin-left: 10px;
    padding: 8px 0;
    background-color: #95BF55;
    font-weight: 500;
    color: #FFF;
    text-align: center;
    border-radius: 20px;
}

    #user .sysbody__submenu a[disabled] {
        background-color: #808080;
        pointer-events: none;
    }

#user .sysbody__column {
    margin-top: 40px;
    background-color: #FFF;
    border-top: 5px solid #95BF55;
}

#user .sysbody__column__inner {
    padding: 30px;
}

#user .sysbody__tabmenu {
    margin-top: 20px;
    margin-bottom: 20px;
}

    #user .sysbody__tabmenu ul li {
        width: 100%;
        margin-right: 2px;
    }

        #user .sysbody__tabmenu ul li:last-child {
            margin-right: 0;
        }

        #user .sysbody__tabmenu ul li a {
            display: inline-block;
            width: 100%;
            padding: 18px 0;
            background-color: #ECF4E1;
            color: #000;
            font-weight: 600;
            text-align: center;
            border-radius: 4px;
        }

            #user .sysbody__tabmenu ul li a.active {
                background-color: #95BF55;
                position: relative;
                color: #FFF;
            }

                #user .sysbody__tabmenu ul li a.active::after {
                    content: "";
                    position: absolute;
                    right: 0;
                    bottom: 0;
                    left: 0;
                    width: 0;
                    margin: auto;
                    border-right: 8px solid transparent;
                    border-bottom: 8px solid #FFF;
                    border-left: 8px solid transparent;
                    color: #FFF;
                }

            #user .sysbody__tabmenu ul li a.disabled {
                background-color: #B6BFC9;
                color: #FFF;
            }

#provider .sysbody__pagettl {
    font-size: 1.5em;
    font-weight: 600;
    position: relative;
    bottom: -2px;
}

    #provider .sysbody__pagettl::before {
        content: "";
        width: 8px;
        height: 40px;
        margin-right: 15px;
        background-color: #5497D1;
        border-radius: 4px;
        vertical-align: middle;
        display: inline-block;
        position: relative;
        bottom: 2px;
    }

#provider .sysbody__submenu a {
    display: block;
    width: 150px;
    margin-left: 10px;
    padding: 8px 0;
    background-color: #5497D1;
    font-weight: 500;
    color: #FFF;
    text-align: center;
    border-radius: 20px;
}

    #provider .sysbody__submenu a[disabled] {
        background-color: #808080;
        pointer-events: none;
    }

#provider .sysbody__column {
    margin-top: 40px;
    background-color: #FFF;
    border-top: 5px solid #5497D1;
}

#provider .sysbody__column__inner {
    padding: 30px;
}
/* 事業体側で利用者の帯色を使いたいため追加(使用画面：利用者：お知らせ、事業体：お知らせ登録) */
#provider .sysbody__column__g {
    margin-top: 40px;
    background-color: #FFF;
    border-top: 5px solid #95BF55;
}

#provider .sysbody__column__inner__g {
    padding: 30px;
}

#provider .sysbody__tabmenu {
    margin-top: 20px;
    margin-bottom: 20px;
}

    #provider .sysbody__tabmenu ul li {
        width: 100%;
        margin-right: 2px;
    }

        #provider .sysbody__tabmenu ul li:last-child {
            margin-right: 0;
        }

        #provider .sysbody__tabmenu ul li a {
            display: inline-block;
            width: 100%;
            padding: 18px 0;
            background-color: #E5F0F8;
            color: #000;
            font-weight: 600;
            text-align: center;
            border-radius: 4px;
        }

            #provider .sysbody__tabmenu ul li a.active {
                background-color: #5497D1;
                position: relative;
                color: #FFF;
            }

                #provider .sysbody__tabmenu ul li a.active::after {
                    content: "";
                    position: absolute;
                    right: 0;
                    bottom: 0;
                    left: 0;
                    width: 0;
                    margin: auto;
                    border-right: 8px solid transparent;
                    border-bottom: 8px solid #FFF;
                    border-left: 8px solid transparent;
                }

            #provider .sysbody__tabmenu ul li a.disabled {
                background-color: #B6BFC9;
                color: #FFF;
            }

#provider .sysbody__tabmenu_margin_noen {
    margin-top: 0px;
    margin-bottom: 0px;
}

    #provider .sysbody__tabmenu_margin_noen ul li {
        width: 100%;
        margin-right: 2px;
    }

        #provider .sysbody__tabmenu_margin_noen ul li:last-child {
            margin-right: 0;
        }

        #provider .sysbody__tabmenu_margin_noen ul li a {
            display: inline-block;
            width: 100%;
            padding: 18px 0;
            background-color: #E5F0F8;
            color: #000;
            font-weight: 600;
            text-align: center;
            border-radius: 4px;
        }

            #provider .sysbody__tabmenu_margin_noen ul li a.active {
                background-color: #5497D1;
                position: relative;
                color: #FFF;
            }

                #provider .sysbody__tabmenu_margin_noen ul li a.active::after {
                    content: "";
                    position: absolute;
                    right: 0;
                    bottom: 0;
                    left: 0;
                    width: 0;
                    margin: auto;
                    border-right: 8px solid transparent;
                    border-bottom: 8px solid #FFF;
                    border-left: 8px solid transparent;
                }

            #provider .sysbody__tabmenu_margin_noen ul li a.disabled {
                background-color: #B6BFC9;
                color: #FFF;
            }

#vendor .sysbody__pagettl {
    font-size: 1.5em;
    font-weight: 600;
    position: relative;
    bottom: -2px;
}

    #vendor .sysbody__pagettl::before {
        content: "";
        width: 8px;
        height: 40px;
        margin-right: 15px;
        background-color: #f76a65;
        border-radius: 4px;
        vertical-align: middle;
        display: inline-block;
        position: relative;
        bottom: 2px;
    }

#vendor .sysbody__submenu a {
    display: block;
    width: 150px;
    margin-left: 10px;
    padding: 8px 0;
    background-color: #f76a65;
    font-weight: 500;
    color: #FFF;
    text-align: center;
    border-radius: 20px;
}

    #vendor .sysbody__submenu a[disabled] {
        background-color: #808080;
        pointer-events: none;
    }

#vendor .sysbody__column {
    margin-top: 40px;
    background-color: #FFF;
    border-top: 5px solid #f76a65;
}

#vendor .sysbody__column__inner {
    padding: 30px;
}

#vendor .sysbody__tabmenu {
    margin-top: 20px;
    margin-bottom: 20px;
}

    #vendor .sysbody__tabmenu ul li {
        width: 100%;
        margin-right: 2px;
    }

        #vendor .sysbody__tabmenu ul li:last-child {
            margin-right: 0;
        }

        #vendor .sysbody__tabmenu ul li a {
            display: inline-block;
            width: 100%;
            padding: 18px 0;
            background-color: #B6BFC9;
            color: #FFF;
            font-weight: 600;
            text-align: center;
            border-radius: 4px;
        }

            #vendor .sysbody__tabmenu ul li a.active {
                background-color: #f76a65;
                position: relative;
            }

                #vendor .sysbody__tabmenu ul li a.active::after {
                    content: "";
                    position: absolute;
                    right: 0;
                    bottom: 0;
                    left: 0;
                    width: 0;
                    margin: auto;
                    border-right: 8px solid transparent;
                    border-bottom: 8px solid #FFF;
                    border-left: 8px solid transparent;
                }

#login .sysbody__column {
    width: 550px;
    margin: 0 auto;
    padding: 50px 60px;
    border-top: none;
}

#login .sysbody__column__inner {
    padding: 0;
}

    #login .sysbody__column__inner input {
        box-sizing: border-box;
    }

#nonettl .sysbody__column {
    margin-top: 40px;
    background-color: #FFF;
    border-top: none;
}

#nonettl .sysbody__column__inner {
    padding: 60px;
    text-align: center;
}

#noneh3 .sysbody__column {
    margin-top: 40px;
    background-color: #FFF;
    border-top: none;
}

/* popup
================================================ */
/*
    利用者：チェックリスト
    利用者：中間検査結果
    利用者：竣工検査結果
    事業体：審査チェックリスト
    事業体：中間検査結果
    事業体：竣工検査結果
*/
#popup-check {
    display: none;
}

    #popup-check:checked ~ .popup-check__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-check__open {
    cursor: pointer;
}

.popup-check__overlay {
    display: none;
}

.popup-check__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-check__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-check__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-check__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-check__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-check__checklist table tr {
        border: none;
    }

        .popup-check__checklist table tr th, .popup-check__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-check__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-check__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-check__commentbox {
    margin-bottom: 40px;
}

/*
    利用者：送信
    事業体：事業体送信
    事業体：利用者送信
*/
#popup-send {
    display: none;
}

    #popup-send:checked ~ .popup-send__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-send__open {
    cursor: pointer;
}

.popup-send__overlay {
    display: none;
}

.popup-send__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-send__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-send__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-send__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-send__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-send__checklist table tr {
        border: none;
    }

        .popup-send__checklist table tr th, .popup-send__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-send__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-send__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-send__commentbox {
    margin-bottom: 40px;
}

/*
    利用者：決裁履歴
    事業体：決裁履歴
*/
#popup-approval-history {
    display: none;
}

    #popup-approval-history:checked ~ .popup-approval-history__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-approval-history__open {
    cursor: pointer;
}

.popup-approval-history__overlay {
    display: none;
}

.popup-approval-history__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-approval-history__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-approval-history__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-approval-history__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-approval-history__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-approval-history__checklist table tr {
        border: none;
    }

        .popup-approval-history__checklist table tr th, .popup-approval-history__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-approval-history__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-approval-history__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-approval-history__commentbox {
    margin-bottom: 40px;
}

/*
    利用者：お知らせ
    事業体：お知らせ登録
    事業体：お知らせ
*/
#popup-notice {
    display: none;
}

    #popup-notice:checked ~ .popup-notice__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-notice__open {
    cursor: pointer;
}

.popup-notice__overlay {
    display: none;
}

.popup-notice__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-notice__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-notice__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-notice__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-notice__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-notice__checklist table tr {
        border: none;
    }

        .popup-notice__checklist table tr th, .popup-notice__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-notice__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-notice__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-notice__commentbox {
    margin-bottom: 40px;
}


/*
    事業体：各種帳票条件
*/
#popup-report {
    display: none;
}

    #popup-report:checked ~ .popup-report__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-report__open {
    cursor: pointer;
}

.popup-report__overlay {
    display: none;
}

.popup-report__outer {
    width: 30vw;
    max-width: 1260px;
    height: 53vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-report__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-report__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-report__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-report__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
    height: 17vh;
    margin: 35px 0 0 20px;
}

    .popup-report__checklist table tr {
        border: none;
    }

        .popup-report__checklist table tr th, .popup-report__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-report__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-report__scroll {
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
    height: 30vh;
    margin: 35px 0 0 20px;
}

.popup-report__commentbox {
    margin-bottom: 40px;
}

/*
    コンスタント情報編集
*/
#popup-constant-infomation {
    display: none;
}

    #popup-constant-infomation:checked ~ .popup-constant-infomation__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-constant-infomation__open {
    cursor: pointer;
}

.popup-constant-infomation__overlay {
    display: none;
}

.popup-constant-infomation__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-constant-infomation__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-constant-infomation__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-constant-infomation__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-constant-infomation__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-constant-infomation__checklist table tr {
        border: none;
    }

        .popup-constant-infomation__checklist table tr th, .popup-constant-infomation__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-constant-infomation__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-constant-infomation__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-constant-infomation__commentbox {
    margin-bottom: 40px;
}

/*
    コード情報編集
*/
#popup-code-infomation {
    display: none;
}

    #popup-code-infomation:checked ~ .popup-code-infomation__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-code-infomation__open {
    cursor: pointer;
}

.popup-code-infomation__overlay {
    display: none;
}

.popup-code-infomation__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-code-infomation__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-code-infomation__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-code-infomation__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-code-infomation__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-code-infomation__checklist table tr {
        border: none;
    }

        .popup-code-infomation__checklist table tr th, .popup-code-infomation__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-code-infomation__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-code-infomation__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-code-infomation__commentbox {
    margin-bottom: 40px;
}

/*
    事業体：担当者リスト
*/
#popup-pic-list {
    display: none;
}

    #popup-pic-list:checked ~ .popup-pic-list__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-pic-list__open {
    cursor: pointer;
}

.popup-pic-list__overlay {
    display: none;
}

.popup-pic-list__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-pic-list__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-pic-list__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-pic-list__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-pic-list__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-pic-list__checklist table tr {
        border: none;
    }

        .popup-pic-list__checklist table tr th, .popup-pic-list__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-pic-list__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-pic-list__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-pic-list__commentbox {
    margin-bottom: 40px;
}

/*
    利用者：PDFビューワー
    事業体：PDFビューワー
*/
#popup-pdf-preview {
    display: none;
}

    #popup-pdf-preview:checked ~ .popup-pdf-preview__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-pdf-preview__open {
    cursor: pointer;
}

.popup-pdf-preview__overlay {
    display: none;
}

.popup-pdf-preview__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-pdf-preview__inner {
    margin: 0;
    overflow-y: auto;
    height: 110%;
}

    .popup-pdf-preview__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

    .popup-pdf-preview__inner iframe {
        height: calc(90vh - 220px);
        min-height: 200px;
    }

.popup-pdf-preview__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-pdf-preview__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-pdf-preview__checklist table tr {
        border: none;
    }

        .popup-pdf-preview__checklist table tr th, .popup-pdf-preview__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-pdf-preview__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-pdf-preview__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-pdf-preview__commentbox {
    margin-bottom: 40px;
}

/*
    事業体：担当者変更
*/
#popup-pic-change {
    display: none;
}

    #popup-pic-change:checked ~ .popup-pic-change__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-pic-change__open {
    cursor: pointer;
}

.popup-pic-change__overlay {
    display: none;
}

.popup-pic-change__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-pic-change__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-pic-change__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-pic-change__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-pic-change__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-pic-change__checklist table tr {
        border: none;
    }

        .popup-pic-change__checklist table tr th, .popup-pic-change__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-pic-change__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-pic-change__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-pic-change__commentbox {
    margin-bottom: 40px;
}

/*
    事業体：スケジュール登録
*/
#popup-schedule-edit {
    display: none;
}

    #popup-schedule-edit:checked ~ .popup-schedule-edit__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-schedule-edit__open {
    cursor: pointer;
}

.popup-schedule-edit__overlay {
    display: none;
}

.popup-schedule-edit__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-schedule-edit__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-schedule-edit__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-schedule-edit__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-schedule-edit__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

/*
    カレンダー設定(祝日)
*/
#popup-holiday {
    display: none;
}

    #popup-holiday:checked ~ .popup-holiday__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-holiday__open {
    cursor: pointer;
}

.popup-holiday__overlay {
    display: none;
}

.popup-holiday__outer {
    width: 35vw;
    max-width: 1260px;
    height: 50vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-holiday__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-holiday__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-holiday__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-holiday__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 20px;
    padding-right: 24px;
}

.popup-holiday__form {
    height: 25vh;
    margin: 35px 0 0 20px;
}

.popup-holiday__wd-20p {
    width: 20%;
}

.popup-holiday__inputbottom {
    margin-bottom: 1em;
}

.popup-holiday__btn_send {
    margin-left: 40px!important;
    width: 200px;
}

.popup-holiday__btn_center {
    display: flex;
    justify-content: center;
    margin-top: 4%;
}

.popup-holiday-all-regist__btn_center {
    display: flex;
    justify-content: center;
    margin-top: 20%;
}

/*
    申請一覧検索 通知
*/
#popup-report-notification {
    display: none;
}

    #popup-report-notification:checked ~ .popup-report-notification__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-report-notification__open {
    cursor: pointer;
}

.popup-report-notification__overlay {
    display: none;
}

.popup-report-notification__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-report-notification__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-report-notification__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-report-notification__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-report-notification__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-report-notification__checklist table tr {
        border: none;
    }

        .popup-report-notification__checklist table tr th, .popup-report-notification__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-report-notification__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-report-notification__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-report-notification__commentbox {
    margin-bottom: 40px;
}

.data-search-body {
    height: 60px;
}

.data-search-checkbox {
    width: 5%;
    text-align: center;
    border-collapse: collapse;
}

.all-check-text {
    position: relative;
    bottom: -25px;
    left: -5px;
}

/*
    可変ビューの LinkLabel, LinkButton より呼び出されるモーダル画面
*/
#popup-generate-link {
    display: none;
}

    #popup-generate-link:checked ~ .popup-generate-link__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-generate-link__open {
    cursor: pointer;
}

.popup-generate-link__overlay {
    display: none;
}

.popup-generate-link__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-generate-link__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-generate-link__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-generate-link__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-generate-link__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

/*
    API：主任技術者の選択
*/
#popup-user-chief-engineer-select {
    display: none;
}

    #popup-user-chief-engineer-select:checked ~ .popup-user-chief-engineer-select__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-user-chief-engineer-select__open {
    cursor: pointer;
}

.popup-user-chief-engineer-select__overlay {
    display: none;
}

.popup-user-chief-engineer-select__outer {
    width: 90vw;
    max-width: 1260px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-user-chief-engineer-select__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-user-chief-engineer-select__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-user-chief-engineer-select__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-user-chief-engineer-select__checklist table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .popup-user-chief-engineer-select__checklist table tr {
        border: none;
    }

        .popup-user-chief-engineer-select__checklist table tr th, .popup-user-chief-engineer-select__checklist table tr td {
            height: inherit;
            padding: 12px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-user-chief-engineer-select__checklist table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.popup-user-chief-engineer-select__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-user-chief-engineer-select__commentbox {
    margin-bottom: 40px;
}

/*
    API：町字検索
*/
#popup-search-alphabet-address-select {
    display: none;
}

    #popup-search-alphabet-address-select:checked ~ .popup-search-alphabet-address-select__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-search-alphabet-address-select__open {
    cursor: pointer;
}

.popup-search-alphabet-address-select__overlay {
    display: none;
}

.popup-search-alphabet-address-select__outer {
    width: 35vw;
    max-width: 1260px;
    height: 65vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-search-alphabet-address-select__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.table-row-hidden {
    display: none;
}

.table_sticky {
    display: block;
    overflow-y: scroll;
    height: calc(50vh/2);
    
    border-collapse: collapse;
}
    .table_sticky thead th {
        display: none;
    }

    .table_sticky tbody td {
        width: 1000px;
        height: 30px;
    }

.search-alphabet-address-select-footer {
    position: fixed;
    right: 40px;
    top: 550px;
}

/* parts
================================================ */
.type-rbtn span {
    display: inline-block;
}
.type-rbtn label {
    margin-right: 20px;
}

.btn__login {
    width: 100%;
    padding: 1em;
    font-weight: 600;
    color: #FFF;
    border: none;
    border-radius: 5px;
}

.btn__sort {
    width: 16px;
    height: 16px;
    padding: 0;
    margin-left: 10px;
    border: none;
    position: relative;
    top: 2px;
    cursor: pointer;
}

.btn__search {
    display: inline-block;
    width: 40px;
    height: 40px;
    margin-left: 2px;
    border: none;
    border-radius: 5px;
    vertical-align: middle;
    position: relative;
    bottom: 1px;
}

    .btn__search::before {
        content: url("../img/icon_search.svg");
        width: 22px;
        height: 22px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

.btn__send {
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px;
    color: #FFF;
    border: none;
    border-radius: 5px;
    vertical-align: middle;
    position: relative;
    bottom: 1px;
}

.btn__calendar {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    top: 2px;
    margin-left: -30px;
}

.btn__postcode {
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px 1em;
    color: #FFF;
    font-weight: 500;
    background-color: #222;
    border-radius: 5px;
}

.btn__map {
    display: inline-block;
    margin-left: 10px;
    padding: 6px 1em 6.85px 1em;
    color: #FFF;
    font-weight: 500;
    background-color: #222;
    border-radius: 5px;
}

    .btn__map::before {
        content: url("../img/icon_g-map.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: -1px;
    }

.btn__reload {
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px 1em;
    color: #FFF;
    background-color: #222;
    border: none;
    border-radius: 5px;
}

    .btn__reload::before {
        content: url("../img/icon_reload.svg");
        display: inline-block;
        width: 16px;
        height: 19px;
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 2px;
    }

    .btn__reload:hover{
        color: #FFF;
    }

.btn__general {
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px 1em;
    color: #FFF;
    font-weight: 500;
    background-color: #222;
    border-radius: 5px;
}

.btn__general_disabled {
    pointer-events: none;
}

.btn__fileup {
    display: inline-block;
    margin: 0 10px;
    padding: 7px 1em 9px 1em;
    color: #FFF;
    font-weight: 500;
    background-color: #222;
    border-radius: 5px;
}

.btn__display, .btn__del, .btn__change, .btn__display__center {
    display: inline-block;
    padding: 7px 1em 9px 1em;
    color: #FFF;
    font-weight: 500;
    border-radius: 20px;
}
    .btn__del:hover{
        color:#FFF;
    }

    .btn__change:hover {
        color: #FFF;
    }

    .btn__display__center:hover {
        color: #FFF;
    }

.btn__display {
    margin-left: 0;
}
.btn__display:hover{
    color: #FFF;
}

.btn__display__center {
    display: flex;
    justify-content: center;
}

.btn__dl {
    display: inline-block;
    padding: 6.35px 1em 7px 1em;
    color: #FFF;
    font-weight: 500;
    border-radius: 20px;
}

    .btn__dl::before {
        content: url("../img/icon_d-load.svg");
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 1px;
    }
.btn__cursor-pointer {
    cursor: pointer;
}

/* ボタンスタイルに黒枠が描画されていたため、枠線の非表示を設定 */
.btn__btnarea-g {
    display: inline-block;
    width: 200px;
    margin-left: 10px;
    padding: 1em 0;
    color: #FFF;
    font-weight: 500;
    background-color: #95BF55;
    border-radius: 8px;
    text-align: center;
    border: none;
}

.btn__btnarea-b {
    display: inline-block;
    width: 200px;
    margin-left: 10px;
    padding: 1em 0;
    color: #FFF;
    font-weight: 500;
    background-color: #5497D1;
    border-radius: 8px;
    text-align: center;
    border: none;
}

.btn__btnarea-v {
    display: inline-block;
    width: 200px;
    margin-left: 10px;
    padding: 1em 0;
    color: #FFF;
    font-weight: 500;
    background-color: #f76a65;
    border-radius: 8px;
    text-align: center;
    border: none;
}

.btn__btnarea-bl {
    display: inline-block;
    width: 200px;
    margin-left: 10px;
    padding: 1em 0;
    color: #FFF;
    font-weight: 500;
    background-color: #999;
    border-radius: 8px;
    text-align: center;
    border: none;
}
    .btn__btnarea-bl:hover{
        color: #FFF;
    }

.btn__btnarea-br {
    display: inline-block;
    width: 200px;
    margin-left: 10px;
    padding: 1em 0;
    color: #FFF;
    font-weight: 500;
    background-color: #999;
    border-radius: 8px;
    text-align: center;
    width: 180px;
}
    .btn__btnarea-br:hover {
        color: #FFF;
    }

.btn__btnarea-w {
    display: inline-block;
    width: 200px;
    padding: 1em 0;
    font-weight: 500;
    background-color: #FFF;
    border: 1px solid #CCC;
    border-radius: 8px;
    text-align: center;
}
    .btn__btnarea-w:hover{
        color: #000;
    }

.btn__menu__mainte {
    display: inline-block;
    width: 32em;
    padding: 1em 0;
    font-weight: 500;
    color: #FFF;
    border: none;
    border-radius: 8px;
    text-align: center;
}
    .btn__menu__mainte:hover {
        color: #FFF;
    }

/*工事申請画面のタブ内ページ用ボタン*/
.btn__datapage__left {
    content: url("../img/btn_sort.svg");
    transform: rotate(90deg);
}

.btn__datapage__right {
    content: url("../img/btn_sort.svg");
    transform: rotate(-90deg);
}

#user .btn__login {
    background-color: #95BF55;
}

#user .btn__display, #user .btn__change #user .btn__display__center {
    background-color: #95BF55;
}

#user .btn__del {
    background-color: #999;
}

#user .btn__dl {
    background-color: #95BF55;
}

#user .btn__search {
    background-color: #95BF55;
}

#user .btn__send {
    background-color: #95BF55;
}

#provider .btn__login {
    background-color: #5497D1;
}

#provider .btn__display, #provider .btn__change, #provider .btn__display__center {
    background-color: #5497D1;
}

#provider .btn__del {
    background-color: #999;
}

#provider .btn__dl {
    background-color: #5497D1;
}

#provider .btn__search {
    background-color: #5497D1;
}

#provider .btn__send {
    background-color: #5497D1;
}

#provider .btn__menu__mainte {
    background-color: #5497D1;
}

#vendor .btn__login {
    background-color: #f76a65;
}

#vendor .btn__display, #vendor .btn__change #user .btn__display__center {
    background-color: #f76a65;
}

#vendor .btn__del {
    background-color: #999;
}

#vendor .btn__dl {
    background-color: #f76a65;
}

#vendor .btn__search {
    background-color: #f76a65;
}

#vendor .btn__send {
    background-color: #f76a65;
}

#vendor .btn__menu__mainte {
    background-color: #f76a65;
}

.pagination {
    display: flex;
    align-items: center;
    border: 1px solid #CCC;
}

.pagination__item__link {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 36px;
    padding: 0 0.75em;
    background-color: #FFF;
    transition: all 0.15s linear;
}

    .pagination__item__link.active {
        background: #222;
        color: #FFF;
        pointer-events: none;
    }

    .pagination__item__link:not(.active):hover {
        background: #222;
        color: #FFF;
    }

.pagination > * + * {
    border-left: 1px solid #CCC;
}

/* 問い合わせのスタイルを追加 */
/* inquiry
================================================ */
.btn__submit-g {
    display: block;
    width: 150px;
    margin-left: 10px;
    padding: 8px 0;
    background-color: #95BF55;
    font-weight: 500;
    color: #FFF;
    text-align: center;
    border-radius: 20px;
    border: none;
}

.btn__disabled-submit {
    display: block;
    width: 150px;
    margin-left: 10px;
    padding: 8px 0;
    background-color: #808080;
    font-weight: 500;
    color: #FFF;
    text-align: center;
    border-radius: 20px;
}

.btn__disabled-reload {
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px 1em;
    color: #808080;
    background-color: #222;
    border: none;
    border-radius: 5px;
    pointer-events: none;
}

    .btn__disabled-reload::before {
        content: url("../img/icon_reload.svg");
        display: inline-block;
        width: 16px;
        height: 19px;
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        bottom: 2px;
    }

.btn__disabled-send {
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px;
    color: #808080;
    border: none;
    border-radius: 5px;
    vertical-align: middle;
    position: relative;
    bottom: 1px;
}

/* カレンダーのスタイルを追加 */
/* calendar
================================================ */
.calendar-table1 table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .calendar-table1 table tr {
        border: none;
    }

        .calendar-table1 table tr th, .calendar-table1 table tr td {
            height: 25px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .calendar-table1 table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

.calendar-table2 table {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

    .calendar-table2 table tr {
        border: none;
    }

        .calendar-table2 table tr th, .calendar-table2 table tr td {
            height: 25px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .calendar-table2 table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

/* エラーメッセージのスタイルを追加
================================================ */
span.error-msg {
    color: #D40505;
}

/* フィルター用ラジオボタンの位置調整
================================================ */
.relative-container {
    position: relative;
}

.absolute-container {
    position: absolute;
    top: 16px;
}

/* 工事一覧のアクティブ行
================================================ */
.table tbody tr.construction-row-color-active-g {
    background-color: #C6E0B4;
}

.table tbody tr.construction-row-color-active-b {
    background-color: #DDEBF7;
}

.table tbody tr.construction-row-color-cancel {
    background-color: #D3D3D3;
}

/* ----------------------------------------------------------------------------
 * 利用者：カレンダー
 * 事業体：カレンダー
 * ------------------------------------------------------------------------- */
#popup-calendar {
    display: none;
}

    #popup-calendar:checked ~ .popup-calendar__overlay {
        display: block;
        z-index: 99999;
        background-color: #00000090;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }

.popup-calendar__open {
    cursor: pointer;
}

.popup-calendar__overlay {
    display: none;
}

.popup-calendar__outer {
    width: 90vw;
    max-width: 1530px;
    height: 90vh;
    padding: 40px;
    background-color: #FFF;
    border-radius: 6px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-calendar__inner {
    margin: 0;
    overflow-y: auto;
}

    .popup-calendar__inner:not(:last-of-type) {
        margin-bottom: 1em;
    }

.popup-calendar__close {
    cursor: pointer;
    position: absolute;
    top: -26px;
    right: 0;
}

.popup-calendar__scroll {
    height: 65vh;
    overflow: auto;
    margin-bottom: 40px;
    padding-right: 24px;
}

.popup-calendar__commentbox {
    margin-bottom: 40px;
}

.popup-calendar__scroll table {
    display: block;
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
    text-align: center;
    font-weight: bold;
}

    .popup-calendar__scroll table tr {
        border: none;
    }

        .popup-calendar__scroll table tr th,
        .popup-calendar__scroll table tr td {
            height: inherit;
            padding: 11px;
            border-right: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
        }

        .popup-calendar__scroll table tr th {
            color: #FFF;
            font-weight: 600;
            text-align: center;
            background-color: #222;
        }

    .popup-calendar__scroll table thead tr th[data-dayofweek=Saturday] {
        color: #130EC4;
        background: #DDDEFD;
    }

    .popup-calendar__scroll table thead tr th[data-dayofweek=Sunday] {
        color: #E61516;
        background-color: #FDDEDB;
    }

    .popup-calendar__scroll table thead tr th[data-holiday=True] {
        color: #E61516;
        background-color: #FDDEDB;
    }

    .popup-calendar__scroll table tbody tr td[data-dayofweek=Saturday] {
        background: #EFEEFE;
    }

    .popup-calendar__scroll table tbody tr td[data-dayofweek=Sunday] {
        background-color: #FEEEEE;
    }

    .popup-calendar__scroll table tbody tr td[data-holiday=True] {
        color: #E61516;
        background-color: #FDDEDB;
    }

    .popup-calendar__scroll table tbody tr td[data-business-day-flag=True] {
        color: #FFA500;
    }

    .popup-calendar__scroll table tbody tr td[data-business-day-flag=False] {
        background-color: #F5F5F5;
    }

    .popup-calendar__scroll table tbody tr td[data-schedule-max-flag=True] {
        color: #000000;
        background-color: #F5F5F5;
    }

    .popup-calendar__scroll table tbody tr td[data-select-flag=True] {
        color: #FF0000;
    }

/* ---------------------------------------
 * テーブル利用時のスピナー関連
 * ------------------------------------ */
.spinner-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    display: none;
}

.spinner-border {
    width: 6rem;
    height: 6rem;
    border-width: 8px;
}

.table-wrapper {
    position: relative;
    height: auto;
}

/* FAQ関連のstyle
================================================ */
.faq-sysbody__outer {
    margin: 0 auto;
    padding: 10px 40px;
}
.category-modal {
    padding-left: 1%;
    display: flex;
}
.category-modal div{
    padding-left: 8%;
}
#quill-editor {
    height: 40vh;
    background-color: white;
    width: 100%;
}

#contents {
    display: none;
}

.icon-question {
    margin-top: 15%;
    padding-left: 30%;
}

.accordion-icon {
    width: 90%;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}

.accordion-head {
    list-style: none;
    position: relative;
    display: block;
    cursor: pointer;
}

    .accordion-head::after {
        content: "+";
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 25px;
    }

.accordion-head__open::after {
    content: "-";
    position: absolute;
    right: 16px;
    top: 45%;
    transform: translateY(-50%);
    font-size: 40px;
}

#accordion-title-g {
    border: none;
    border-bottom: 3px solid;
    border-color: #ECF4E1;
    cursor: pointer;
}

    #accordion-title-g:focus {
        outline: none;
    }


#accordion-title-pu {
    border: none;
    border-bottom: 3px solid;
    border-color: #E5F0F8;
    cursor: pointer;
}

    #accordion-title-pu:focus {
        outline: none;
    }

.accordion_inner {
    display: none;
    padding: 0;
}

.icon-answer {
    display: none;
    padding-left: 30%;
}
/* ---------------------------------------
 * 事業体利用者マスタ編集
 * ------------------------------------ */
.public-utility-public-user-logout-message {
    color: #D40505;
    margin-left: 20px;
}

/* ---------------------------------------
 * 添付ファイル プルダウン
 * ------------------------------------ */
#dropdown-box {
    display: flex;
    justify-content: flex-end;
}

    #dropdown-box label {
        font-size: 17px;
        margin-top: 0.5%;
        margin-right: 1%;
    }

#pdfId {
    width: 22%;
    margin-bottom: 1%;
}

/* ---------------------------------------
 * パスワード再発行
 * ------------------------------------ */
.password-forgot-error-message{
    margin-left: 460px;
}

.password-forgot-change-error-message {
    margin-left: 440px;
}

/* ---------------------------------------
 * 様式
 * ------------------------------------ */
#public-utility .selected-cell {
    background-color: #34c4eb;
}

#public-utility .active-cell {
    background-color: lightblue;
}

#general .selected-cell {
    background-color: #81fa81;
}

#general .active-cell {
    background-color: #bfffbf;
}

/* ---------------------------------------
 * 起案送信
 * ------------------------------------ */
.approval-user-select-max-w{
    max-width: 100vw;
}

.approval-route-drag-area {
}

.approval-route-drag-item {
    cursor: move;
}

.approval-route-fix-item {
}

.approval-user-drag-area {
    background-color: #f4f6f8;
}

.approval-drag-area-scroll {
    max-height: 32vh;
    overflow: auto;
    overflow-x: hidden;
}

.approval-user-drag-area-scroll {
    overflow: auto;
}

.approval-user-drag-area-sticky {
    max-height: 40vh;
    position: sticky;
    top: 0;
}

.approval-user-drag-item {
    padding: 10px 20px;
    border: 1px solid #eaeaea;
    background-color: #ffffff;
    cursor: move;
}

.approval-user-fix-area {
    background-color: #f4f6f8;
}

.approval-user-fix-item {
    padding: 10px 20px;
    border: 1px solid #eaeaea;
    background-color: #ffffff;
}

/* 未決済 */
.approval-status-0 {
    color: #FFF;
    background-color: #95BF55;
}

/* 決裁済み */
.approval-status-1 {
    color: #FFF;
    background-color: #5497D1;
}

/* 差戻 */
.approval-status-2 {
    color: #000;
    background-color: #FFB6C1;
}

/* 利用者情報の申請中メッセージ */
.user-edit-status {
    height: 40px;
    width: 460px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 利用者情報の差分表示パーツ */
.user-edit-diff-parts {
    background-color: #f8d7da !important;
}

/* 利用者情報のシステム利用状態パーツ */
.user-edit-sysytem-status-code {
    width: 300px;
    height: 80%;
}

/* select 選択肢の選択可 */
.selectable {
    color: #000000;
}

/* select 選択肢の選択不可 */
.not-selectable {
    color: #D40505;
}

/* オンライン決済用パーツ */
#user .btn__payment {
    background-color: #95BF55;
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px;
    color: #FFF;
    border: none;
    border-radius: 5px;
    vertical-align: middle;
    position: relative;
    bottom: 1px;
}

#user .btn__payment:disabled {
    background-color: #adb5bd;
    display: inline-block;
    margin-left: 10px;
    padding: 7px 1em 9px;
    color: #FFF;
    border: none;
    border-radius: 5px;
    vertical-align: middle;
    position: relative;
    bottom: 1px;
    
}

label.br-label {
    white-space: pre-line;
}

/* ---------------------------------------
 * データ検索フィルタテーブル
 * ------------------------------------ */
.table-container thead th {
    position: sticky;
    top: -1px;
    padding-top: 1px;
    z-index: 2;
    background-color: white !important;
    border-bottom: 2px solid #dee2e6 !important;
}
.table-container thead th.filter-active {
    z-index: 3;
}
.dropdown-filter-content {
    max-height: 300px;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 10;
}

.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 2px;
}

.btn-search-custom {
    background-color: #5497D1;
    border-color: #5497D1;
    color: #ffffff;
}

.btn-search-custom:hover {
    background-color: #4a88c0;
    border-color: #4a88c0;
    color: #ffffff;
}

.btn-search-custom:active,
.btn-search-custom:focus {
    background-color: #4076ae;
    border-color: #4076ae;
    color: #ffffff;
    
    box-shadow: 0 0 0 0.25rem rgba(84, 151, 209, 0.5);
}