/* 最小化できませんでした。最小化されていないコンテンツを返します。
(4,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(7,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(9,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(22,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(23,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(24,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(25,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(26,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(27,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(28,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(29,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(30,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(31,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(32,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(33,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(34,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(35,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(36,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(37,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(38,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(39,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(40,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(41,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(42,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(43,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(44,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(45,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(46,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10529,23): run-time error CSS1039: Token not allowed after unary operator: '-vh'
(10535,27): run-time error CSS1039: Token not allowed after unary operator: '-vh'
(10539,31): run-time error CSS1039: Token not allowed after unary operator: '-vh'
(10611,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10612,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10623,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10629,17): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(10630,24): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(10641,32): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(10647,28): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10648,24): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10673,28): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10674,24): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10678,17): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10679,24): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10690,32): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10750,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10754,28): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10758,28): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10762,28): run-time error CSS1039: Token not allowed after unary operator: '-light'
(10766,28): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10777,28): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(10803,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10807,17): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(10811,17): run-time error CSS1039: Token not allowed after unary operator: '-secondary'
(10815,17): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10819,17): run-time error CSS1039: Token not allowed after unary operator: '-light-text'
(10823,17): run-time error CSS1039: Token not allowed after unary operator: '-base'
(10883,17): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(10889,17): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(10913,33): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(10915,28): run-time error CSS1039: Token not allowed after unary operator: '-light'
(10921,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10922,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(10942,32): run-time error CSS1039: Token not allowed after unary operator: '-gray-light'
(10943,28): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(10949,36): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(10950,32): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(10956,29): run-time error CSS1039: Token not allowed after unary operator: '-light'
(10985,17): run-time error CSS1039: Token not allowed after unary operator: '-base'
(11054,24): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(11077,24): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(11168,24): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(11177,21): run-time error CSS1039: Token not allowed after unary operator: '-dark'
(11258,34): run-time error CSS1039: Token not allowed after unary operator: '-gray-main'
(11264,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(11335,38): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(11376,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(11381,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(11387,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(11410,28): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11723,37): run-time error CSS1039: Token not allowed after unary operator: '-light-gray'
(11733,36): run-time error CSS1039: Token not allowed after unary operator: '-light'
(11751,31): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(11845,17): run-time error CSS1039: Token not allowed after unary operator: '-secondary'
(11855,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11885,43): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(11918,35): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12019,28): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(12027,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12193,31): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(12284,39): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12330,30): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(12342,39): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12404,28): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12477,29): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12484,17): run-time error CSS1039: Token not allowed after unary operator: '-base'
(12488,28): run-time error CSS1039: Token not allowed after unary operator: '-white'
(12489,17): run-time error CSS1039: Token not allowed after unary operator: '-light-text'
(12566,17): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(12567,30): run-time error CSS1039: Token not allowed after unary operator: '-outline-primary'
(12665,36): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(12684,43): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12748,36): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12765,28): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(12767,17): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(12783,32): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(12793,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12816,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(12935,32): run-time error CSS1039: Token not allowed after unary operator: '-light'
(13524,28): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(13670,36): run-time error CSS1039: Token not allowed after unary operator: '-light'
(13685,28): run-time error CSS1039: Token not allowed after unary operator: '-gray-sub'
(13807,32): run-time error CSS1039: Token not allowed after unary operator: '-light'
(13887,41): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(14173,36): run-time error CSS1039: Token not allowed after unary operator: '-light'
 */
@charset "UTF-8";

:root {
    --blue: #007bff;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #e83e8c;
    --red: #dc3545;
    --orange: #fd7e14;
    --yellow: #ffc107;
    --green: #28a745;
    --teal: #20c997;
    --cyan: #17a2b8;
    --white: #fff;
    --gray: #6c757d;
    --gray-dark: #343a40;
    --brown: #775844;
    --light-brown: #d6cdc7;
    --blue-gray: #607d88;
    --light-blue-gray: #889aa8;
    --gray-main: #949494;
    --gray-sub: #c2c2c2;
    --primary: #009CA2;
    --base: #333333;
    --outline-primary: #00676B;
    --secondary: #4D4D4D;
    --success: #28a745;
    --info: #17a2b8;
    --warning: #ffc107;
    --danger: #EB0000;
    --light: #F5F5F5;
    --light-text: #A7A7A7;
    --dark: #4D4D4D;
    --dark-gray: #495057;
    --light-primary: #7fcdd0;
    --light-gray: #dfe5e8;
    --blue-gray: #607d88;
    --light-blue-gray: #889aa8;
    --primary-master: #007bff;
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --font-family-sans-serif: "Noto Sans CJK JP",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --font-family-monospace: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
}

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(56,56,56,0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block;
}

body {
    margin: 0;
    font-family: "Noto Sans CJK JP",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #333333;
    text-align: left;
    background-color: #fff;
}

[tabindex="-1"]:focus {
    outline: 0 !important;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: .5rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title], abbr[data-original-title] {
    text-decoration: underline;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol, ul, dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

    ol ol, ul ul, ol ul, ul ol {
        margin-bottom: 0;
    }

dt {
    font-weight: 700;
}

dd {
    margin-bottom: .5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b, strong {
    font-weight: bolder;
}

small {
    font-size: 80%;
}

sub, sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

a {
    color: #383838;
    text-decoration: none;
    background-color: transparent;
}

    a:hover {
        color: #121212;
        text-decoration: underline;
    }

    a:not([href]):not([tabindex]) {
        color: inherit;
        text-decoration: none;
    }

        a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
            color: inherit;
            text-decoration: none;
        }

        a:not([href]):not([tabindex]):focus {
            outline: 0;
        }

pre, code, kbd, samp {
    font-family: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
    font-size: 1em;
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
}

figure {
    margin: 0 0 1rem;
}

img {
    vertical-align: middle;
    border-style: none;
}

svg {
    overflow: hidden;
    vertical-align: middle;
}

table {
    border-collapse: collapse;
}

caption {
    padding-top: .75rem;
    padding-bottom: .75rem;
    color: #6c757d;
    text-align: left;
    caption-side: bottom;
}

th {
    text-align: inherit;
}

label {
    display: inline-block;
    margin-bottom: .5rem;
}

button {
    border-radius: 0;
}

    button:focus {
        outline: 1px dotted;
        outline: 5px auto -webkit-focus-ring-color;
    }

input, button, select, optgroup, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button, input {
    overflow: visible;
}

button, select {
    text-transform: none;
}

select {
    word-wrap: normal;
}

button, [type=button], [type=reset], [type=submit] {
    -webkit-appearance: button;
}

    button:not(:disabled), [type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled) {
        cursor: pointer;
    }

    button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
        padding: 0;
        border-style: none;
    }

input[type=radio], input[type=checkbox] {
    box-sizing: border-box;
    padding: 0;
}

input[type=date], input[type=time], input[type=datetime-local], input[type=month] {
    -webkit-appearance: listbox;
}

textarea {
    overflow: auto;
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    outline-offset: -2px;
    -webkit-appearance: none;
}

    [type=search]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}

output {
    display: inline-block;
}

summary {
    display: list-item;
    cursor: pointer;
}

template {
    display: none;
}

[hidden] {
    display: none !important;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
}

h1, .h1 {
    font-size: 2.5rem;
}

h2, .h2 {
    font-size: 2rem;
}

h3, .h3 {
    font-size: 1.75rem;
}

h4, .h4 {
    font-size: 1.5rem;
}

h5, .h5 {
    font-size: 1.25rem;
}

h6, .h6 {
    font-size: 1rem;
}

.lead {
    font-size: 1.25rem;
    font-weight: 300;
}

.display-1 {
    font-size: 6rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-2 {
    font-size: 5.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-3 {
    font-size: 4.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-4 {
    font-size: 3.5rem;
    font-weight: 300;
    line-height: 1.2;
}

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(56,56,56,.1);
}

small, .small {
    font-size: 80%;
    font-weight: 400;
}

mark, .mark {
    padding: .2em;
    background-color: #fcf8e3;
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

.list-inline {
    padding-left: 0;
    list-style: none;
}

.list-inline-item {
    display: inline-block;
}

    .list-inline-item:not(:last-child) {
        margin-right: .5rem;
    }

.initialism {
    font-size: 90%;
    text-transform: uppercase;
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

.blockquote-footer {
    display: block;
    font-size: 80%;
    color: #6c757d;
}

    .blockquote-footer::before {
        content: "— ";
    }

.img-fluid {
    max-width: 100%;
    height: auto;
}

.img-thumbnail {
    padding: .25rem;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: .25rem;
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: .5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 90%;
    color: #6c757d;
}

code {
    font-size: 87.5%;
    color: #e83e8c;
    word-break: break-word;
}

a > code {
    color: inherit;
}

kbd {
    padding: .2rem .4rem;
    font-size: 87.5%;
    color: #fff;
    background-color: #212529;
    border-radius: .2rem;
}

    kbd kbd {
        padding: 0;
        font-size: 100%;
        font-weight: 700;
    }

pre {
    display: block;
    font-size: 87.5%;
    color: #212529;
}

    pre code {
        font-size: inherit;
        color: inherit;
        word-break: normal;
    }

.pre-scrollable {
    max-height: 340px;
    overflow-y: scroll;
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media(min-width:576px) {
    .container {
        max-width: 540px;
    }
}

@media(min-width:768px) {
    .container {
        max-width: 720px;
    }
}

@media(min-width:992px) {
    .container {
        max-width: 960px;
    }
}

@media(min-width:1200px) {
    .container {
        max-width: 1140px;
    }
}

.container-fluid {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

    .no-gutters > .col, .no-gutters > [class*=col-] {
        padding-right: 0;
        padding-left: 0;
    }

.col-xl, .col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg, .col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md, .col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm, .col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col, .col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.col-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
}

.col-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
}

.col-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
}

.col-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%;
}

.col-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
}

.col-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

.order-first {
    order: -1;
}

.order-last {
    order: 13;
}

.order-0 {
    order: 0;
}

.order-1 {
    order: 1;
}

.order-2 {
    order: 2;
}

.order-3 {
    order: 3;
}

.order-4 {
    order: 4;
}

.order-5 {
    order: 5;
}

.order-6 {
    order: 6;
}

.order-7 {
    order: 7;
}

.order-8 {
    order: 8;
}

.order-9 {
    order: 9;
}

.order-10 {
    order: 10;
}

.order-11 {
    order: 11;
}

.order-12 {
    order: 12;
}

.offset-1 {
    margin-left: 8.3333333333%;
}

.offset-2 {
    margin-left: 16.6666666667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.3333333333%;
}

.offset-5 {
    margin-left: 41.6666666667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.3333333333%;
}

.offset-8 {
    margin-left: 66.6666666667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.3333333333%;
}

.offset-11 {
    margin-left: 91.6666666667%;
}

@media(min-width:576px) {
    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-sm-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-sm-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-sm-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-sm-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-sm-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-sm-first {
        order: -1;
    }

    .order-sm-last {
        order: 13;
    }

    .order-sm-0 {
        order: 0;
    }

    .order-sm-1 {
        order: 1;
    }

    .order-sm-2 {
        order: 2;
    }

    .order-sm-3 {
        order: 3;
    }

    .order-sm-4 {
        order: 4;
    }

    .order-sm-5 {
        order: 5;
    }

    .order-sm-6 {
        order: 6;
    }

    .order-sm-7 {
        order: 7;
    }

    .order-sm-8 {
        order: 8;
    }

    .order-sm-9 {
        order: 9;
    }

    .order-sm-10 {
        order: 10;
    }

    .order-sm-11 {
        order: 11;
    }

    .order-sm-12 {
        order: 12;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.3333333333%;
    }

    .offset-sm-2 {
        margin-left: 16.6666666667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.3333333333%;
    }

    .offset-sm-5 {
        margin-left: 41.6666666667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.3333333333%;
    }

    .offset-sm-8 {
        margin-left: 66.6666666667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.3333333333%;
    }

    .offset-sm-11 {
        margin-left: 91.6666666667%;
    }
}

@media(min-width:768px) {
    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-md-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-md-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-md-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-md-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-md-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-md-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-md-first {
        order: -1;
    }

    .order-md-last {
        order: 13;
    }

    .order-md-0 {
        order: 0;
    }

    .order-md-1 {
        order: 1;
    }

    .order-md-2 {
        order: 2;
    }

    .order-md-3 {
        order: 3;
    }

    .order-md-4 {
        order: 4;
    }

    .order-md-5 {
        order: 5;
    }

    .order-md-6 {
        order: 6;
    }

    .order-md-7 {
        order: 7;
    }

    .order-md-8 {
        order: 8;
    }

    .order-md-9 {
        order: 9;
    }

    .order-md-10 {
        order: 10;
    }

    .order-md-11 {
        order: 11;
    }

    .order-md-12 {
        order: 12;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.3333333333%;
    }

    .offset-md-2 {
        margin-left: 16.6666666667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.3333333333%;
    }

    .offset-md-5 {
        margin-left: 41.6666666667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.3333333333%;
    }

    .offset-md-8 {
        margin-left: 66.6666666667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.3333333333%;
    }

    .offset-md-11 {
        margin-left: 91.6666666667%;
    }
}

@media(min-width:992px) {
    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-lg-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-lg-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-lg-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-lg-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-lg-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-lg-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-lg-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-lg-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-lg-first {
        order: -1;
    }

    .order-lg-last {
        order: 13;
    }

    .order-lg-0 {
        order: 0;
    }

    .order-lg-1 {
        order: 1;
    }

    .order-lg-2 {
        order: 2;
    }

    .order-lg-3 {
        order: 3;
    }

    .order-lg-4 {
        order: 4;
    }

    .order-lg-5 {
        order: 5;
    }

    .order-lg-6 {
        order: 6;
    }

    .order-lg-7 {
        order: 7;
    }

    .order-lg-8 {
        order: 8;
    }

    .order-lg-9 {
        order: 9;
    }

    .order-lg-10 {
        order: 10;
    }

    .order-lg-11 {
        order: 11;
    }

    .order-lg-12 {
        order: 12;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.3333333333%;
    }

    .offset-lg-2 {
        margin-left: 16.6666666667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.3333333333%;
    }

    .offset-lg-5 {
        margin-left: 41.6666666667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.3333333333%;
    }

    .offset-lg-8 {
        margin-left: 66.6666666667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.3333333333%;
    }

    .offset-lg-11 {
        margin-left: 91.6666666667%;
    }
}

@media(min-width:1200px) {
    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-xl-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-xl-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-xl-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-xl-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-xl-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-xl-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-xl-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-xl-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-xl-first {
        order: -1;
    }

    .order-xl-last {
        order: 13;
    }

    .order-xl-0 {
        order: 0;
    }

    .order-xl-1 {
        order: 1;
    }

    .order-xl-2 {
        order: 2;
    }

    .order-xl-3 {
        order: 3;
    }

    .order-xl-4 {
        order: 4;
    }

    .order-xl-5 {
        order: 5;
    }

    .order-xl-6 {
        order: 6;
    }

    .order-xl-7 {
        order: 7;
    }

    .order-xl-8 {
        order: 8;
    }

    .order-xl-9 {
        order: 9;
    }

    .order-xl-10 {
        order: 10;
    }

    .order-xl-11 {
        order: 11;
    }

    .order-xl-12 {
        order: 12;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.3333333333%;
    }

    .offset-xl-2 {
        margin-left: 16.6666666667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.3333333333%;
    }

    .offset-xl-5 {
        margin-left: 41.6666666667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.3333333333%;
    }

    .offset-xl-8 {
        margin-left: 66.6666666667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.3333333333%;
    }

    .offset-xl-11 {
        margin-left: 91.6666666667%;
    }
}

.table {
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
}

    .table th, .table td {
        padding: .75rem;
        vertical-align: top;
        border-top: 1px solid #dee2e6;
    }

    .table thead th {
        vertical-align: bottom;
        border-bottom: 2px solid #dee2e6;
    }

    .table tbody + tbody {
        border-top: 2px solid #dee2e6;
    }

.table-sm th, .table-sm td {
    padding: .3rem;
}

.table-bordered {
    border: 1px solid #dee2e6;
}

    .table-bordered th, .table-bordered td {
        border: 1px solid #dee2e6;
    }

    .table-bordered thead th, .table-bordered thead td {
        border-bottom-width: 2px;
    }

.table-borderless th, .table-borderless td, .table-borderless thead th, .table-borderless tbody + tbody {
    border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(56,56,56,.05);
}

.table-hover tbody tr:hover {
    color: #212529;
    background-color: rgba(56,56,56,.075);
}

.table-primary, .table-primary > th, .table-primary > td {
    background-color: #c7c7c7;
}

    .table-primary th, .table-primary td, .table-primary thead th, .table-primary tbody + tbody {
        border-color: #989898;
    }

.table-hover .table-primary:hover {
    background-color: #bababa;
}

    .table-hover .table-primary:hover > td, .table-hover .table-primary:hover > th {
        background-color: #bababa;
    }

.table-secondary, .table-secondary > th, .table-secondary > td {
    background-color: #d6d8db;
}

    .table-secondary th, .table-secondary td, .table-secondary thead th, .table-secondary tbody + tbody {
        border-color: #b3b7bb;
    }

.table-hover .table-secondary:hover {
    background-color: #c8cbcf;
}

    .table-hover .table-secondary:hover > td, .table-hover .table-secondary:hover > th {
        background-color: #c8cbcf;
    }

.table-success, .table-success > th, .table-success > td {
    background-color: #c3e6cb;
}

    .table-success th, .table-success td, .table-success thead th, .table-success tbody + tbody {
        border-color: #8fd19e;
    }

.table-hover .table-success:hover {
    background-color: #b1dfbb;
}

    .table-hover .table-success:hover > td, .table-hover .table-success:hover > th {
        background-color: #b1dfbb;
    }

.table-info, .table-info > th, .table-info > td {
    background-color: #bee5eb;
}

    .table-info th, .table-info td, .table-info thead th, .table-info tbody + tbody {
        border-color: #86cfda;
    }

.table-hover .table-info:hover {
    background-color: #abdde5;
}

    .table-hover .table-info:hover > td, .table-hover .table-info:hover > th {
        background-color: #abdde5;
    }

.table-warning, .table-warning > th, .table-warning > td {
    background-color: #ffeeba;
}

    .table-warning th, .table-warning td, .table-warning thead th, .table-warning tbody + tbody {
        border-color: #ffdf7e;
    }

.table-hover .table-warning:hover {
    background-color: #ffe8a1;
}

    .table-hover .table-warning:hover > td, .table-hover .table-warning:hover > th {
        background-color: #ffe8a1;
    }

.table-danger, .table-danger > th, .table-danger > td {
    background-color: #f5c6cb;
}

    .table-danger th, .table-danger td, .table-danger thead th, .table-danger tbody + tbody {
        border-color: #ed969e;
    }

.table-hover .table-danger:hover {
    background-color: #f1b0b7;
}

    .table-hover .table-danger:hover > td, .table-hover .table-danger:hover > th {
        background-color: #f1b0b7;
    }

.table-light, .table-light > th, .table-light > td {
    background-color: #f9fafb;
}

    .table-light th, .table-light td, .table-light thead th, .table-light tbody + tbody {
        border-color: #f4f5f7;
    }

.table-hover .table-light:hover {
    background-color: #eaedf1;
}

    .table-hover .table-light:hover > td, .table-hover .table-light:hover > th {
        background-color: #eaedf1;
    }

.table-dark, .table-dark > th, .table-dark > td {
    background-color: #c6c8ca;
}

    .table-dark th, .table-dark td, .table-dark thead th, .table-dark tbody + tbody {
        border-color: #95999c;
    }

.table-hover .table-dark:hover {
    background-color: #b9bbbe;
}

    .table-hover .table-dark:hover > td, .table-hover .table-dark:hover > th {
        background-color: #b9bbbe;
    }

.table-dark-gray, .table-dark-gray > th, .table-dark-gray > td {
    background-color: #ccced0;
}

    .table-dark-gray th, .table-dark-gray td, .table-dark-gray thead th, .table-dark-gray tbody + tbody {
        border-color: #a0a4a8;
    }

.table-hover .table-dark-gray:hover {
    background-color: #bfc1c4;
}

    .table-hover .table-dark-gray:hover > td, .table-hover .table-dark-gray:hover > th {
        background-color: #bfc1c4;
    }

.table-light-primary, .table-light-primary > th, .table-light-primary > td {
    background-color: #f4f1ef;
}

    .table-light-primary th, .table-light-primary td, .table-light-primary thead th, .table-light-primary tbody + tbody {
        border-color: #eae5e2;
    }

.table-hover .table-light-primary:hover {
    background-color: #eae4e0;
}

    .table-hover .table-light-primary:hover > td, .table-hover .table-light-primary:hover > th {
        background-color: #eae4e0;
    }

.table-light-gray, .table-light-gray > th, .table-light-gray > td {
    background-color: #f6f8f9;
}

    .table-light-gray th, .table-light-gray td, .table-light-gray thead th, .table-light-gray tbody + tbody {
        border-color: #eef1f3;
    }

.table-hover .table-light-gray:hover {
    background-color: #e7ecef;
}

    .table-hover .table-light-gray:hover > td, .table-hover .table-light-gray:hover > th {
        background-color: #e7ecef;
    }

.table-blue-gray, .table-blue-gray > th, .table-blue-gray > td {
    background-color: #d2dbde;
}

    .table-blue-gray th, .table-blue-gray td, .table-blue-gray thead th, .table-blue-gray tbody + tbody {
        border-color: #acbbc1;
    }

.table-hover .table-blue-gray:hover {
    background-color: #c3cfd3;
}

    .table-hover .table-blue-gray:hover > td, .table-hover .table-blue-gray:hover > th {
        background-color: #c3cfd3;
    }

.table-light-blue-gray, .table-light-blue-gray > th, .table-light-blue-gray > td {
    background-color: #dee3e7;
}

    .table-light-blue-gray th, .table-light-blue-gray td, .table-light-blue-gray thead th, .table-light-blue-gray tbody + tbody {
        border-color: #c1cad2;
    }

.table-hover .table-light-blue-gray:hover {
    background-color: #cfd6dc;
}

    .table-hover .table-light-blue-gray:hover > td, .table-hover .table-light-blue-gray:hover > th {
        background-color: #cfd6dc;
    }

.table-primary-master, .table-primary-master > th, .table-primary-master > td {
    background-color: #b8daff;
}

    .table-primary-master th, .table-primary-master td, .table-primary-master thead th, .table-primary-master tbody + tbody {
        border-color: #7abaff;
    }

.table-hover .table-primary-master:hover {
    background-color: #9fcdff;
}

    .table-hover .table-primary-master:hover > td, .table-hover .table-primary-master:hover > th {
        background-color: #9fcdff;
    }

.table-active, .table-active > th, .table-active > td {
    background-color: rgba(56,56,56,.075);
}

.table-hover .table-active:hover {
    background-color: rgba(43,43,43,.075);
}

    .table-hover .table-active:hover > td, .table-hover .table-active:hover > th {
        background-color: rgba(43,43,43,.075);
    }

.table .thead-dark th {
    color: #fff;
    background-color: #343a40;
    border-color: #454d55;
}

.table .thead-light th {
    color: #495057;
    background-color: #e9ecef;
    border-color: #dee2e6;
}

.table-dark {
    color: #fff;
    background-color: #343a40;
}

    .table-dark th, .table-dark td, .table-dark thead th {
        border-color: #454d55;
    }

    .table-dark.table-bordered {
        border: 0;
    }

    .table-dark.table-striped tbody tr:nth-of-type(odd) {
        background-color: rgba(255,255,255,.05);
    }

    .table-dark.table-hover tbody tr:hover {
        color: #fff;
        background-color: rgba(255,255,255,.075);
    }

@media(max-width:575.98px) {
    .table-responsive-sm {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

        .table-responsive-sm > .table-bordered {
            border: 0;
        }
}

@media(max-width:767.98px) {
    .table-responsive-md {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

        .table-responsive-md > .table-bordered {
            border: 0;
        }
}

@media(max-width:991.98px) {
    .table-responsive-lg {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

        .table-responsive-lg > .table-bordered {
            border: 0;
        }
}

@media(max-width:1199.98px) {
    .table-responsive-xl {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

        .table-responsive-xl > .table-bordered {
            border: 0;
        }
}

.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

    .table-responsive > .table-bordered {
        border: 0;
    }

.form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 1rem + 2px);
    padding: .5rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #C2C2C2;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media(prefers-reduced-motion:reduce) {
    .form-control {
        transition: none;
    }
}

.form-control::-ms-expand {
    background-color: transparent;
    border: 0;
}

.form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #787878;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(56,56,56,.25);
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1;
}

select.form-control:focus::-ms-value {
    color: #495057;
    background-color: #fff;
}

.form-control-file, .form-control-range {
    display: block;
    width: 100%;
}

.col-form-label {
    padding-top: calc(.5rem + 1px);
    padding-bottom: calc(.5rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}

.col-form-label-lg {
    padding-top: calc(.5rem + 1px);
    padding-bottom: calc(.5rem + 1px);
    font-size: 1.25rem;
    line-height: 1.5;
}

.col-form-label-sm {
    padding-top: calc(.25rem + 1px);
    padding-bottom: calc(.25rem + 1px);
    font-size: .875rem;
    line-height: 1.5;
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding-top: .5rem;
    padding-bottom: .5rem;
    margin-bottom: 0;
    line-height: 1.5;
    color: #212529;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
}

    .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
        padding-right: 0;
        padding-left: 0;
    }

.form-control-sm {
    height: calc(1.5em + .5rem + 2px);
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: .2rem;
}

.form-control-lg {
    height: calc(1.5em + 1rem + 2px);
    padding: .5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: .3rem;
}

select.form-control[size], select.form-control[multiple] {
    height: auto;
}

textarea.form-control {
    height: auto;
}

.form-group {
    margin-bottom: 1rem;
}

.form-text {
    display: block;
    margin-top: .25rem;
}

.form-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

    .form-row > .col, .form-row > [class*=col-] {
        padding-right: 5px;
        padding-left: 5px;
    }

.form-check {
    position: relative;
    display: block;
    padding-left: 1.25rem;
}

.form-check-input {
    position: absolute;
    margin-top: .3rem;
    margin-left: -1.25rem;
}

    .form-check-input:disabled ~ .form-check-label {
        color: #6c757d;
    }

.form-check-label {
    margin-bottom: 0;
}

.form-check-inline {
    display: inline-flex;
    align-items: center;
    padding-left: 0;
    margin-right: .75rem;
}

    .form-check-inline .form-check-input {
        position: static;
        margin-top: 0;
        margin-right: .3125rem;
        margin-left: 0;
    }

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: .25rem;
    font-size: 80%;
    color: #28a745;
}

.valid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: .25rem .5rem;
    margin-top: .1rem;
    font-size: .875rem;
    line-height: 1.5;
    color: #fff;
    background-color: rgba(40,167,69,.9);
    border-radius: .25rem;
}

.was-validated .form-control:valid, .form-control.is-valid {
    border-color: #28a745;
    padding-right: calc(1.5em + 1rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center right calc(.375em + .25rem);
    background-size: calc(.75em + .5rem) calc(.75em + .5rem);
}

    .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
        border-color: #28a745;
        box-shadow: 0 0 0 .2rem rgba(40,167,69,.25);
    }

    .was-validated .form-control:valid ~ .valid-feedback, .was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback, .form-control.is-valid ~ .valid-tooltip {
        display: block;
    }

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
    padding-right: calc(1.5em + 1rem);
    background-position: top calc(.375em + .25rem) right calc(.375em + .25rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
    border-color: #28a745;
    padding-right: calc((1em + 1rem)*3/4 + 1.75rem);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .5rem) calc(.75em + .5rem);
}

    .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
        border-color: #28a745;
        box-shadow: 0 0 0 .2rem rgba(40,167,69,.25);
    }

    .was-validated .custom-select:valid ~ .valid-feedback, .was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback, .custom-select.is-valid ~ .valid-tooltip {
        display: block;
    }

.was-validated .form-control-file:valid ~ .valid-feedback, .was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback, .form-control-file.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
    color: #28a745;
}

.was-validated .form-check-input:valid ~ .valid-feedback, .was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback, .form-check-input.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
    color: #28a745;
}

    .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
        border-color: #28a745;
    }

.was-validated .custom-control-input:valid ~ .valid-feedback, .was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback, .custom-control-input.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
    border-color: #34ce57;
    background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 .2rem rgba(40,167,69,.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
    border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .valid-feedback, .was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback, .custom-file-input.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
    border-color: #28a745;
    box-shadow: 0 0 0 .2rem rgba(40,167,69,.25);
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: .25rem;
    font-size: 80%;
    color: #dc3545;
}

.invalid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: .25rem .5rem;
    margin-top: .1rem;
    font-size: .875rem;
    line-height: 1.5;
    color: #fff;
    background-color: rgba(220,53,69,.9);
    border-radius: .25rem;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
    border-color: #dc3545;
    padding-right: calc(1.5em + 1rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
    background-repeat: no-repeat;
    background-position: center right calc(.375em + .25rem);
    background-size: calc(.75em + .5rem) calc(.75em + .5rem);
}

    .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
        border-color: #dc3545;
        box-shadow: 0 0 0 .2rem rgba(220,53,69,.25);
    }

    .was-validated .form-control:invalid ~ .invalid-feedback, .was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback, .form-control.is-invalid ~ .invalid-tooltip {
        display: block;
    }

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
    padding-right: calc(1.5em + 1rem);
    background-position: top calc(.375em + .25rem) right calc(.375em + .25rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
    border-color: #dc3545;
    padding-right: calc((1em + 1rem)*3/4 + 1.75rem);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .5rem) calc(.75em + .5rem);
}

    .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
        border-color: #dc3545;
        box-shadow: 0 0 0 .2rem rgba(220,53,69,.25);
    }

    .was-validated .custom-select:invalid ~ .invalid-feedback, .was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback, .custom-select.is-invalid ~ .invalid-tooltip {
        display: block;
    }

.was-validated .form-control-file:invalid ~ .invalid-feedback, .was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback, .form-control-file.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
    color: #dc3545;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback, .was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback, .form-check-input.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
    color: #dc3545;
}

    .was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
        border-color: #dc3545;
    }

.was-validated .custom-control-input:invalid ~ .invalid-feedback, .was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback, .custom-control-input.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
    border-color: #e4606d;
    background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 .2rem rgba(220,53,69,.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
    border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .invalid-feedback, .was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback, .custom-file-input.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
    border-color: #dc3545;
    box-shadow: 0 0 0 .2rem rgba(220,53,69,.25);
}

.form-inline {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

    .form-inline .form-check {
        width: 100%;
    }

@media(min-width:576px) {
    .form-inline label {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 0;
    }

    .form-inline .form-group {
        display: flex;
        flex: 0 0 auto;
        flex-flow: row wrap;
        align-items: center;
        margin-bottom: 0;
    }

    .form-inline .form-control {
        display: inline-block;
        width: auto;
        vertical-align: middle;
    }

    .form-inline .form-control-plaintext {
        display: inline-block;
    }

    .form-inline .input-group, .form-inline .custom-select {
        width: auto;
    }

    .form-inline .form-check {
        display: flex;
        align-items: center;
        justify-content: center;
        width: auto;
        padding-left: 0;
    }

    .form-inline .form-check-input {
        position: relative;
        flex-shrink: 0;
        margin-top: 0;
        margin-right: .25rem;
        margin-left: 0;
    }

    .form-inline .custom-control {
        align-items: center;
        justify-content: center;
    }

    .form-inline .custom-control-label {
        margin-bottom: 0;
    }
}

.btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: .5rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media(prefers-reduced-motion:reduce) {
    .btn {
        transition: none;
    }
}

.btn:hover {
    color: #212529;
    text-decoration: none;
}

.btn:focus, .btn.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(56,56,56,.25);
}

