@charset "UTF-8";

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus, .form-select:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100vh;
    margin: 0;
}

body {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
}

.table {
    border-top: 1px solid #dee2e6;
}

.form-control {
    font-size: 14px;
    color: #666666;
    height: 35px;
}

.form-select {
    font-size: 14px;
    color: #666666;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

.body-content {
    padding-left: 15px;
    padding-right: 15px;
    flex: 1;
}

.display-title {
    margin-top: 20px;
    margin-bottom: 2px;
    font-size: 27px;
    font-weight: 500;
}

.card {
    border-color: #bce8f1;
}

.card-header {
    color: #3a87ad;
    background-color: #d9edf7;
    border-color: #bce8f1;
}

.card-title {
    font-size: 16px;
    color: inherit;
}

.card-body {
    padding: 10px 10px;
}

.form-group {
    margin-bottom: 15px;
}

.form-group-display {
    margin-bottom: 7px;
}

.control-label {
    font-weight: bold;
    color: #666666;
    text-align: end;
    margin-bottom: 0;
    padding-top: 9px;
}

.control-label-display {
    font-weight: bold;
    color: #666666;
    text-align: end;
    margin-bottom: 0;
    padding-top: 0px;
}

@media (max-width: 767px) {
    .control-label,
    .control-label-display {
        text-align: left;
        margin-bottom: 5px;
        padding-top: 5px;
    }
}

.control-display {
    font-weight: normal;
    color: #666666;
    text-align: start;
    margin-bottom: 0;
    padding-top: 0px;
}

.btn {
    font-size: 14px;
}

.btn-default {
    color: #ffffff;
/*    background-color: #474949;
    border-color: #474949;*/
    background-image: -webkit-linear-gradient(#6d7070, #474949 50%, #3d3f3f);
    background-image: -o-linear-gradient(#6d7070, #474949 50%, #3d3f3f);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#6d7070), color-stop(50%, #474949), to(#3d3f3f));
    background-image: linear-gradient(#6d7070, #474949 50%, #3d3f3f);
    background-repeat: no-repeat;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff6d7070', endColorstr='#ff3d3f3f', GradientType=0);
    -webkit-filter: none;
    filter: none;
    border: 1px solid #2e2f2f;
}

    .btn-default:focus,
    .btn-default.focus {
        color: #ffffff;
        background-color: #2e2f2f;
        border-color: #080808;
    }

    .btn-default:hover {
        color: #ffffff;
        background-image: -webkit-linear-gradient(#636565, #3d3f3f 50%, #333434);
        background-image: -o-linear-gradient(#636565, #3d3f3f 50%, #333434);
        background-image: -webkit-gradient(linear, left top, left bottom, from(#636565), color-stop(50%, #3d3f3f), to(#333434));
        background-image: linear-gradient(#636565, #3d3f3f 50%, #333434);
        background-repeat: no-repeat;
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff636565', endColorstr='#ff333434', GradientType=0);
        -webkit-filter: none;
        filter: none;
        border: 1px solid #242525;
    }

    .btn-default:active,
    .btn-default.active,
    .open > .dropdown-toggle.btn-default {
        color: #ffffff;
        background-color: #2e2f2f;
        border-color: #292a2a;
    }

        .btn-default:active:hover,
        .btn-default.active:hover,
        .open > .dropdown-toggle.btn-default:hover,
        .btn-default:active:focus,
        .btn-default.active:focus,
        .open > .dropdown-toggle.btn-default:focus,
        .btn-default:active.focus,
        .btn-default.active.focus,
        .open > .dropdown-toggle.btn-default.focus {
            color: #ffffff;
            background-color: #1c1d1d;
            border-color: #080808;
        }

    .btn-default:active,
    .btn-default.active,
    .open > .dropdown-toggle.btn-default {
        background-image: none;
    }

    .btn-default.disabled:hover,
    .btn-default[disabled]:hover,
    fieldset[disabled] .btn-default:hover,
    .btn-default.disabled:focus,
    .btn-default[disabled]:focus,
    fieldset[disabled] .btn-default:focus,
    .btn-default.disabled.focus,
    .btn-default[disabled].focus,
    fieldset[disabled] .btn-default.focus {
        background-color: #474949;
        border-color: #474949;
    }

    .btn-default .badge {
        color: #474949;
        background-color: #ffffff;
    }

.btn-secondary {
    color: #fff;
    background-color: #999;
    border-color: #999;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#bfbfbf), color-stop(50%, #999), to(#8f8f8f));
    background-image: linear-gradient(#bfbfbf, #999 50%, #8f8f8f);
    background-repeat: no-repeat;
    -webkit-filter: none;
    filter: none;
    border: 1px solid #807f7f;
}

    .btn-secondary:focus, .btn-secondary.focus {
        color: #fff;
        background-color: #868686;
        border-color: #807f7f;
        -webkit-box-shadow: 0 0 0 0.2rem rgba(168, 168, 168, 0.5);
        box-shadow: 0 0 0 0.2rem rgba(168, 168, 168, 0.5);
    }

    .btn-secondary:hover {
        color: #fff;
        background-color: #868686;
        border-color: #807f7f;
    }

    .btn-secondary.disabled, .btn-secondary:disabled {
        color: #fff;
        background-color: #999;
        border-color: #999;
    }

    .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
    .show > .btn-secondary.dropdown-toggle {
        color: #fff;
        background-color: #807f7f;
        border-color: #797979;
    }

        .btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
        .show > .btn-secondary.dropdown-toggle:focus {
            -webkit-box-shadow: 0 0 0 0.2rem rgba(168, 168, 168, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(168, 168, 168, 0.5);
        }

    .btn-secondary:not(.disabled):hover {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#b5b5b5), color-stop(50%, #8f8f8f), to(#858585));
        background-image: linear-gradient(#b5b5b5, #8f8f8f 50%, #858585);
        background-repeat: no-repeat;
        -webkit-filter: none;
        filter: none;
        border: 1px solid #757575;
    }

.btn-danger {
    color: #ffffff;
    background-color: #cd0200;
    border-color: #cd0200;
    background-image: -webkit-linear-gradient(#ff1d1b, #cd0200 50%, #b90200);
    background-image: -o-linear-gradient(#ff1d1b, #cd0200 50%, #b90200);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ff1d1b), color-stop(50%, #cd0200), to(#b90200));
    background-image: linear-gradient(#ff1d1b, #cd0200 50%, #b90200);
    background-repeat: no-repeat;
    -webkit-filter: none;
    filter: none;
    border: 1px solid #9a0200;
}

    .btn-danger:focus, .btn-danger.focus {
        color: #ffffff;
        background-color: #9a0200;
        border-color: #4e0100;
    }

    .btn-danger:hover {
        color: #ffffff;
        background-color: #9a0200;
        border-color: #900100;
        background-image: -webkit-linear-gradient(#ff0906, #b90200 50%, #a40200);
        background-image: -o-linear-gradient(#ff0906, #b90200 50%, #a40200);
        background-image: -webkit-gradient(linear, left top, left bottom, from(#ff0906), color-stop(50%, #b90200), to(#a40200));
        background-image: linear-gradient(#ff0906, #b90200 50%, #a40200);
        background-repeat: no-repeat;
        -webkit-filter: none;
        filter: none;
        border: 1px solid #860100;
    }

.btn-link {
    cursor: pointer;
    border: none;
    background-color: transparent;
    color: #0033cc;
    text-decoration: none;
}

    /* マウスオーバー時のスタイル */
    .btn-link:hover {
        text-decoration: underline;
        color: #002080;
    }

.btn-extend {
    padding: 5px 5px 5px 5px;
}

.textarea-val {
    width: 280px;
    max-width: 90%;
    height: auto;
    resize: none;
}

input,
select,
textarea {
    max-width: 280px;
}

.navbar {
    padding-top: 0px;
    padding-bottom: 0px;
}

a.header-link {
    color: #dddddd;
    padding: 13px 0px 11px 0px;
    text-decoration: none;
}

a {
    text-decoration: none;
}

    a:hover {
        text-decoration: underline;
    }

.dropdown-menu {
    font-size: 14px;
}

.label-selected-user {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 8px;
}

.dropdown-quantity {
    width: auto;
}

.readonly {
    background-color: #eeeeee;
}

.readonly:focus {
    background-color: #eeeeee;
}

/*必須入力マーク*/
/*必須*/
.inputRequired::after {
    content: "必須";
    background-color: #c40000;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    min-width: 16px;
    min-height: 20px;
    padding: 4px 10px;
    margin: 0px 4px;
    line-height: 1;
    vertical-align: text-top;
    white-space: nowrap;
    text-align: center;
    border-radius: 5px;
    display: inline-block;
}
/*任意*/
.inputOptional::after {
    content: "任意";
    background-color: #767171;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    min-width: 26px;
    min-height: 20px;
    padding: 4px 10px;
    margin: 0px 4px;
    line-height: 1;
    vertical-align: text-top;
    white-space: nowrap;
    text-align: center;
    border-radius: 5px;
    display: inline-block;
}
/*入力項目以外*/
.inputEmpty::after {
    content: "";
    background-color: #FFFFFF;
    min-width: 44px;
    min-height: 20px;
    padding: 4px 10px;
    margin: 0px 4px;
    line-height: 1;
    vertical-align: text-top;
    text-align: center;
    border-radius: 5px;
    display: inline-block;
}

/* パネル（共通） */
.panel {
    border: 1px solid #ddd;
    border-radius: 4px;
    margin: 30px 0;
    background-color: #fff;
}

.panel-heading {
    padding: 8px 12px;
    border-bottom: 1px solid #ddd;
}

.panel-title {
    font-size: 1.1rem;
    margin: 0;
    font-weight: bold;
}

.panel-body {
    padding: 15px;
}

/* Info（青） */
.panel-info {
    border-color: #bce8f1;
}

    .panel-info .panel-heading {
        background-color: #d9edf7;
        color: #31708f;
    }

/* Error（赤） */
.panel-danger {
    border-color: #ebccd1;
}

    .panel-danger .panel-heading {
        background-color: #f2dede;
        color: #a94442;
    }

/* Warning（黄） */
.panel-warning {
    border-color: #faebcc;
}

    .panel-warning .panel-heading {
        background-color: #fcf8e3;
        color: #8a6d3b;
    }

/* Success（緑） */
.panel-success {
    border-color: #d6e9c6;
}

    .panel-success .panel-heading {
        background-color: #dff0d8;
        color: #3c763d;
    }
