﻿@charset "UTF-8";

.header-brand-img {
    height: 2.5rem;
    line-height: 1.8rem;
    vertical-align: bottom;
    width: auto;
}

body.main {
    background-color: #043c78;
}

body.modal-dialog-body {
    background-color: #ffffe0;
}

.footer {
    font-size: 0.8rem;
    padding: 5px 0 5px 0;
    color: #9aa0ac;
    background: #e5e7e8;
}

body.main label,
body.main .caption {
    color: white;
}

body.main .custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
    color: white;
}

.form-group {
    margin-bottom: 1.8rem;
}

.fa-star {
    color: #ee7800;
}
.modal-dialog-body .fa-star {
    text-shadow: 0 0 3px #000000;
}

.btn-outline-primary {
    color: #007bff !important;
    background-color: white;
}

    .btn-outline-primary:hover {
        color: #007bff !important;
        background-color: white;
        box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
    }

    .btn-outline-primary.active {
        color: white !important;
    }

        .btn-outline-primary.active:hover {
            color: white !important;
        }

.btn-outline-success {
    color: #28a745 !important;
    background-color: white;
}

    .btn-outline-success:hover {
        color: #28a745 !important;
        background-color: white;
        box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
    }

    .btn-outline-success.active {
        color: white !important;
    }

        .btn-outline-success.active:hover {
            color: white !important;
        }


.btn-shadow {
    min-width: 80px;
    padding: .3rem 1.0rem !important;
    font-weight: 600;
    border-radius: 20px;
    border: solid 1px #c2c2c2;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(204,204,204,1) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#cccccc',GradientType=0 );
    transition: .15s ease-in-out;
}

    .btn-shadow:hover {
        opacity: .6;
    }

.btn-shadow-primary {
    min-width: 80px;
    padding: .3rem 1.0rem !important;
    font-weight: 600;
    border-radius: 20px;
    border: solid 1px #007bff;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(0,125,255,0.6) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(0,125,255,0.6) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(0,125,255,0.6) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#007bff',GradientType=0 );
    transition: .15s ease-in-out;
}

    .btn-shadow-primary:hover {
        opacity: .6;
    }

.btn-shadow-success {
    min-width: 80px;
    padding: .3rem 1.0rem !important;
    font-weight: 600;
    border-radius: 20px;
    border: solid 1px #28a745;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(40,167,69,0.6) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(40,167,69,0.6) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(40,167,69,0.6) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#28a745',GradientType=0 );
    transition: .15s ease-in-out;
}

    .btn-shadow-success:hover {
        opacity: .6;
    }

.invalid-feedback {
    color: #ff7f7f;
}

.fc-sat.label,
th.fc-sat,
td.fc-sat {
    background-color: #d0e0f4 !important;
    color: #1776ec !important;
}

.fc-sun.label,
th.fc-sun,
td.fc-sun {
    background-color: #f4d9d9 !important;
    color: #f34040 !important;
}

th.fc-today,
td.fc-today {
    background-color: #ffffd6 !important;
}

.fc-event {
    cursor: pointer;
    padding: 3px 5px;
}

.dropArea {
    padding: 15px 0 15px 0;
    border: 2px dotted gray;
    background: #e4e4e4;
}

    .dropArea.dragover {
        border: 1px solid #16a5bf;
        background: #c1ffc1;
    }

table.sticky-table thead tr th {
    position: sticky;
    top: 0;
    z-index: 1;
    background-color: white;
}

label.btn {
    margin-bottom: 0;
}

.btn:hover {
    color: white;
}

#btn-totop {
    cursor: pointer;
}

    #btn-totop i {
        font-size: 1rem;
    }

div.div-detail-background-color {
    background-color: white;
}

.required:after {
    margin-left: 1.0em;
    padding: 0px 6px 0px 6px;
    border-radius: 4px;
    font-size: 0.6em;
    color: white;
    background-color: #C44;
    content: "必須";
}

.ttl,
.ttl-dark {
    position: relative;
    padding-left: 10px;
    font-weight: 600;
}

    .ttl:before {
        content: "";
        width: 4px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: #ffbf7f;
        border-radius: 2px;
    }

    .ttl-dark:before {
        content: "";
        width: 4px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: brown;
        border-radius: 2px;
    }

.btn-blue {
    color: #fff;
    background-color: #467fcf;
    border-color: #467fcf;
}

    .btn-blue:hover {
        color: #fff;
        background-color: #316cbe;
        border-color: #2f66b3;
    }

    .btn-blue:focus, .btn-blue.focus {
        box-shadow: 0 0 0 2px rgba(70, 127, 207, 0.5);
    }

    .btn-blue.disabled, .btn-blue:disabled {
        color: #fff;
        background-color: #467fcf;
        border-color: #467fcf;
    }

    .btn-blue:not(:disabled):not(.disabled):active, .btn-blue:not(:disabled):not(.disabled).active,
    .show > .btn-blue.dropdown-toggle {
        color: #fff;
        background-color: #2f66b3;
        border-color: #2c60a9;
    }

        .btn-blue:not(:disabled):not(.disabled):active:focus, .btn-blue:not(:disabled):not(.disabled).active:focus,
        .show > .btn-blue.dropdown-toggle:focus {
            box-shadow: 0 0 0 2px rgba(70, 127, 207, 0.5);
        }