.btn.disabled, .btn:disabled {
    opacity: .4;
}

a.btn.disabled, fieldset:disabled a.btn {
    pointer-events: none;
}

.btn-primary {
    color: #fff;
    background-color: #383838;
    border-color: #383838;
}

    .btn-primary:hover {
        color: #fff;
        background-color: #252525;
        border-color: #1f1f1f;
    }

    .btn-primary:focus, .btn-primary.focus {
        box-shadow: 0 0 0 .2rem rgba(86,86,86,.5);
    }

    .btn-primary.disabled, .btn-primary:disabled {
        color: #fff;
        background-color: #383838;
        border-color: #383838;
    }

    .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
        color: #fff;
        background-color: #1f1f1f;
        border-color: #181818;
    }

        .btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(86,86,86,.5);
        }

.btn-secondary {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

    .btn-secondary:hover {
        color: #fff;
        background-color: #5a6268;
        border-color: #545b62;
    }

    .btn-secondary:focus, .btn-secondary.focus {
        box-shadow: 0 0 0 .2rem rgba(130,138,145,.5);
    }

    .btn-secondary.disabled, .btn-secondary:disabled {
        color: #fff;
        background-color: #6c757d;
        border-color: #6c757d;
    }

    .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
        color: #fff;
        background-color: #545b62;
        border-color: #4e555b;
    }

        .btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(130,138,145,.5);
        }

.btn-success {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745;
}

    .btn-success:hover {
        color: #fff;
        background-color: #218838;
        border-color: #1e7e34;
    }

    .btn-success:focus, .btn-success.focus {
        box-shadow: 0 0 0 .2rem rgba(72,180,97,.5);
    }

    .btn-success.disabled, .btn-success:disabled {
        color: #fff;
        background-color: #28a745;
        border-color: #28a745;
    }

    .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
        color: #fff;
        background-color: #1e7e34;
        border-color: #1c7430;
    }

        .btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(72,180,97,.5);
        }

.btn-info {
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8;
}

    .btn-info:hover {
        color: #fff;
        background-color: #138496;
        border-color: #117a8b;
    }

    .btn-info:focus, .btn-info.focus {
        box-shadow: 0 0 0 .2rem rgba(58,176,195,.5);
    }

    .btn-info.disabled, .btn-info:disabled {
        color: #fff;
        background-color: #17a2b8;
        border-color: #17a2b8;
    }

    .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
        color: #fff;
        background-color: #117a8b;
        border-color: #10707f;
    }

        .btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(58,176,195,.5);
        }

.btn-warning {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107;
}

    .btn-warning:hover {
        color: #212529;
        background-color: #e0a800;
        border-color: #d39e00;
    }

    .btn-warning:focus, .btn-warning.focus {
        box-shadow: 0 0 0 .2rem rgba(222,170,12,.5);
    }

    .btn-warning.disabled, .btn-warning:disabled {
        color: #212529;
        background-color: #ffc107;
        border-color: #ffc107;
    }

    .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
        color: #212529;
        background-color: #d39e00;
        border-color: #c69500;
    }

        .btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(222,170,12,.5);
        }

.btn-danger {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

    .btn-danger:hover {
        color: #fff;
        background-color: #c82333;
        border-color: #bd2130;
    }

    .btn-danger:focus, .btn-danger.focus {
        box-shadow: 0 0 0 .2rem rgba(225,83,97,.5);
    }

    .btn-danger.disabled, .btn-danger:disabled {
        color: #fff;
        background-color: #dc3545;
        border-color: #dc3545;
    }

    .btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
        color: #fff;
        background-color: #bd2130;
        border-color: #b21f2d;
    }

        .btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(225,83,97,.5);
        }

.btn-light {
    color: #212529;
    background-color: #e9ecef;
    border-color: #e9ecef;
}

    .btn-light:hover {
        color: #212529;
        background-color: #d3d9df;
        border-color: #cbd3da;
    }

    .btn-light:focus, .btn-light.focus {
        box-shadow: 0 0 0 .2rem rgba(203,206,209,.5);
    }

    .btn-light.disabled, .btn-light:disabled {
        color: #212529;
        background-color: #e9ecef;
        border-color: #e9ecef;
    }

    .btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
        color: #212529;
        background-color: #cbd3da;
        border-color: #c4ccd4;
    }

        .btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(203,206,209,.5);
        }

.btn-dark {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40;
}

    .btn-dark:hover {
        color: #fff;
        background-color: #23272b;
        border-color: #1d2124;
    }

    .btn-dark:focus, .btn-dark.focus {
        box-shadow: 0 0 0 .2rem rgba(82,88,93,.5);
    }

    .btn-dark.disabled, .btn-dark:disabled {
        color: #fff;
        background-color: #343a40;
        border-color: #343a40;
    }

    .btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
        color: #fff;
        background-color: #1d2124;
        border-color: #171a1d;
    }

        .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(82,88,93,.5);
        }

.btn-dark-gray {
    color: #fff;
    background-color: #495057;
    border-color: #495057;
}

    .btn-dark-gray:hover {
        color: #fff;
        background-color: #383d42;
        border-color: #32373b;
    }

    .btn-dark-gray:focus, .btn-dark-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(100,106,112,.5);
    }

    .btn-dark-gray.disabled, .btn-dark-gray:disabled {
        color: #fff;
        background-color: #495057;
        border-color: #495057;
    }

    .btn-dark-gray:not(:disabled):not(.disabled):active, .btn-dark-gray:not(:disabled):not(.disabled).active, .show > .btn-dark-gray.dropdown-toggle {
        color: #fff;
        background-color: #32373b;
        border-color: #2c3034;
    }

        .btn-dark-gray:not(:disabled):not(.disabled):active:focus, .btn-dark-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-dark-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(100,106,112,.5);
        }

.btn-light-primary {
    color: #212529;
    background-color: #d6cdc7;
    border-color: #d6cdc7;
}

    .btn-light-primary:hover {
        color: #212529;
        background-color: #c6b9b1;
        border-color: #c0b3aa;
    }

    .btn-light-primary:focus, .btn-light-primary.focus {
        box-shadow: 0 0 0 .2rem rgba(187,180,175,.5);
    }

    .btn-light-primary.disabled, .btn-light-primary:disabled {
        color: #212529;
        background-color: #d6cdc7;
        border-color: #d6cdc7;
    }

    .btn-light-primary:not(:disabled):not(.disabled):active, .btn-light-primary:not(:disabled):not(.disabled).active, .show > .btn-light-primary.dropdown-toggle {
        color: #212529;
        background-color: #c0b3aa;
        border-color: #bbaca2;
    }

        .btn-light-primary:not(:disabled):not(.disabled):active:focus, .btn-light-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-light-primary.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(187,180,175,.5);
        }

.btn-light-gray {
    color: #212529;
    background-color: #dfe5e8;
    border-color: #dfe5e8;
}

    .btn-light-gray:hover {
        color: #212529;
        background-color: #c9d3d8;
        border-color: #c1cdd3;
    }

    .btn-light-gray:focus, .btn-light-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(195,200,203,.5);
    }

    .btn-light-gray.disabled, .btn-light-gray:disabled {
        color: #212529;
        background-color: #dfe5e8;
        border-color: #dfe5e8;
    }

    .btn-light-gray:not(:disabled):not(.disabled):active, .btn-light-gray:not(:disabled):not(.disabled).active, .show > .btn-light-gray.dropdown-toggle {
        color: #212529;
        background-color: #c1cdd3;
        border-color: #bac7cd;
    }

        .btn-light-gray:not(:disabled):not(.disabled):active:focus, .btn-light-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-light-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(195,200,203,.5);
        }

.btn-blue-gray {
    color: #fff;
    background-color: #607d88;
    border-color: #607d88;
}

    .btn-blue-gray:hover {
        color: #fff;
        background-color: #506872;
        border-color: #4b626a;
    }

    .btn-blue-gray:focus, .btn-blue-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(120,145,154,.5);
    }

    .btn-blue-gray.disabled, .btn-blue-gray:disabled {
        color: #fff;
        background-color: #607d88;
        border-color: #607d88;
    }

    .btn-blue-gray:not(:disabled):not(.disabled):active, .btn-blue-gray:not(:disabled):not(.disabled).active, .show > .btn-blue-gray.dropdown-toggle {
        color: #fff;
        background-color: #4b626a;
        border-color: #465b63;
    }

        .btn-blue-gray:not(:disabled):not(.disabled):active:focus, .btn-blue-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-blue-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(120,145,154,.5);
        }

.btn-light-blue-gray {
    color: #212529;
    background-color: #889aa8;
    border-color: #889aa8;
}

    .btn-light-blue-gray:hover {
        color: #fff;
        background-color: #728798;
        border-color: #6b8192;
    }

    .btn-light-blue-gray:focus, .btn-light-blue-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(121,136,149,.5);
    }

    .btn-light-blue-gray.disabled, .btn-light-blue-gray:disabled {
        color: #212529;
        background-color: #889aa8;
        border-color: #889aa8;
    }

    .btn-light-blue-gray:not(:disabled):not(.disabled):active, .btn-light-blue-gray:not(:disabled):not(.disabled).active, .show > .btn-light-blue-gray.dropdown-toggle {
        color: #fff;
        background-color: #6b8192;
        border-color: #657a8b;
    }

        .btn-light-blue-gray:not(:disabled):not(.disabled):active:focus, .btn-light-blue-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-light-blue-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(121,136,149,.5);
        }

.btn-primary-master {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff;
}

    .btn-primary-master:hover {
        color: #fff;
        background-color: #0069d9;
        border-color: #0062cc;
    }

    .btn-primary-master:focus, .btn-primary-master.focus {
        box-shadow: 0 0 0 .2rem rgba(38,143,255,.5);
    }

    .btn-primary-master.disabled, .btn-primary-master:disabled {
        color: #fff;
        background-color: #007bff;
        border-color: #007bff;
    }

    .btn-primary-master:not(:disabled):not(.disabled):active, .btn-primary-master:not(:disabled):not(.disabled).active, .show > .btn-primary-master.dropdown-toggle {
        color: #fff;
        background-color: #0062cc;
        border-color: #005cbf;
    }

        .btn-primary-master:not(:disabled):not(.disabled):active:focus, .btn-primary-master:not(:disabled):not(.disabled).active:focus, .show > .btn-primary-master.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(38,143,255,.5);
        }

.btn-outline-primary {
    color: #383838;
    border-color: #383838;
}

    .btn-outline-primary:hover {
        color: #fff;
        background-color: #383838;
        border-color: #383838;
    }

    .btn-outline-primary:focus, .btn-outline-primary.focus {
        box-shadow: 0 0 0 .2rem rgba(56,56,56,.5);
    }

    .btn-outline-primary.disabled, .btn-outline-primary:disabled {
        color: #383838;
        background-color: transparent;
    }

    .btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
        color: #fff;
        background-color: #383838;
        border-color: #383838;
    }

        .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(56,56,56,.5);
        }

.btn-outline-secondary {
    color: #6c757d;
    border-color: #6c757d;
}

    .btn-outline-secondary:hover {
        color: #fff;
        background-color: #6c757d;
        border-color: #6c757d;
    }

    .btn-outline-secondary:focus, .btn-outline-secondary.focus {
        box-shadow: 0 0 0 .2rem rgba(108,117,125,.5);
    }

    .btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
        color: #6c757d;
        background-color: transparent;
    }

    .btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
        color: #fff;
        background-color: #6c757d;
        border-color: #6c757d;
    }

        .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(108,117,125,.5);
        }

.btn-outline-success {
    color: #28a745;
    border-color: #28a745;
}

    .btn-outline-success:hover {
        color: #fff;
        background-color: #28a745;
        border-color: #28a745;
    }

    .btn-outline-success:focus, .btn-outline-success.focus {
        box-shadow: 0 0 0 .2rem rgba(40,167,69,.5);
    }

    .btn-outline-success.disabled, .btn-outline-success:disabled {
        color: #28a745;
        background-color: transparent;
    }

    .btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
        color: #fff;
        background-color: #28a745;
        border-color: #28a745;
    }

        .btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(40,167,69,.5);
        }

.btn-outline-info {
    color: #17a2b8;
    border-color: #17a2b8;
}

    .btn-outline-info:hover {
        color: #fff;
        background-color: #17a2b8;
        border-color: #17a2b8;
    }

    .btn-outline-info:focus, .btn-outline-info.focus {
        box-shadow: 0 0 0 .2rem rgba(23,162,184,.5);
    }

    .btn-outline-info.disabled, .btn-outline-info:disabled {
        color: #17a2b8;
        background-color: transparent;
    }

    .btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
        color: #fff;
        background-color: #17a2b8;
        border-color: #17a2b8;
    }

        .btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(23,162,184,.5);
        }

.btn-outline-warning {
    color: #ffc107;
    border-color: #ffc107;
}

    .btn-outline-warning:hover {
        color: #212529;
        background-color: #ffc107;
        border-color: #ffc107;
    }

    .btn-outline-warning:focus, .btn-outline-warning.focus {
        box-shadow: 0 0 0 .2rem rgba(255,193,7,.5);
    }

    .btn-outline-warning.disabled, .btn-outline-warning:disabled {
        color: #ffc107;
        background-color: transparent;
    }

    .btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
        color: #212529;
        background-color: #ffc107;
        border-color: #ffc107;
    }

        .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(255,193,7,.5);
        }

.btn-outline-danger {
    color: #dc3545;
    border-color: #dc3545;
}

    .btn-outline-danger:hover {
        color: #fff;
        background-color: #dc3545;
        border-color: #dc3545;
    }

    .btn-outline-danger:focus, .btn-outline-danger.focus {
        box-shadow: 0 0 0 .2rem rgba(220,53,69,.5);
    }

    .btn-outline-danger.disabled, .btn-outline-danger:disabled {
        color: #dc3545;
        background-color: transparent;
    }

    .btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
        color: #fff;
        background-color: #dc3545;
        border-color: #dc3545;
    }

        .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(220,53,69,.5);
        }

.btn-outline-light {
    color: #e9ecef;
    border-color: #e9ecef;
}

    .btn-outline-light:hover {
        color: #212529;
        background-color: #e9ecef;
        border-color: #e9ecef;
    }

    .btn-outline-light:focus, .btn-outline-light.focus {
        box-shadow: 0 0 0 .2rem rgba(233,236,239,.5);
    }

    .btn-outline-light.disabled, .btn-outline-light:disabled {
        color: #e9ecef;
        background-color: transparent;
    }

    .btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
        color: #212529;
        background-color: #e9ecef;
        border-color: #e9ecef;
    }

        .btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(233,236,239,.5);
        }

.btn-outline-dark {
    color: #343a40;
    border-color: #343a40;
}

    .btn-outline-dark:hover {
        color: #fff;
        background-color: #343a40;
        border-color: #343a40;
    }

    .btn-outline-dark:focus, .btn-outline-dark.focus {
        box-shadow: 0 0 0 .2rem rgba(52,58,64,.5);
    }

    .btn-outline-dark.disabled, .btn-outline-dark:disabled {
        color: #343a40;
        background-color: transparent;
    }

    .btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
        color: #fff;
        background-color: #343a40;
        border-color: #343a40;
    }

        .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(52,58,64,.5);
        }

.btn-outline-dark-gray {
    color: #495057;
    border-color: #495057;
}

    .btn-outline-dark-gray:hover {
        color: #fff;
        background-color: #495057;
        border-color: #495057;
    }

    .btn-outline-dark-gray:focus, .btn-outline-dark-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(73,80,87,.5);
    }

    .btn-outline-dark-gray.disabled, .btn-outline-dark-gray:disabled {
        color: #495057;
        background-color: transparent;
    }

    .btn-outline-dark-gray:not(:disabled):not(.disabled):active, .btn-outline-dark-gray:not(:disabled):not(.disabled).active, .show > .btn-outline-dark-gray.dropdown-toggle {
        color: #fff;
        background-color: #495057;
        border-color: #495057;
    }

        .btn-outline-dark-gray:not(:disabled):not(.disabled):active:focus, .btn-outline-dark-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(73,80,87,.5);
        }

.btn-outline-light-primary {
    color: #d6cdc7;
    border-color: #d6cdc7;
}

    .btn-outline-light-primary:hover {
        color: #212529;
        background-color: #d6cdc7;
        border-color: #d6cdc7;
    }

    .btn-outline-light-primary:focus, .btn-outline-light-primary.focus {
        box-shadow: 0 0 0 .2rem rgba(214,205,199,.5);
    }

    .btn-outline-light-primary.disabled, .btn-outline-light-primary:disabled {
        color: #d6cdc7;
        background-color: transparent;
    }

    .btn-outline-light-primary:not(:disabled):not(.disabled):active, .btn-outline-light-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-light-primary.dropdown-toggle {
        color: #212529;
        background-color: #d6cdc7;
        border-color: #d6cdc7;
    }

        .btn-outline-light-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-light-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light-primary.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(214,205,199,.5);
        }

.btn-outline-light-gray {
    color: #dfe5e8;
    border-color: #dfe5e8;
}

    .btn-outline-light-gray:hover {
        color: #212529;
        background-color: #dfe5e8;
        border-color: #dfe5e8;
    }

    .btn-outline-light-gray:focus, .btn-outline-light-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(223,229,232,.5);
    }

    .btn-outline-light-gray.disabled, .btn-outline-light-gray:disabled {
        color: #dfe5e8;
        background-color: transparent;
    }

    .btn-outline-light-gray:not(:disabled):not(.disabled):active, .btn-outline-light-gray:not(:disabled):not(.disabled).active, .show > .btn-outline-light-gray.dropdown-toggle {
        color: #212529;
        background-color: #dfe5e8;
        border-color: #dfe5e8;
    }

        .btn-outline-light-gray:not(:disabled):not(.disabled):active:focus, .btn-outline-light-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(223,229,232,.5);
        }

.btn-outline-blue-gray {
    color: #607d88;
    border-color: #607d88;
}

    .btn-outline-blue-gray:hover {
        color: #fff;
        background-color: #607d88;
        border-color: #607d88;
    }

    .btn-outline-blue-gray:focus, .btn-outline-blue-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(96,125,136,.5);
    }

    .btn-outline-blue-gray.disabled, .btn-outline-blue-gray:disabled {
        color: #607d88;
        background-color: transparent;
    }

    .btn-outline-blue-gray:not(:disabled):not(.disabled):active, .btn-outline-blue-gray:not(:disabled):not(.disabled).active, .show > .btn-outline-blue-gray.dropdown-toggle {
        color: #fff;
        background-color: #607d88;
        border-color: #607d88;
    }

        .btn-outline-blue-gray:not(:disabled):not(.disabled):active:focus, .btn-outline-blue-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-blue-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(96,125,136,.5);
        }

.btn-outline-light-blue-gray {
    color: #889aa8;
    border-color: #889aa8;
}

    .btn-outline-light-blue-gray:hover {
        color: #212529;
        background-color: #889aa8;
        border-color: #889aa8;
    }

    .btn-outline-light-blue-gray:focus, .btn-outline-light-blue-gray.focus {
        box-shadow: 0 0 0 .2rem rgba(136,154,168,.5);
    }

    .btn-outline-light-blue-gray.disabled, .btn-outline-light-blue-gray:disabled {
        color: #889aa8;
        background-color: transparent;
    }

    .btn-outline-light-blue-gray:not(:disabled):not(.disabled):active, .btn-outline-light-blue-gray:not(:disabled):not(.disabled).active, .show > .btn-outline-light-blue-gray.dropdown-toggle {
        color: #212529;
        background-color: #889aa8;
        border-color: #889aa8;
    }

        .btn-outline-light-blue-gray:not(:disabled):not(.disabled):active:focus, .btn-outline-light-blue-gray:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light-blue-gray.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(136,154,168,.5);
        }

.btn-outline-primary-master {
    color: #007bff;
    border-color: #007bff;
}

    .btn-outline-primary-master:hover {
        color: #fff;
        background-color: #007bff;
        border-color: #007bff;
    }

    .btn-outline-primary-master:focus, .btn-outline-primary-master.focus {
        box-shadow: 0 0 0 .2rem rgba(0,123,255,.5);
    }

    .btn-outline-primary-master.disabled, .btn-outline-primary-master:disabled {
        color: #007bff;
        background-color: transparent;
    }

    .btn-outline-primary-master:not(:disabled):not(.disabled):active, .btn-outline-primary-master:not(:disabled):not(.disabled).active, .show > .btn-outline-primary-master.dropdown-toggle {
        color: #fff;
        background-color: #007bff;
        border-color: #007bff;
    }

        .btn-outline-primary-master:not(:disabled):not(.disabled):active:focus, .btn-outline-primary-master:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary-master.dropdown-toggle:focus {
            box-shadow: 0 0 0 .2rem rgba(0,123,255,.5);
        }

.btn-link {
    font-weight: 400;
    color: #383838;
    text-decoration: none;
}

    .btn-link:hover {
        color: #121212;
        text-decoration: underline;
    }

    .btn-link:focus, .btn-link.focus {
        text-decoration: underline;
        box-shadow: none;
    }

    .btn-link:disabled, .btn-link.disabled {
        color: #6c757d;
        pointer-events: none;
    }

.btn-lg, .btn-group-lg > .btn {
    padding: .5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: .3rem;
}

.btn-sm, .btn-group-sm > .btn {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: .2rem;
}

.btn-block {
    display: block;
    width: 100%;
}

    .btn-block + .btn-block {
        margin-top: .5rem;
    }

input[type=submit].btn-block, input[type=reset].btn-block, input[type=button].btn-block {
    width: 100%;
}

.fade {
    transition: opacity .15s linear;
}

@media(prefers-reduced-motion:reduce) {
    .fade {
        transition: none;
    }
}

.fade:not(.show) {
    opacity: 0;
}

.collapse:not(.show) {
    display: none;
}

.collapsing {
    position: relative;
    height: 0;
    overflow: hidden;
    transition: height .35s ease;
}

@media(prefers-reduced-motion:reduce) {
    .collapsing {
        transition: none;
    }
}

.dropup, .dropright, .dropdown, .dropleft {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

    .dropdown-toggle::after {
        display: inline-block;
        margin-left: .255em;
        vertical-align: .255em;
        content: "";
        border-top: .3em solid;
        border-right: .3em solid transparent;
        border-bottom: 0;
        border-left: .3em solid transparent;
    }

    .dropdown-toggle:empty::after {
        margin-left: 0;
    }

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(56,56,56,.15);
    border-radius: .25rem;
}

.dropdown-menu-left {
    right: auto;
    left: 0;
}

.dropdown-menu-right {
    right: 0;
    left: auto;
}

@media(min-width:576px) {
    .dropdown-menu-sm-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-sm-right {
        right: 0;
        left: auto;
    }
}

@media(min-width:768px) {
    .dropdown-menu-md-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-md-right {
        right: 0;
        left: auto;
    }
}

@media(min-width:992px) {
    .dropdown-menu-lg-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-lg-right {
        right: 0;
        left: auto;
    }
}

@media(min-width:1200px) {
    .dropdown-menu-xl-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xl-right {
        right: 0;
        left: auto;
    }
}

.dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: .125rem;
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: 0;
    border-right: .3em solid transparent;
    border-bottom: .3em solid;
    border-left: .3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropright .dropdown-menu {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: .125rem;
}

.dropright .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid transparent;
    border-right: 0;
    border-bottom: .3em solid transparent;
    border-left: .3em solid;
}

.dropright .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropright .dropdown-toggle::after {
    vertical-align: 0;
}

.dropleft .dropdown-menu {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: .125rem;
}

.dropleft .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
}

.dropleft .dropdown-toggle::after {
    display: none;
}

.dropleft .dropdown-toggle::before {
    display: inline-block;
    margin-right: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid transparent;
    border-right: .3em solid;
    border-bottom: .3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropleft .dropdown-toggle::before {
    vertical-align: 0;
}

.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
    right: auto;
    bottom: auto;
}

.dropdown-divider {
    height: 0;
    margin: .5rem 0;
    overflow: hidden;
    border-top: 1px solid #e9ecef;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: .25rem 1.5rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

    .dropdown-item:hover, .dropdown-item:focus {
        color: #16181b;
        text-decoration: none;
        background-color: #f8f9fa;
    }

    .dropdown-item.active, .dropdown-item:active {
        color: #fff;
        text-decoration: none;
        background-color: #383838;
    }

    .dropdown-item.disabled, .dropdown-item:disabled {
        color: #6c757d;
        pointer-events: none;
        background-color: transparent;
    }

.dropdown-menu.show {
    display: block;
}

.dropdown-header {
    display: block;
    padding: .5rem 1.5rem;
    margin-bottom: 0;
    font-size: .875rem;
    color: #6c757d;
    white-space: nowrap;
}

.dropdown-item-text {
    display: block;
    padding: .25rem 1.5rem;
    color: #212529;
}

.btn-group, .btn-group-vertical {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

    .btn-group > .btn, .btn-group-vertical > .btn {
        position: relative;
        flex: 1 1 auto;
    }

        .btn-group > .btn:hover, .btn-group-vertical > .btn:hover {
            z-index: 1;
        }

        .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, .btn-group-vertical > .btn:focus, .btn-group-vertical > .btn:active, .btn-group-vertical > .btn.active {
            z-index: 1;
        }

.btn-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

    .btn-toolbar .input-group {
        width: auto;
    }

.btn-group > .btn:not(:first-child), .btn-group > .btn-group:not(:first-child) {
    margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle), .btn-group > .btn-group:not(:last-child) > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child), .btn-group > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
    padding-right: .5625rem;
    padding-left: .5625rem;
}

    .dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
        margin-left: 0;
    }

.dropleft .dropdown-toggle-split::before {
    margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
    padding-right: .375rem;
    padding-left: .375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
    padding-right: .75rem;
    padding-left: .75rem;
}

.btn-group-vertical {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

    .btn-group-vertical > .btn, .btn-group-vertical > .btn-group {
        width: 100%;
    }

        .btn-group-vertical > .btn:not(:first-child), .btn-group-vertical > .btn-group:not(:first-child) {
            margin-top: -1px;
        }

        .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), .btn-group-vertical > .btn-group:not(:last-child) > .btn {
            border-bottom-right-radius: 0;
            border-bottom-left-radius: 0;
        }

        .btn-group-vertical > .btn:not(:first-child), .btn-group-vertical > .btn-group:not(:first-child) > .btn {
            border-top-left-radius: 0;
            border-top-right-radius: 0;
        }

.btn-group-toggle > .btn, .btn-group-toggle > .btn-group > .btn {
    margin-bottom: 0;
}

    .btn-group-toggle > .btn input[type=radio], .btn-group-toggle > .btn input[type=checkbox], .btn-group-toggle > .btn-group > .btn input[type=radio], .btn-group-toggle > .btn-group > .btn input[type=checkbox] {
        position: absolute;
        clip: rect(0,0,0,0);
        pointer-events: none;
    }

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

    .input-group > .form-control, .input-group > .form-control-plaintext, .input-group > .custom-select, .input-group > .custom-file {
        position: relative;
        flex: 1 1 auto;
        width: 1%;
        margin-bottom: 0;
    }

        .input-group > .form-control + .form-control, .input-group > .form-control + .custom-select, .input-group > .form-control + .custom-file, .input-group > .form-control-plaintext + .form-control, .input-group > .form-control-plaintext + .custom-select, .input-group > .form-control-plaintext + .custom-file, .input-group > .custom-select + .form-control, .input-group > .custom-select + .custom-select, .input-group > .custom-select + .custom-file, .input-group > .custom-file + .form-control, .input-group > .custom-file + .custom-select, .input-group > .custom-file + .custom-file {
            margin-left: -1px;
        }

        .input-group > .form-control:focus, .input-group > .custom-select:focus, .input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
            z-index: 3;
        }

        .input-group > .custom-file .custom-file-input:focus {
            z-index: 4;
        }

        .input-group > .form-control:not(:last-child), .input-group > .custom-select:not(:last-child) {
            border-top-right-radius: 0;
            border-bottom-right-radius: 0;
        }

        .input-group > .form-control:not(:first-child), .input-group > .custom-select:not(:first-child) {
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
        }

    .input-group > .custom-file {
        display: flex;
        align-items: center;
    }

        .input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:last-child) .custom-file-label::after {
            border-top-right-radius: 0;
            border-bottom-right-radius: 0;
        }

        .input-group > .custom-file:not(:first-child) .custom-file-label {
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
        }

.input-group-prepend, .input-group-append {
    display: flex;
}

    .input-group-prepend .btn, .input-group-append .btn {
        position: relative;
        z-index: 2;
    }

        .input-group-prepend .btn:focus, .input-group-append .btn:focus {
            z-index: 3;
        }

        .input-group-prepend .btn + .btn, .input-group-prepend .btn + .input-group-text, .input-group-prepend .input-group-text + .input-group-text, .input-group-prepend .input-group-text + .btn, .input-group-append .btn + .btn, .input-group-append .btn + .input-group-text, .input-group-append .input-group-text + .input-group-text, .input-group-append .input-group-text + .btn {
            margin-left: -1px;
        }

.input-group-prepend {
    margin-right: -1px;
}

.input-group-append {
    margin-left: -1px;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: .5rem .75rem;
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: .25rem;
}

    .input-group-text input[type=radio], .input-group-text input[type=checkbox] {
        margin-top: 0;
    }

.input-group-lg > .form-control:not(textarea), .input-group-lg > .custom-select {
    height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control, .input-group-lg > .custom-select, .input-group-lg > .input-group-prepend > .input-group-text, .input-group-lg > .input-group-append > .input-group-text, .input-group-lg > .input-group-prepend > .btn, .input-group-lg > .input-group-append > .btn {
    padding: .5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: .3rem;
}

.input-group-sm > .form-control:not(textarea), .input-group-sm > .custom-select {
    height: calc(1.5em + .5rem + 2px);
}

.input-group-sm > .form-control, .input-group-sm > .custom-select, .input-group-sm > .input-group-prepend > .input-group-text, .input-group-sm > .input-group-append > .input-group-text, .input-group-sm > .input-group-prepend > .btn, .input-group-sm > .input-group-append > .btn {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: .2rem;
}

.input-group-lg > .custom-select, .input-group-sm > .custom-select {
    padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn, .input-group > .input-group-prepend > .input-group-text, .input-group > .input-group-append:not(:last-child) > .btn, .input-group > .input-group-append:not(:last-child) > .input-group-text, .input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle), .input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn, .input-group > .input-group-append > .input-group-text, .input-group > .input-group-prepend:not(:first-child) > .btn, .input-group > .input-group-prepend:not(:first-child) > .input-group-text, .input-group > .input-group-prepend:first-child > .btn:not(:first-child), .input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.custom-control {
    position: relative;
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5rem;
}

.custom-control-inline {
    display: inline-flex;
    margin-right: 1rem;
}

.custom-control-input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

    .custom-control-input:checked ~ .custom-control-label::before {
        color: #fff;
        border-color: #383838;
        background-color: #383838;
    }

    .custom-control-input:focus ~ .custom-control-label::before {
        box-shadow: 0 0 0 .2rem rgba(56,56,56,.25);
    }

    .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
        border-color: #787878;
    }

    .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
        color: #fff;
        background-color: #919191;
        border-color: #919191;
    }

    .custom-control-input:disabled ~ .custom-control-label {
        color: #6c757d;
    }

        .custom-control-input:disabled ~ .custom-control-label::before {
            background-color: #e9ecef;
        }