.header-toggler {
    width: 2rem;
    height: 2rem;
    position: relative;
    color: #9aa0ac;
}

    .header-toggler:hover {
        color: #6e7687;
    }

.header-toggler-icon {
    position: absolute;
    width: 1rem;
    height: 2px;
    color: inherit;
    background: currentColor;
    border-radius: 3px;
    top: 50%;
    left: 50%;
    margin: -2px 0 0 -.5rem;
    box-shadow: 0 5px currentColor, 0 -5px currentColor;
}


.nav {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}


.nav-tabs {
    border-bottom: 1px solid #dee2e6;
}

    .nav-tabs .nav-item {
        margin-bottom: -1px;
    }

    .nav-tabs .nav-link {
        border: 1px solid transparent;
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
    }

        .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
            border-color: #e9ecef #e9ecef #dee2e6;
        }

        .nav-tabs .nav-link.disabled {
            color: #868e96;
            background-color: transparent;
            border-color: transparent;
        }

        .nav-tabs .nav-link.active,
        .nav-tabs .nav-item.show .nav-link {
            color: #495057;
            background-color: #f5f7fb;
            border-color: #dee2e6 #dee2e6 #f5f7fb;
        }

    .nav-tabs .dropdown-menu {
        margin-top: -1px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }


.nav-link,
.nav-item {
    padding: 0 .75rem;
    min-width: 2rem;
    transition: .3s color;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

    .nav-link .badge,
    .nav-item .badge {
        position: absolute;
        top: 0;
        right: 0;
        padding: .2rem .25rem;
        min-width: 1rem;
    }

.nav-tabs {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: white;
    margin: 0 -.75rem;
}

    .nav-tabs .nav-link {
        border: 0;
        color: inherit;
        border-bottom: 1px solid transparent;
        margin-bottom: -1px;
        transition: .3s border-color;
        font-weight: 400;
        padding: 1rem 0;
    }

        .nav-tabs .nav-link:hover:not(.disabled) {
            border-color: #6e7687;
            color: #6e7687;
        }

        .nav-tabs .nav-link.active {
            border-color: white;
            color: white;
            background: transparent;
        }

        .nav-tabs .nav-link.disabled {
            opacity: .4;
            cursor: default;
            pointer-events: none;
        }

    .nav-tabs .nav-item {
        margin-bottom: 0;
        position: relative;
    }

        .nav-tabs .nav-item i {
            margin-right: .25rem;
            line-height: 1;
            font-size: 0.875rem;
            width: 0.875rem;
            vertical-align: baseline;
            display: inline-block;
        }

        .nav-tabs .nav-item:hover .nav-submenu {
            display: block;
        }

    .nav-tabs .nav-submenu {
        display: none;
        position: absolute;
        background: #fff;
        border: 1px solid rgba(0, 40, 100, 0.12);
        border-top: none;
        z-index: 10;
        box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
        min-width: 10rem;
        border-radius: 0 0 3px 3px;
    }

        .nav-tabs .nav-submenu .nav-item {
            display: block;
            padding: .5rem 1rem;
            color: #9aa0ac;
            margin: 0 !important;
            cursor: pointer;
            transition: .3s background;
        }

            .nav-tabs .nav-submenu .nav-item.active {
                color: #467fcf;
            }

            .nav-tabs .nav-submenu .nav-item:hover {
                color: #6e7687;
                text-decoration: none;
                background: rgba(0, 0, 0, 0.024);
            }



.btn-shadow {
    min-width: 100px;
    padding: .3rem 1.4rem !important;
    font-weight: 600;
    border-radius: 20px;
    border: solid 1px #c2c2c2;
    color: black;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(204,204,204,1) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#cccccc',GradientType=0 );
    transition: .15s ease-in-out;
}

    .btn-shadow:hover {
        opacity: .6;
    }

/******block-search******/
.block-search .btn-tgl {
    display: none;
    width: 100%;
    background: #fff;
    border: solid 1px #000;
    padding-right: 20px;
    position: relative;
}

    .block-search .btn-tgl:before {
        content: "▲";
        font-size: .8rem;
        position: absolute;
        top: 25%;
        right: 10px;
    }

    .block-search .btn-tgl.collapsed:before {
        content: "▼";
    }

@media screen and (max-width: 992px) {
    .block-search .btn-tgl {
        display: block;
    }

    .block-search {
        margin: 0 auto 2rem;
    }

    .head.block-search .form-group {
        margin-bottom: 1.2rem;
    }
}


/******calendar TABLEstyle******/
#calendar {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

    #calendar table {
        margin-bottom: 0;
    }

        #calendar table,
        #calendar table th,
        #calendar table td {
            border-color: #7a7b7c;
        }

@media screen and (max-width: 768px) {
    #calendar {
        padding-right: 0;
        padding-left: 0;
    }
}

/******file invalid******/
.list-group.is-invalid {
    border: 2px solid #dc3545;
}
.readonly {
    background-color:#e9ecef;
    opacity:1;
}
.blank-top{
    margin-top:10px;
}
.blank-bottom {
    margin-bottom:10px;
}
.prespace {
    white-space:pre;
}
.scroll {
    overflow: scroll;
}
.scroll::-webkit-scrollbar {
    display:none;
}
.text-output {
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}