.custom-control-label {
    position: relative;
    margin-bottom: 0;
    vertical-align: top;
}

    .custom-control-label::before {
        position: absolute;
        top: .25rem;
        left: -1.5rem;
        display: block;
        width: 1rem;
        height: 1rem;
        pointer-events: none;
        content: "";
        background-color: #fff;
        border: #adb5bd solid 1px;
    }

    .custom-control-label::after {
        position: absolute;
        top: .25rem;
        left: -1.5rem;
        display: block;
        width: 1rem;
        height: 1rem;
        content: "";
        background: no-repeat 50%/50% 50%;
    }

.custom-checkbox .custom-control-label::before {
    border-radius: .25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
    border-color: #383838;
    background-color: #383838;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(56,56,56,.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
    background-color: rgba(56,56,56,.5);
}

.custom-radio .custom-control-label::before {
    border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(56,56,56,.5);
}

.custom-switch {
    padding-left: 2.25rem;
}

    .custom-switch .custom-control-label::before {
        left: -2.25rem;
        width: 1.75rem;
        pointer-events: all;
        border-radius: .5rem;
    }

    .custom-switch .custom-control-label::after {
        top: calc(.25rem + 2px);
        left: calc(-2.25rem + 2px);
        width: calc(1rem - 4px);
        height: calc(1rem - 4px);
        background-color: #adb5bd;
        border-radius: .5rem;
        transition: transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }

@media(prefers-reduced-motion:reduce) {
    .custom-switch .custom-control-label::after {
        transition: none;
    }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #fff;
    transform: translateX(.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(56,56,56,.5);
}

.custom-select {
    display: inline-block;
    width: 100%;
    height: calc(1.5em + 1rem + 2px);
    padding: .5rem 1.75rem .5rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    appearance: none;
}

    .custom-select:focus {
        border-color: #787878;
        outline: 0;
        box-shadow: 0 0 0 .2rem rgba(56,56,56,.25);
    }

        .custom-select:focus::-ms-value {
            color: #495057;
            background-color: #fff;
        }

    .custom-select[multiple], .custom-select[size]:not([size="1"]) {
        height: auto;
        padding-right: .75rem;
        background-image: none;
    }

    .custom-select:disabled {
        color: #6c757d;
        background-color: #e9ecef;
    }

    .custom-select::-ms-expand {
        display: none;
    }

.custom-select-sm {
    height: calc(1.5em + .5rem + 2px);
    padding-top: .25rem;
    padding-bottom: .25rem;
    padding-left: .5rem;
    font-size: .875rem;
}

.custom-select-lg {
    height: calc(1.5em + 1rem + 2px);
    padding-top: .5rem;
    padding-bottom: .5rem;
    padding-left: 1rem;
    font-size: 1.25rem;
}

.custom-file {
    position: relative;
    display: inline-block;
    width: 100%;
    height: calc(1.5em + 1rem + 2px);
    margin-bottom: 0;
}

.custom-file-input {
    position: relative;
    z-index: 2;
    width: 100%;
    height: calc(1.5em + 1rem + 2px);
    margin: 0;
    opacity: 0;
}

    .custom-file-input:focus ~ .custom-file-label {
        border-color: #787878;
        box-shadow: 0 0 0 .2rem rgba(56,56,56,.25);
    }

    .custom-file-input:disabled ~ .custom-file-label {
        background-color: #e9ecef;
    }

    .custom-file-input:lang(en) ~ .custom-file-label::after {
        content: "Browse";
    }

    .custom-file-input ~ .custom-file-label[data-browse]::after {
        content: attr(data-browse);
    }

.custom-file-label {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: calc(1.5em + 1rem + 2px);
    padding: .5rem .75rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: .25rem;
}

    .custom-file-label::after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        z-index: 3;
        display: block;
        height: calc(1.5em + 1rem);
        padding: .5rem .75rem;
        line-height: 1.5;
        color: #495057;
        content: "Browse";
        background-color: #e9ecef;
        border-left: inherit;
        border-radius: 0 .25rem .25rem 0;
    }

.custom-range {
    width: 100%;
    height: calc(1rem + .4rem);
    padding: 0;
    background-color: transparent;
    appearance: none;
}

    .custom-range:focus {
        outline: 0;
    }

        .custom-range:focus::-webkit-slider-thumb {
            box-shadow: 0 0 0 1px #fff,0 0 0 .2rem rgba(56,56,56,.25);
        }

        .custom-range:focus::-moz-range-thumb {
            box-shadow: 0 0 0 1px #fff,0 0 0 .2rem rgba(56,56,56,.25);
        }

        .custom-range:focus::-ms-thumb {
            box-shadow: 0 0 0 1px #fff,0 0 0 .2rem rgba(56,56,56,.25);
        }

    .custom-range::-moz-focus-outer {
        border: 0;
    }

    .custom-range::-webkit-slider-thumb {
        width: 1rem;
        height: 1rem;
        margin-top: -.25rem;
        background-color: #383838;
        border: 0;
        border-radius: 1rem;
        transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
        appearance: none;
    }

@media(prefers-reduced-motion:reduce) {
    .custom-range::-webkit-slider-thumb {
        transition: none;
    }
}

.custom-range::-webkit-slider-thumb:active {
    background-color: #919191;
}

.custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: .5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #383838;
    border: 0;
    border-radius: 1rem;
    transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    appearance: none;
}

@media(prefers-reduced-motion:reduce) {
    .custom-range::-moz-range-thumb {
        transition: none;
    }
}

.custom-range::-moz-range-thumb:active {
    background-color: #919191;
}

.custom-range::-moz-range-track {
    width: 100%;
    height: .5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: .2rem;
    margin-left: .2rem;
    background-color: #383838;
    border: 0;
    border-radius: 1rem;
    transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    appearance: none;
}

@media(prefers-reduced-motion:reduce) {
    .custom-range::-ms-thumb {
        transition: none;
    }
}

.custom-range::-ms-thumb:active {
    background-color: #919191;
}

.custom-range::-ms-track {
    width: 100%;
    height: .5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: .5rem;
}

.custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
    background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
    cursor: default;
}

.custom-range:disabled::-ms-thumb {
    background-color: #adb5bd;
}

.custom-control-label::before, .custom-file-label, .custom-select {
    transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media(prefers-reduced-motion:reduce) {
    .custom-control-label::before, .custom-file-label, .custom-select {
        transition: none;
    }
}

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.nav-link {
    display: block;
    padding: .5rem 1rem;
}

    .nav-link:hover, .nav-link:focus {
        text-decoration: none;
    }

    .nav-link.disabled {
        color: #6c757d;
        pointer-events: none;
        cursor: default;
    }

.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: .25rem;
        border-top-right-radius: .25rem;
    }

        .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
            border-color: #e9ecef #e9ecef #dee2e6;
        }

        .nav-tabs .nav-link.disabled {
            color: #6c757d;
            background-color: transparent;
            border-color: transparent;
        }

        .nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
            color: #495057;
            background-color: #fff;
            border-color: #dee2e6 #dee2e6 #fff;
        }

    .nav-tabs .dropdown-menu {
        margin-top: -1px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }

.nav-pills .nav-link {
    border-radius: .25rem;
}

    .nav-pills .nav-link.active, .nav-pills .show > .nav-link {
        color: #fff;
        background-color: #383838;
    }

.nav-fill .nav-item {
    flex: 1 1 auto;
    text-align: center;
}

.nav-justified .nav-item {
    flex-basis: 0;
    flex-grow: 1;
    text-align: center;
}

.tab-content > .tab-pane {
    display: none;
}

.tab-content > .active {
    display: block;
}

.navbar {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: .5rem 1rem;
}

    .navbar > .container, .navbar > .container-fluid {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
    }

.navbar-brand {
    display: inline-block;
    padding-top: .3125rem;
    padding-bottom: .3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    line-height: inherit;
    white-space: nowrap;
}

    .navbar-brand:hover, .navbar-brand:focus {
        text-decoration: none;
    }

.navbar-nav {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

    .navbar-nav .nav-link {
        padding-right: 0;
        padding-left: 0;
    }

    .navbar-nav .dropdown-menu {
        position: static;
        float: none;
    }

.navbar-text {
    display: inline-block;
    padding-top: .5rem;
    padding-bottom: .5rem;
}

.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
}

.navbar-toggler {
    padding: .25rem .75rem;
    font-size: 1.25rem;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: .25rem;
}

    .navbar-toggler:hover, .navbar-toggler:focus {
        text-decoration: none;
    }

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    content: "";
    background: no-repeat center center;
    background-size: 100% 100%;
}

@media(max-width:575.98px) {
    .navbar-expand-sm > .container, .navbar-expand-sm > .container-fluid {
        padding-right: 0;
        padding-left: 0;
    }
}

@media(min-width:576px) {
    .navbar-expand-sm {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

        .navbar-expand-sm .navbar-nav {
            flex-direction: row;
        }

            .navbar-expand-sm .navbar-nav .dropdown-menu {
                position: absolute;
            }

            .navbar-expand-sm .navbar-nav .nav-link {
                padding-right: .5rem;
                padding-left: .5rem;
            }

        .navbar-expand-sm > .container, .navbar-expand-sm > .container-fluid {
            flex-wrap: nowrap;
        }

        .navbar-expand-sm .navbar-collapse {
            display: flex !important;
            flex-basis: auto;
        }

        .navbar-expand-sm .navbar-toggler {
            display: none;
        }
}

@media(max-width:767.98px) {
    .navbar-expand-md > .container, .navbar-expand-md > .container-fluid {
        padding-right: 0;
        padding-left: 0;
    }
}

@media(min-width:768px) {
    .navbar-expand-md {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

        .navbar-expand-md .navbar-nav {
            flex-direction: row;
        }

            .navbar-expand-md .navbar-nav .dropdown-menu {
                position: absolute;
            }

            .navbar-expand-md .navbar-nav .nav-link {
                padding-right: .5rem;
                padding-left: .5rem;
            }

        .navbar-expand-md > .container, .navbar-expand-md > .container-fluid {
            flex-wrap: nowrap;
        }

        .navbar-expand-md .navbar-collapse {
            display: flex !important;
            flex-basis: auto;
        }

        .navbar-expand-md .navbar-toggler {
            display: none;
        }
}

@media(max-width:991.98px) {
    .navbar-expand-lg > .container, .navbar-expand-lg > .container-fluid {
        padding-right: 0;
        padding-left: 0;
    }
}

@media(min-width:992px) {
    .navbar-expand-lg {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

        .navbar-expand-lg .navbar-nav {
            flex-direction: row;
        }

            .navbar-expand-lg .navbar-nav .dropdown-menu {
                position: absolute;
            }

            .navbar-expand-lg .navbar-nav .nav-link {
                padding-right: .5rem;
                padding-left: .5rem;
            }

        .navbar-expand-lg > .container, .navbar-expand-lg > .container-fluid {
            flex-wrap: nowrap;
        }

        .navbar-expand-lg .navbar-collapse {
            display: flex !important;
            flex-basis: auto;
        }

        .navbar-expand-lg .navbar-toggler {
            display: none;
        }
}

@media(max-width:1199.98px) {
    .navbar-expand-xl > .container, .navbar-expand-xl > .container-fluid {
        padding-right: 0;
        padding-left: 0;
    }
}

@media(min-width:1200px) {
    .navbar-expand-xl {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

        .navbar-expand-xl .navbar-nav {
            flex-direction: row;
        }

            .navbar-expand-xl .navbar-nav .dropdown-menu {
                position: absolute;
            }

            .navbar-expand-xl .navbar-nav .nav-link {
                padding-right: .5rem;
                padding-left: .5rem;
            }

        .navbar-expand-xl > .container, .navbar-expand-xl > .container-fluid {
            flex-wrap: nowrap;
        }

        .navbar-expand-xl .navbar-collapse {
            display: flex !important;
            flex-basis: auto;
        }

        .navbar-expand-xl .navbar-toggler {
            display: none;
        }
}

.navbar-expand {
    flex-flow: row nowrap;
    justify-content: flex-start;
}

    .navbar-expand > .container, .navbar-expand > .container-fluid {
        padding-right: 0;
        padding-left: 0;
    }

    .navbar-expand .navbar-nav {
        flex-direction: row;
    }

        .navbar-expand .navbar-nav .dropdown-menu {
            position: absolute;
        }

        .navbar-expand .navbar-nav .nav-link {
            padding-right: .5rem;
            padding-left: .5rem;
        }

    .navbar-expand > .container, .navbar-expand > .container-fluid {
        flex-wrap: nowrap;
    }

    .navbar-expand .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand .navbar-toggler {
        display: none;
    }

.navbar-light .navbar-brand {
    color: rgba(56,56,56,.9);
}

    .navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
        color: rgba(56,56,56,.9);
    }

.navbar-light .navbar-nav .nav-link {
    color: rgba(56,56,56,.5);
}

    .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
        color: rgba(56,56,56,.7);
    }

    .navbar-light .navbar-nav .nav-link.disabled {
        color: rgba(56,56,56,.3);
    }

    .navbar-light .navbar-nav .show > .nav-link, .navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .nav-link.active {
        color: rgba(56,56,56,.9);
    }

.navbar-light .navbar-toggler {
    color: rgba(56,56,56,.5);
    border-color: rgba(56,56,56,.1);
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(56, 56, 56, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
    color: rgba(56,56,56,.5);
}

    .navbar-light .navbar-text a {
        color: rgba(56,56,56,.9);
    }

        .navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
            color: rgba(56,56,56,.9);
        }

.navbar-dark .navbar-brand {
    color: #fff;
}

    .navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
        color: #fff;
    }

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255,255,255,.5);
}

    .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
        color: rgba(255,255,255,.75);
    }

    .navbar-dark .navbar-nav .nav-link.disabled {
        color: rgba(255,255,255,.25);
    }

    .navbar-dark .navbar-nav .show > .nav-link, .navbar-dark .navbar-nav .active > .nav-link, .navbar-dark .navbar-nav .nav-link.show, .navbar-dark .navbar-nav .nav-link.active {
        color: #fff;
    }

.navbar-dark .navbar-toggler {
    color: rgba(255,255,255,.5);
    border-color: rgba(255,255,255,.1);
}

.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
    color: rgba(255,255,255,.5);
}

    .navbar-dark .navbar-text a {
        color: #fff;
    }

        .navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
            color: #fff;
        }

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(56,56,56,.125);
    border-radius: .25rem;
}

    .card > hr {
        margin-right: 0;
        margin-left: 0;
    }

    .card > .list-group:first-child .list-group-item:first-child {
        border-top-left-radius: .25rem;
        border-top-right-radius: .25rem;
    }

    .card > .list-group:last-child .list-group-item:last-child {
        border-bottom-right-radius: .25rem;
        border-bottom-left-radius: .25rem;
    }

.card-body {
    flex: 1 1 auto;
    padding: 1.25rem;
}

.card-title {
    margin-bottom: .75rem;
}

.card-subtitle {
    margin-top: -.375rem;
    margin-bottom: 0;
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-link:hover {
    text-decoration: none;
}

.card-link + .card-link {
    margin-left: 1.25rem;
}

.card-header {
    padding: .75rem 1.25rem;
    margin-bottom: 0;
    background-color: rgba(56,56,56,.03);
    border-bottom: 1px solid rgba(56,56,56,.125);
}

    .card-header:first-child {
        border-radius: calc(.25rem - 1px) calc(.25rem - 1px) 0 0;
    }

    .card-header + .list-group .list-group-item:first-child {
        border-top: 0;
    }

.card-footer {
    padding: .75rem 1.25rem;
    background-color: rgba(56,56,56,.03);
    border-top: 1px solid rgba(56,56,56,.125);
}

    .card-footer:last-child {
        border-radius: 0 0 calc(.25rem - 1px) calc(.25rem - 1px);
    }

.card-header-tabs {
    margin-right: -.625rem;
    margin-bottom: -.75rem;
    margin-left: -.625rem;
    border-bottom: 0;
}

.card-header-pills {
    margin-right: -.625rem;
    margin-left: -.625rem;
}

.card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.25rem;
}

.card-img {
    width: 100%;
    border-radius: calc(.25rem - 1px);
}

.card-img-top {
    width: 100%;
    border-top-left-radius: calc(.25rem - 1px);
    border-top-right-radius: calc(.25rem - 1px);
}

.card-img-bottom {
    width: 100%;
    border-bottom-right-radius: calc(.25rem - 1px);
    border-bottom-left-radius: calc(.25rem - 1px);
}

.card-deck {
    display: flex;
    flex-direction: column;
}

    .card-deck .card {
        margin-bottom: 15px;
    }

@media(min-width:576px) {
    .card-deck {
        flex-flow: row wrap;
        margin-right: -15px;
        margin-left: -15px;
    }

        .card-deck .card {
            display: flex;
            flex: 1 0 0%;
            flex-direction: column;
            margin-right: 15px;
            margin-bottom: 0;
            margin-left: 15px;
        }
}

.card-group {
    display: flex;
    flex-direction: column;
}

    .card-group > .card {
        margin-bottom: 15px;
    }

@media(min-width:576px) {
    .card-group {
        flex-flow: row wrap;
    }

        .card-group > .card {
            flex: 1 0 0%;
            margin-bottom: 0;
        }

            .card-group > .card + .card {
                margin-left: 0;
                border-left: 0;
            }

            .card-group > .card:not(:last-child) {
                border-top-right-radius: 0;
                border-bottom-right-radius: 0;
            }

                .card-group > .card:not(:last-child) .card-img-top, .card-group > .card:not(:last-child) .card-header {
                    border-top-right-radius: 0;
                }

                .card-group > .card:not(:last-child) .card-img-bottom, .card-group > .card:not(:last-child) .card-footer {
                    border-bottom-right-radius: 0;
                }

            .card-group > .card:not(:first-child) {
                border-top-left-radius: 0;
                border-bottom-left-radius: 0;
            }

                .card-group > .card:not(:first-child) .card-img-top, .card-group > .card:not(:first-child) .card-header {
                    border-top-left-radius: 0;
                }

                .card-group > .card:not(:first-child) .card-img-bottom, .card-group > .card:not(:first-child) .card-footer {
                    border-bottom-left-radius: 0;
                }
}

.card-columns .card {
    margin-bottom: .75rem;
}

@media(min-width:576px) {
    .card-columns {
        column-count: 3;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1;
    }

        .card-columns .card {
            display: inline-block;
            width: 100%;
        }
}

.accordion > .card {
    overflow: hidden;
}

    .accordion > .card:not(:first-of-type) .card-header:first-child {
        border-radius: 0;
    }

    .accordion > .card:not(:first-of-type):not(:last-of-type) {
        border-bottom: 0;
        border-radius: 0;
    }

    .accordion > .card:first-of-type {
        border-bottom: 0;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
    }

    .accordion > .card:last-of-type {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }

    .accordion > .card .card-header {
        margin-bottom: -1px;
    }

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: .75rem 1rem;
    margin-bottom: 1rem;
    list-style: none;
    background-color: #e9ecef;
    border-radius: .25rem;
}

.breadcrumb-item + .breadcrumb-item {
    padding-left: .5rem;
}

    .breadcrumb-item + .breadcrumb-item::before {
        display: inline-block;
        padding-right: .5rem;
        color: #6c757d;
        content: "/";
    }

    .breadcrumb-item + .breadcrumb-item:hover::before {
        text-decoration: underline;
    }

    .breadcrumb-item + .breadcrumb-item:hover::before {
        text-decoration: none;
    }

.breadcrumb-item.active {
    color: #6c757d;
}

.pagination {
    display: flex;
    padding-left: 0;
    list-style: none;
    border-radius: .25rem;
}

.page-link {
    position: relative;
    display: block;
    padding: .5rem .75rem;
    margin-left: -1px;
    line-height: 1.25;
    color: #383838;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

    .page-link:hover {
        z-index: 2;
        color: #121212;
        text-decoration: none;
        background-color: #e9ecef;
        border-color: #dee2e6;
    }

    .page-link:focus {
        z-index: 2;
        outline: 0;
        box-shadow: 0 0 0 .2rem rgba(56,56,56,.25);
    }

.page-item:first-child .page-link {
    margin-left: 0;
    border-top-left-radius: .25rem;
    border-bottom-left-radius: .25rem;
}

.page-item:last-child .page-link {
    border-top-right-radius: .25rem;
    border-bottom-right-radius: .25rem;
}

.page-item.active .page-link {
    z-index: 1;
    color: #fff;
    background-color: #383838;
    border-color: #383838;
}

.page-item.disabled .page-link {
    color: #6c757d;
    pointer-events: none;
    cursor: auto;
    background-color: #fff;
    border-color: #dee2e6;
}

.pagination-lg .page-link {
    padding: .75rem 1.5rem;
    font-size: 1.25rem;
    line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
    border-top-left-radius: .3rem;
    border-bottom-left-radius: .3rem;
}

.pagination-lg .page-item:last-child .page-link {
    border-top-right-radius: .3rem;
    border-bottom-right-radius: .3rem;
}

.pagination-sm .page-link {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
    border-top-left-radius: .2rem;
    border-bottom-left-radius: .2rem;
}

.pagination-sm .page-item:last-child .page-link {
    border-top-right-radius: .2rem;
    border-bottom-right-radius: .2rem;
}

.badge {
    display: inline-block;
    padding: .25em .4em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media(prefers-reduced-motion:reduce) {
    .badge {
        transition: none;
    }
}

a.badge:hover, a.badge:focus {
    text-decoration: none;
}

.badge:empty {
    display: none;
}

.btn .badge {
    position: relative;
    top: -1px;
}

.badge-pill {
    padding-right: .6em;
    padding-left: .6em;
    border-radius: 10rem;
}

.badge-primary {
    color: #fff;
    background-color: #383838;
}

a.badge-primary:hover, a.badge-primary:focus {
    color: #fff;
    background-color: #1f1f1f;
}

a.badge-primary:focus, a.badge-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(56,56,56,.5);
}

.badge-secondary {
    color: #fff;
    background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
    color: #fff;
    background-color: #545b62;
}

a.badge-secondary:focus, a.badge-secondary.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(108,117,125,.5);
}

.badge-success {
    color: #fff;
    background-color: #28a745;
}

a.badge-success:hover, a.badge-success:focus {
    color: #fff;
    background-color: #1e7e34;
}

a.badge-success:focus, a.badge-success.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(40,167,69,.5);
}

.badge-info {
    color: #fff;
    background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
    color: #fff;
    background-color: #117a8b;
}

a.badge-info:focus, a.badge-info.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(23,162,184,.5);
}

.badge-warning {
    color: #212529;
    background-color: #ffc107;
}

a.badge-warning:hover, a.badge-warning:focus {
    color: #212529;
    background-color: #d39e00;
}

a.badge-warning:focus, a.badge-warning.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(255,193,7,.5);
}

.badge-danger {
    color: #fff;
    background-color: #dc3545;
}

a.badge-danger:hover, a.badge-danger:focus {
    color: #fff;
    background-color: #bd2130;
}

a.badge-danger:focus, a.badge-danger.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(220,53,69,.5);
}

.badge-light {
    color: #212529;
    background-color: #e9ecef;
}

a.badge-light:hover, a.badge-light:focus {
    color: #212529;
    background-color: #cbd3da;
}

a.badge-light:focus, a.badge-light.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(233,236,239,.5);
}

.badge-dark {
    color: #fff;
    background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
    color: #fff;
    background-color: #1d2124;
}

a.badge-dark:focus, a.badge-dark.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(52,58,64,.5);
}

.badge-dark-gray {
    color: #fff;
    background-color: #495057;
}

a.badge-dark-gray:hover, a.badge-dark-gray:focus {
    color: #fff;
    background-color: #32373b;
}

a.badge-dark-gray:focus, a.badge-dark-gray.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(73,80,87,.5);
}

.badge-light-primary {
    color: #212529;
    background-color: #d6cdc7;
}

a.badge-light-primary:hover, a.badge-light-primary:focus {
    color: #212529;
    background-color: #c0b3aa;
}

a.badge-light-primary:focus, a.badge-light-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(214,205,199,.5);
}

.badge-light-gray {
    color: #212529;
    background-color: #dfe5e8;
}

a.badge-light-gray:hover, a.badge-light-gray:focus {
    color: #212529;
    background-color: #c1cdd3;
}

a.badge-light-gray:focus, a.badge-light-gray.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(223,229,232,.5);
}

.badge-blue-gray {
    color: #fff;
    background-color: #607d88;
}

a.badge-blue-gray:hover, a.badge-blue-gray:focus {
    color: #fff;
    background-color: #4b626a;
}

a.badge-blue-gray:focus, a.badge-blue-gray.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(96,125,136,.5);
}

.badge-light-blue-gray {
    color: #212529;
    background-color: #889aa8;
}

a.badge-light-blue-gray:hover, a.badge-light-blue-gray:focus {
    color: #212529;
    background-color: #6b8192;
}

a.badge-light-blue-gray:focus, a.badge-light-blue-gray.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(136,154,168,.5);
}

.badge-primary-master {
    color: #fff;
    background-color: #007bff;
}

a.badge-primary-master:hover, a.badge-primary-master:focus {
    color: #fff;
    background-color: #0062cc;
}

a.badge-primary-master:focus, a.badge-primary-master.focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(0,123,255,.5);
}

.jumbotron {
    padding: 2rem 1rem;
    margin-bottom: 2rem;
    background-color: #e9ecef;
    border-radius: .3rem;
}

@media(min-width:576px) {
    .jumbotron {
        padding: 4rem 2rem;
    }
}

.jumbotron-fluid {
    padding-right: 0;
    padding-left: 0;
    border-radius: 0;
}

.alert {
    position: relative;
    padding: .75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
}

.alert-heading {
    color: inherit;
}

.alert-link {
    font-weight: 700;
}

.alert-dismissible {
    padding-right: 4rem;
}

    .alert-dismissible .close {
        position: absolute;
        top: 0;
        right: 0;
        padding: .75rem 1.25rem;
        color: inherit;
    }

.alert-primary {
    color: #383838;
    background-color: #d7d7d7;
    border-color: #c7c7c7;
}

    .alert-primary hr {
        border-top-color: #bababa;
    }

    .alert-primary .alert-link {
        color: #1f1f1f;
    }

.alert-secondary {
    color: #53585c;
    background-color: #e2e3e5;
    border-color: #d6d8db;
}

    .alert-secondary hr {
        border-top-color: #c8cbcf;
    }

    .alert-secondary .alert-link {
        color: #3b3e41;
    }

.alert-success {
    color: #30723f;
    background-color: #d4edda;
    border-color: #c3e6cb;
}

    .alert-success hr {
        border-top-color: #b1dfbb;
    }

    .alert-success .alert-link {
        color: #214e2b;
    }

.alert-info {
    color: #276f7b;
    background-color: #d1ecf1;
    border-color: #bee5eb;
}

    .alert-info hr {
        border-top-color: #abdde5;
    }

    .alert-info .alert-link {
        color: #1b4c54;
    }

.alert-warning {
    color: #9f7f1f;
    background-color: #fff3cd;
    border-color: #ffeeba;
}

    .alert-warning hr {
        border-top-color: #ffe8a1;
    }

    .alert-warning .alert-link {
        color: #745d17;
    }

.alert-danger {
    color: #8d363f;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

    .alert-danger hr {
        border-top-color: #f1b0b7;
    }

    .alert-danger .alert-link {
        color: #68282f;
    }

.alert-light {
    color: #949697;
    background-color: #fbfbfc;
    border-color: #f9fafb;
}

    .alert-light hr {
        border-top-color: #eaedf1;
    }

    .alert-light .alert-link {
        color: #7a7d7e;
    }

.alert-dark {
    color: #36393c;
    background-color: #d6d8d9;
    border-color: #c6c8ca;
}

    .alert-dark hr {
        border-top-color: #b9bbbe;
    }

    .alert-dark .alert-link {
        color: #1e2021;
    }

.alert-dark-gray {
    color: #414448;
    background-color: #dbdcdd;
    border-color: #ccced0;
}

    .alert-dark-gray hr {
        border-top-color: #bfc1c4;
    }

    .alert-dark-gray .alert-link {
        color: #292b2d;
    }

.alert-light-primary {
    color: #8a8582;
    background-color: #f7f5f4;
    border-color: #f4f1ef;
}

    .alert-light-primary hr {
        border-top-color: #eae4e0;
    }

    .alert-light-primary .alert-link {
        color: #706c69;
    }

.alert-light-gray {
    color: #8f9294;
    background-color: #f9fafa;
    border-color: #f6f8f9;
}

    .alert-light-gray hr {
        border-top-color: #e7ecef;
    }

    .alert-light-gray .alert-link {
        color: #75797b;
    }

.alert-blue-gray {
    color: #4d5c62;
    background-color: #dfe5e7;
    border-color: #d2dbde;
}

    .alert-blue-gray hr {
        border-top-color: #c3cfd3;
    }

    .alert-blue-gray .alert-link {
        color: #374145;
    }

.alert-light-blue-gray {
    color: #626b72;
    background-color: #e7ebee;
    border-color: #dee3e7;
}

    .alert-light-blue-gray hr {
        border-top-color: #cfd6dc;
    }

    .alert-light-blue-gray .alert-link {
        color: #4a5157;
    }

.alert-primary-master {
    color: #1b5b9f;
    background-color: #cce5ff;
    border-color: #b8daff;
}

    .alert-primary-master hr {
        border-top-color: #9fcdff;
    }

    .alert-primary-master .alert-link {
        color: #144273;
    }

@keyframes progress-bar-stripes {
    from {
        background-position: 1rem 0;
    }

    to {
        background-position: 0 0;
    }
}

.progress {
    display: flex;
    height: 1rem;
    overflow: hidden;
    font-size: .75rem;
    background-color: #e9ecef;
    border-radius: .25rem;
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #383838;
    transition: width .6s ease;
}

@media(prefers-reduced-motion:reduce) {
    .progress-bar {
        transition: none;
    }
}

.progress-bar-striped {
    background-image: linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-size: 1rem 1rem;
}

.progress-bar-animated {
    animation: progress-bar-stripes 1s linear infinite;
}

@media(prefers-reduced-motion:reduce) {
    .progress-bar-animated {
        animation: none;
    }
}

.media {
    display: flex;
    align-items: flex-start;
}

.media-body {
    flex: 1;
}

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
}

.list-group-item-action {
    width: 100%;
    color: #495057;
    text-align: inherit;
}

    .list-group-item-action:hover, .list-group-item-action:focus {
        z-index: 1;
        color: #495057;
        text-decoration: none;
        background-color: #f8f9fa;
    }

    .list-group-item-action:active {
        color: #212529;
        background-color: #e9ecef;
    }

.list-group-item {
    position: relative;
    display: block;
    padding: .75rem 1.25rem;
    margin-bottom: -1px;
    background-color: #fff;
    border: 1px solid rgba(56,56,56,.125);
}

    .list-group-item:first-child {
        border-top-left-radius: .25rem;
        border-top-right-radius: .25rem;
    }

    .list-group-item:last-child {
        margin-bottom: 0;
        border-bottom-right-radius: .25rem;
        border-bottom-left-radius: .25rem;
    }

    .list-group-item.disabled, .list-group-item:disabled {
        color: #6c757d;
        pointer-events: none;
        background-color: #fff;
    }

    .list-group-item.active {
        z-index: 2;
        color: #fff;
        background-color: #383838;
        border-color: #383838;
    }

.list-group-horizontal {
    flex-direction: row;
}

    .list-group-horizontal .list-group-item {
        margin-right: -1px;
        margin-bottom: 0;
    }

        .list-group-horizontal .list-group-item:first-child {
            border-top-left-radius: .25rem;
            border-bottom-left-radius: .25rem;
            border-top-right-radius: 0;
        }

        .list-group-horizontal .list-group-item:last-child {
            margin-right: 0;
            border-top-right-radius: .25rem;
            border-bottom-right-radius: .25rem;
            border-bottom-left-radius: 0;
        }

@media(min-width:576px) {
    .list-group-horizontal-sm {
        flex-direction: row;
    }

        .list-group-horizontal-sm .list-group-item {
            margin-right: -1px;
            margin-bottom: 0;
        }

            .list-group-horizontal-sm .list-group-item:first-child {
                border-top-left-radius: .25rem;
                border-bottom-left-radius: .25rem;
                border-top-right-radius: 0;
            }

            .list-group-horizontal-sm .list-group-item:last-child {
                margin-right: 0;
                border-top-right-radius: .25rem;
                border-bottom-right-radius: .25rem;
                border-bottom-left-radius: 0;
            }
}

@media(min-width:768px) {
    .list-group-horizontal-md {
        flex-direction: row;
    }

        .list-group-horizontal-md .list-group-item {
            margin-right: -1px;
            margin-bottom: 0;
        }

            .list-group-horizontal-md .list-group-item:first-child {
                border-top-left-radius: .25rem;
                border-bottom-left-radius: .25rem;
                border-top-right-radius: 0;
            }

            .list-group-horizontal-md .list-group-item:last-child {
                margin-right: 0;
                border-top-right-radius: .25rem;
                border-bottom-right-radius: .25rem;
                border-bottom-left-radius: 0;
            }
}

@media(min-width:992px) {
    .list-group-horizontal-lg {
        flex-direction: row;
    }

        .list-group-horizontal-lg .list-group-item {
            margin-right: -1px;
            margin-bottom: 0;
        }

            .list-group-horizontal-lg .list-group-item:first-child {
                border-top-left-radius: .25rem;
                border-bottom-left-radius: .25rem;
                border-top-right-radius: 0;
            }

            .list-group-horizontal-lg .list-group-item:last-child {
                margin-right: 0;
                border-top-right-radius: .25rem;
                border-bottom-right-radius: .25rem;
                border-bottom-left-radius: 0;
            }
}

@media(min-width:1200px) {
    .list-group-horizontal-xl {
        flex-direction: row;
    }

        .list-group-horizontal-xl .list-group-item {
            margin-right: -1px;
            margin-bottom: 0;
        }

            .list-group-horizontal-xl .list-group-item:first-child {
                border-top-left-radius: .25rem;
                border-bottom-left-radius: .25rem;
                border-top-right-radius: 0;
            }

            .list-group-horizontal-xl .list-group-item:last-child {
                margin-right: 0;
                border-top-right-radius: .25rem;
                border-bottom-right-radius: .25rem;
                border-bottom-left-radius: 0;
            }
}

.list-group-flush .list-group-item {
    border-right: 0;
    border-left: 0;
    border-radius: 0;
}

    .list-group-flush .list-group-item:last-child {
        margin-bottom: -1px;
    }

.list-group-flush:first-child .list-group-item:first-child {
    border-top: 0;
}

.list-group-flush:last-child .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom: 0;
}

.list-group-item-primary {
    color: #383838;
    background-color: #c7c7c7;
}

    .list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
        color: #383838;
        background-color: #bababa;
    }

    .list-group-item-primary.list-group-item-action.active {
        color: #fff;
        background-color: #383838;
        border-color: #383838;
    }

.list-group-item-secondary {
    color: #53585c;
    background-color: #d6d8db;
}

    .list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
        color: #53585c;
        background-color: #c8cbcf;
    }

    .list-group-item-secondary.list-group-item-action.active {
        color: #fff;
        background-color: #53585c;
        border-color: #53585c;
    }

.list-group-item-success {
    color: #30723f;
    background-color: #c3e6cb;
}

    .list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
        color: #30723f;
        background-color: #b1dfbb;
    }

    .list-group-item-success.list-group-item-action.active {
        color: #fff;
        background-color: #30723f;
        border-color: #30723f;
    }

.list-group-item-info {
    color: #276f7b;
    background-color: #bee5eb;
}

    .list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
        color: #276f7b;
        background-color: #abdde5;
    }

    .list-group-item-info.list-group-item-action.active {
        color: #fff;
        background-color: #276f7b;
        border-color: #276f7b;
    }

.list-group-item-warning {
    color: #9f7f1f;
    background-color: #ffeeba;
}

    .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
        color: #9f7f1f;
        background-color: #ffe8a1;
    }

    .list-group-item-warning.list-group-item-action.active {
        color: #fff;
        background-color: #9f7f1f;
        border-color: #9f7f1f;
    }

.list-group-item-danger {
    color: #8d363f;
    background-color: #f5c6cb;
}

    .list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
        color: #8d363f;
        background-color: #f1b0b7;
    }

    .list-group-item-danger.list-group-item-action.active {
        color: #fff;
        background-color: #8d363f;
        border-color: #8d363f;
    }

.list-group-item-light {
    color: #949697;
    background-color: #f9fafb;
}

    .list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
        color: #949697;
        background-color: #eaedf1;
    }

    .list-group-item-light.list-group-item-action.active {
        color: #fff;
        background-color: #949697;
        border-color: #949697;
    }

.list-group-item-dark {
    color: #36393c;
    background-color: #c6c8ca;
}

    .list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
        color: #36393c;
        background-color: #b9bbbe;
    }

    .list-group-item-dark.list-group-item-action.active {
        color: #fff;
        background-color: #36393c;
        border-color: #36393c;
    }

.list-group-item-dark-gray {
    color: #414448;
    background-color: #ccced0;
}

    .list-group-item-dark-gray.list-group-item-action:hover, .list-group-item-dark-gray.list-group-item-action:focus {
        color: #414448;
        background-color: #bfc1c4;
    }

    .list-group-item-dark-gray.list-group-item-action.active {
        color: #fff;
        background-color: #414448;
        border-color: #414448;
    }

.list-group-item-light-primary {
    color: #8a8582;
    background-color: #f4f1ef;
}

    .list-group-item-light-primary.list-group-item-action:hover, .list-group-item-light-primary.list-group-item-action:focus {
        color: #8a8582;
        background-color: #eae4e0;
    }

    .list-group-item-light-primary.list-group-item-action.active {
        color: #fff;
        background-color: #8a8582;
        border-color: #8a8582;
    }

.list-group-item-light-gray {
    color: #8f9294;
    background-color: #f6f8f9;
}

    .list-group-item-light-gray.list-group-item-action:hover, .list-group-item-light-gray.list-group-item-action:focus {
        color: #8f9294;
        background-color: #e7ecef;
    }

    .list-group-item-light-gray.list-group-item-action.active {
        color: #fff;
        background-color: #8f9294;
        border-color: #8f9294;
    }

.list-group-item-blue-gray {
    color: #4d5c62;
    background-color: #d2dbde;
}

    .list-group-item-blue-gray.list-group-item-action:hover, .list-group-item-blue-gray.list-group-item-action:focus {
        color: #4d5c62;
        background-color: #c3cfd3;
    }

    .list-group-item-blue-gray.list-group-item-action.active {
        color: #fff;
        background-color: #4d5c62;
        border-color: #4d5c62;
    }

.list-group-item-light-blue-gray {
    color: #626b72;
    background-color: #dee3e7;
}

    .list-group-item-light-blue-gray.list-group-item-action:hover, .list-group-item-light-blue-gray.list-group-item-action:focus {
        color: #626b72;
        background-color: #cfd6dc;
    }

    .list-group-item-light-blue-gray.list-group-item-action.active {
        color: #fff;
        background-color: #626b72;
        border-color: #626b72;
    }

.list-group-item-primary-master {
    color: #1b5b9f;
    background-color: #b8daff;
}

    .list-group-item-primary-master.list-group-item-action:hover, .list-group-item-primary-master.list-group-item-action:focus {
        color: #1b5b9f;
        background-color: #9fcdff;
    }

    .list-group-item-primary-master.list-group-item-action.active {
        color: #fff;
        background-color: #1b5b9f;
        border-color: #1b5b9f;
    }

.close {
    float: right;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: #383838;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}

    .close:hover {
        color: #383838;
        text-decoration: none;
    }

    .close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
        opacity: .75;
    }

button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
    appearance: none;
}

a.close.disabled {
    pointer-events: none;
}

.toast {
    max-width: 350px;
    overflow: hidden;
    font-size: .875rem;
    background-color: rgba(255,255,255,.85);
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.1);
    box-shadow: 0 .25rem .75rem rgba(56,56,56,.1);
    backdrop-filter: blur(10px);
    opacity: 0;
    border-radius: .25rem;
}

    .toast:not(:last-child) {
        margin-bottom: .75rem;
    }

    .toast.showing {
        opacity: 1;
    }

    .toast.show {
        display: block;
        opacity: 1;
    }

    .toast.hide {
        display: none;
    }

.toast-header {
    display: flex;
    align-items: center;
    padding: .25rem .75rem;
    color: #6c757d;
    background-color: rgba(255,255,255,.85);
    background-clip: padding-box;
    border-bottom: 1px solid rgba(0,0,0,.05);
}

.toast-body {
    padding: .75rem;
}

.modal-open {
    overflow: hidden;
}

    .modal-open .modal {
        overflow-x: hidden;
        overflow-y: auto;
    }

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: .5rem;
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: transform .3s ease-out;
    transform: translate(0,-50px);
}

@media(prefers-reduced-motion:reduce) {
    .modal.fade .modal-dialog {
        transition: none;
    }
}

.modal.show .modal-dialog {
    transform: none;
}

.modal-dialog-scrollable {
    display: flex;
    max-height: calc(100% - 1rem);
}

    .modal-dialog-scrollable .modal-content {
        max-height: calc(100vh - 1rem);
        overflow: hidden;
    }

    .modal-dialog-scrollable .modal-header, .modal-dialog-scrollable .modal-footer {
        flex-shrink: 0;
    }

    .modal-dialog-scrollable .modal-body {
        overflow-y: auto;
    }

.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem);
}

    .modal-dialog-centered::before {
        display: block;
        height: calc(100vh - 1rem);
        content: "";
    }

    .modal-dialog-centered.modal-dialog-scrollable {
        flex-direction: column;
        justify-content: center;
        height: 100%;
    }

        .modal-dialog-centered.modal-dialog-scrollable .modal-content {
            max-height: none;
        }

        .modal-dialog-centered.modal-dialog-scrollable::before {
            content: none;
        }

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(56,56,56,.2);
    border-radius: .3rem;
    outline: 0;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #383838;
}

    .modal-backdrop.fade {
        opacity: 0;
    }

    .modal-backdrop.show {
        opacity: .5;
    }

.modal-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: .3rem;
    border-top-right-radius: .3rem;
}

    .modal-header .close {
        padding: 1rem 1rem;
        margin: -1rem -1rem -1rem auto;
    }

.modal-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
}

.modal-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 1rem;
    border-top: 1px solid #dee2e6;
    border-bottom-right-radius: .3rem;
    border-bottom-left-radius: .3rem;
}

    .modal-footer > :not(:first-child) {
        margin-left: .25rem;
    }

    .modal-footer > :not(:last-child) {
        margin-right: .25rem;
    }

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll;
}

@media(min-width:576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 1.75rem auto;
    }

    .modal-dialog-scrollable {
        max-height: calc(100% - 3.5rem);
    }

        .modal-dialog-scrollable .modal-content {
            max-height: calc(100vh - 3.5rem);
        }

    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem);
    }

        .modal-dialog-centered::before {
            height: calc(100vh - 3.5rem);
        }

    .modal-sm {
        max-width: 300px;
    }
}

@media(min-width:992px) {
    .modal-lg, .modal-xl {
        max-width: 800px;
    }
}

@media(min-width:1200px) {
    .modal-xl {
        max-width: 1140px;
    }
}

.tooltip {
    position: absolute;
    z-index: 1070;
    display: block;
    margin: 0;
    font-family: "Noto Sans CJK JP",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: .875rem;
    word-wrap: break-word;
    opacity: 0;
}

    .tooltip.show {
        opacity: .9;
    }

    .tooltip .arrow {
        position: absolute;
        display: block;
        width: .8rem;
        height: .4rem;
    }

        .tooltip .arrow::before {
            position: absolute;
            content: "";
            border-color: transparent;
            border-style: solid;
        }

.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] {
    padding: .4rem 0;
}

    .bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
        bottom: 0;
    }

        .bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
            top: 0;
            border-width: .4rem .4rem 0;
            border-top-color: #383838;
        }

.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] {
    padding: 0 .4rem;
}

    .bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
        left: 0;
        width: .4rem;
        height: .8rem;
    }

        .bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
            right: 0;
            border-width: .4rem .4rem .4rem 0;
            border-right-color: #383838;
        }

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] {
    padding: .4rem 0;
}

    .bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
        top: 0;
    }

        .bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
            bottom: 0;
            border-width: 0 .4rem .4rem;
            border-bottom-color: #383838;
        }

.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] {
    padding: 0 .4rem;
}

    .bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
        right: 0;
        width: .4rem;
        height: .8rem;
    }

        .bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
            left: 0;
            border-width: .4rem 0 .4rem .4rem;
            border-left-color: #383838;
        }

.tooltip-inner {
    max-width: 200px;
    padding: .25rem .5rem;
    color: #fff;
    text-align: center;
    background-color: #383838;
    border-radius: .25rem;
}

.popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1060;
    display: block;
    max-width: 276px;
    font-family: "Noto Sans CJK JP",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: .875rem;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(56,56,56,.2);
    border-radius: .3rem;
}

    .popover .arrow {
        position: absolute;
        display: block;
        width: 1rem;
        height: .5rem;
        margin: 0 .3rem;
    }

        .popover .arrow::before, .popover .arrow::after {
            position: absolute;
            display: block;
            content: "";
            border-color: transparent;
            border-style: solid;
        }

.bs-popover-top, .bs-popover-auto[x-placement^=top] {
    margin-bottom: .5rem;
}

    .bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
        bottom: calc((.5rem + 1px)*-1);
    }

        .bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
            bottom: 0;
            border-width: .5rem .5rem 0;
            border-top-color: rgba(56,56,56,.25);
        }

        .bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
            bottom: 1px;
            border-width: .5rem .5rem 0;
            border-top-color: #fff;
        }

.bs-popover-right, .bs-popover-auto[x-placement^=right] {
    margin-left: .5rem;
}

    .bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
        left: calc((.5rem + 1px)*-1);
        width: .5rem;
        height: 1rem;
        margin: .3rem 0;
    }

        .bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
            left: 0;
            border-width: .5rem .5rem .5rem 0;
            border-right-color: rgba(56,56,56,.25);
        }

        .bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
            left: 1px;
            border-width: .5rem .5rem .5rem 0;
            border-right-color: #fff;
        }

.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] {
    margin-top: .5rem;
}

    .bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
        top: calc((.5rem + 1px)*-1);
    }

        .bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
            top: 0;
            border-width: 0 .5rem .5rem .5rem;
            border-bottom-color: rgba(56,56,56,.25);
        }

        .bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
            top: 1px;
            border-width: 0 .5rem .5rem .5rem;
            border-bottom-color: #fff;
        }

    .bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
        position: absolute;
        top: 0;
        left: 50%;
        display: block;
        width: 1rem;
        margin-left: -.5rem;
        content: "";
        border-bottom: 1px solid #f7f7f7;
    }

.bs-popover-left, .bs-popover-auto[x-placement^=left] {
    margin-right: .5rem;
}

    .bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
        right: calc((.5rem + 1px)*-1);
        width: .5rem;
        height: 1rem;
        margin: .3rem 0;
    }

        .bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
            right: 0;
            border-width: .5rem 0 .5rem .5rem;
            border-left-color: rgba(56,56,56,.25);
        }

        .bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
            right: 1px;
            border-width: .5rem 0 .5rem .5rem;
            border-left-color: #fff;
        }

.popover-header {
    padding: .5rem .75rem;
    margin-bottom: 0;
    font-size: 1rem;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px);
}

    .popover-header:empty {
        display: none;
    }

.popover-body {
    padding: .5rem .75rem;
    color: #212529;
}

.carousel {
    position: relative;
}

    .carousel.pointer-event {
        touch-action: pan-y;
    }

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

    .carousel-inner::after {
        display: block;
        clear: both;
        content: "";
    }

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    backface-visibility: hidden;
    transition: transform .6s ease-in-out;
}

@media(prefers-reduced-motion:reduce) {
    .carousel-item {
        transition: none;
    }
}

.carousel-item.active, .carousel-item-next, .carousel-item-prev {
    display: block;
}

    .carousel-item-next:not(.carousel-item-left), .active.carousel-item-right {
        transform: translateX(100%);
    }

    .carousel-item-prev:not(.carousel-item-right), .active.carousel-item-left {
        transform: translateX(-100%);
    }

.carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
}

    .carousel-fade .carousel-item.active, .carousel-fade .carousel-item-next.carousel-item-left, .carousel-fade .carousel-item-prev.carousel-item-right {
        z-index: 1;
        opacity: 1;
    }

.carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-right {
    z-index: 0;
    opacity: 0;
    transition: 0s .6s opacity;
}

@media(prefers-reduced-motion:reduce) {
    .carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-right {
        transition: none;
    }
}

.carousel-control-prev, .carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15%;
    color: #fff;
    text-align: center;
    opacity: .5;
    transition: opacity .15s ease;
}

@media(prefers-reduced-motion:reduce) {
    .carousel-control-prev, .carousel-control-next {
        transition: none;
    }
}

.carousel-control-prev:hover, .carousel-control-prev:focus, .carousel-control-next:hover, .carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: .9;
}

.carousel-control-prev {
    left: 0;
}

.carousel-control-next {
    right: 0;
}

.carousel-control-prev-icon, .carousel-control-next-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: no-repeat 50%/100% 100%;
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 15;
    display: flex;
    justify-content: center;
    padding-left: 0;
    margin-right: 15%;
    margin-left: 15%;
    list-style: none;
}

    .carousel-indicators li {
        box-sizing: content-box;
        flex: 0 1 auto;
        width: 30px;
        height: 3px;
        margin-right: 3px;
        margin-left: 3px;
        text-indent: -999px;
        cursor: pointer;
        background-color: #fff;
        background-clip: padding-box;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        opacity: .5;
        transition: opacity .6s ease;
    }

@media(prefers-reduced-motion:reduce) {
    .carousel-indicators li {
        transition: none;
    }
}

.carousel-indicators .active {
    opacity: 1;
}

.carousel-caption {
    position: absolute;
    right: 15%;
    bottom: 20px;
    left: 15%;
    z-index: 10;
    padding-top: 20px;
    padding-bottom: 20px;
    color: #fff;
    text-align: center;
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg);
    }
}

.spinner-border {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    border: .25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: spinner-border .75s linear infinite;
}

.spinner-border-sm {
    width: 1rem;
    height: 1rem;
    border-width: .2em;
}

@keyframes spinner-grow {
    0% {
        transform: scale(0);
    }

    50% {
        opacity: 1;
    }
}

.spinner-grow {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    background-color: currentColor;
    border-radius: 50%;
    opacity: 0;
    animation: spinner-grow .75s linear infinite;
}

.spinner-grow-sm {
    width: 1rem;
    height: 1rem;
}

.align-baseline {
    vertical-align: baseline !important;
}

.align-top {
    vertical-align: top !important;
}

.align-middle {
    vertical-align: middle !important;
}

.align-bottom {
    vertical-align: bottom !important;
}

.align-text-bottom {
    vertical-align: text-bottom !important;
}

.align-text-top {
    vertical-align: text-top !important;
}

.bg-primary {
    background-color: #383838 !important;
}

a.bg-primary:hover, a.bg-primary:focus, button.bg-primary:hover, button.bg-primary:focus {
    background-color: #1f1f1f !important;
}

.bg-secondary {
    background-color: #6c757d !important;
}

a.bg-secondary:hover, a.bg-secondary:focus, button.bg-secondary:hover, button.bg-secondary:focus {
    background-color: #545b62 !important;
}

.bg-success {
    background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus, button.bg-success:hover, button.bg-success:focus {
    background-color: #1e7e34 !important;
}

.bg-info {
    background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus, button.bg-info:hover, button.bg-info:focus {
    background-color: #117a8b !important;
}

.bg-warning {
    background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus, button.bg-warning:hover, button.bg-warning:focus {
    background-color: #d39e00 !important;
}

.bg-danger {
    background-color: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus, button.bg-danger:hover, button.bg-danger:focus {
    background-color: #bd2130 !important;
}

.bg-light {
    background-color: #e9ecef !important;
}

a.bg-light:hover, a.bg-light:focus, button.bg-light:hover, button.bg-light:focus {
    background-color: #cbd3da !important;
}

.bg-dark {
    background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus, button.bg-dark:hover, button.bg-dark:focus {
    background-color: #1d2124 !important;
}

.bg-dark-gray {
    background-color: #495057 !important;
}

a.bg-dark-gray:hover, a.bg-dark-gray:focus, button.bg-dark-gray:hover, button.bg-dark-gray:focus {
    background-color: #32373b !important;
}

.bg-light-primary {
    background-color: #d6cdc7 !important;
}

a.bg-light-primary:hover, a.bg-light-primary:focus, button.bg-light-primary:hover, button.bg-light-primary:focus {
    background-color: #c0b3aa !important;
}

.bg-light-gray {
    background-color: #dfe5e8 !important;
}

a.bg-light-gray:hover, a.bg-light-gray:focus, button.bg-light-gray:hover, button.bg-light-gray:focus {
    background-color: #c1cdd3 !important;
}

.bg-blue-gray {
    background-color: #607d88 !important;
}

a.bg-blue-gray:hover, a.bg-blue-gray:focus, button.bg-blue-gray:hover, button.bg-blue-gray:focus {
    background-color: #4b626a !important;
}

.bg-light-blue-gray {
    background-color: #889aa8 !important;
}

a.bg-light-blue-gray:hover, a.bg-light-blue-gray:focus, button.bg-light-blue-gray:hover, button.bg-light-blue-gray:focus {
    background-color: #6b8192 !important;
}

.bg-primary-master {
    background-color: #007bff !important;
}

a.bg-primary-master:hover, a.bg-primary-master:focus, button.bg-primary-master:hover, button.bg-primary-master:focus {
    background-color: #0062cc !important;
}

.bg-white {
    background-color: #fff !important;
}

.bg-transparent {
    background-color: transparent !important;
}

.border {
    border: 1px solid #dee2e6 !important;
}

.border-top {
    border-top: 1px solid #dee2e6 !important;
}

.border-right {
    border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
    border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
    border-left: 1px solid #dee2e6 !important;
}

.border-0 {
    border: 0 !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-right-0 {
    border-right: 0 !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-left-0 {
    border-left: 0 !important;
}

.border-primary {
    border-color: #383838 !important;
}

.border-secondary {
    border-color: #6c757d !important;
}

.border-success {
    border-color: #28a745 !important;
}

.border-info {
    border-color: #17a2b8 !important;
}

.border-warning {
    border-color: #ffc107 !important;
}

.border-danger {
    border-color: #dc3545 !important;
}

.border-light {
    border-color: #e9ecef !important;
}

.border-dark {
    border-color: #343a40 !important;
}

.border-dark-gray {
    border-color: #495057 !important;
}

.border-light-primary {
    border-color: #d6cdc7 !important;
}

.border-light-gray {
    border-color: #dfe5e8 !important;
}

.border-blue-gray {
    border-color: #607d88 !important;
}

.border-light-blue-gray {
    border-color: #889aa8 !important;
}

.border-primary-master {
    border-color: #007bff !important;
}

.border-white {
    border-color: #fff !important;
}

.rounded-sm {
    border-radius: .2rem !important;
}

.rounded {
    border-radius: .25rem !important;
}

.rounded-top {
    border-top-left-radius: .25rem !important;
    border-top-right-radius: .25rem !important;
}

.rounded-right {
    border-top-right-radius: .25rem !important;
    border-bottom-right-radius: .25rem !important;
}

.rounded-bottom {
    border-bottom-right-radius: .25rem !important;
    border-bottom-left-radius: .25rem !important;
}

.rounded-left {
    border-top-left-radius: .25rem !important;
    border-bottom-left-radius: .25rem !important;
}

.rounded-lg {
    border-radius: .3rem !important;
}

.rounded-circle {
    border-radius: 50% !important;
}

.rounded-pill {
    border-radius: 50rem !important;
}

.rounded-0 {
    border-radius: 0 !important;
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

.d-none {
    display: none !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: flex !important;
}

.d-inline-flex {
    display: inline-flex !important;
}

@media(min-width:576px) {
    .d-sm-none {
        display: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: inline-flex !important;
    }
}

@media(min-width:768px) {
    .d-md-none {
        display: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: flex !important;
    }

    .d-md-inline-flex {
        display: inline-flex !important;
    }
}

@media(min-width:992px) {
    .d-lg-none {
        display: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: inline-flex !important;
    }
}

@media(min-width:1200px) {
    .d-xl-none {
        display: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: inline-flex !important;
    }
}

@media print {
    .d-print-none {
        display: none !important;
    }

    .d-print-inline {
        display: inline !important;
    }

    .d-print-inline-block {
        display: inline-block !important;
    }

    .d-print-block {
        display: block !important;
    }

    .d-print-table {
        display: table !important;
    }

    .d-print-table-row {
        display: table-row !important;
    }

    .d-print-table-cell {
        display: table-cell !important;
    }

    .d-print-flex {
        display: flex !important;
    }

    .d-print-inline-flex {
        display: inline-flex !important;
    }
}

.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
}

    .embed-responsive::before {
        display: block;
        content: "";
    }

    .embed-responsive .embed-responsive-item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }

.embed-responsive-21by9::before {
    padding-top: 42.8571428571%;
}

.embed-responsive-16by9::before {
    padding-top: 56.25%;
}

.embed-responsive-4by3::before {
    padding-top: 75%;
}

.embed-responsive-1by1::before {
    padding-top: 100%;
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}

.flex-fill {
    flex: 1 1 auto !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-end {
    align-items: flex-end !important;
}

.align-items-center {
    align-items: center !important;
}

.align-items-baseline {
    align-items: baseline !important;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-content-start {
    align-content: flex-start !important;
}

.align-content-end {
    align-content: flex-end !important;
}

.align-content-center {
    align-content: center !important;
}

.align-content-between {
    align-content: space-between !important;
}

.align-content-around {
    align-content: space-around !important;
}

.align-content-stretch {
    align-content: stretch !important;
}

.align-self-auto {
    align-self: auto !important;
}

.align-self-start {
    align-self: flex-start !important;
}

.align-self-end {
    align-self: flex-end !important;
}

.align-self-center {
    align-self: center !important;
}

.align-self-baseline {
    align-self: baseline !important;
}

.align-self-stretch {
    align-self: stretch !important;
}

@media(min-width:576px) {
    .flex-sm-row {
        flex-direction: row !important;
    }

    .flex-sm-column {
        flex-direction: column !important;
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important;
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-sm-fill {
        flex: 1 1 auto !important;
    }

    .flex-sm-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-sm-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-sm-start {
        justify-content: flex-start !important;
    }

    .justify-content-sm-end {
        justify-content: flex-end !important;
    }

    .justify-content-sm-center {
        justify-content: center !important;
    }

    .justify-content-sm-between {
        justify-content: space-between !important;
    }

    .justify-content-sm-around {
        justify-content: space-around !important;
    }

    .align-items-sm-start {
        align-items: flex-start !important;
    }

    .align-items-sm-end {
        align-items: flex-end !important;
    }

    .align-items-sm-center {
        align-items: center !important;
    }

    .align-items-sm-baseline {
        align-items: baseline !important;
    }

    .align-items-sm-stretch {
        align-items: stretch !important;
    }

    .align-content-sm-start {
        align-content: flex-start !important;
    }

    .align-content-sm-end {
        align-content: flex-end !important;
    }

    .align-content-sm-center {
        align-content: center !important;
    }

    .align-content-sm-between {
        align-content: space-between !important;
    }

    .align-content-sm-around {
        align-content: space-around !important;
    }

    .align-content-sm-stretch {
        align-content: stretch !important;
    }

    .align-self-sm-auto {
        align-self: auto !important;
    }

    .align-self-sm-start {
        align-self: flex-start !important;
    }

    .align-self-sm-end {
        align-self: flex-end !important;
    }

    .align-self-sm-center {
        align-self: center !important;
    }

    .align-self-sm-baseline {
        align-self: baseline !important;
    }

    .align-self-sm-stretch {
        align-self: stretch !important;
    }
}

@media(min-width:768px) {
    .flex-md-row {
        flex-direction: row !important;
    }

    .flex-md-column {
        flex-direction: column !important;
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-md-wrap {
        flex-wrap: wrap !important;
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-md-fill {
        flex: 1 1 auto !important;
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-md-start {
        justify-content: flex-start !important;
    }

    .justify-content-md-end {
        justify-content: flex-end !important;
    }

    .justify-content-md-center {
        justify-content: center !important;
    }

    .justify-content-md-between {
        justify-content: space-between !important;
    }

    .justify-content-md-around {
        justify-content: space-around !important;
    }

    .align-items-md-start {
        align-items: flex-start !important;
    }

    .align-items-md-end {
        align-items: flex-end !important;
    }

    .align-items-md-center {
        align-items: center !important;
    }

    .align-items-md-baseline {
        align-items: baseline !important;
    }

    .align-items-md-stretch {
        align-items: stretch !important;
    }

    .align-content-md-start {
        align-content: flex-start !important;
    }

    .align-content-md-end {
        align-content: flex-end !important;
    }

    .align-content-md-center {
        align-content: center !important;
    }

    .align-content-md-between {
        align-content: space-between !important;
    }

    .align-content-md-around {
        align-content: space-around !important;
    }

    .align-content-md-stretch {
        align-content: stretch !important;
    }

    .align-self-md-auto {
        align-self: auto !important;
    }

    .align-self-md-start {
        align-self: flex-start !important;
    }

    .align-self-md-end {
        align-self: flex-end !important;
    }

    .align-self-md-center {
        align-self: center !important;
    }

    .align-self-md-baseline {
        align-self: baseline !important;
    }

    .align-self-md-stretch {
        align-self: stretch !important;
    }
}

@media(min-width:992px) {
    .flex-lg-row {
        flex-direction: row !important;
    }

    .flex-lg-column {
        flex-direction: column !important;
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-lg-fill {
        flex: 1 1 auto !important;
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-lg-start {
        justify-content: flex-start !important;
    }

    .justify-content-lg-end {
        justify-content: flex-end !important;
    }

    .justify-content-lg-center {
        justify-content: center !important;
    }

    .justify-content-lg-between {
        justify-content: space-between !important;
    }

    .justify-content-lg-around {
        justify-content: space-around !important;
    }

    .align-items-lg-start {
        align-items: flex-start !important;
    }

    .align-items-lg-end {
        align-items: flex-end !important;
    }

    .align-items-lg-center {
        align-items: center !important;
    }

    .align-items-lg-baseline {
        align-items: baseline !important;
    }

    .align-items-lg-stretch {
        align-items: stretch !important;
    }

    .align-content-lg-start {
        align-content: flex-start !important;
    }

    .align-content-lg-end {
        align-content: flex-end !important;
    }

    .align-content-lg-center {
        align-content: center !important;
    }

    .align-content-lg-between {
        align-content: space-between !important;
    }

    .align-content-lg-around {
        align-content: space-around !important;
    }

    .align-content-lg-stretch {
        align-content: stretch !important;
    }

    .align-self-lg-auto {
        align-self: auto !important;
    }

    .align-self-lg-start {
        align-self: flex-start !important;
    }

    .align-self-lg-end {
        align-self: flex-end !important;
    }

    .align-self-lg-center {
        align-self: center !important;
    }

    .align-self-lg-baseline {
        align-self: baseline !important;
    }

    .align-self-lg-stretch {
        align-self: stretch !important;
    }
}

@media(min-width:1200px) {
    .flex-xl-row {
        flex-direction: row !important;
    }

    .flex-xl-column {
        flex-direction: column !important;
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-xl-fill {
        flex: 1 1 auto !important;
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-xl-start {
        justify-content: flex-start !important;
    }

    .justify-content-xl-end {
        justify-content: flex-end !important;
    }

    .justify-content-xl-center {
        justify-content: center !important;
    }

    .justify-content-xl-between {
        justify-content: space-between !important;
    }

    .justify-content-xl-around {
        justify-content: space-around !important;
    }

    .align-items-xl-start {
        align-items: flex-start !important;
    }

    .align-items-xl-end {
        align-items: flex-end !important;
    }

    .align-items-xl-center {
        align-items: center !important;
    }

    .align-items-xl-baseline {
        align-items: baseline !important;
    }

    .align-items-xl-stretch {
        align-items: stretch !important;
    }

    .align-content-xl-start {
        align-content: flex-start !important;
    }

    .align-content-xl-end {
        align-content: flex-end !important;
    }

    .align-content-xl-center {
        align-content: center !important;
    }

    .align-content-xl-between {
        align-content: space-between !important;
    }

    .align-content-xl-around {
        align-content: space-around !important;
    }

    .align-content-xl-stretch {
        align-content: stretch !important;
    }

    .align-self-xl-auto {
        align-self: auto !important;
    }

    .align-self-xl-start {
        align-self: flex-start !important;
    }

    .align-self-xl-end {
        align-self: flex-end !important;
    }

    .align-self-xl-center {
        align-self: center !important;
    }

    .align-self-xl-baseline {
        align-self: baseline !important;
    }

    .align-self-xl-stretch {
        align-self: stretch !important;
    }
}

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.float-none {
    float: none !important;
}

@media(min-width:576px) {
    .float-sm-left {
        float: left !important;
    }

    .float-sm-right {
        float: right !important;
    }

    .float-sm-none {
        float: none !important;
    }
}

@media(min-width:768px) {
    .float-md-left {
        float: left !important;
    }

    .float-md-right {
        float: right !important;
    }

    .float-md-none {
        float: none !important;
    }
}

@media(min-width:992px) {
    .float-lg-left {
        float: left !important;
    }

    .float-lg-right {
        float: right !important;
    }

    .float-lg-none {
        float: none !important;
    }
}

@media(min-width:1200px) {
    .float-xl-left {
        float: left !important;
    }

    .float-xl-right {
        float: right !important;
    }

    .float-xl-none {
        float: none !important;
    }
}

.overflow-auto {
    overflow: auto !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.position-static {
    position: static !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: sticky !important;
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

@supports(position:sticky) {
    .sticky-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
}

.shadow-sm {
    box-shadow: 0 .125rem .25rem rgba(56,56,56,.075) !important;
}

.shadow {
    box-shadow: 0 .5rem 1rem rgba(56,56,56,.15) !important;
}

.shadow-lg {
    box-shadow: 0 1rem 3rem rgba(56,56,56,.175) !important;
}

.shadow-none {
    box-shadow: none !important;
}

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.mh-100 {
    max-height: 100% !important;
}

.min-vw-100 {
    min-width: 100vw !important;
}

.min-vh-100 {
    min-height: 100vh !important;
}

.vw-100 {
    width: 100vw !important;
}

.vh-100 {
    height: 100vh !important;
}

.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0,0,0,0);
}

.m-0 {
    margin: 0 !important;
}

.mt-0, .my-0 {
    margin-top: 0 !important;
}

.mr-0, .mx-0 {
    margin-right: 0 !important;
}

.mb-0, .my-0 {
    margin-bottom: 0 !important;
}

.ml-0, .mx-0 {
    margin-left: 0 !important;
}

.m-1 {
    margin: .25rem !important;
}

.mt-1, .my-1 {
    margin-top: .25rem !important;
}

.mr-1, .mx-1 {
    margin-right: .25rem !important;
}

.mb-1, .my-1 {
    margin-bottom: .25rem !important;
}

.ml-1, .mx-1 {
    margin-left: .25rem !important;
}

.m-2 {
    margin: .5rem !important;
}

.mt-2, .my-2 {
    margin-top: .5rem !important;
}

.mr-2, .mx-2 {
    margin-right: .5rem !important;
}

.mb-2, .my-2 {
    margin-bottom: .5rem !important;
}

.ml-2, .mx-2 {
    margin-left: .5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.mt-3, .my-3 {
    margin-top: 1rem !important;
}

.mr-3, .mx-3 {
    margin-right: 1rem !important;
}

.mb-3, .my-3 {
    margin-bottom: 1rem !important;
}

.ml-3, .mx-3 {
    margin-left: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.mt-4, .my-4 {
    margin-top: 1.5rem !important;
}

.mr-4, .mx-4 {
    margin-right: 1.5rem !important;
}

.mb-4, .my-4 {
    margin-bottom: 1.5rem !important;
}

.ml-4, .mx-4 {
    margin-left: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.mt-5, .my-5 {
    margin-top: 3rem !important;
}

.mr-5, .mx-5 {
    margin-right: 3rem !important;
}

.mb-5, .my-5 {
    margin-bottom: 3rem !important;
}

.ml-5, .mx-5 {
    margin-left: 3rem !important;
}

.p-0 {
    padding: 0 !important;
}

.pt-0, .py-0 {
    padding-top: 0 !important;
}

.pr-0, .px-0 {
    padding-right: 0 !important;
}

.pb-0, .py-0 {
    padding-bottom: 0 !important;
}

.pl-0, .px-0 {
    padding-left: 0 !important;
}

.p-1 {
    padding: .25rem !important;
}

.pt-1, .py-1 {
    padding-top: .25rem !important;
}

.pr-1, .px-1 {
    padding-right: .25rem !important;
}

.pb-1, .py-1 {
    padding-bottom: .25rem !important;
}

.pl-1, .px-1 {
    padding-left: .25rem !important;
}

.p-2 {
    padding: .5rem !important;
}

.pt-2, .py-2 {
    padding-top: .5rem !important;
}

.pr-2, .px-2 {
    padding-right: .5rem !important;
}

.pb-2, .py-2 {
    padding-bottom: .5rem !important;
}

.pl-2, .px-2 {
    padding-left: .5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.pt-3, .py-3 {
    padding-top: 1rem !important;
}

.pr-3, .px-3 {
    padding-right: 1rem !important;
}

.pb-3, .py-3 {
    padding-bottom: 1rem !important;
}

.pl-3, .px-3 {
    padding-left: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.pt-4, .py-4 {
    padding-top: 1.5rem !important;
}

.pr-4, .px-4 {
    padding-right: 1.5rem !important;
}

.pb-4, .py-4 {
    padding-bottom: 1.5rem !important;
}

.pl-4, .px-4 {
    padding-left: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.pt-5, .py-5 {
    padding-top: 3rem !important;
}

.pr-5, .px-5 {
    padding-right: 3rem !important;
}

.pb-5, .py-5 {
    padding-bottom: 3rem !important;
}

.pl-5, .px-5 {
    padding-left: 3rem !important;
}

.m-n1 {
    margin: -.25rem !important;
}

.mt-n1, .my-n1 {
    margin-top: -.25rem !important;
}

.mr-n1, .mx-n1 {
    margin-right: -.25rem !important;
}

.mb-n1, .my-n1 {
    margin-bottom: -.25rem !important;
}

.ml-n1, .mx-n1 {
    margin-left: -.25rem !important;
}

.m-n2 {
    margin: -.5rem !important;
}

.mt-n2, .my-n2 {
    margin-top: -.5rem !important;
}

.mr-n2, .mx-n2 {
    margin-right: -.5rem !important;
}

.mb-n2, .my-n2 {
    margin-bottom: -.5rem !important;
}

.ml-n2, .mx-n2 {
    margin-left: -.5rem !important;
}

.m-n3 {
    margin: -1rem !important;
}

.mt-n3, .my-n3 {
    margin-top: -1rem !important;
}

.mr-n3, .mx-n3 {
    margin-right: -1rem !important;
}

.mb-n3, .my-n3 {
    margin-bottom: -1rem !important;
}

.ml-n3, .mx-n3 {
    margin-left: -1rem !important;
}

.m-n4 {
    margin: -1.5rem !important;
}

.mt-n4, .my-n4 {
    margin-top: -1.5rem !important;
}

.mr-n4, .mx-n4 {
    margin-right: -1.5rem !important;
}

.mb-n4, .my-n4 {
    margin-bottom: -1.5rem !important;
}

.ml-n4, .mx-n4 {
    margin-left: -1.5rem !important;
}

.m-n5 {
    margin: -3rem !important;
}

.mt-n5, .my-n5 {
    margin-top: -3rem !important;
}

.mr-n5, .mx-n5 {
    margin-right: -3rem !important;
}

.mb-n5, .my-n5 {
    margin-bottom: -3rem !important;
}

.ml-n5, .mx-n5 {
    margin-left: -3rem !important;
}

.m-auto {
    margin: auto !important;
}

.mt-auto, .my-auto {
    margin-top: auto !important;
}

.mr-auto, .mx-auto {
    margin-right: auto !important;
}

.mb-auto, .my-auto {
    margin-bottom: auto !important;
}

.ml-auto, .mx-auto {
    margin-left: auto !important;
}

@media(min-width:576px) {
    .m-sm-0 {
        margin: 0 !important;
    }

    .mt-sm-0, .my-sm-0 {
        margin-top: 0 !important;
    }

    .mr-sm-0, .mx-sm-0 {
        margin-right: 0 !important;
    }

    .mb-sm-0, .my-sm-0 {
        margin-bottom: 0 !important;
    }

    .ml-sm-0, .mx-sm-0 {
        margin-left: 0 !important;
    }

    .m-sm-1 {
        margin: .25rem !important;
    }

    .mt-sm-1, .my-sm-1 {
        margin-top: .25rem !important;
    }

    .mr-sm-1, .mx-sm-1 {
        margin-right: .25rem !important;
    }

    .mb-sm-1, .my-sm-1 {
        margin-bottom: .25rem !important;
    }

    .ml-sm-1, .mx-sm-1 {
        margin-left: .25rem !important;
    }

    .m-sm-2 {
        margin: .5rem !important;
    }

    .mt-sm-2, .my-sm-2 {
        margin-top: .5rem !important;
    }

    .mr-sm-2, .mx-sm-2 {
        margin-right: .5rem !important;
    }

    .mb-sm-2, .my-sm-2 {
        margin-bottom: .5rem !important;
    }

    .ml-sm-2, .mx-sm-2 {
        margin-left: .5rem !important;
    }

    .m-sm-3 {
        margin: 1rem !important;
    }

    .mt-sm-3, .my-sm-3 {
        margin-top: 1rem !important;
    }

    .mr-sm-3, .mx-sm-3 {
        margin-right: 1rem !important;
    }

    .mb-sm-3, .my-sm-3 {
        margin-bottom: 1rem !important;
    }

    .ml-sm-3, .mx-sm-3 {
        margin-left: 1rem !important;
    }

    .m-sm-4 {
        margin: 1.5rem !important;
    }

    .mt-sm-4, .my-sm-4 {
        margin-top: 1.5rem !important;
    }

    .mr-sm-4, .mx-sm-4 {
        margin-right: 1.5rem !important;
    }

    .mb-sm-4, .my-sm-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-sm-4, .mx-sm-4 {
        margin-left: 1.5rem !important;
    }

    .m-sm-5 {
        margin: 3rem !important;
    }

    .mt-sm-5, .my-sm-5 {
        margin-top: 3rem !important;
    }

    .mr-sm-5, .mx-sm-5 {
        margin-right: 3rem !important;
    }

    .mb-sm-5, .my-sm-5 {
        margin-bottom: 3rem !important;
    }

    .ml-sm-5, .mx-sm-5 {
        margin-left: 3rem !important;
    }

    .p-sm-0 {
        padding: 0 !important;
    }

    .pt-sm-0, .py-sm-0 {
        padding-top: 0 !important;
    }

    .pr-sm-0, .px-sm-0 {
        padding-right: 0 !important;
    }

    .pb-sm-0, .py-sm-0 {
        padding-bottom: 0 !important;
    }

    .pl-sm-0, .px-sm-0 {
        padding-left: 0 !important;
    }

    .p-sm-1 {
        padding: .25rem !important;
    }

    .pt-sm-1, .py-sm-1 {
        padding-top: .25rem !important;
    }

    .pr-sm-1, .px-sm-1 {
        padding-right: .25rem !important;
    }

    .pb-sm-1, .py-sm-1 {
        padding-bottom: .25rem !important;
    }

    .pl-sm-1, .px-sm-1 {
        padding-left: .25rem !important;
    }

    .p-sm-2 {
        padding: .5rem !important;
    }

    .pt-sm-2, .py-sm-2 {
        padding-top: .5rem !important;
    }

    .pr-sm-2, .px-sm-2 {
        padding-right: .5rem !important;
    }

    .pb-sm-2, .py-sm-2 {
        padding-bottom: .5rem !important;
    }

    .pl-sm-2, .px-sm-2 {
        padding-left: .5rem !important;
    }

    .p-sm-3 {
        padding: 1rem !important;
    }

    .pt-sm-3, .py-sm-3 {
        padding-top: 1rem !important;
    }

    .pr-sm-3, .px-sm-3 {
        padding-right: 1rem !important;
    }

    .pb-sm-3, .py-sm-3 {
        padding-bottom: 1rem !important;
    }

    .pl-sm-3, .px-sm-3 {
        padding-left: 1rem !important;
    }

    .p-sm-4 {
        padding: 1.5rem !important;
    }

    .pt-sm-4, .py-sm-4 {
        padding-top: 1.5rem !important;
    }

    .pr-sm-4, .px-sm-4 {
        padding-right: 1.5rem !important;
    }

    .pb-sm-4, .py-sm-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-sm-4, .px-sm-4 {
        padding-left: 1.5rem !important;
    }

    .p-sm-5 {
        padding: 3rem !important;
    }

    .pt-sm-5, .py-sm-5 {
        padding-top: 3rem !important;
    }

    .pr-sm-5, .px-sm-5 {
        padding-right: 3rem !important;
    }

    .pb-sm-5, .py-sm-5 {
        padding-bottom: 3rem !important;
    }

    .pl-sm-5, .px-sm-5 {
        padding-left: 3rem !important;
    }

    .m-sm-n1 {
        margin: -.25rem !important;
    }

    .mt-sm-n1, .my-sm-n1 {
        margin-top: -.25rem !important;
    }

    .mr-sm-n1, .mx-sm-n1 {
        margin-right: -.25rem !important;
    }

    .mb-sm-n1, .my-sm-n1 {
        margin-bottom: -.25rem !important;
    }

    .ml-sm-n1, .mx-sm-n1 {
        margin-left: -.25rem !important;
    }

    .m-sm-n2 {
        margin: -.5rem !important;
    }

    .mt-sm-n2, .my-sm-n2 {
        margin-top: -.5rem !important;
    }

    .mr-sm-n2, .mx-sm-n2 {
        margin-right: -.5rem !important;
    }

    .mb-sm-n2, .my-sm-n2 {
        margin-bottom: -.5rem !important;
    }

    .ml-sm-n2, .mx-sm-n2 {
        margin-left: -.5rem !important;
    }

    .m-sm-n3 {
        margin: -1rem !important;
    }

    .mt-sm-n3, .my-sm-n3 {
        margin-top: -1rem !important;
    }

    .mr-sm-n3, .mx-sm-n3 {
        margin-right: -1rem !important;
    }

    .mb-sm-n3, .my-sm-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-sm-n3, .mx-sm-n3 {
        margin-left: -1rem !important;
    }

    .m-sm-n4 {
        margin: -1.5rem !important;
    }

    .mt-sm-n4, .my-sm-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-sm-n4, .mx-sm-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-sm-n4, .my-sm-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-sm-n4, .mx-sm-n4 {
        margin-left: -1.5rem !important;
    }

    .m-sm-n5 {
        margin: -3rem !important;
    }

    .mt-sm-n5, .my-sm-n5 {
        margin-top: -3rem !important;
    }

    .mr-sm-n5, .mx-sm-n5 {
        margin-right: -3rem !important;
    }

    .mb-sm-n5, .my-sm-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-sm-n5, .mx-sm-n5 {
        margin-left: -3rem !important;
    }

    .m-sm-auto {
        margin: auto !important;
    }

    .mt-sm-auto, .my-sm-auto {
        margin-top: auto !important;
    }

    .mr-sm-auto, .mx-sm-auto {
        margin-right: auto !important;
    }

    .mb-sm-auto, .my-sm-auto {
        margin-bottom: auto !important;
    }

    .ml-sm-auto, .mx-sm-auto {
        margin-left: auto !important;
    }
}

@media(min-width:768px) {
    .m-md-0 {
        margin: 0 !important;
    }

    .mt-md-0, .my-md-0 {
        margin-top: 0 !important;
    }

    .mr-md-0, .mx-md-0 {
        margin-right: 0 !important;
    }

    .mb-md-0, .my-md-0 {
        margin-bottom: 0 !important;
    }

    .ml-md-0, .mx-md-0 {
        margin-left: 0 !important;
    }

    .m-md-1 {
        margin: .25rem !important;
    }

    .mt-md-1, .my-md-1 {
        margin-top: .25rem !important;
    }

    .mr-md-1, .mx-md-1 {
        margin-right: .25rem !important;
    }

    .mb-md-1, .my-md-1 {
        margin-bottom: .25rem !important;
    }

    .ml-md-1, .mx-md-1 {
        margin-left: .25rem !important;
    }

    .m-md-2 {
        margin: .5rem !important;
    }

    .mt-md-2, .my-md-2 {
        margin-top: .5rem !important;
    }

    .mr-md-2, .mx-md-2 {
        margin-right: .5rem !important;
    }

    .mb-md-2, .my-md-2 {
        margin-bottom: .5rem !important;
    }

    .ml-md-2, .mx-md-2 {
        margin-left: .5rem !important;
    }

    .m-md-3 {
        margin: 1rem !important;
    }

    .mt-md-3, .my-md-3 {
        margin-top: 1rem !important;
    }

    .mr-md-3, .mx-md-3 {
        margin-right: 1rem !important;
    }

    .mb-md-3, .my-md-3 {
        margin-bottom: 1rem !important;
    }

    .ml-md-3, .mx-md-3 {
        margin-left: 1rem !important;
    }

    .m-md-4 {
        margin: 1.5rem !important;
    }

    .mt-md-4, .my-md-4 {
        margin-top: 1.5rem !important;
    }

    .mr-md-4, .mx-md-4 {
        margin-right: 1.5rem !important;
    }

    .mb-md-4, .my-md-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-md-4, .mx-md-4 {
        margin-left: 1.5rem !important;
    }

    .m-md-5 {
        margin: 3rem !important;
    }

    .mt-md-5, .my-md-5 {
        margin-top: 3rem !important;
    }

    .mr-md-5, .mx-md-5 {
        margin-right: 3rem !important;
    }

    .mb-md-5, .my-md-5 {
        margin-bottom: 3rem !important;
    }

    .ml-md-5, .mx-md-5 {
        margin-left: 3rem !important;
    }

    .p-md-0 {
        padding: 0 !important;
    }

    .pt-md-0, .py-md-0 {
        padding-top: 0 !important;
    }

    .pr-md-0, .px-md-0 {
        padding-right: 0 !important;
    }

    .pb-md-0, .py-md-0 {
        padding-bottom: 0 !important;
    }

    .pl-md-0, .px-md-0 {
        padding-left: 0 !important;
    }

    .p-md-1 {
        padding: .25rem !important;
    }

    .pt-md-1, .py-md-1 {
        padding-top: .25rem !important;
    }

    .pr-md-1, .px-md-1 {
        padding-right: .25rem !important;
    }

    .pb-md-1, .py-md-1 {
        padding-bottom: .25rem !important;
    }

    .pl-md-1, .px-md-1 {
        padding-left: .25rem !important;
    }

    .p-md-2 {
        padding: .5rem !important;
    }

    .pt-md-2, .py-md-2 {
        padding-top: .5rem !important;
    }

    .pr-md-2, .px-md-2 {
        padding-right: .5rem !important;
    }

    .pb-md-2, .py-md-2 {
        padding-bottom: .5rem !important;
    }

    .pl-md-2, .px-md-2 {
        padding-left: .5rem !important;
    }

    .p-md-3 {
        padding: 1rem !important;
    }

    .pt-md-3, .py-md-3 {
        padding-top: 1rem !important;
    }

    .pr-md-3, .px-md-3 {
        padding-right: 1rem !important;
    }

    .pb-md-3, .py-md-3 {
        padding-bottom: 1rem !important;
    }

    .pl-md-3, .px-md-3 {
        padding-left: 1rem !important;
    }

    .p-md-4 {
        padding: 1.5rem !important;
    }

    .pt-md-4, .py-md-4 {
        padding-top: 1.5rem !important;
    }

    .pr-md-4, .px-md-4 {
        padding-right: 1.5rem !important;
    }

    .pb-md-4, .py-md-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-md-4, .px-md-4 {
        padding-left: 1.5rem !important;
    }

    .p-md-5 {
        padding: 3rem !important;
    }

    .pt-md-5, .py-md-5 {
        padding-top: 3rem !important;
    }

    .pr-md-5, .px-md-5 {
        padding-right: 3rem !important;
    }

    .pb-md-5, .py-md-5 {
        padding-bottom: 3rem !important;
    }

    .pl-md-5, .px-md-5 {
        padding-left: 3rem !important;
    }

    .m-md-n1 {
        margin: -.25rem !important;
    }

    .mt-md-n1, .my-md-n1 {
        margin-top: -.25rem !important;
    }

    .mr-md-n1, .mx-md-n1 {
        margin-right: -.25rem !important;
    }

    .mb-md-n1, .my-md-n1 {
        margin-bottom: -.25rem !important;
    }

    .ml-md-n1, .mx-md-n1 {
        margin-left: -.25rem !important;
    }

    .m-md-n2 {
        margin: -.5rem !important;
    }

    .mt-md-n2, .my-md-n2 {
        margin-top: -.5rem !important;
    }

    .mr-md-n2, .mx-md-n2 {
        margin-right: -.5rem !important;
    }

    .mb-md-n2, .my-md-n2 {
        margin-bottom: -.5rem !important;
    }

    .ml-md-n2, .mx-md-n2 {
        margin-left: -.5rem !important;
    }

    .m-md-n3 {
        margin: -1rem !important;
    }

    .mt-md-n3, .my-md-n3 {
        margin-top: -1rem !important;
    }

    .mr-md-n3, .mx-md-n3 {
        margin-right: -1rem !important;
    }

    .mb-md-n3, .my-md-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-md-n3, .mx-md-n3 {
        margin-left: -1rem !important;
    }

    .m-md-n4 {
        margin: -1.5rem !important;
    }

    .mt-md-n4, .my-md-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-md-n4, .mx-md-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-md-n4, .my-md-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-md-n4, .mx-md-n4 {
        margin-left: -1.5rem !important;
    }

    .m-md-n5 {
        margin: -3rem !important;
    }

    .mt-md-n5, .my-md-n5 {
        margin-top: -3rem !important;
    }

    .mr-md-n5, .mx-md-n5 {
        margin-right: -3rem !important;
    }

    .mb-md-n5, .my-md-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-md-n5, .mx-md-n5 {
        margin-left: -3rem !important;
    }

    .m-md-auto {
        margin: auto !important;
    }

    .mt-md-auto, .my-md-auto {
        margin-top: auto !important;
    }

    .mr-md-auto, .mx-md-auto {
        margin-right: auto !important;
    }

    .mb-md-auto, .my-md-auto {
        margin-bottom: auto !important;
    }

    .ml-md-auto, .mx-md-auto {
        margin-left: auto !important;
    }
}

@media(min-width:992px) {
    .m-lg-0 {
        margin: 0 !important;
    }

    .mt-lg-0, .my-lg-0 {
        margin-top: 0 !important;
    }

    .mr-lg-0, .mx-lg-0 {
        margin-right: 0 !important;
    }

    .mb-lg-0, .my-lg-0 {
        margin-bottom: 0 !important;
    }

    .ml-lg-0, .mx-lg-0 {
        margin-left: 0 !important;
    }

    .m-lg-1 {
        margin: .25rem !important;
    }

    .mt-lg-1, .my-lg-1 {
        margin-top: .25rem !important;
    }

    .mr-lg-1, .mx-lg-1 {
        margin-right: .25rem !important;
    }

    .mb-lg-1, .my-lg-1 {
        margin-bottom: .25rem !important;
    }

    .ml-lg-1, .mx-lg-1 {
        margin-left: .25rem !important;
    }

    .m-lg-2 {
        margin: .5rem !important;
    }

    .mt-lg-2, .my-lg-2 {
        margin-top: .5rem !important;
    }

    .mr-lg-2, .mx-lg-2 {
        margin-right: .5rem !important;
    }

    .mb-lg-2, .my-lg-2 {
        margin-bottom: .5rem !important;
    }

    .ml-lg-2, .mx-lg-2 {
        margin-left: .5rem !important;
    }

    .m-lg-3 {
        margin: 1rem !important;
    }

    .mt-lg-3, .my-lg-3 {
        margin-top: 1rem !important;
    }

    .mr-lg-3, .mx-lg-3 {
        margin-right: 1rem !important;
    }

    .mb-lg-3, .my-lg-3 {
        margin-bottom: 1rem !important;
    }

    .ml-lg-3, .mx-lg-3 {
        margin-left: 1rem !important;
    }

    .m-lg-4 {
        margin: 1.5rem !important;
    }

    .mt-lg-4, .my-lg-4 {
        margin-top: 1.5rem !important;
    }

    .mr-lg-4, .mx-lg-4 {
        margin-right: 1.5rem !important;
    }

    .mb-lg-4, .my-lg-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-lg-4, .mx-lg-4 {
        margin-left: 1.5rem !important;
    }

    .m-lg-5 {
        margin: 3rem !important;
    }

    .mt-lg-5, .my-lg-5 {
        margin-top: 3rem !important;
    }

    .mr-lg-5, .mx-lg-5 {
        margin-right: 3rem !important;
    }

    .mb-lg-5, .my-lg-5 {
        margin-bottom: 3rem !important;
    }

    .ml-lg-5, .mx-lg-5 {
        margin-left: 3rem !important;
    }

    .p-lg-0 {
        padding: 0 !important;
    }

    .pt-lg-0, .py-lg-0 {
        padding-top: 0 !important;
    }

    .pr-lg-0, .px-lg-0 {
        padding-right: 0 !important;
    }

    .pb-lg-0, .py-lg-0 {
        padding-bottom: 0 !important;
    }

    .pl-lg-0, .px-lg-0 {
        padding-left: 0 !important;
    }

    .p-lg-1 {
        padding: .25rem !important;
    }

    .pt-lg-1, .py-lg-1 {
        padding-top: .25rem !important;
    }

    .pr-lg-1, .px-lg-1 {
        padding-right: .25rem !important;
    }

    .pb-lg-1, .py-lg-1 {
        padding-bottom: .25rem !important;
    }

    .pl-lg-1, .px-lg-1 {
        padding-left: .25rem !important;
    }

    .p-lg-2 {
        padding: .5rem !important;
    }

    .pt-lg-2, .py-lg-2 {
        padding-top: .5rem !important;
    }

    .pr-lg-2, .px-lg-2 {
        padding-right: .5rem !important;
    }

    .pb-lg-2, .py-lg-2 {
        padding-bottom: .5rem !important;
    }

    .pl-lg-2, .px-lg-2 {
        padding-left: .5rem !important;
    }

    .p-lg-3 {
        padding: 1rem !important;
    }

    .pt-lg-3, .py-lg-3 {
        padding-top: 1rem !important;
    }

    .pr-lg-3, .px-lg-3 {
        padding-right: 1rem !important;
    }

    .pb-lg-3, .py-lg-3 {
        padding-bottom: 1rem !important;
    }

    .pl-lg-3, .px-lg-3 {
        padding-left: 1rem !important;
    }

    .p-lg-4 {
        padding: 1.5rem !important;
    }

    .pt-lg-4, .py-lg-4 {
        padding-top: 1.5rem !important;
    }

    .pr-lg-4, .px-lg-4 {
        padding-right: 1.5rem !important;
    }

    .pb-lg-4, .py-lg-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-lg-4, .px-lg-4 {
        padding-left: 1.5rem !important;
    }

    .p-lg-5 {
        padding: 3rem !important;
    }

    .pt-lg-5, .py-lg-5 {
        padding-top: 3rem !important;
    }

    .pr-lg-5, .px-lg-5 {
        padding-right: 3rem !important;
    }

    .pb-lg-5, .py-lg-5 {
        padding-bottom: 3rem !important;
    }

    .pl-lg-5, .px-lg-5 {
        padding-left: 3rem !important;
    }

    .m-lg-n1 {
        margin: -.25rem !important;
    }

    .mt-lg-n1, .my-lg-n1 {
        margin-top: -.25rem !important;
    }

    .mr-lg-n1, .mx-lg-n1 {
        margin-right: -.25rem !important;
    }

    .mb-lg-n1, .my-lg-n1 {
        margin-bottom: -.25rem !important;
    }

    .ml-lg-n1, .mx-lg-n1 {
        margin-left: -.25rem !important;
    }

    .m-lg-n2 {
        margin: -.5rem !important;
    }

    .mt-lg-n2, .my-lg-n2 {
        margin-top: -.5rem !important;
    }

    .mr-lg-n2, .mx-lg-n2 {
        margin-right: -.5rem !important;
    }

    .mb-lg-n2, .my-lg-n2 {
        margin-bottom: -.5rem !important;
    }

    .ml-lg-n2, .mx-lg-n2 {
        margin-left: -.5rem !important;
    }

    .m-lg-n3 {
        margin: -1rem !important;
    }

    .mt-lg-n3, .my-lg-n3 {
        margin-top: -1rem !important;
    }

    .mr-lg-n3, .mx-lg-n3 {
        margin-right: -1rem !important;
    }

    .mb-lg-n3, .my-lg-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-lg-n3, .mx-lg-n3 {
        margin-left: -1rem !important;
    }

    .m-lg-n4 {
        margin: -1.5rem !important;
    }

    .mt-lg-n4, .my-lg-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-lg-n4, .mx-lg-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-lg-n4, .my-lg-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-lg-n4, .mx-lg-n4 {
        margin-left: -1.5rem !important;
    }

    .m-lg-n5 {
        margin: -3rem !important;
    }

    .mt-lg-n5, .my-lg-n5 {
        margin-top: -3rem !important;
    }

    .mr-lg-n5, .mx-lg-n5 {
        margin-right: -3rem !important;
    }

    .mb-lg-n5, .my-lg-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-lg-n5, .mx-lg-n5 {
        margin-left: -3rem !important;
    }

    .m-lg-auto {
        margin: auto !important;
    }

    .mt-lg-auto, .my-lg-auto {
        margin-top: auto !important;
    }

    .mr-lg-auto, .mx-lg-auto {
        margin-right: auto !important;
    }

    .mb-lg-auto, .my-lg-auto {
        margin-bottom: auto !important;
    }

    .ml-lg-auto, .mx-lg-auto {
        margin-left: auto !important;
    }
}

@media(min-width:1200px) {
    .m-xl-0 {
        margin: 0 !important;
    }

    .mt-xl-0, .my-xl-0 {
        margin-top: 0 !important;
    }

    .mr-xl-0, .mx-xl-0 {
        margin-right: 0 !important;
    }

    .mb-xl-0, .my-xl-0 {
        margin-bottom: 0 !important;
    }

    .ml-xl-0, .mx-xl-0 {
        margin-left: 0 !important;
    }

    .m-xl-1 {
        margin: .25rem !important;
    }

    .mt-xl-1, .my-xl-1 {
        margin-top: .25rem !important;
    }

    .mr-xl-1, .mx-xl-1 {
        margin-right: .25rem !important;
    }

    .mb-xl-1, .my-xl-1 {
        margin-bottom: .25rem !important;
    }

    .ml-xl-1, .mx-xl-1 {
        margin-left: .25rem !important;
    }

    .m-xl-2 {
        margin: .5rem !important;
    }

    .mt-xl-2, .my-xl-2 {
        margin-top: .5rem !important;
    }

    .mr-xl-2, .mx-xl-2 {
        margin-right: .5rem !important;
    }

    .mb-xl-2, .my-xl-2 {
        margin-bottom: .5rem !important;
    }

    .ml-xl-2, .mx-xl-2 {
        margin-left: .5rem !important;
    }

    .m-xl-3 {
        margin: 1rem !important;
    }

    .mt-xl-3, .my-xl-3 {
        margin-top: 1rem !important;
    }

    .mr-xl-3, .mx-xl-3 {
        margin-right: 1rem !important;
    }

    .mb-xl-3, .my-xl-3 {
        margin-bottom: 1rem !important;
    }

    .ml-xl-3, .mx-xl-3 {
        margin-left: 1rem !important;
    }

    .m-xl-4 {
        margin: 1.5rem !important;
    }

    .mt-xl-4, .my-xl-4 {
        margin-top: 1.5rem !important;
    }

    .mr-xl-4, .mx-xl-4 {
        margin-right: 1.5rem !important;
    }

    .mb-xl-4, .my-xl-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-xl-4, .mx-xl-4 {
        margin-left: 1.5rem !important;
    }

    .m-xl-5 {
        margin: 3rem !important;
    }

    .mt-xl-5, .my-xl-5 {
        margin-top: 3rem !important;
    }

    .mr-xl-5, .mx-xl-5 {
        margin-right: 3rem !important;
    }

    .mb-xl-5, .my-xl-5 {
        margin-bottom: 3rem !important;
    }

    .ml-xl-5, .mx-xl-5 {
        margin-left: 3rem !important;
    }

    .p-xl-0 {
        padding: 0 !important;
    }

    .pt-xl-0, .py-xl-0 {
        padding-top: 0 !important;
    }

    .pr-xl-0, .px-xl-0 {
        padding-right: 0 !important;
    }

    .pb-xl-0, .py-xl-0 {
        padding-bottom: 0 !important;
    }

    .pl-xl-0, .px-xl-0 {
        padding-left: 0 !important;
    }

    .p-xl-1 {
        padding: .25rem !important;
    }

    .pt-xl-1, .py-xl-1 {
        padding-top: .25rem !important;
    }

    .pr-xl-1, .px-xl-1 {
        padding-right: .25rem !important;
    }

    .pb-xl-1, .py-xl-1 {
        padding-bottom: .25rem !important;
    }

    .pl-xl-1, .px-xl-1 {
        padding-left: .25rem !important;
    }

    .p-xl-2 {
        padding: .5rem !important;
    }

    .pt-xl-2, .py-xl-2 {
        padding-top: .5rem !important;
    }

    .pr-xl-2, .px-xl-2 {
        padding-right: .5rem !important;
    }

    .pb-xl-2, .py-xl-2 {
        padding-bottom: .5rem !important;
    }

    .pl-xl-2, .px-xl-2 {
        padding-left: .5rem !important;
    }

    .p-xl-3 {
        padding: 1rem !important;
    }

    .pt-xl-3, .py-xl-3 {
        padding-top: 1rem !important;
    }

    .pr-xl-3, .px-xl-3 {
        padding-right: 1rem !important;
    }

    .pb-xl-3, .py-xl-3 {
        padding-bottom: 1rem !important;
    }

    .pl-xl-3, .px-xl-3 {
        padding-left: 1rem !important;
    }

    .p-xl-4 {
        padding: 1.5rem !important;
    }

    .pt-xl-4, .py-xl-4 {
        padding-top: 1.5rem !important;
    }

    .pr-xl-4, .px-xl-4 {
        padding-right: 1.5rem !important;
    }

    .pb-xl-4, .py-xl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-xl-4, .px-xl-4 {
        padding-left: 1.5rem !important;
    }

    .p-xl-5 {
        padding: 3rem !important;
    }

    .pt-xl-5, .py-xl-5 {
        padding-top: 3rem !important;
    }

    .pr-xl-5, .px-xl-5 {
        padding-right: 3rem !important;
    }

    .pb-xl-5, .py-xl-5 {
        padding-bottom: 3rem !important;
    }

    .pl-xl-5, .px-xl-5 {
        padding-left: 3rem !important;
    }

    .m-xl-n1 {
        margin: -.25rem !important;
    }

    .mt-xl-n1, .my-xl-n1 {
        margin-top: -.25rem !important;
    }

    .mr-xl-n1, .mx-xl-n1 {
        margin-right: -.25rem !important;
    }

    .mb-xl-n1, .my-xl-n1 {
        margin-bottom: -.25rem !important;
    }

    .ml-xl-n1, .mx-xl-n1 {
        margin-left: -.25rem !important;
    }

    .m-xl-n2 {
        margin: -.5rem !important;
    }

    .mt-xl-n2, .my-xl-n2 {
        margin-top: -.5rem !important;
    }

    .mr-xl-n2, .mx-xl-n2 {
        margin-right: -.5rem !important;
    }

    .mb-xl-n2, .my-xl-n2 {
        margin-bottom: -.5rem !important;
    }

    .ml-xl-n2, .mx-xl-n2 {
        margin-left: -.5rem !important;
    }

    .m-xl-n3 {
        margin: -1rem !important;
    }

    .mt-xl-n3, .my-xl-n3 {
        margin-top: -1rem !important;
    }

    .mr-xl-n3, .mx-xl-n3 {
        margin-right: -1rem !important;
    }

    .mb-xl-n3, .my-xl-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-xl-n3, .mx-xl-n3 {
        margin-left: -1rem !important;
    }

    .m-xl-n4 {
        margin: -1.5rem !important;
    }

    .mt-xl-n4, .my-xl-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-xl-n4, .mx-xl-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-xl-n4, .my-xl-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-xl-n4, .mx-xl-n4 {
        margin-left: -1.5rem !important;
    }

    .m-xl-n5 {
        margin: -3rem !important;
    }

    .mt-xl-n5, .my-xl-n5 {
        margin-top: -3rem !important;
    }

    .mr-xl-n5, .mx-xl-n5 {
        margin-right: -3rem !important;
    }

    .mb-xl-n5, .my-xl-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-xl-n5, .mx-xl-n5 {
        margin-left: -3rem !important;
    }

    .m-xl-auto {
        margin: auto !important;
    }

    .mt-xl-auto, .my-xl-auto {
        margin-top: auto !important;
    }

    .mr-xl-auto, .mx-xl-auto {
        margin-right: auto !important;
    }

    .mb-xl-auto, .my-xl-auto {
        margin-bottom: auto !important;
    }

    .ml-xl-auto, .mx-xl-auto {
        margin-left: auto !important;
    }
}

.text-monospace {
    font-family: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace !important;
}

.text-justify {
    text-align: justify !important;
}

.text-wrap {
    white-space: normal !important;
}

.text-nowrap {
    white-space: nowrap !important;
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

@media(min-width:576px) {
    .text-sm-left {
        text-align: left !important;
    }

    .text-sm-right {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }
}

@media(min-width:768px) {
    .text-md-left {
        text-align: left !important;
    }

    .text-md-right {
        text-align: right !important;
    }

    .text-md-center {
        text-align: center !important;
    }
}

@media(min-width:992px) {
    .text-lg-left {
        text-align: left !important;
    }

    .text-lg-right {
        text-align: right !important;
    }

    .text-lg-center {
        text-align: center !important;
    }
}

@media(min-width:1200px) {
    .text-xl-left {
        text-align: left !important;
    }

    .text-xl-right {
        text-align: right !important;
    }

    .text-xl-center {
        text-align: center !important;
    }
}

.text-lowercase {
    text-transform: lowercase !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.font-weight-light {
    font-weight: 300 !important;
}

.font-weight-lighter {
    font-weight: lighter !important;
}

.font-weight-normal {
    font-weight: 400 !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.font-weight-bolder {
    font-weight: bolder !important;
}

.font-italic {
    font-style: italic !important;
}

.text-white {
    color: #fff !important;
}

.text-primary {
    color: #383838 !important;
}

a.text-primary:hover, a.text-primary:focus {
    color: #121212 !important;
}

.text-secondary {
    color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
    color: #494f54 !important;
}

.text-success {
    color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
    color: #19692c !important;
}

.text-info {
    color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
    color: #0f6674 !important;
}

.text-warning {
    color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
    color: #ba8b00 !important;
}

.text-danger {
    color: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
    color: #a71d2a !important;
}

.text-light {
    color: #e9ecef !important;
}

a.text-light:hover, a.text-light:focus {
    color: #bdc6cf !important;
}

.text-dark {
    color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
    color: #121416 !important;
}

.text-dark-gray {
    color: #495057 !important;
}

a.text-dark-gray:hover, a.text-dark-gray:focus {
    color: #262a2d !important;
}

.text-light-primary {
    color: #d6cdc7 !important;
}

a.text-light-primary:hover, a.text-light-primary:focus {
    color: #b6a69b !important;
}

.text-light-gray {
    color: #dfe5e8 !important;
}

a.text-light-gray:hover, a.text-light-gray:focus {
    color: #b2c1c8 !important;
}

.text-blue-gray {
    color: #607d88 !important;
}

a.text-blue-gray:hover, a.text-blue-gray:focus {
    color: #40545b !important;
}

.text-light-blue-gray {
    color: #889aa8 !important;
}

a.text-light-blue-gray:hover, a.text-light-blue-gray:focus {
    color: #607483 !important;
}

.text-primary-master {
    color: #007bff !important;
}

a.text-primary-master:hover, a.text-primary-master:focus {
    color: #0056b3 !important;
}

.text-body {
    color: #212529 !important;
}

.text-muted {
    color: #6c757d !important;
}

.text-black-50 {
    color: rgba(56,56,56,.5) !important;
}

.text-white-50 {
    color: rgba(255,255,255,.5) !important;
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-break {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

.text-reset {
    color: inherit !important;
}

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

@media print {
    *, *::before, *::after {
        text-shadow: none !important;
        box-shadow: none !important;
    }

    a:not(.btn) {
        text-decoration: underline;
    }

    abbr[title]::after {
        content: " (" attr(title) ")";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre, blockquote {
        border: 1px solid #adb5bd;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr, img {
        page-break-inside: avoid;
    }

    p, h2, h3 {
        orphans: 3;
        widows: 3;
    }

    h2, h3 {
        page-break-after: avoid;
    }

    @page {
        size: a3;
    }

    body {
        min-width: 992px !important;
    }

    .container {
        min-width: 992px !important;
    }

    .navbar {
        display: none;
    }

    .badge {
        border: 1px solid #383838;
    }

    .table {
        border-collapse: collapse !important;
    }

        .table td, .table th {
            background-color: #fff !important;
        }

    .table-bordered th, .table-bordered td {
        border: 1px solid #dee2e6 !important;
    }

    .table-dark {
        color: inherit;
    }

        .table-dark th, .table-dark td, .table-dark thead th, .table-dark tbody + tbody {
            border-color: #dee2e6;
        }

    .table .thead-dark th {
        color: inherit;
        border-color: #dee2e6;
    }
}

.material-symbols, .material-symbols-outlined {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    display: inline-block;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
    direction: ltr;
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    -webkit-font-smoothing: antialiased;
}

html {
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    font-size: 16px;
    color: #333333;
    font-weight: 400;
    height: 100vh !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

body {
    padding-right: 0 !important;
    color: #333333;
}

button {
}


    button:not(.rounded-circle) i {
        margin-right: .3rem;
    }

.rounded-circle {
    aspect-ratio: 1 / 1;
}

form {
    margin-block-end: 0;
}

::-ms-reveal {
    display: none;
}


.container-fluid {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
    padding-bottom: .5rem !important;
    /*    padding-top: .25rem !important;
*/
}

.container-fluid-body {
    background-color: white;
    height: calc(var(--vh) * 100 - 4.6rem);
    display: flex;
    flex-direction: column;
}

    .container-fluid-body.back-button {
        height: calc(var(--vh) * 100 - 7.8rem);
    }

        .container-fluid-body.back-button.footer {
            height: calc(var(--vh) * 100 - 11.5rem);
        }


.simple-scrollbar {
    flex: 0 1 auto;
    max-height: 100%;
    overflow-y: auto;
}

.disabled-menu {
    pointer-events: none;
    opacity: 0.4;
    cursor: default;
}

/*モーダル*/
.modal {
    z-index: 1050;
}
.modal-sub {
    z-index: 1060;
}
.modal-backdrop {
    z-index: 1040;
}

.modal-backdrop-sub {
    z-index: 1055;
}


/*****************************************
 * BootStrapのレイアウト変更
    (--〇△)のカラーはbase.min.cssに記載
 *****************************************/
/*--------------------
    display
--------------------*/

@media (min-width: 821px) {
    .d-ipad-flex {
        display: flex !important;
    }
}
/*--------------------
    btn
--------------------*/
.btn {
    border-width: 0.12rem;
    font-weight: 500;
    letter-spacing: 0.1rem;
    padding: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
}

.btn-lg {
    min-width: 12.5rem;
    font-size: 1rem;
    font-weight: bold;
    height: 2.75rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
}

    .btn-lg.btn.btn-primary {
        min-width: 12.5rem !important;
    }


.btn.btn-primary {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    min-width: 6rem !important;
}

    .btn.btn-primary:focus,
    .btn.btn-primary.focus {
        box-shadow: 0 0 0 .2rem rgba(0,156,162,.5) !important;
    }

    .btn.btn-primary:hover,
    .btn.btn-primary.hover {
        background-color: var(--primary) !important;
        color: #ffffff !important;
    }


.btn.btn-outline-primary {
    color: var(--outline-primary) !important;
    border-color: var(--outline-primary) !important;
    background-color: #ffffff !important;
}

    .btn.btn-outline-primary:focus,
    .btn.btn-outline-primary.focus {
        box-shadow: 0 0 0 .2rem rgba(0,103,107,.5);
    }

    .btn.btn-outline-primary:hover,
    .btn.btn-outline-primary.hover {
        background-color: var(--outline-primary) !important;
        color: #ffffff !important;
    }


.btn-danger {
    background-color: var(--danger) !important;
    border-color: var(--danger) !important;
}

.btn.btn-outline-light {
    color: #a7a7a7 !important;
    border-color: #c9c9c9 !important;
    background-color: #ffffff !important;
}

    .btn.btn-outline-light:focus,
    .btn.btn-outline-light.focus {
        box-shadow: 0 0 0 .2rem rgba(167,167,167,.5);
    }

    .btn.btn-outline-light:hover,
    .btn.btn-outline-light.hover {
        background-color: #a7a7a7 !important;
        color: #ffffff !important;
    }

.btn-outline-danger {
    background-color: white;
}

.btn-dark {
    background-color: var(--dark) !important;
    border-color: var(--dark) !important;
}

.btn.btn-outline-dark {
    color: var(--dark) !important;
    border-color: var(--dark) !important;
    background-color: #ffffff !important;
}

    .btn.btn-outline-dark:focus,
    .btn.btn-outline-dark.focus {
        box-shadow: 0 0 0 .2rem rgba(77,77,77,.5);
    }

    .btn.btn-outline-dark:hover,
    .btn.btn-outline-dark.hover {
        background-color: var(--dark) !important;
        color: #ffffff !important;
    }

.btn-icon {
    outline: none !important;
    box-shadow: none !important;
    border: none;
    transition: filter 0.2s ease, transform 0.1s ease;
}

    .btn-icon:focus,
    .btn-icon:active,
    .btn-icon:focus-visible {
        outline: none !important;
        box-shadow: none !important;
    }

    /* クリック中（押下中） */
    .btn-icon:active {
        transform: scale(0.8);
    }

.btn-signin {
    font-weight: bold;
    width: 18rem;
    height: 3.5rem;
}

.btn-link {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
}

/*押下時にshadowを付けない*/
.btn.shadow-none {
    box-shadow: none !important;
}

    .btn.shadow-none:focus,
    .btn.shadow-none:active,
    .btn.shadow-none:focus-visible {
        box-shadow: none !important;
    }

/*--------------------
    tooltip
--------------------*/
/*.custom-tooltip {
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    padding: 6px 10px;
    background: #333;
    color: #fff;
}*/

/*--------------------
    bg
--------------------*/
.bg-primary {
    background-color: var(--primary) !important;
}

.bg-success {
    background-color: var(--success) !important;
}

.bg-danger {
    background-color: var(--danger) !important;
}

.bg-light {
    background-color: var(--light) !important;
}

.bg-dark {
    background-color: var(--dark) !important;
}

.bg-danger-10 {
    background-color: rgba(189, 33, 48, 0.1) !important;
}

/*--------------------
    border
--------------------*/
.border-gray-sub {
    border: 1px solid var(--gray-sub) !important;
}

/*--------------------
    table
--------------------*/

.table th, .table td {
    padding: 0.75rem 1rem;
    border-top: none;
}

.table thead td {
    height: 3rem;
    background-color: white;
}

.table tbody td {
    border-bottom: 1px solid #dee2e6;
}

/*--------------------
    text
--------------------*/

.text-primary {
    color: var(--primary) !important;
}

.text-outline-primary {
    color: var(--outline-primary) !important;
}

.text-secondary {
    color: var(--secondary) !important;
}

.text-dark {
    color: var(--dark) !important;
}

.text-light {
    color: var(--light-text) !important;
}

.text-base {
    color: var(--base) !important;
}

/*--------------------
    font-weight
--------------------*/

.font-weight-midium {
    font-weight: 500 !important;
}

/*--------------------
    font-size
--------------------*/
.small {
    font-size: 11.5px !important;
    /*    font-size: 0.71875rem !important;
*/
}

.text-11_5 {
    font-size: 11.5px !important;
    /*    font-size: 0.71875rem !important;
*/
}

.text-14 {
    font-size: 14px !important;
    /*    font-size: 0.875rem !important;
*/
}

.text-14_8 {
    font-size: 14px !important;
    /*    font-size:0.925rem !important;
*/
}

.text-18 {
    font-size: 18px !important;
    /*    font-size: 1.125rem !important;
*/
}

.text-23 {
    font-size: 24px !important;
    /*    font-size: 1.4375rem !important;
*/
}

.text-27 {
    font-size: 27.4px !important;
    /*    font-size: 1.7125rem !important;
*/
}

/*--------------------
    alert
--------------------*/
.alert-primary {
    color: var(--outline-primary);
    background-color: rgba(0,156,162,.5) !important;
    border-color: rgba(0,156,162,.5) !important;
}

.alert-dark {
    color: var(--dark);
    background-color: #E6E6E6 !important;
}

.alert-info {
    color: #008287;
    background-color: #E5F5F6 !important;
}

.alert-pop {
    color: #E36200;
    background-color: #FFF2EA;
    border: none;
    border-radius: 0.2rem;
    font-size: 14px;
}

/*--------------------
    checkbox
--------------------*/
input[type="checkbox"] {
    appearance: none;
    height: 1.1rem;
    width: 1.1rem;
    border: 0.125rem solid var(--gray-sub);
    border-radius: 0.2rem;
    background-color: var(--light);
    cursor: pointer;
    position: relative;
    vertical-align: middle;
}
    input[type="checkbox"]:checked {
        background-color: var(--primary);
        border-color: var(--primary);
    }

    input[type="checkbox"]:focus {
        box-shadow: 0 0 0 .2rem rgba(0,156,162,.5) !important;
    }

    input[type="checkbox"]:checked::after {
        content: "check";
        font-family: "Material Symbols Outlined";
        color: white;
        font-weight: bold;
        font-size: 1rem;
        position: absolute;
        top: 0.35rem;
        left: -0.05rem;
        line-height: 0.25rem;
    }

    input[type="checkbox"]:disabled {
        background-color: var(--gray-light);
        border-color: var(--gray-sub);
        opacity: 0.6;
    }

        /* checked かつ disabled */
        input[type="checkbox"]:disabled:checked {
            background-color: var(--gray-sub);
            border-color: var(--gray-sub);
        }

            input[type="checkbox"]:disabled:checked::after {
                content: "check";
                font-family: "Material Symbols Outlined";
                color: var(--light);
                font-weight: bold;
                font-size: 1rem;
                position: absolute;
                top: 0.35rem;
                left: -0.05rem;
                line-height: 0.25rem;
                opacity: 0.8;
            }

/*--------------------
    modal
--------------------*/
/*modal本体*/
.modal-content {
    border: none;
    border-radius: .5rem;
}

.modal-header .close {
    padding: 0;
}

.modal-open .modal {
    overflow-y: hidden;
}
/*×ボタン*/
.close {
    font-size: 1.5rem;
    color: var(--base);
    opacity: 1;
}

    .close:focus,
    .close.focus {
        box-shadow: none;
    }

/*モーダルサイズ追加*/
.modal-xxl {
    max-width: 99%;
    margin: 1rem auto;
    padding-left: 0;
    margin-right: 0.25rem;
    margin-left: 0.25rem;
}

    .modal-xxl .modal-content {
        max-height: 96%;
        overflow: hidden;
    }

    .modal-xxl.modal-body {
        max-height: calc(100vh - 11.5rem);
        overflow-y: auto;
    }

@media (min-width: 576px) {
    .modal-sm-xl {
        max-width: 1140px;
        margin: 1rem auto;
        margin-right: auto;
        margin-left: auto;
    }
}

@media(min-width:992px) {
    .modal-ipad-xl {
        max-width: 800px;
    }
}

@media(min-width:1200px) {
    .modal-sm-xl {
        max-width: 1140px;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .modal-tablet-xl {
        max-width: 900px;
        width: 95%;
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 768px) {
    .price-line .yen-mark {
        display: block;
        padding-left: 0;
        margin-top: 0.2rem;
    }
}

.modal-header {
    height: 3.5rem !important;
    padding: 0 1.5rem;
    border-color: var(--gray-sub) !important;
}

.modal-title {
    font-size: 1.125rem;
}

.modal-body {
    max-height: calc(100vh - 10rem);
    overflow-y: auto;
    padding: 1.5rem 1rem;
}

    .modal-body.non-footer {
        max-height: calc(100vh - 6rem) !important;
    }

.modal-footer {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 1.8rem !important;
    padding-right: 1.8rem !important;
    min-height: 4.5rem !important;
    border-color: var(--gray-sub) !important;
}

    .modal-footer .btn {
        min-width: 6rem !important;
    }

.rounding-setting-tr td {
    height: 1rem!important;
}
/*--------------------
    nav 
--------------------*/
.navbar {
    padding: .28rem 1.5rem;
}

.nav.navbar.fixed-bottom {
    height: 4rem;
    background-color: white;
    box-shadow: -3px 1px 10px rgba(0, 0, 0, 0.2);
}


/*--------------------
    i
--------------------*/
i {
    font-size: 1.25rem;
}

/*--------------------
    icon
--------------------*/

.material-symbols {
    font-size: 1.25rem !important;
    padding-top: 1.25px;
}

    .material-symbols.md-size {
        font-size: 1.43rem !important;
    }

    .material-symbols.lg-size {
        font-size: 1.72rem !important;
    }

.material-symbols-outlined {
    font-size: 1.25rem !important;
    padding-top: 1.25px;
}

    .material-symbols-outlined.md-size {
        font-size: 1.43rem !important;
    }

    .material-symbols-outlined.lg-size {
        font-size: 1.72rem !important;
    }

    .material-symbols-outlined.return-btn {
        font-size: 1.25rem !important;
        padding-top: 0.15rem !important;
    }

.symbols-fill {
    font-variation-settings: "FILL" 1 !important;
}

/*--------------------
    form
--------------------*/

.form-group {
    margin-bottom: 1.25rem;
}

.table {
    color: #333333;
}


/*****************************************
 * select2のレイアウト変更
 *****************************************/
.select2-container {
    border: none;
}

.select2-container--default .select2-selection--multiple {
    border-color: var(--gray-sub) !important;
}

    .select2-container--default .select2-selection--multiple .select2-selection__choice {
        background-color: #E6E6E6 !important;
        border: 1px solid #E6E6E6 !important;
        border-radius: 0.2rem !important;
        margin-left: 0.25rem !important;
        font-size: 0.9rem;
        color: var(--dark);
        margin-top: 5px;
        padding: 0;
        padding-left: 20px;
    }

.select2-container--default .select2-search--inline .select2-search__field {
    margin-bottom: .25rem !important;
    margin-top: .25rem !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    border: 0 !important;
}

.select2-container--default .select2-selection--single .select2-selection__clear,
.select2-container--default .select2-selection--multiple .select2-selection__clear {
    margin-top: 0.2rem !important;
}

.select2-selection__choice {
    border: 0;
    color: #333;
    margin-left: 0.5rem;
}

.select2-search__field::placeholder {
    font-size: small;
    color: #A7A7A7 !important;
    margin: 0;
}

.select2-selection__choice__display {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
}

/*複数選択ドロップダウンのレイアウト崩れ調整*/
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    box-shadow: none !important;
    padding: 0.4rem 0.5rem !important;
    color: #6c757d;
}

.select2-container .select2-selection--single {
    height: 100% !important;
    min-height: 32px !important;
}

.select2-selection__choice {
    /*    margin-top: .25rem !important;
    margin-bottom: .25rem !important;
*/ margin: .25rem 0 !important;
}
/*****************************************
 * 共通
 *****************************************/
/*チェックボックス表示*/
/* ベースのチェックボックスを隠す */
.custom-checkbox input[type="checkbox"] {
    display: none;
}

/* ラベルをクリック可能にする */
.custom-checkbox {
    display: flex;
    margin-top: auto !important;
    margin-bottom: auto !important;
    align-items: center;
    cursor: pointer;
}

    /* カスタムチェックマーク */
    .custom-checkbox span {
        width: 1.2rem;
        height: 1.2rem;
        display: inline-block;
        position: relative;
        margin-top: auto;
        margin-bottom: auto;
        border: .1rem solid var(--gray-main);
        border-radius: .25rem;
    }

    /* チェックされたときのスタイル */
    .custom-checkbox input:checked + span {
        background-color: var(--primary);
    }

        /* チェックされたときに擬似要素を表示 */
        .custom-checkbox input:checked + span::after {
            content: '✓';
            position: absolute;
            top: .1rem;
            left: .25rem;
            color: white;
            font-size: .8rem;
            font-weight: bold;
            line-height: .8rem;
        }
/*ポインターカーソル表示*/
.cursor-pointer {
    cursor: pointer;
}

/*ドラッグ＆ドロップカーソル表示*/
.cursor-grab {
    cursor: -moz-grab;
    cursor: -webkit-grab;
    cursor: grab;
}

    .cursor-grab:active {
        cursor: -moz-grabbing;
        cursor: -webkit-grabbing;
        cursor: grabbing;
    }

.position-right-bottom {
    position: absolute;
    right: 0;
    bottom: 0;
}

.position-right-top {
    position: absolute;
    right: 0;
    top: 0;
}

.position-left-bottom {
    position: absolute;
    left: 0;
    bottom: 0;
}

.position-left-top {
    position: absolute;
    left: 0;
    top: 0;
}

.fixed-right {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1030;
}

.fixed-left {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1030;
}

.nav-custom .nav-link.active {
    border-bottom: .35rem solid var(--primary);
    font-weight: 700;
}

.nav-custom .nav-link:not(.active) {
    border-bottom: .35rem solid #c9c9c9;
    font-weight: 500;
}

/*
スクロールデザイン変更（mac風）
*/
.simple-scrollbar::-webkit-scrollbar {
    width: 0.5em;
    max-height: 0.5em;
}

.simple-scrollbar::-webkit-scrollbar-track {
    background-color: transparent;
}

.simple-scrollbar::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 0.25em;
    box-shadow: inset 0 0 0 2px transparent;
}

.page-btn {
    border: .1rem solid #c9c9c9;
    margin-right: 3px;
    color: #a7a7a7;
    border-radius: 0.2rem !important;
    background-color: white;
    font-weight: bold;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0 !important;
    border-radius: 0.5rem;
}

    .page-btn.active {
        border: var(--primary);
    }

    .page-btn:hover {
        border: none;
        background-color: var(--primary);
        color: white;
    }

    .page-btn.select {
        border: none;
        background-color: var(--primary);
        color: white;
    }

/*フローティングボタン*/
.btn-float, .btn-float-master {
    padding: 0;
    z-index: 1040;
    position: fixed;
    width: 3.5em !important;
    height: 3.5em !important;
    right: 1em;
    bottom: 1.5em;
}

    .btn-float-master i {
        color: white;
        font-weight: bold;
        font-size: 2rem;
        cursor: pointer;
    }

.require {
    background-color: var(--danger);
    color: white;
    height: 1.35rem;
    font-weight: bold;
    font-size: 0.715rem;
    padding: .1rem .3rem;
}

.image-space {
    aspect-ratio: 1 / 1;
    overflow: hidden; /* 画像のオーバーフローを隠す */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

    .image-space.product, .image-space.construction {
        aspect-ratio: 4/3;
    }

    .image-space img {
        max-width: 100%;
        max-height: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .image-space .company-logo {
        aspect-ratio: auto !important;
    }

.logo {
    width: 100%;
    height: auto;
}

.list-style-none {
    list-style-type: none !important;
}

.border-radius-1 {
    border-radius: .25rem !important;
}

.border-radius-2 {
    border-radius: .5rem !important;
}

.border-radius-3 {
    border-radius: 1rem !important;
}

.border-radius-4 {
    border-radius: 2rem !important;
}

.border-radius-5 {
    border-radius: 4rem !important;
}


.btn {
    padding-top: .5rem !important;
    padding-bottom: .5rem !important;
}

    .btn i {
        margin: 0 !important;
    }

    .btn .material-icons {
        margin: 0 !important;
    }

.dropdown-item {
    padding-top: .125rem !important;
    padding-bottom: .125rem !important;
}

.dropdown-menu.down {
    position: absolute;
    top: 2rem !important;
    right: 0;
}

.dropdown-menu.up {
    position: absolute;
    top: -2rem !important;
    right: 0;
}

.w-10 {
    width: 10% !important;
}

.w-15 {
    width: 15% !important;
}

.w-20 {
    width: 20% !important;
}

.w-25 {
    width: 25% !important;
}

.w-30 {
    width: 30% !important;
}

.w-35 {
    width: 35% !important;
}

.w-40 {
    width: 40% !important;
}

.w-60 {
    width: 60% !important;
}

.w-70 {
    width: 70% !important;
}

.w-80 {
    width: 80% !important;
}

.w-85 {
    width: 85% !important;
}

.w-90 {
    width: 90% !important;
}

.w-100 {
    width: 100% !important;
}


.mw-30 {
    width: 100%;
    max-width: 30vw !important;
}

.mw-50 {
    width: 100%;
    max-width: 50vw !important;
}

.mw-60 {
    width: 100%;
    max-width: 60vw !important;
}

.mw-80 {
    width: 100%;
    max-width: 80vw !important;
}

.mw-90 {
    width: 100%;
    max-width: 90vw !important;
}

.mw-95 {
    width: 100%;
    max-width: 95vw !important;
}

.z-index-999 {
    z-index: 999 !important;
}

/*
    タブレット横
*/
@media (min-width: 821px) {
    .w-md-70 {
        width: 70% !important;
    }

    .w-md-60 {
        width: 60% !important;
    }

    .w-md-50 {
        width: 50% !important;
    }

    .w-md-40 {
        width: 40% !important;
    }

    .w-md-25 {
        width: 25% !important;
    }
}

@media (min-width: 992px) {
    .w-lg-10 {
        width: 10% !important;
    }

    .w-lg-15 {
        width: 15% !important;
    }

    .w-lg-20 {
        width: 20% !important;
    }

    .w-lg-25 {
        width: 25% !important;
    }

    .w-lg-30 {
        width: 30% !important;
    }

    .w-lg-35 {
        width: 35% !important;
    }

    .w-lg-40 {
        width: 40% !important;
    }

    .w-lg-60 {
        width: 60% !important;
    }

    .w-lg-70 {
        width: 70% !important;
    }

    .w-lg-80 {
        width: 80% !important;
    }

    .w-lg-85 {
        width: 85% !important;
    }

    .w-lg-90 {
        width: 90% !important;
    }

    .w-lg-100 {
        width: 100% !important;
    }
}
@media (min-width: 1200px ){
    .mw-xl-80 {
        width: 100%;
        max-width: 80vw !important;
    }
}

.file-form-group {
    display: grid;
    grid-template-columns: 3rem 1fr 3rem;
}

.logo-mark {
    width: 3.2rem;
}

.absolute-center {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.absolute-center-preset {
    margin: 10rem auto;
    max-width: 300px;
    text-align: center;
}

/*****************************************
 * 共通モーダル
 *****************************************/
.modal-dialog-centered {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100% - 1rem);
}


/*****************************************
 * 共通メニュー
 *****************************************/
.custom-dropdown {
    position: fixed;
    top: 0;
    left: 100vw;
    width: 20vw !important;
    height: 100vh;
    margin: 0;
    z-index: 1031 !important;
    background-color: white;
    border-radius: 1rem 0 0 1rem;
    border-color: white;
    box-shadow: -0.1em 0 0.2em var(--light-gray);
}

    .custom-dropdown .dropdown-item {
        color: black;
        padding-top: .8rem !important;
        padding-bottom: .8rem !important;
    }

        .custom-dropdown .dropdown-item:hover {
            background-color: var(--light) !important;
        }

.bottom {
    position: absolute;
    width: 100%;
    bottom: 0;
}

.profile-dropdown {
    position: fixed;
    top: 3.7rem;
    right: 2rem;
    width: 14rem !important;
    margin: 0;
    z-index: 1031 !important;
    background-color: white;
    border-radius: 1rem;
    border: 0.1rem solid var(--gray-sub);
}

    .profile-dropdown .dropdown-item {
        color: black !important;
        padding-top: .8rem !important;
        padding-bottom: .8rem !important;
    }

    .profile-dropdown .name-span {
        display: inline-block;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow-x: hidden;
        width: 12rem !important;
    }

.name-icon {
    display: flex;
    width: 4rem;
    height: 4rem;
    border-radius: 2rem;
    color: white;
    font-size: 2rem;
    justify-content: center;
    align-items: center;
    font-weight: bold;
}
/*****************************************
 * ログイン画面
 *****************************************/
/*** オートコンプリートで自動入力された場合に背景色が水色になる対策 ***/
input:-webkit-autofill {
    animation-name: onAutoFillStart;
    transition: background-color 50000s ease-in-out 0s;
}

.image-space.logo {
    aspect-ratio: 4/1;
}

    .image-space.logo img {
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
/*タイトル*/
.signin-title {
    font-size: 3rem;
}

.custom-formcontrol-label {
    font-size: 0.95rem;
    font-weight: bold;
}

/*パスワードの表示非表示*/
.password-div {
    position: relative;
}

.password-div input {
    width: 100%;
    position: relative;
    z-index: 0;
    padding-right: 48px;
}

.toggle-password {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
}

.toggle-password .material-symbols-outlined {
    line-height: 1;
    pointer-events: none;
}

/*プレースホルダーの文字設定*/
input::placeholder {
    font-size: 0.8rem;
    color: var(--secondary);
}

/*エラー時に罰マークが出ないための処理*/
.form-control.is-invalid {
    background-image: none !important;
}

/*ログイン画面エラーメッセージ*/
.signin-alert {
    color: var(--danger) !important;
    position: relative;
    padding: .5rem .25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.signin-body {
    display: flex;
    height: 100vh;
    width: 100vw;
}
/*****************************************
 * お客様一覧画面
 *****************************************/
.table-list {
    height: calc(100vh - 11.5rem);
    display: block;
}

    .table-list thead {
        position: sticky;
        top: 0;
    }

        .table-list thead td {
            vertical-align: middle;
            font-size: 0.9rem;
            font-weight: bold;
            border-bottom: 2px solid var(--primary);
            background-color: white !important;
        }

    .table-list tbody td {
        vertical-align: middle;
        font-size: 0.9rem;
        padding: 0.75rem 1rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.table-list-no-footer {
    flex: 1;
/*    display: block;*/
}

.table-list-wrapper {
    flex: 1;
    overflow-y: auto;
    height: calc(100vh - 12rem);
}

.table-list-no-footer thead {
    position: sticky;
    top: 0;
}

.table-list-no-footer thead td {
    vertical-align: middle;
    font-size: 0.9rem;
    font-weight: bold;
    border-bottom: 2px solid var(--primary);
    background-color: white !important;
}

.table-list-no-footer tbody {
    overflow-y: auto;
    height: calc(100vh - 12rem - 2.5rem);
    height: auto;
}

.table-list-no-footer tbody td {
    vertical-align: middle;
    font-size: 0.9rem;
    padding: 0.75rem 1rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.customer-name {
    min-width: 15rem;
    max-width: 15rem;
}

.customer-site {
    width: 9rem;
    min-width: 9rem;
    max-width: 9rem;
}

.customer-createdat {
    width: 7rem;
    min-width: 6.8rem;
    max-width: 7rem;
}

.customer-code {
    width: 8rem;
    min-width: 7.5rem;
    max-width: 8rem;
}

.customer-manager {
    width: 12rem;
    min-width: 10rem;
    max-width: 12rem;
}

.customer-employee {
    width: 12rem;
    min-width: 12rem;
    max-width: 12rem;
}

.customer-btn {
    width: 11rem;
    max-width: 12rem;
    min-width: 11rem;
}

.end-column {
    width: 100%;
}

.customer-btn .btn {
    width: 100%;
    padding: 0 !important;
    text-align: center;
}
/*****************************************
 * お客様登録/編集画面
 *****************************************/
.customer-register-container {
    height: calc(100vh - 10rem);
}

#form-customer-register {
    flex: 1;
    overflow-y: auto;
    margin-right: auto;
    margin-left: auto;
}

/*****************************************
 * お客様プロフィール画面
 *****************************************/


.file-table {
    border-collapse: separate;
    border-spacing: 0 0.8rem;
}

.calculation-condition label {
    min-width: 2rem;
}

.file-progression-bar {
    position: relative;
    width: 10rem;
    height: 0.5rem;
    background-color: var(--gray-sub) !important;
}

.file-progression-bar-active {
    position: absolute;
    top: 0;
    left: 0;
    height: 0.5rem;
    background-color: var(--primary);
}

.file-any {
    height: 2.5em;
}

.file-name-row {
    vertical-align: middle !important;
}

.file-btn {
    width: 2rem;
    min-width: 2rem;
    max-width: 2rem;
}

.file-history-list {
    display: block;
    height: calc(100vh - 25.4rem);
    overflow-y: auto;
    background-color: white;
}

    .file-history-list thead {
        position: sticky;
        top: 0;
    }

        .file-history-list thead td {
            font-size: 0.9rem;
            font-weight: bold;
        }

    .file-history-list tbody td {
        vertical-align: middle;
        font-size: 0.9rem;
        padding: 0.75rem 1rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.file-history-date, .file-history-action {
    width: 12rem;
    min-width: 12rem;
    max-width: 12rem;
}

.file-history-user {
    width: 100%;
    min-width: 20rem;
}

/*自動計算*/
.dimension-count {
    min-width: 4rem;
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
}

.dimension-unit {
    font-size: 0.9rem !important;
}
/*****************************************
 * プランニング一覧画面
 *****************************************/
/*.planning-list {
    display: block;
    height: calc(100vh - 11.4rem);
    overflow: auto;
    background-color: white;
}
*/
.planning-list thead {
    position: sticky;
    top: 0;
    z-index: 100;
    background: white;
}


    .planning-list thead td {
        /*            border: none;
            font-size: 0.9rem;
            background-color: white;
            font-weight: bold;
            vertical-align: middle !important;
*/ padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

/*.planning-list tbody td {
    vertical-align: middle;
    font-size: 0.9rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
*/
.planning-list tbody tr.fixed-tr td {
    /*    background-color: var(--light) !important;
*/ padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}


.planning-name {
    min-width: 9.5rem;
    max-width: 20rem;
}

.planning-customer-name {
    min-width: 7rem;
    max-width: 20rem;
}

.planning-price {
    min-width: 7.5rem;
    max-width: 7rem;
}

.planning-status, .planning-date {
    min-width: 8rem;
    max-width: 8rem;
}

.status-text {
    width: 9rem;
}

.planning-status span {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    font-weight: bold;
}

.planning-button {
    width: 3rem;
    min-width: 3rem;
    padding-right: 0 !important;
    padding-left: 0 !important;
    justify-content: center;
    align-items: center;
}

.planning-buttons {
    width: 15rem;
    min-width: 15rem;
    max-width: 15rem;
    padding-right: 0.5rem !important;
    padding-left: 0 !important;
}

    .planning-buttons button:not(.dropdown-item) {
        padding-right: 0rem !important;
        padding-left: 0 !important;
    }

tbody .planning-button {
    width: 3rem;
    min-width: 3rem;
    padding: 0 !important;
}

.qr-code {
    border: 0.1rem solid var(--gray-sub) !important;
    padding: 1rem;
}

.toast-container {
    position: fixed;
    min-width: calc(100% - 1rem);
}

.toast-right-bottom {
    position: absolute;
    bottom: 0.5rem;
    right: 0;
}

/*.planning-list .planning-buttons {
    z-index: 0 !important;
}

.btn-url{
    background-color:var(--light-gray);
    padding:0.5rem!important;
}
.url-content {
    top: 0;
    left: 100%;
    transition: left .4s;
}
    .url-content.active {
        left: 0 !important;
    }
/*****************************************
 * プランニング検索
 *****************************************/
.planning-search-grid {
    display: grid;
    grid-template-columns: 40% minmax(15rem, 1fr);
}
/*****************************************
 * サイン画面
 *****************************************/
#sign-canvas-container #sign-canvas {
    z-index: 10;
}

#sign-canvas-container #sign-canvas-bg {
    z-index: 5;
    margin: auto;
}

/*#sign-canvas-bg #sign-icon {
    width: 50vw;
    font-size: 20vw;
    opacity: 0.1;
    left: 25vw;
    right: 0;
    top: 12vw;
}*/

.sign-memo-space {
    bottom: 3.3rem;
    left: 0;
    right: 0;
    z-index: 10;
    resize: none;
}

#change-memo-area {
    min-height: 3rem !important;
}
/*****************************************
 * カテゴリ選択画面
 *****************************************/
.select-category-body {
    overflow-y: auto;
    height: calc(100vh - 18rem);
}

.card {
    padding-right: .25rem;
    padding-left: .25rem;
    border-radius: 0.1rem;
    outline: 1.5px solid #c9c9c9;
}

    .card:hover {
        cursor: pointer;
    }

    .card.selected {
        outline: 0;
        box-shadow: 0 0 0 0.1rem var(--primary);
    }

.card-body {
    padding-right: .5rem !important;
    padding-left: .5rem !important;
    padding-top: .75rem;
    padding-bottom: .75rem;
    position: relative;
}

    .card-body span {
        /*        font-size: 0.8rem;
*/
    }

.categories {
    flex-wrap: wrap;
}

.category {
    background-color: white;
    border-radius: 1rem;
    font-weight: bold;
}

    .category span {
        font-size: .8rem;
    }

    .category small {
        color: #6c757d;
    }

        .category small:hover {
            color: #343a40;
            cursor: pointer;
        }

.choice-count {
    font-size: 0.8rem;
}
/*****************************************
 * パック選択画面
 *****************************************/
.package-card {
    border: .1rem solid var(--gray-sub);
    border-radius: 0.2rem;
    /*max-height: 13rem;*/
    background-color: white;
}

    .package-card:hover {
        cursor: pointer;
    }

    .package-card.selected {
        outline: 0;
        box-shadow: 0 0 0 0.1rem var(--primary);
    }

.package-card-body {
    padding-top: .25rem;
    padding-bottom: .25rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 10rem;
    box-sizing: border-box;
}

    .package-card-body span {
        font-size: 0.8rem;
    }

.package-card p {
    margin: 0; /* 不要な余白を消す */
}

.package-card-pop {
    display: inline-block;
    width: auto;
    position: relative;
}

    .package-card-pop .alert-pop {
        display: inline-block;
    }

/*****************************************
 * 工事選択画面
 *****************************************/
.constructions {
    overflow: auto;
    height: calc(100vh - 16.1rem);
}

.construction-card span {
    font-size: 1rem;
}

.price-all {
    font-size: 1.9rem;
    font-weight: bold;
}

#group-list-tab {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}

    #group-list-tab.master {
        width: 92%
    }

.count-batch {
    width: 1.7rem;
    height: 1.7rem;
    font-size: 1rem;
    background-color: var(--danger);
    border-radius: 1.7rem;
    color: #ffffff;
    right: -0.5rem;
    top: -0.4rem;
    font-weight: 500 !important;
    padding-left: 2px;
    padding-top: 1px;
}

.alert-sticky {
    border-radius: 0;
}

/*****************************************
 * 商品選択画面
 *****************************************/
.products {
    overflow-y: auto;
    height: calc(100vh - 7.7rem);
}

    .products.master {
        height: calc(100vh - 7.5rem);
    }

/*****************************************
 * 選択項目選択画面
 *****************************************/
.set-choice-parent {
    display: grid;
    grid-template-columns: minmax(calc(100vw * 0.2),8rem) 1fr;
}
@media (max-width: 900px) { 
    .set-choice-parent {
        grid-template-columns: 12rem 1fr;
    }
}

.set-choices {
    overflow-y: auto;
    overflow-x: hidden;
    height: calc(100vh - 11.5rem);
}

    .set-choices.master {
        height: calc(100vh - 8.1rem) !important;
    }

    .set-choices table {
        padding: 0;
        margin: 0;
    }

.set-shoice {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
    min-width: 2rem;
    max-width: 2rem;
}

.set-shoice-name {
    width: 100%;
    min-width: 10rem;
}

.set-choice-bar {
    display: flex;
    vertical-align: middle !important;
    margin-top: 1rem;
}

.card.select {
    outline: 3px solid var(--primary) !important;
    border-radius: 0.1rem;
    box-shadow: inherit;
}

.setchoice-tr.select {
    background-color: #E6E6E6;
    color: var(--base) !important;
}

.setchoice-tr:not(.select) {
    background-color: var(--white) !important;
    color: var(--light-text) !important;
}

.modal-select-product-body {
    max-height: calc(100vh - 7.7rem) !important;
}

    .modal-select-product-body .btn {
        max-width: 100%;
        display: block;
        margin-left: auto;
        margin-right: auto;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

/*****************************************
 * すべて画面
 *****************************************/
.all-construction {
    height: calc(100vh - 18rem);
    overflow-y: auto;
}

/* トグルスイッチ全体 */
.toggle-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 24px;
}

    /* デフォルトのチェックボックスは非表示 */
    .toggle-switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

/* スライダー部分 */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
    border-radius: 24px;
}

    /* 丸いノブ */
    .slider:before {
        position: absolute;
        content: "";
        height: 16px;
        width: 16px;
        left: 4px;
        bottom: 4px;
        background-color: white;
        transition: .4s;
        border-radius: 50%;
    }

/* チェック時の色 */
.toggle-choice:checked + .slider {
    background-color: #009CA2;
}

    /* チェック時の位置 */
    .toggle-choice:checked + .slider:before {
        transform: translateX(26px);
    }

.none-batch {
    font-size: 11.5px !important;
    color: var(--outline-primary);
    border: .1rem solid var(--outline-primary);
    padding: 0.1rem 0.5rem;
    margin-bottom: 0.5rem !important;
}

/*****************************************
 * 見積明細編集画面
 *****************************************/
.quotation-preview {
    padding-top: 2rem;
    padding-bottom: 1rem;
    padding-right: calc(100vh*0.2);
    padding-left: calc(100vh*0.2);
    height: calc(100vh - 8.2rem);
    overflow-y: auto;
}

.quotation-preview-header input:not(.font-weight-midium) {
    height: 2.25rem;
    font-size: 14.8px;
}

.quotation-company-name {
    height: 3.5rem !important;
    width: calc(100% - 4rem) !important;
}

.quotation-table .default-tr {
    display: none;
}

.logo-image {
    position: relative;
    width: 100%;
    aspect-ratio: 4/1;
    min-height: 40px;
}

    .logo-image img {
        position: absolute;
        max-height: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

@media (min-width: 768px) and (max-width: 1366px) {
    .logo-image img {
        max-height: 90%;
        width: auto;
        left: 0;
        transform: translate(0, -50%);
    }
}

.image-space-wide {
    aspect-ratio: 4 / 1 !important;
    height: 200px;
    max-width: 400px;
    width: 100%;
}

.company-logo-block .button-area {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .dropdown-menu-left {
        left: 0 !important;
        right: 0 !important;
        margin: 0 auto !important;
    }
}

.stamp-image {
    position: relative;
    width: 3.5rem;
    aspect-ratio: 1/1;
}

    .stamp-image img {
        position: absolute;
        width: 100%;
        max-height: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

.quotation-table {
    font-size: 0.8rem;
    overflow-x: auto;
}

    .quotation-table tr td {
        padding: 0.5rem 0.5rem;
        border: 0.05rem solid var(--gray-sub) !important;
        height: 2.5rem;
    }

    .quotation-table thead tr td {
        text-align: left;
    }

    .quotation-table tbody tr td {
        background-color: white;
    }

        .quotation-table tbody tr td:not(.quotation-class) {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

    .quotation-table tbody tr.page-border td {
        border-bottom: 0.25rem solid var(--primary) !important;
    }

    .quotation-table input {
        position: absolute;
        padding-left: .4rem;
        padding-right: .4rem;
        border: none;
        outline: none;
    }

.quotation-name {
    max-width: 25rem;
    min-width: 25rem;
}

.quotation-remarks {
    width: 14rem;
    min-width: 14rem;
}

.quotation-btn {
    width: 2.5rem;
    min-width: 2.5rem;
}

.quotation-count {
    width: 3rem;
    min-width: 3rem;
}

.quotation-btn button {
    outline: none;
    border: none;
    background-color: white;
    width: 100%;
    height: 100%;
}

.quotation-class, .quotation-unit {
    width: 3.875rem;
    min-width: 3.875rem;
}

.quotation-unit-price, .quotation-price {
    width: 5.6875rem;
    min-width: 5.6875rem;
}

tbody .quotation-btn {
    width: 3rem;
    padding: 0 !important;
    vertical-align: middle !important;
}

.quotation-btn .btn {
    padding: 0 1rem !important;
}

.select-td {
    position: relative;
}

    .select-td.select {
        border: 0.08rem solid var(--primary) !important
    }

    .select-td:not(.select) {
        padding: 0 !important;
        margin: 0 !important;
    }

.quotation-table tbody tr td.select {
    cursor: pointer;
}

.select-td:not(.select) span {
    display: none;
}

.quotation-table tbody tr td.disabled {
    background-color: var(--gray-sub) !important;
    opacity: 0.5;
    color: var(--gray-sub) !important;
}

.quotation-select {
    width: 7.6rem;
    z-index: 999;
}

.quotation-select-item {
    padding: 0.3rem 0.5rem;
    text-align: center;
    background-color: white;
    cursor: pointer;
}

    .quotation-select-item:hover {
        background-color: var(--gray);
    }

.information-button {
    width: 1.1rem;
    height: 1.1rem;
    font-size: 0.6em;
}

.quotation-input {
    border: 0.08rem solid var(--primary) !important
}

.td-message {
    position: absolute;
    font-weight: bold;
    padding: 6px 10px;
    font-size: 0.75rem;
    white-space: nowrap;
    z-index: 1000;
}

.quotation-remarks {
    max-width: 12.5rem;
    min-width: 12.5rem;
}


/*****************************************
 * ★マスタ
 *****************************************/
.master-menu :hover {
    color: white !important;
    background-color: var(--primary) !important;
}

/*****************************************
 * 会社編集画面
 *****************************************/
#form-company-option-register {
    overflow-x: hidden;
    overflow-y: auto;
    height: calc(100vh - 11.4rem);
}

.company-rounding {
    display: grid;
    grid-template-columns: repeat(3, 8rem);
    padding: 0 5rem;
}

.rounding-setting {
    display: grid;
    grid-template-columns: 15rem minmax(8rem, 1fr) 3rem 10rem 2rem 10rem;
    gap: 0.5rem;
    place-items: center;
    padding: 0.3rem 5rem;
}

.company-calc-rate {
    width: 6rem;
}
/*****************************************
 * 会社マスタ拠点画面
 *****************************************/
.site-no {
    width: 3rem;
    min-width: 3rem;
    text-align: center;
}

.site-name {
    width: 100%;
    min-width: 20rem;
}

/*****************************************
 * 従業員マスタ画面
 *****************************************/
.employee-no {
    width: 3rem;
    min-width: 3rem;
    text-align: center;
}

.employee-name {
    width: 100%;
    min-width: 15rem;
}

.employee-site, .employee-department {
    width: 10rem;
    min-width: 10rem;
    max-width: 10rem;
}

.employee-date, .employee-status, .employee-role {
    width: 10rem;
    min-width: 10rem;
}

.employee-detail-content{
    height: calc(100vh - 12.2rem);
}
/*****************************************
 * 従業員マスタ画面（Excel入力画面）
 *****************************************/
.employee-import-table {
    display: block;
    height: calc(100vh - 7.5em);
    overflow: auto;
    font-size: 0.9rem;
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
}

.table-scroll-wrapper {
    overflow-x: auto;
    overflow-y: auto;
    width: 100%;
    max-width: 100%;
    height: calc(100vh - 7.6rem);
}

.construction-import-table,
.product-import-table,
.detail-import-table,
.specifiction-import-table {
    width: max-content;
    table-layout: auto;
    border-collapse: collapse;
    font-size: 0.9rem;
}

    .employee-import-table thead th,
    .construction-import-table thead th,
    .product-import-table thead th,
    .detail-import-table thead th,
    .specifiction-import-table thead th {
        position: sticky;
        font-weight: bold;
        color: #343a40 !important;
        top: 0;
        background: #f9f9f9;
        z-index: 2;
    }

    .employee-import-table thead td,
    .construction-import-table thead td,
    .detail-import-table thead td,
    .specifiction-import-table thead td {
        background-color: var(--light)
    }

    .table-scroll {
        height: calc(100vh - 7.6rem);
        overflow-y: auto;
    }

        .employee-import-table tbody td,
        .construction-import-table tbody td,
        .product-import-table tbody td,
        .detail-import-table tbody.main-body td,
        .specifiction-import-table tbody td {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

    .employee-import-table .form-control,
    .construction-import-table .form-control,
    .product-import-table .form-control,
    .detail-import-table .form-control,
    .specifiction-import-table .form-control {
        font-size: 0.9rem;
    }

    .construction-import-table td,
    .product-import-table td,
    .detail-import-table.main-body td,
    .specifiction-import-table td {
        white-space: nowrap;
    }

/*.valign-top {
    padding-top: 0.3rem !important;
    padding-bottom: 0 !important;
    vertical-align: top !important;
}*/

.import-table-status {
    width: 3rem;
    min-width: 1rem;
}


.import-table-icon {
    width: 3rem;
    min-width: 3rem;
}

.import-table-sort {
    width: 5rem;
    min-width: 5rem;
}

.import-table-droppdown {
    width: 10rem;
    min-width: 5rem;
}

.import-table-checkbox {
    width: 5rem;
    min-width: 5rem;
    max-width: 5rem;
}

.import-table-isdeleted-checkbox {
    width: 6rem;
    min-width: 6rem;
    max-width: 6rem;
    text-align: center !important;
}

.import-table-construction-checkbox {
    width: 8rem;
    min-width: 8rem;
    max-width: 8rem;
    text-align: center !important;
}

.import-table-product-checkbox {
    width: 6rem;
    min-width: 6rem;
    max-width: 6rem;
    vertical-align: top !important;
}

.import-checkbox {
    vertical-align: top;
}

.import-input {
    height: 2.4rem !important
}

.import-checkbox {
    height: 1.25rem;
    width: 1.25rem;
}

.import-table-isdiffer {
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 0.8rem;
}

.diff-mark {
    position: relative;
    display: inline-block;
    width: 1rem;
    height: 1rem;
    z-index: 1;
}

.import.edit::before {
    content: '';
    position: absolute;
    top: 0.5rem;
    left: -0.1rem;
    width: 0.1rem;
    height: 0.1rem;
    background-color: orange;
    box-shadow: 0 0 0.2rem 0.1rem rgba(255, 165, 0, 0.7);
    border-radius: 50%;
    z-index: 999;
}

.import.product-edit::before {
    content: '';
    position: absolute;
    top: 0.5rem;
    left: -0.3rem;
    width: 0.1rem;
    height: 0.1rem;
    background-color: orange;
    box-shadow: 0 0 0.2rem 0.1rem rgba(255, 165, 0, 0.7);
    border-radius: 50%;
    z-index: 999;
}

.import-input-area {
    padding-left: 0;
}

.diff-markarea {
    position: absolute;
    top: 0;
    left: 0.4rem;
    width: 0.8rem;
    height: 0.8rem;
    z-index: 1;
}

    .diff-markarea.viewmode {
        top: 0.3rem;
    }

    .diff-markarea.editmode {
        top: 0.9rem;
    }

.import.editarea::before {
    content: '';
    position: absolute;
    top: 0.4rem;
    left: 0;
    width: 0.1rem;
    height: 0.1rem;
    background-color: orange;
    box-shadow: 0 0 0.2rem 0.1rem rgba(255, 165, 0, 0.7);
    border-radius: 50%;
    z-index: 999;
}

.import.product-editarea::before {
    content: '';
    position: absolute;
    top: 0.4rem;
    left: -0.6rem;
    width: 0.1rem;
    height: 0.1rem;
    background-color: orange;
    box-shadow: 0 0 0.2rem 0.1rem rgba(255, 165, 0, 0.7);
    border-radius: 50%;
    z-index: 999;
}
/*****************************************
 *ログイン管理画面
 *****************************************/
.device-no {
    width: 2.5rem;
    min-width: 2.5rem;
    text-align: center;
}

.device-name {
    width: 100%;
    min-width: 10rem;
}

.device-site, .device-browse,
.device-version,
.device-os {
    width: 8rem;
    min-width: 8rem;
}

.device-date {
    width: 12rem;
    min-width: 12rem;
}

.device-btn {
    vertical-align: middle !important;
    padding: 0 !important;
    width: 1.5rem;
    min-width: 1.5rem;
}
/*****************************************
 * メーカーマスタ画面
 *****************************************/
.maker-no {
    width: 1.5rem;
    min-width: 1.5rem;
    text-align: center;
}

.maker-name {
    width: 100%;
    min-width: 20rem;
}

.maker-product {
    width: 10rem;
    min-width: 10rem;
    text-align: center;
}

    .maker-product button {
        padding: 0 !important;
    }

.maker-btn {
    width: 2rem;
    min-width: 2rem;
    padding: 0 !important;
}
/*****************************************
 * 部署マスタ画面
 *****************************************/
.department-no {
    width: 1.5rem;
    min-width: 1.5rem;
    text-align: center;
}

.department-name {
    width: 100%;
    min-width: 20rem;
}

.department-btn {
    width: 1.5rem;
    min-width: 1.5rem;
    padding: 0 !important;
}
/*****************************************
 * グループ画面
 *****************************************/
.spec-group-no {
    width: 1.5rem;
    min-width: 1.5rem;
}

.spec-group-button {
    width: 1.5rem;
    min-width: 1.5rem;
    padding: 0 !important;
    text-align: center;
}

.spec-group-name {
    width: 100%;
    min-width: 20rem;
}
/*****************************************
 * 工事区分画面
 *****************************************/
.construction-classification-no {
    width: 1.5rem;
    min-width: 1.5rem;
    text-align: center;
}

.construction-classification-name {
    width: 100%;
    min-width: 10rem;
}

.construction-classification-button {
    width: 1.5rem;
    min-width: 1.5rem;
    padding: 0 !important;
}

/*****************************************
 * 大項目/カテゴリマスタ
 *****************************************/
.specification-content {
    display: block;
    height: calc(100vh - 7.9rem);
    overflow: auto;
}
/*****************************************
 * CSV入力画面
 *****************************************/
.import-table {
    display: block;
    height: calc(100vh - 11.5rem);
    overflow: auto;
}

    .import-table span {
        font-size: 1rem;
    }

    .import-table thead {
        position: sticky;
        top: 0;
        font-weight: bold;
    }

.import-table-status {
    width: 5rem;
    min-width: 5rem;
    max-width: 5rem;
}

.import-table-name {
    width: 100%;
    min-width: 20rem;
}

.import-table-specifiction-name {
    width: 100%;
    min-width: 50rem;
}

.import-table-constraction-name {
    width: 40%;
    min-width: 8rem;
}

.import-table-detail-name {
    width: 15%;
    min-width: 8rem;
}

.import-table-maker-name {
    padding-top: 1rem;
    padding-left: 1rem;
    min-width: 20rem;
}

.import-table-product-name {
    width: 20%;
    min-width: 7rem;
}

.import-table-sort {
    width: 5rem;
    min-width: 5rem;
    max-width: 5rem;
}

.import-table-mail {
    width: 25rem;
    min-width: 25rem;
    max-width: 50rem;
}

.import-table-select {
    width: 15rem;
    min-width: 15rem;
    max-width: 20rem;
}

.import-table-date {
    width: 13rem;
    min-width: 13rem;
    max-width: 13rem;
}

.import-table-input {
    width: 25rem;
    min-width: 15rem;
    max-width: 25rem;
}

.import-table-number {
    width: 13rem;
    min-width: 5rem;
    max-width: 13rem;
}

.import-table-display-name {
    width: 8rem;
}

.import-table-display-specification-name {
    width: 10%;
    min-width: 23rem;
    vertical-align: middle !important;
}

.import-table-display-name-small {
    width: 3rem;
}

.display-data {
    display: inline-block;
    max-width: 10rem;
}

.construction-import-table-input,
.detail-import-table-input {
    width: 25rem;
    min-width: 15rem;
    max-width: 25rem;
}

.product-import-table-input {
    width: 18rem;
    min-width: 7rem;
    max-width: 18rem;
}

.product-pop-import-table-input {
    width: 12rem;
    min-width: 5rem;
    max-width: 12rem;
}

.import-input-area {
    max-width: 100%;
    resize: both;
}

.import-table-isdeleted {
    width: 5rem;
    min-width: 5rem;
    max-width: 5rem;
}

.import-table-display-abbreviated {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 7rem;
}

.import-table-display-classification-name {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 17rem;
}

.import-table-display-specification-abbreviated {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 23rem;
}

.import-table-display-abbreviated-small {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 3rem;
}
/*****************************************
 * 工事情報新規登録/更新画面
 *****************************************/
#form-company-construction-register {
    height: calc(100vh - 17.4rem);
    padding-right: 3rem;
    padding-left: 3rem;
    overflow: auto;
}
/*****************************************
 *　一覧検索画面
 *****************************************/
.select-data-table {
    display: block;
    height: calc(100vh - 16.4rem);
    overflow: auto;
}

    .select-data-table tr td {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        vertical-align: middle !important;
    }

.select-data-select {
    width: 3rem;
    min-width: 3rem;
    max-width: 3rem;
}

.select-data-name {
    width: 100%;
    min-width: 20rem;
}

.sort-data-table {
    display: block;
    height: calc(100vh - 16.4rem);
    overflow: auto;
}

    .sort-data-table tr td {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        vertical-align: middle !important;
    }

.select-data-sort {
    width: 3rem;
    min-width: 3rem;
    max-width: 3rem;
    cursor: pointer;
}
/*****************************************
 * 商品情報新規登録/更新画面
 *****************************************/
#form-company-product-register {
    height: calc(100vh - 17.4rem);
    padding-right: 3rem;
    padding-left: 3rem;
    overflow: auto;
}
/*****************************************
 * カテゴリ分類マスタ
 *****************************************/
.classification-table {
    display: block;
    height: calc(100vh - 16.4rem);
    overflow: auto;
    margin: 0;
}

    .classification-table tr td {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        vertical-align: middle !important;
    }

.classification-sort, .classification-delete {
    width: 3rem;
    min-width: 3rem;
    text-align: center;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.classification-sort {
    cursor: pointer;
}

.classification-name {
    width: 100%;
    min-width: 20rem
}

/*****************************************
 * 明細マスタ
 *****************************************/
.detail-table td {
    vertical-align: middle;
}

.detail-table tbody tr.discontinued-detail td {
    background-color: var(--gray-sub);
}

.detail-checkbox {
    width: 2.5rem;
    min-width: 2.5rem;
    text-align: center;
}

.detail-btn {
    width: 3rem;
    min-width: 3rem;
    padding: 0 !important;
    text-align: center;
    vertical-align: middle;
}

.detail-constructiontype, .detail-unit {
    width: 5rem;
    min-width: 5rem;
    text-align: center;
}

.detail-classificationname {
    width: 7rem;
    min-width: 7rem;
}

.detail-name {
    max-width: 12rem;
    width: 100%;
    min-width: 8rem;
}

.detail-count {
    width: 6rem;
    min-width: 6rem;
    text-align: center;
}

.detail-cost, .detail-price, .detail-rate {
    width: 6rem;
    min-width: 6rem;
    text-align: center;
}

.detail-code {
    width: 7rem;
    min-width: 7rem;
    text-align: center;
}

tbody .detail-cost, tbody .detail-price {
    text-align: right;
}
/*****************************************
 * 明細マスタ>登録/編集
 *****************************************/
.tab-pane.detail {
    height: calc(100vh - 15rem);
    overflow-y: auto;
}
/*****************************************
 * マスタ管理＞履歴
 *****************************************/
.history-list {
    display: block;
    height: calc(100vh - 16rem);
    overflow: auto;
    font-size: 0.9rem;
}

    .history-list thead {
        position: sticky;
        top: 0;
    }

        .history-list thead td {
            border: none !important;
            color: #BFBFBF;
            background-color: white;
            font-size: 0.9rem;
            padding: .25rem .5rem;
            vertical-align: middle;
        }

    .history-list tbody td {
        vertical-align: middle;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.history-actionAt {
    width: 15rem;
    min-width: 15rem;
}

.history-action,
.history-user {
    width: 10rem;
    min-width: 10rem;
}

.history-content {
    width: 100%;
    min-width: 20rem;
}

.history-btn {
    width: 7rem;
    min-width: 7rem;
}
/*****************************************
 * 選択項目マスタ
 *****************************************/
.choice-body {
    flex-wrap: wrap;
}
/*****************************************
 * マスタ管理＞明細検索
 *****************************************/
.search-detail-header {
    display: flex;
}

    .search-detail-header label {
        margin-bottom: 0;
    }

/*明細紐づけテーブル*/
.detail-search-table {
    display: block;
    height: calc(100vh - 17.5rem);
    overflow-y: auto;
    margin-bottom: 0;
}

    .detail-search-table thead {
        position: sticky;
        top: 0;
    }

        .detail-search-table thead td:not(.detail-search-btn) {
            background-color: var(--light);
            font-weight: bold;
            padding-right: 0.5rem !important;
            padding-left: 0.5rem !important;
        }

    .detail-search-table td {
        font-size: 0.9rem;
        text-align: center;
        vertical-align: middle;
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

.detail-search-select td {
    background-color: var(--gray-sub) !important;
}

.detail-search-select .detail-search-checkbox input[type="checkbox"] {
    display: none;
}

.detail-search-checkbox {
    width: 2.5rem;
    min-width: 2.5rem;
    text-align: center;
}

.detail-search-btn {
    width: 5rem;
    min-width: 5rem;
    padding: 0 !important;
    padding: 0 0.2rem !important;
}

/*材/工　単位*/
.detail-search-constructiontype, .detail-search-unit {
    width: 4rem;
    min-width: 4rem;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*工事区分*/
.detail-search-classificationname {
    width: 7rem;
    min-width: 7rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*仕様摘要*/
.detail-search-name {
    width: 100%;
    min-width: 10rem;
    max-width: 12rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*原価率/利益率*/
.detail-search-rate {
    width: 4rem;
    min-width: 4rem;
    text-align: center;
}

/*管理コード*/
.detail-search-cost, .detail-search-code {
    width: 6rem;
    min-width: 6rem;
    text-align: center;
}

/*見積単価*/
.detail-search-price {
    width: 8rem;
    min-width: 8rem;
    text-align: center;
}

    .detail-search-price.sum {
        width: 5rem;
        min-width: 5rem;
        text-align: center;
    }

/*自動計算*/
.detail-search-autocalc {
    padding: 0 0.2rem !important;
    width: 8rem;
    min-width: 8rem;
    padding: 0 0.2rem !important;
}

/*数量*/
.detail-search-count {
    padding: 0 0.2rem !important;
    width: 6rem;
    min-width: 6rem;
    padding: 0 0.2rem !important;
}

.detail-search-constructiontype select,
.detail-search-classificationname select,
.detail-search-unit select,
.detail-search-autocalc select {
    font-size: 0.85rem !important;
    padding: 0.5rem 0.2rem !important;
}

tbody .detail-search-cost, tbody .detail-search-price {
    text-align: right;
}

/*明細管理テーブル*/
.handle-detail-table:not(.choice-detail-table) {
    display: block;
    height: calc(100vh - 14.5rem);
    overflow-y: auto;
}

.handle-detail-table.choice-detail-table {
    height:100%;
    min-height:4rem;
}

.handle-detail-table:not(.choice-detail-table) thead {
    position: sticky;
    top: 0;
}

    .handle-detail-table thead td {
        background-color: var(--light);
        font-weight: bold;
        font-size: 0.9rem;
    }

.handle-detail-table td {
    text-align: center;
    vertical-align: middle;
}

.handle-detail-table tbody td {
    font-size: 0.85rem;
}

.handle-detail-table tr:not(.create-tr) td {
    padding: 0.25rem 0.25rem;
}

.handle-detail-table .create-tr td {
    padding: 0 0.2rem !important;
}
/*****************************************
 * ★画像一括登録
 *****************************************/
.image .image-space {
    height: 10rem;
    width: 100%;
}

.image.edit::before {
    content: '';
    position: absolute;
    top: 0.5rem;
    left: 1rem;
    width: 1rem;
    height: 1rem;
    background-color: orange;
    box-shadow: 0 0 0.5rem 0.25rem rgba(255, 165, 0, 0.7);
    border-radius: 50%;
    z-index: 999;
}

.btn-delete-image {
    position: absolute;
    top: 0;
    right: 0.5rem;
    display: none !important;
    background-color: none;
    border: none;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.image.with-image .btn-delete-image {
    display: block !important;
    font-size: 1.2rem;
    z-index: 999;
}

.image-list-space {
    height: calc(100vh - 13.4rem);
    overflow-x: hidden;
    overflow-y: auto;
}

.expand-image-modal-body {
    height: calc(100vh - 11rem);
}

    .expand-image-modal-body .image-space {
        height: 100%;
        width: 100%;
    }

    .expand-image-modal-body img {
        width: auto !important;
        height: 100% !important;
    }

.dragover {
    box-shadow: inset 0 0 0 0.2rem var(--primary);
}

.rate-bar {
    height: 1rem;
    width: 0;
}
/*****************************************
 * ★プリセットデータ
 *****************************************/
.management-data-space {
    height: calc(100vh - 11rem);
    overflow-y: auto;
}

.management-data-table tbody td {
    vertical-align: middle;
    font-size: 1rem;
    cursor: pointer;
}

.management-data-checkbox {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.management-data-category, .management-data-maker {
    width: 13rem;
    max-width: 13rem;
    min-width: 13rem;
}

.management-data-date {
    width: 10rem;
    max-width: 10rem;
    min-width: 10rem;
}

.management-data-name {
    width: 100%;
    min-width: 15rem;
}

.management-data-btn {
    width: 6rem;
    max-width: 6rem;
    min-width: 6rem;
    padding: 0 !important;
}

    .management-data-btn .btn {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

/*****************************************
 * ★パック工事一覧画面
 *****************************************/
.package-content {
    display: block;
    height: calc(100vh - 7.9rem);
    overflow: auto;
}

.package-construction-table {
    display: block;
    height: calc(100vh - 9.4rem);
    overflow-y: auto
}

    .package-construction-table thead {
        position: sticky;
        top: 0;
    }

        .package-construction-table thead td {
            /*            background-color: var(--light);*/
            font-weight: bold;
        }

    .package-construction-table td {
        font-size: 0.9rem;
        vertical-align: middle;
    }

.package-construction-specification, .package-construction-category, .package-construction-classification {
    width: 10rem;
    max-width: 10rem;
    min-width: 10rem;
}

.package-construction-btn {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.select-package-construction-table {
    display: block;
    height: calc(100vh - 18.4rem);
    overflow-y: auto;
}

    .select-package-construction-table tbody td {
        vertical-align: middle;
        font-size: 1rem;
        cursor: pointer;
    }

.package-construction-checkbox {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.package-construction-name {
    width: 100%;
    min-width: 15rem;
}

.package-card-outline {
    min-height: 10rem;
    /*overflow: hidden;*/
}


.text-multi-ellipsis {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3; /*表示最大行*/
    overflow: hidden;
}

/*****************************************
 * ★パック商品一覧画面
 *****************************************/
.package-product-table {
    display: block;
    height: calc(100vh - 9.4rem);
    overflow-y: auto
}

    .package-product-table thead {
        position: sticky;
        top: 0;
    }

        .package-product-table thead td {
            /*background-color: var(--light);*/
            font-weight: bold;
        }

    .package-product-table td {
        font-size: 0.9rem;
        vertical-align: middle;
    }

    .package-product-table tbody td {
        cursor: pointer;
    }

.package-product-maker {
    width: 10rem;
    max-width: 10rem;
    min-width: 10rem;
}

.package-product-name {
    width: 100%;
    min-width: 15rem;
}

.package-product-btn {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.select-package-product-table {
    display: block;
    height: calc(100vh - 20rem);
    overflow-y: auto;
}

    .select-package-product-table tbody td {
        vertical-align: middle;
        font-size: 1rem;
        cursor: pointer;
    }

.package-product-checkbox {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}
/*****************************************
 * ★パック選択項目一覧画面
 *****************************************/
.package-set-choice-table {
    display: block;
    height: calc(100vh - 7.6rem);
    overflow-y: auto
}

    .package-set-choice-table thead {
        position: sticky;
        top: 0;
    }

        .package-set-choice-table thead td {
            /*background-color: var(--light);*/
            font-weight: bold;
        }

    .package-set-choice-table td {
        font-size: 0.9rem;
        vertical-align: middle;
    }

    .package-set-choice-table tbody tr.set-choice-row td {
        background-color: white;
    }

    .package-set-choice-table tbody td {
        cursor: pointer;
    }

.package-set-choice-name {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.package-choice-name {
    width: 100%;
    min-width: 15rem;
}

.package-set-choice-isselect {
    width: 6rem;
    max-width: 6rem;
    min-width: 6rem;
}

.package-set-choice-btn {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
    padding: 0 !important;
}

    .package-set-choice-btn button {
        padding: 0;
    }

.select-package-set-choice-table {
    display: block;
    height: calc(100vh - 20rem);
    overflow-y: auto;
}

    .select-package-set-choice-table tbody td {
        vertical-align: middle;
        font-size: 1rem;
        cursor: pointer;
    }

.package-set-choice-checkbox {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.select-package-choice-table {
    display: block;
    height: calc(100vh - 20rem);
    overflow-y: auto;
}

    .select-package-choice-table thead {
        position: sticky;
        top: 0;
    }

        .select-package-choice-table thead td {
            background-color: var(--light);
            font-weight: bold;
        }

    .select-package-choice-table td {
        font-size: 0.9rem;
        vertical-align: middle;
    }

.package-set-choice-table tbody td {
    cursor: pointer;
}

.select-package-choice-table tbody td {
    vertical-align: middle;
    font-size: 1rem;
    cursor: pointer;
}

.package-choice-checkbox {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.package-choice-select {
    padding: 0;
    width: 6rem;
    max-width: 6rem;
    min-width: 6rem;
}

.package-choice-name {
    width: 100%;
    min-width: 15rem;
}
/*****************************************
 * ★システム管理
 *****************************************/
/*** サイドメニュー ***/
.side-menu-container {
    height: calc(100vh);
}

    .side-menu-container .sidebar,
    .side-menu-container .sidebar .navbar {
        padding: 0;
    }

        .side-menu-container .sidebar .navi-toggle {
            height: 3em;
            width: 3em;
        }

#master-list-pane {
    width: 8em;
}

    #master-list-pane,
    #master-list-pane .nav-link {
        opacity: 1;
        -moz-transition: width 0.2s, opacity 0.2s;
        -o-transition: width 0.2s, opacity 0.2s;
        -webkit-transition: width 0.2s, opacity 0.2s;
        transition: width 0.2s, opacity 0.2s;
    }

        #master-list-pane.menu-close,
        #master-list-pane.menu-close .nav-link {
            width: 0;
            opacity: 0;
        }

#side-menu-pane {
    overflow-x: hidden;
    overflow-y: auto;
}

#side-menu {
    padding: 0;
}

    #side-menu .side-menu-text {
        display: block;
        width: 9.5em;
        height: 1.5em;
        opacity: 1;
        overflow: hidden;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }

    #side-menu.menu-close .side-menu-text {
        width: 0;
        opacity: 0;
        overflow: hidden;
    }

    #side-menu .nav-toggle {
        height: 3em;
        width: 3em;
    }

.side-menu-icon {
    display: block;
    text-align: center;
    width: 3em;
    line-height: 0.5rem;
}

/*マスタメニュー切り替えボタン*/
.drawer-bar {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-drawer {
    position: absolute;
    top: 0.5rem;
    left: 0;
    width: 30px;
    height: 26px;
}

    .btn-drawer:focus,
    .btn-drawer.focus {
        box-shadow: none;
    }

.drawer-bar:nth-of-type(1) {
    top: 2px;
}

.drawer-bar:nth-of-type(2) {
    top: 11px;
}

.drawer-bar:nth-of-type(3) {
    bottom: 2px;
}

.btn-drawer.drawer-open .drawer-bar:nth-of-type(1) {
    -moz-transform: translateY(9px) rotate(-45deg);
    -ms-transform: translateY(9px) rotate(-45deg);
    -o-transform: translateY(9px) rotate(-45deg);
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
}

.btn-drawer.drawer-open .drawer-bar:nth-of-type(2) {
    opacity: 0;
}

.btn-drawer.drawer-open .drawer-bar:nth-of-type(3) {
    -moz-transform: translateY(-9px) rotate(45deg);
    -ms-transform: translateY(-9px) rotate(45deg);
    -o-transform: translateY(-9px) rotate(45deg);
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
}
/*****************************************
 * 契約会社一覧画面
 *****************************************/
.company-list {
    display: block;
    height: calc(100vh - 10em);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

    .company-list thead {
        position: sticky;
        top: 0;
    }

        .company-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem 0rem;
            height: 1rem;
        }

    .company-list tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.company-type {
    width: .5rem;
    min-width: .5rem;
}

.company-name {
    width: 100%;
    min-width: 10rem;
}

.company-createAt {
    width: 8rem;
    min-width: 8rem;
}

.company-updatedAt {
    width: 12rem;
    min-width: 12rem;
}

.company-count {
    width: 4rem;
    min-width: 4rem;
}

.company-count-account {
    width: 7rem;
    min-width: 7rem;
}

/*****************************************
 * 契約会社登録/更新画面
 *****************************************/
.payment-price-table {
    display: block;
}

    .payment-price-table thead {
        position: sticky;
        top: 0;
    }

        .payment-price-table thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
            vertical-align: middle;
        }

    .payment-price-table tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.payment-no {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
}

.payment-date, .payment-price {
    width: 10rem;
    max-width: 10rem;
    min-width: 10rem;
    padding: 0 0.25rem !important;
}

.payment-code {
    width: 8rem;
    max-width: 8rem;
    min-width: 8rem;
    padding: 0 0.25rem !important;
}

.payment-remark {
    width: 100%;
    min-width: 12rem;
    padding: 0 0.25rem !important;
}


.payment-btn {
    width: 3rem;
    max-width: 3rem;
    min-width: 3rem;
    padding: 0 !important;
}

    .payment-btn button {
        padding: 0 !important;
    }
/*****************************************
 * 請求一覧画面
 *****************************************/
.payment-company-list {
    display: block;
    height: calc(100vh - 10em);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

    .payment-company-list thead {
        position: sticky;
        top: 0;
    }

        .payment-company-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
        }

    .payment-company-list tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.payment-company-checkbox {
    width: .5rem;
    min-width: .5rem;
    vertical-align: middle !important;
    text-align: center;
}

.payment-company-name {
    width: 100%;
    min-width: 20rem;
}

.payment-company-date {
    width: 10rem;
    min-width: 10rem;
}

/*****************************************
 * 管理者一覧画面
 *****************************************/
.user-list {
    display: block;
    height: calc(100vh - 10em);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

    .user-list thead {
        position: sticky;
        top: 0;
    }

        .user-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
        }

    .user-list tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.user-no {
    width: 3rem;
    min-width: 3rem;
}

.user-username {
    width: 100%;
    min-width: 20rem;
}

.user-rolename {
    width: 15rem;
    min-width: 15rem;
}

.user-status {
    width: 7rem;
    min-width: 7rem;
}

.user-date {
    width: 10rem;
    min-width: 10rem;
}

.user-button {
    width: 7rem;
    min-width: 7rem;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

    .user-button button {
        font-size: 0.8rem;
        width: 100%;
    }
/*****************************************
 * システム情報管理
 *****************************************/
.unit-list {
    display: block;
    height: calc(100vh - 6.4em);
    overflow: auto;
}

    .unit-list thead {
        position: sticky;
        top: 0;
    }

        .unit-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
            background-color: white;
        }

    .unit-list tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.unit-no {
    width: 3rem;
    min-width: 3rem;
}

.unit-name {
    width: 100%;
    min-width: 20rem;
}

.unit-button {
    width: 3rem;
    min-width: 3rem;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.construction-type-list {
    display: block;
    height: calc(100vh - 6.4em);
    overflow: auto;
}

    .construction-type-list thead {
        position: sticky;
        top: 0;
    }

        .construction-type-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
            background-color: white;
        }

    .construction-type-list tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.construction-type-no {
    width: 3rem;
    min-width: 3rem;
}

.construction-type-name {
    width: 100%;
    min-width: 20rem;
}

.construction-type-button {
    width: 3rem;
    min-width: 3rem;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.calculation-condition-table {
    display: block;
    height: calc(100vh - 6.4em);
    overflow: auto;
}

    .calculation-condition-table thead {
        position: sticky;
        top: 0;
    }

        .calculation-condition-table thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
            background-color: white;
        }

    .calculation-condition-table tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.calculation-condition-name {
    width: 100%;
    min-width: 20rem;
}

.calculation-condition-type, .calculation-condition-unit {
    width: 7rem;
    min-width: 7rem;
}

.calculation-condition-width,
.calculation-condition-height {
    width: 5rem;
    min-width: 5rem;
}
/*****************************************
 * マニュアル一覧画面
 *****************************************/
.manual-list {
    display: block;
    height: calc(100vh - 8rem);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

    .manual-list thead {
        position: sticky;
        top: 0;
    }

        .manual-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.9rem;
            padding: .25rem .5rem;
        }

    .manual-list tbody td {
        vertical-align: middle;
        font-size: 1rem;
    }

.manual-name {
    width: 100%;
    min-width: 20rem;
}

.manual-checkbox, .manual-btn {
    width: 3rem;
    min-width: 3rem;
}

.manual-btn {
    padding: 0 !important;
}

.manual-date, .manual-size {
    width: 11rem;
    min-width: 11rem;
}
/*****************************************
 * メール一覧画面
 *****************************************/
.mailqueue-list {
    display: block;
    height: calc(100vh - 7rem);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    margin:0!important;
}

    .mailqueue-list thead {
        position: sticky;
        top: 0;
    }

        .mailqueue-list thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.8rem;
            padding: .25rem .5rem;
        }

    .mailqueue-list tbody td {
        vertical-align: middle;
        font-size: 0.9rem;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow-x: hidden;
    }

.mail-to {
    width: 15rem;
    min-width: 15rem;
    max-width: 15rem;
}

.mail-subject {
    width: 100%;
    min-width: 15rem;
}

.mail-date {
    width: 11rem;
    min-width: 11rem;
    max-width: 11rem;
}

.mail-bool, .mail-count {
    width: 5rem;
    min-width: 5rem;
    max-width: 5rem;
}
/*****************************************
 * DB定義
 *****************************************/
.database-table {
    display: block;
    height: calc(100vh - 8rem);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

    .database-table thead {
        position: sticky;
        top: 0;
    }

        .database-table thead td {
            border: none;
            color: #BFBFBF;
            font-size: 0.8rem;
            padding: .25rem .5rem;
        }

    .database-table tbody td {
        vertical-align: middle;
        font-size: 0.9rem;
    }

.table-name {
    width: 20rem;
    min-width: 20rem;
}

.table-date {
    width: 11rem;
    min-width: 11rem;
}

.table-description {
    width: 100%;
    min-width: 15rem;
}

.table-btn {
    width: 3rem;
    min-width: 3rem;
}

.column-table, .foreign-key-table {
    display: block;
}

    .column-table thead, .foreign-key-table thead {
        position: sticky;
        top: 0;
    }

        .column-table thead td {
            border: none;
            color: #BFBFBF !important;
            font-size: 0.8rem;
            padding: .25rem .5rem;
        }

        .foreign-key-table thead td {
            border: none;
            color: #BFBFBF !important;
            font-size: 0.8rem;
            padding: .25rem .5rem;
            vertical-align: middle;
        }

    .foreign-key-table button {
        font-size: 0.8rem;
    }

    .column-table tbody td {
        vertical-align: middle;
        font-size: 0.8rem;
    }

    .foreign-key-table tbody td {
        vertical-align: middle;
        font-size: 0.8rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.column-primary {
    width: 3rem;
    min-width: 3rem;
}

    .column-primary i {
        color: #FFCC00 !important;
    }

.column-name {
    width: 15rem;
    min-width: 15rem;
}

.column-description {
    width: 100%;
    min-width: 15rem;
}

.column-type {
    width: 7rem;
    min-width: 7rem;
}

.column-null, .column-default, .column-foreign {
    width: 4rem;
    min-width: 4rem;
}

.foreign-key-name {
    width: 100%;
    min-width: 10rem;
}

.foreign-key-column {
    width: 15rem;
    max-width: 15rem;
    min-width: 15rem;
}

.foreign-key-table-name {
    width: 10rem;
    max-width: 10rem;
    min-width: 10rem;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.foreign-key-change {
    width: 6rem;
    max-width: 6rem;
    min-width: 6rem;
}

.fill-factor-list {
    display: block;
    height: calc(100vh - 12.5rem);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

    .fill-factor-list thead {
        position: sticky;
        top: 0;
    }

        .fill-factor-list thead td {
            border: none;
            color: #BFBFBF !important;
            font-size: 0.8rem;
            padding: .25rem .5rem;
        }

    .fill-factor-list tbody td {
        vertical-align: middle;
        font-size: 0.8rem;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow-x: hidden;
    }

.fill-factor-name {
    width: 100%;
    min-width: 15rem;
}

.fill-factor-index, .fill-factor-fragmentation {
    width: 10rem;
    min-width: 10rem;
    max-width: 10rem;
}

.fill-factor-page, .fill-factor-score, .fill-factor {
    width: 5rem;
    min-width: 5rem;
    max-width: 5rem;
}

.query-store-list {
    display: block;
    height: calc(100vh - 12.5rem);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

    .query-store-list thead {
        position: sticky;
        top: 0;
    }

        .query-store-list thead td {
            border: none;
            color: #BFBFBF !important;
            font-size: 0.8rem;
            padding: .25rem .5rem;
        }

    .query-store-list tbody td {
        vertical-align: middle;
        font-size: 0.8rem;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow-x: hidden;
    }

.query-store-id,
.query-store-object-id {
    width: 7rem;
    min-width: 7rem;
    max-width: 7rem;
}

.query-store-object-name {
    width: 100%;
    min-width: 8em;
}

.query-store-time {
    width: 8rem;
    min-width: 8rem;
}

.query-store-query {
    max-width: 18rem;
    width: 18rem;
    min-width: 18rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.query-store-count,
.query-store-plan {
    width: 5rem;
    min-width: 5rem;
}

.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{background-color:rgba(0,0,0,0);border:none;font-size:1em}.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline;list-style:none;padding:0}.select2-container .select2-selection--multiple .select2-selection__clear{background-color:rgba(0,0,0,0);border:none;font-size:1em}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;margin-left:5px;padding:0;max-width:100%;resize:none;height:18px;vertical-align:bottom;font-family:sans-serif;overflow:hidden;word-break:keep-all}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:#fff;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option--selectable{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0 !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px;padding-right:0px}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:rgba(0,0,0,0) rgba(0,0,0,0) #888 rgba(0,0,0,0);border-width:0 4px 5px 4px}.select2-container--default .select2-selection--multiple{background-color:#fff;border:1px solid #aaa;border-radius:4px;cursor:text;padding-bottom:5px;padding-right:5px;position:relative}.select2-container--default .select2-selection--multiple.select2-selection--clearable{padding-right:25px}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;font-weight:bold;height:20px;margin-right:10px;margin-top:5px;position:absolute;right:0;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:inline-block;margin-left:5px;margin-top:5px;padding:0;padding-left:20px;position:relative;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.select2-container--default .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{background-color:rgba(0,0,0,0);border:none;border-right:1px solid #aaa;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#999;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px;position:absolute;left:0;top:0}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus{background-color:#f1f1f1;color:#333;outline:none}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove{border-left:1px solid #aaa;border-right:none;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__clear{float:left;margin-left:10px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:solid #000 1px;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:rgba(0,0,0,0);border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--group{padding:0}.select2-container--default .select2-results__option--disabled{color:#999}.select2-container--default .select2-results__option--selected{background-color:#ddd}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background-color:#5897fb;color:#fff}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:4px;outline:0;background-image:-webkit-linear-gradient(top, white 50%, #eeeeee 100%);background-image:-o-linear-gradient(top, white 50%, #eeeeee 100%);background-image:linear-gradient(to bottom, white 50%, #eeeeee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);background-image:-o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);background-image:linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFCCCCCC", GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:0;border-top-left-radius:4px;border-bottom-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:rgba(0,0,0,0);border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:rgba(0,0,0,0) rgba(0,0,0,0) #888 rgba(0,0,0,0);border-width:0 4px 5px 4px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top, white 0%, #eeeeee 50%);background-image:-o-linear-gradient(top, white 0%, #eeeeee 50%);background-image:linear-gradient(to bottom, white 0%, #eeeeee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top, #eeeeee 50%, white 100%);background-image:-o-linear-gradient(top, #eeeeee 50%, white 100%);background-image:linear-gradient(to bottom, #eeeeee 50%, white 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFFFFFFF", GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:#fff;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0;padding-bottom:5px;padding-right:5px}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;display:inline-block;margin-left:5px;margin-top:5px;padding:0}.select2-container--classic .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{background-color:rgba(0,0,0,0);border:none;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#888;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555;outline:none}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove{border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid rgba(0,0,0,0)}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option--group{padding:0}.select2-container--classic .select2-results__option--disabled{color:gray}.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}
/* ===== Tippy minimal CSS ===== */

.tippy-box {
    position: relative;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.4;
    max-width: 240px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    padding: 6px 10px;
    background: #333;
    color: #fff;
}

    .tippy-box[data-theme^='error'] {
        box-shadow: 0 2px 8px rgba(0,0,0,0.2);
        padding: 6px 10px;
        background: #fff;
        color: #ff0000;
    }

        .tippy-box[data-theme^='error'] > .tippy-arrow {
            border-width: 0!important;
        }

.tippy-box[data-placement^='top'] > .tippy-arrow {
    border-width: 6px 6px 0 6px;
    border-color: #333 transparent transparent transparent;
}

.tippy-box[data-placement^='bottom'] > .tippy-arrow {
    border-width: 0 6px 6px 6px;
    border-color: transparent transparent #333 transparent;
}

.tippy-box[data-placement^='left'] > .tippy-arrow {
    border-width: 6px 0 6px 6px;
    border-color: transparent transparent transparent #333;
}

.tippy-box[data-placement^='right'] > .tippy-arrow {
    border-width: 6px 6px 6px 0;
    border-color: transparent #333 transparent transparent;
}

.spinner-wrapper {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.25);
    z-index: 2000;
}

.spinner {
    width: 5em;
    height: 3em;
    text-align: center;
    margin: calc(50vh - 1.5em) auto 0;
}

    .spinner > div {
        background-color: white;
        height: 100%;
        width: 0.5em;
        display: inline-block;
        -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
        animation: sk-stretchdelay 1.2s infinite ease-in-out;
    }

    .spinner .rect2 {
        -webkit-animation-delay: -1.1s;
        animation-delay: -1.1s;
    }

    .spinner .rect3 {
        -webkit-animation-delay: -1.0s;
        animation-delay: -1.0s;
    }

    .spinner .rect4 {
        -webkit-animation-delay: -0.9s;
        animation-delay: -0.9s;
    }

    .spinner .rect5 {
        -webkit-animation-delay: -0.8s;
        animation-delay: -0.8s;
    }

@-webkit-keyframes sk-stretchdelay {
    0%, 40%, 100% {
        -webkit-transform: scaleY(0.4);
    }

    20% {
        -webkit-transform: scaleY(1.0);
    }
}

@keyframes sk-stretchdelay {
    0%, 40%, 100% {
        transform: scaleY(0.4);
        -webkit-transform: scaleY(0.4);
    }

    20% {
        transform: scaleY(1.0);
        -webkit-transform: scaleY(1.0);
    }
}

