 @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;
     --primary: #007bff;
     --secondary: #6c757d;
     --success: #28a745;
     --info: #17a2b8;
     --warning: #ffc107;
     --danger: #dc3545;
     --light: #f8f9fa;
     --dark: #343a40;
     --breakpoint-xs: 0;
     --breakpoint-sm: 576px;
     --breakpoint-md: 768px;
     --breakpoint-lg: 992px;
     --breakpoint-xl: 1200px;
     --font-family-sans-serif: -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
 }

 *,
 ::after,
 ::before {
     box-sizing: border-box;
 }

 html {
     font-family: sans-serif;
     line-height: 1.15;
     -webkit-text-size-adjust: 100%;
     -webkit-tap-highlight-color: transparent
 }

 article,
 aside,
 figcaption,
 figure,
 footer,
 header,
 hgroup,
 main,
 nav,
 section {
     display: block
 }

 i {
     font-style: normal;
 }

 body {
     margin: 0;
     font-family: -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: #212529;
     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[data-original-title],
 abbr[title] {
     text-decoration: underline;
     -webkit-text-decoration: underline dotted;
     text-decoration: underline dotted;
     cursor: help;
     border-bottom: 0;
     -webkit-text-decoration-skip-ink: none;
     text-decoration-skip-ink: none
 }

 address {
     margin-bottom: 1rem;
     font-style: normal;
     line-height: inherit
 }

 dl,
 ol,
 ul {
     margin-top: 0;
     margin-bottom: 1rem
 }

 ol ol,
 ol ul,
 ul ol,
 ul ul {
     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: #007bff;
     text-decoration: none;
     background-color: transparent
 }

 a:hover {
     color: #0056b3;
     text-decoration: underline
 }

 a:not([href]):not([tabindex]) {
     color: inherit;
     text-decoration: none;
     position: relative;
 }

 a:not([href]):not([tabindex])::before {
     content: "";
     display: block;
     height: 120px;
     margin-top: -120px;
     visibility: hidden;
 }

 @media(min-width:960px) {
     a:not([href]):not([tabindex])::before {
         height: 220px;
         margin-top: -220px;
     }
 }

 a:not([href]):not([tabindex]):focus,
 a:not([href]):not([tabindex]):hover {
     color: inherit;
     text-decoration: none
 }

 a:not([href]):not([tabindex]):focus {
     outline: 0
 }

 code,
 kbd,
 pre,
 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
 }

 button,
 input,
 optgroup,
 select,
 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
 }

 [type=button],
 [type=reset],
 [type=submit],
 button {
     -webkit-appearance: button
 }

 [type=button]:not(:disabled),
 [type=reset]:not(:disabled),
 [type=submit]:not(:disabled),
 button:not(:disabled) {
     cursor: pointer
 }

 [type=button]::-moz-focus-inner,
 [type=reset]::-moz-focus-inner,
 [type=submit]::-moz-focus-inner,
 button::-moz-focus-inner {
     padding: 0;
     border-style: none
 }

 input[type=checkbox],
 input[type=radio] {
     box-sizing: border-box;
     padding: 0
 }

 input[type=date],
 input[type=datetime-local],
 input[type=month],
 input[type=time] {
     -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(0, 0, 0, .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: "\2014\00A0"
 }

 .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: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     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,
 .col-1,
 .col-10,
 .col-11,
 .col-12,
 .col-2,
 .col-3,
 .col-4,
 .col-5,
 .col-6,
 .col-7,
 .col-8,
 .col-9,
 .col-auto,
 .col-lg,
 .col-lg-1,
 .col-lg-10,
 .col-lg-11,
 .col-lg-12,
 .col-lg-2,
 .col-lg-3,
 .col-lg-4,
 .col-lg-5,
 .col-lg-6,
 .col-lg-7,
 .col-lg-8,
 .col-lg-9,
 .col-lg-auto,
 .col-md,
 .col-md-1,
 .col-md-10,
 .col-md-11,
 .col-md-12,
 .col-md-2,
 .col-md-3,
 .col-md-4,
 .col-md-5,
 .col-md-6,
 .col-md-7,
 .col-md-8,
 .col-md-9,
 .col-md-auto,
 .col-sm,
 .col-sm-1,
 .col-sm-10,
 .col-sm-11,
 .col-sm-12,
 .col-sm-2,
 .col-sm-3,
 .col-sm-4,
 .col-sm-5,
 .col-sm-6,
 .col-sm-7,
 .col-sm-8,
 .col-sm-9,
 .col-sm-auto,
 .col-xl,
 .col-xl-1,
 .col-xl-10,
 .col-xl-11,
 .col-xl-12,
 .col-xl-2,
 .col-xl-3,
 .col-xl-4,
 .col-xl-5,
 .col-xl-6,
 .col-xl-7,
 .col-xl-8,
 .col-xl-9,
 .col-xl-auto {
     position: relative;
     width: 100%;
     padding-right: 15px;
     padding-left: 15px
 }

 .col {
     -ms-flex-preferred-size: 0;
     flex-basis: 0;
     -ms-flex-positive: 1;
     flex-grow: 1;
     max-width: 100%
 }

 .col-auto {
     -ms-flex: 0 0 auto;
     flex: 0 0 auto;
     width: auto;
     max-width: 100%
 }

 .col-1 {
     -ms-flex: 0 0 8.333333%;
     flex: 0 0 8.333333%;
     max-width: 8.333333%
 }

 .col-2 {
     -ms-flex: 0 0 16.666667%;
     flex: 0 0 16.666667%;
     max-width: 16.666667%
 }

 .col-3 {
     -ms-flex: 0 0 25%;
     flex: 0 0 25%;
     max-width: 25%
 }

 .col-4 {
     -ms-flex: 0 0 33.333333%;
     flex: 0 0 33.333333%;
     max-width: 33.333333%
 }

 .col-5 {
     -ms-flex: 0 0 41.666667%;
     flex: 0 0 41.666667%;
     max-width: 41.666667%
 }

 .col-6 {
     -ms-flex: 0 0 50%;
     flex: 0 0 50%;
     max-width: 50%
 }

 .col-7 {
     -ms-flex: 0 0 58.333333%;
     flex: 0 0 58.333333%;
     max-width: 58.333333%
 }

 .col-8 {
     -ms-flex: 0 0 66.666667%;
     flex: 0 0 66.666667%;
     max-width: 66.666667%
 }

 .col-9 {
     -ms-flex: 0 0 75%;
     flex: 0 0 75%;
     max-width: 75%
 }

 .col-10 {
     -ms-flex: 0 0 83.333333%;
     flex: 0 0 83.333333%;
     max-width: 83.333333%
 }

 .col-11 {
     -ms-flex: 0 0 91.666667%;
     flex: 0 0 91.666667%;
     max-width: 91.666667%
 }

 .col-12 {
     -ms-flex: 0 0 100%;
     flex: 0 0 100%;
     max-width: 100%
 }

 .order-first {
     -ms-flex-order: -1;
     order: -1
 }

 .order-last {
     -ms-flex-order: 13;
     order: 13
 }

 .order-0 {
     -ms-flex-order: 0;
     order: 0
 }

 .order-1 {
     -ms-flex-order: 1;
     order: 1
 }

 .order-2 {
     -ms-flex-order: 2;
     order: 2
 }

 .order-3 {
     -ms-flex-order: 3;
     order: 3
 }

 .order-4 {
     -ms-flex-order: 4;
     order: 4
 }

 .order-5 {
     -ms-flex-order: 5;
     order: 5
 }

 .order-6 {
     -ms-flex-order: 6;
     order: 6
 }

 .order-7 {
     -ms-flex-order: 7;
     order: 7
 }

 .order-8 {
     -ms-flex-order: 8;
     order: 8
 }

 .order-9 {
     -ms-flex-order: 9;
     order: 9
 }

 .order-10 {
     -ms-flex-order: 10;
     order: 10
 }

 .order-11 {
     -ms-flex-order: 11;
     order: 11
 }

 .order-12 {
     -ms-flex-order: 12;
     order: 12
 }

 .offset-1 {
     margin-left: 8.333333%
 }

 .offset-2 {
     margin-left: 16.666667%
 }

 .offset-3 {
     margin-left: 25%
 }

 .offset-4 {
     margin-left: 33.333333%
 }

 .offset-5 {
     margin-left: 41.666667%
 }

 .offset-6 {
     margin-left: 50%
 }

 .offset-7 {
     margin-left: 58.333333%
 }

 .offset-8 {
     margin-left: 66.666667%
 }

 .offset-9 {
     margin-left: 75%
 }

 .offset-10 {
     margin-left: 83.333333%
 }

 .offset-11 {
     margin-left: 91.666667%
 }

 @media (min-width:576px) {
     .col-sm {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         max-width: 100%
     }

     .col-sm-auto {
         -ms-flex: 0 0 auto;
         flex: 0 0 auto;
         width: auto;
         max-width: 100%
     }

     .col-sm-1 {
         -ms-flex: 0 0 8.333333%;
         flex: 0 0 8.333333%;
         max-width: 8.333333%
     }

     .col-sm-2 {
         -ms-flex: 0 0 16.666667%;
         flex: 0 0 16.666667%;
         max-width: 16.666667%
     }

     .col-sm-3 {
         -ms-flex: 0 0 25%;
         flex: 0 0 25%;
         max-width: 25%
     }

     .col-sm-4 {
         -ms-flex: 0 0 33.333333%;
         flex: 0 0 33.333333%;
         max-width: 33.333333%
     }

     .col-sm-5 {
         -ms-flex: 0 0 41.666667%;
         flex: 0 0 41.666667%;
         max-width: 41.666667%
     }

     .col-sm-6 {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%
     }

     .col-sm-7 {
         -ms-flex: 0 0 58.333333%;
         flex: 0 0 58.333333%;
         max-width: 58.333333%
     }

     .col-sm-8 {
         -ms-flex: 0 0 66.666667%;
         flex: 0 0 66.666667%;
         max-width: 66.666667%
     }

     .col-sm-9 {
         -ms-flex: 0 0 75%;
         flex: 0 0 75%;
         max-width: 75%
     }

     .col-sm-10 {
         -ms-flex: 0 0 83.333333%;
         flex: 0 0 83.333333%;
         max-width: 83.333333%
     }

     .col-sm-11 {
         -ms-flex: 0 0 91.666667%;
         flex: 0 0 91.666667%;
         max-width: 91.666667%
     }

     .col-sm-12 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%
     }

     .order-sm-first {
         -ms-flex-order: -1;
         order: -1
     }

     .order-sm-last {
         -ms-flex-order: 13;
         order: 13
     }

     .order-sm-0 {
         -ms-flex-order: 0;
         order: 0
     }

     .order-sm-1 {
         -ms-flex-order: 1;
         order: 1
     }

     .order-sm-2 {
         -ms-flex-order: 2;
         order: 2
     }

     .order-sm-3 {
         -ms-flex-order: 3;
         order: 3
     }

     .order-sm-4 {
         -ms-flex-order: 4;
         order: 4
     }

     .order-sm-5 {
         -ms-flex-order: 5;
         order: 5
     }

     .order-sm-6 {
         -ms-flex-order: 6;
         order: 6
     }

     .order-sm-7 {
         -ms-flex-order: 7;
         order: 7
     }

     .order-sm-8 {
         -ms-flex-order: 8;
         order: 8
     }

     .order-sm-9 {
         -ms-flex-order: 9;
         order: 9
     }

     .order-sm-10 {
         -ms-flex-order: 10;
         order: 10
     }

     .order-sm-11 {
         -ms-flex-order: 11;
         order: 11
     }

     .order-sm-12 {
         -ms-flex-order: 12;
         order: 12
     }

     .offset-sm-0 {
         margin-left: 0
     }

     .offset-sm-1 {
         margin-left: 8.333333%
     }

     .offset-sm-2 {
         margin-left: 16.666667%
     }

     .offset-sm-3 {
         margin-left: 25%
     }

     .offset-sm-4 {
         margin-left: 33.333333%
     }

     .offset-sm-5 {
         margin-left: 41.666667%
     }

     .offset-sm-6 {
         margin-left: 50%
     }

     .offset-sm-7 {
         margin-left: 58.333333%
     }

     .offset-sm-8 {
         margin-left: 66.666667%
     }

     .offset-sm-9 {
         margin-left: 75%
     }

     .offset-sm-10 {
         margin-left: 83.333333%
     }

     .offset-sm-11 {
         margin-left: 91.666667%
     }
 }

 @media (min-width:768px) {
     .col-md {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         max-width: 100%
     }

     .col-md-auto {
         -ms-flex: 0 0 auto;
         flex: 0 0 auto;
         width: auto;
         max-width: 100%
     }

     .col-md-1 {
         -ms-flex: 0 0 8.333333%;
         flex: 0 0 8.333333%;
         max-width: 8.333333%
     }

     .col-md-2 {
         -ms-flex: 0 0 16.666667%;
         flex: 0 0 16.666667%;
         max-width: 16.666667%
     }

     .col-md-3 {
         -ms-flex: 0 0 25%;
         flex: 0 0 25%;
         max-width: 25%
     }

     .col-md-4 {
         -ms-flex: 0 0 33.333333%;
         flex: 0 0 33.333333%;
         max-width: 33.333333%
     }

     .col-md-5 {
         -ms-flex: 0 0 41.666667%;
         flex: 0 0 41.666667%;
         max-width: 41.666667%
     }

     .col-md-6 {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%
     }

     .col-md-7 {
         -ms-flex: 0 0 58.333333%;
         flex: 0 0 58.333333%;
         max-width: 58.333333%
     }

     .col-md-8 {
         -ms-flex: 0 0 66.666667%;
         flex: 0 0 66.666667%;
         max-width: 66.666667%
     }

     .col-md-9 {
         -ms-flex: 0 0 75%;
         flex: 0 0 75%;
         max-width: 75%
     }

     .col-md-10 {
         -ms-flex: 0 0 83.333333%;
         flex: 0 0 83.333333%;
         max-width: 83.333333%
     }

     .col-md-11 {
         -ms-flex: 0 0 91.666667%;
         flex: 0 0 91.666667%;
         max-width: 91.666667%
     }

     .col-md-12 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%
     }

     .order-md-first {
         -ms-flex-order: -1;
         order: -1
     }

     .order-md-last {
         -ms-flex-order: 13;
         order: 13
     }

     .order-md-0 {
         -ms-flex-order: 0;
         order: 0
     }

     .order-md-1 {
         -ms-flex-order: 1;
         order: 1
     }

     .order-md-2 {
         -ms-flex-order: 2;
         order: 2
     }

     .order-md-3 {
         -ms-flex-order: 3;
         order: 3
     }

     .order-md-4 {
         -ms-flex-order: 4;
         order: 4
     }

     .order-md-5 {
         -ms-flex-order: 5;
         order: 5
     }

     .order-md-6 {
         -ms-flex-order: 6;
         order: 6
     }

     .order-md-7 {
         -ms-flex-order: 7;
         order: 7
     }

     .order-md-8 {
         -ms-flex-order: 8;
         order: 8
     }

     .order-md-9 {
         -ms-flex-order: 9;
         order: 9
     }

     .order-md-10 {
         -ms-flex-order: 10;
         order: 10
     }

     .order-md-11 {
         -ms-flex-order: 11;
         order: 11
     }

     .order-md-12 {
         -ms-flex-order: 12;
         order: 12
     }

     .offset-md-0 {
         margin-left: 0
     }

     .offset-md-1 {
         margin-left: 8.333333%
     }

     .offset-md-2 {
         margin-left: 16.666667%
     }

     .offset-md-3 {
         margin-left: 25%
     }

     .offset-md-4 {
         margin-left: 33.333333%
     }

     .offset-md-5 {
         margin-left: 41.666667%
     }

     .offset-md-6 {
         margin-left: 50%
     }

     .offset-md-7 {
         margin-left: 58.333333%
     }

     .offset-md-8 {
         margin-left: 66.666667%
     }

     .offset-md-9 {
         margin-left: 75%
     }

     .offset-md-10 {
         margin-left: 83.333333%
     }

     .offset-md-11 {
         margin-left: 91.666667%
     }
 }

 @media (min-width:992px) {
     .col-lg {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         max-width: 100%
     }

     .col-lg-auto {
         -ms-flex: 0 0 auto;
         flex: 0 0 auto;
         width: auto;
         max-width: 100%
     }

     .col-lg-1 {
         -ms-flex: 0 0 8.333333%;
         flex: 0 0 8.333333%;
         max-width: 8.333333%
     }

     .col-lg-2 {
         -ms-flex: 0 0 16.666667%;
         flex: 0 0 16.666667%;
         max-width: 16.666667%
     }

     .col-lg-3 {
         -ms-flex: 0 0 25%;
         flex: 0 0 25%;
         max-width: 25%
     }

     .col-lg-4 {
         -ms-flex: 0 0 33.333333%;
         flex: 0 0 33.333333%;
         max-width: 33.333333%
     }

     .col-lg-5 {
         -ms-flex: 0 0 41.666667%;
         flex: 0 0 41.666667%;
         max-width: 41.666667%
     }

     .col-lg-6 {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%
     }

     .col-lg-7 {
         -ms-flex: 0 0 58.333333%;
         flex: 0 0 58.333333%;
         max-width: 58.333333%
     }

     .col-lg-8 {
         -ms-flex: 0 0 66.666667%;
         flex: 0 0 66.666667%;
         max-width: 66.666667%
     }

     .col-lg-9 {
         -ms-flex: 0 0 75%;
         flex: 0 0 75%;
         max-width: 75%
     }

     .col-lg-10 {
         -ms-flex: 0 0 83.333333%;
         flex: 0 0 83.333333%;
         max-width: 83.333333%
     }

     .col-lg-11 {
         -ms-flex: 0 0 91.666667%;
         flex: 0 0 91.666667%;
         max-width: 91.666667%
     }

     .col-lg-12 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%
     }

     .order-lg-first {
         -ms-flex-order: -1;
         order: -1
     }

     .order-lg-last {
         -ms-flex-order: 13;
         order: 13
     }

     .order-lg-0 {
         -ms-flex-order: 0;
         order: 0
     }

     .order-lg-1 {
         -ms-flex-order: 1;
         order: 1
     }

     .order-lg-2 {
         -ms-flex-order: 2;
         order: 2
     }

     .order-lg-3 {
         -ms-flex-order: 3;
         order: 3
     }

     .order-lg-4 {
         -ms-flex-order: 4;
         order: 4
     }

     .order-lg-5 {
         -ms-flex-order: 5;
         order: 5
     }

     .order-lg-6 {
         -ms-flex-order: 6;
         order: 6
     }

     .order-lg-7 {
         -ms-flex-order: 7;
         order: 7
     }

     .order-lg-8 {
         -ms-flex-order: 8;
         order: 8
     }

     .order-lg-9 {
         -ms-flex-order: 9;
         order: 9
     }

     .order-lg-10 {
         -ms-flex-order: 10;
         order: 10
     }

     .order-lg-11 {
         -ms-flex-order: 11;
         order: 11
     }

     .order-lg-12 {
         -ms-flex-order: 12;
         order: 12
     }

     .offset-lg-0 {
         margin-left: 0
     }

     .offset-lg-1 {
         margin-left: 8.333333%
     }

     .offset-lg-2 {
         margin-left: 16.666667%
     }

     .offset-lg-3 {
         margin-left: 25%
     }

     .offset-lg-4 {
         margin-left: 33.333333%
     }

     .offset-lg-5 {
         margin-left: 41.666667%
     }

     .offset-lg-6 {
         margin-left: 50%
     }

     .offset-lg-7 {
         margin-left: 58.333333%
     }

     .offset-lg-8 {
         margin-left: 66.666667%
     }

     .offset-lg-9 {
         margin-left: 75%
     }

     .offset-lg-10 {
         margin-left: 83.333333%
     }

     .offset-lg-11 {
         margin-left: 91.666667%
     }
 }

 @media (min-width:1200px) {
     .col-xl {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         max-width: 100%
     }

     .col-xl-auto {
         -ms-flex: 0 0 auto;
         flex: 0 0 auto;
         width: auto;
         max-width: 100%
     }

     .col-xl-1 {
         -ms-flex: 0 0 8.333333%;
         flex: 0 0 8.333333%;
         max-width: 8.333333%
     }

     .col-xl-2 {
         -ms-flex: 0 0 16.666667%;
         flex: 0 0 16.666667%;
         max-width: 16.666667%
     }

     .col-xl-3 {
         -ms-flex: 0 0 25%;
         flex: 0 0 25%;
         max-width: 25%
     }

     .col-xl-4 {
         -ms-flex: 0 0 33.333333%;
         flex: 0 0 33.333333%;
         max-width: 33.333333%
     }

     .col-xl-5 {
         -ms-flex: 0 0 41.666667%;
         flex: 0 0 41.666667%;
         max-width: 41.666667%
     }

     .col-xl-6 {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%
     }

     .col-xl-7 {
         -ms-flex: 0 0 58.333333%;
         flex: 0 0 58.333333%;
         max-width: 58.333333%
     }

     .col-xl-8 {
         -ms-flex: 0 0 66.666667%;
         flex: 0 0 66.666667%;
         max-width: 66.666667%
     }

     .col-xl-9 {
         -ms-flex: 0 0 75%;
         flex: 0 0 75%;
         max-width: 75%
     }

     .col-xl-10 {
         -ms-flex: 0 0 83.333333%;
         flex: 0 0 83.333333%;
         max-width: 83.333333%
     }

     .col-xl-11 {
         -ms-flex: 0 0 91.666667%;
         flex: 0 0 91.666667%;
         max-width: 91.666667%
     }

     .col-xl-12 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%
     }

     .order-xl-first {
         -ms-flex-order: -1;
         order: -1
     }

     .order-xl-last {
         -ms-flex-order: 13;
         order: 13
     }

     .order-xl-0 {
         -ms-flex-order: 0;
         order: 0
     }

     .order-xl-1 {
         -ms-flex-order: 1;
         order: 1
     }

     .order-xl-2 {
         -ms-flex-order: 2;
         order: 2
     }

     .order-xl-3 {
         -ms-flex-order: 3;
         order: 3
     }

     .order-xl-4 {
         -ms-flex-order: 4;
         order: 4
     }

     .order-xl-5 {
         -ms-flex-order: 5;
         order: 5
     }

     .order-xl-6 {
         -ms-flex-order: 6;
         order: 6
     }

     .order-xl-7 {
         -ms-flex-order: 7;
         order: 7
     }

     .order-xl-8 {
         -ms-flex-order: 8;
         order: 8
     }

     .order-xl-9 {
         -ms-flex-order: 9;
         order: 9
     }

     .order-xl-10 {
         -ms-flex-order: 10;
         order: 10
     }

     .order-xl-11 {
         -ms-flex-order: 11;
         order: 11
     }

     .order-xl-12 {
         -ms-flex-order: 12;
         order: 12
     }

     .offset-xl-0 {
         margin-left: 0
     }

     .offset-xl-1 {
         margin-left: 8.333333%
     }

     .offset-xl-2 {
         margin-left: 16.666667%
     }

     .offset-xl-3 {
         margin-left: 25%
     }

     .offset-xl-4 {
         margin-left: 33.333333%
     }

     .offset-xl-5 {
         margin-left: 41.666667%
     }

     .offset-xl-6 {
         margin-left: 50%
     }

     .offset-xl-7 {
         margin-left: 58.333333%
     }

     .offset-xl-8 {
         margin-left: 66.666667%
     }

     .offset-xl-9 {
         margin-left: 75%
     }

     .offset-xl-10 {
         margin-left: 83.333333%
     }

     .offset-xl-11 {
         margin-left: 91.666667%
     }
 }

 .table {
     width: 100%;
     margin-bottom: 1rem;
     color: #212529
 }

 .table td,
 .table th {
     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 td,
 .table-sm th {
     padding: .3rem
 }

 .table-bordered {
     border: 1px solid #dee2e6
 }

 .table-bordered td,
 .table-bordered th {
     border: 1px solid #dee2e6
 }

 .table-bordered thead td,
 .table-bordered thead th {
     border-bottom-width: 2px
 }

 .table-borderless tbody+tbody,
 .table-borderless td,
 .table-borderless th,
 .table-borderless thead th {
     border: 0
 }

 .table-striped tbody tr:nth-of-type(odd) {
     background-color: rgba(0, 0, 0, .05)
 }

 .table-hover tbody tr:hover {
     color: #212529;
     background-color: rgba(0, 0, 0, .075)
 }

 .table-primary,
 .table-primary>td,
 .table-primary>th {
     background-color: #b8daff
 }

 .table-primary tbody+tbody,
 .table-primary td,
 .table-primary th,
 .table-primary thead th {
     border-color: #7abaff
 }

 .table-hover .table-primary:hover {
     background-color: #9fcdff
 }

 .table-hover .table-primary:hover>td,
 .table-hover .table-primary:hover>th {
     background-color: #9fcdff
 }

 .table-secondary,
 .table-secondary>td,
 .table-secondary>th {
     background-color: #d6d8db
 }

 .table-secondary tbody+tbody,
 .table-secondary td,
 .table-secondary th,
 .table-secondary thead th {
     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>td,
 .table-success>th {
     background-color: #c3e6cb
 }

 .table-success tbody+tbody,
 .table-success td,
 .table-success th,
 .table-success thead th {
     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>td,
 .table-info>th {
     background-color: #bee5eb
 }

 .table-info tbody+tbody,
 .table-info td,
 .table-info th,
 .table-info thead th {
     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>td,
 .table-warning>th {
     background-color: #ffeeba
 }

 .table-warning tbody+tbody,
 .table-warning td,
 .table-warning th,
 .table-warning thead th {
     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>td,
 .table-danger>th {
     background-color: #f5c6cb
 }

 .table-danger tbody+tbody,
 .table-danger td,
 .table-danger th,
 .table-danger thead th {
     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>td,
 .table-light>th {
     background-color: #fdfdfe
 }

 .table-light tbody+tbody,
 .table-light td,
 .table-light th,
 .table-light thead th {
     border-color: #fbfcfc
 }

 .table-hover .table-light:hover {
     background-color: #ececf6
 }

 .table-hover .table-light:hover>td,
 .table-hover .table-light:hover>th {
     background-color: #ececf6
 }

 .table-dark,
 .table-dark>td,
 .table-dark>th {
     background-color: #c6c8ca
 }

 .table-dark tbody+tbody,
 .table-dark td,
 .table-dark th,
 .table-dark thead th {
     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-active,
 .table-active>td,
 .table-active>th {
     background-color: rgba(0, 0, 0, .075)
 }

 .table-hover .table-active:hover {
     background-color: rgba(0, 0, 0, .075)
 }

 .table-hover .table-active:hover>td,
 .table-hover .table-active:hover>th {
     background-color: rgba(0, 0, 0, .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 td,
 .table-dark th,
 .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 + .75rem + 2px);
     padding: .375rem .75rem;
     font-size: 1rem;
     font-weight: 400;
     line-height: 1.5;
     color: #495057;
     background-color: #fff;
     background-clip: padding-box;
     border: 1px solid #ced4da;
     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: #80bdff;
     outline: 0;
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25)
 }

 .form-control::-webkit-input-placeholder {
     color: #6c757d;
     opacity: 1
 }

 .form-control::-moz-placeholder {
     color: #6c757d;
     opacity: 1
 }

 .form-control:-ms-input-placeholder {
     color: #6c757d;
     opacity: 1
 }

 .form-control::-ms-input-placeholder {
     color: #6c757d;
     opacity: 1
 }

 .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(.375rem + 1px);
     padding-bottom: calc(.375rem + 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: .375rem;
     padding-bottom: .375rem;
     margin-bottom: 0;
     line-height: 1.5;
     color: #212529;
     background-color: transparent;
     border: solid transparent;
     border-width: 1px 0
 }

 .form-control-plaintext.form-control-lg,
 .form-control-plaintext.form-control-sm {
     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[multiple],
 select.form-control[size] {
     height: auto
 }

 textarea.form-control {
     height: auto
 }

 .form-group {
     margin-bottom: 1rem
 }

 .form-text {
     display: block;
     margin-top: .25rem
 }

 .form-row {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     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: -ms-inline-flexbox;
     display: inline-flex;
     -ms-flex-align: center;
     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
 }

 .form-control.is-valid,
 .was-validated .form-control:valid {
     border-color: #28a745;
     padding-right: calc(1.5em + .75rem);
     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 + .1875rem);
     background-size: calc(.75em + .375rem) calc(.75em + .375rem)
 }

 .form-control.is-valid:focus,
 .was-validated .form-control:valid:focus {
     border-color: #28a745;
     box-shadow: 0 0 0 .2rem rgba(40, 167, 69, .25)
 }

 .form-control.is-valid~.valid-feedback,
 .form-control.is-valid~.valid-tooltip,
 .was-validated .form-control:valid~.valid-feedback,
 .was-validated .form-control:valid~.valid-tooltip {
     display: block
 }

 .was-validated textarea.form-control:valid,
 textarea.form-control.is-valid {
     padding-right: calc(1.5em + .75rem);
     background-position: top calc(.375em + .1875rem) right calc(.375em + .1875rem)
 }

 .custom-select.is-valid,
 .was-validated .custom-select:valid {
     border-color: #28a745;
     padding-right: calc((1em + .75rem) * 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 + .375rem) calc(.75em + .375rem)
 }

 .custom-select.is-valid:focus,
 .was-validated .custom-select:valid:focus {
     border-color: #28a745;
     box-shadow: 0 0 0 .2rem rgba(40, 167, 69, .25)
 }

 .custom-select.is-valid~.valid-feedback,
 .custom-select.is-valid~.valid-tooltip,
 .was-validated .custom-select:valid~.valid-feedback,
 .was-validated .custom-select:valid~.valid-tooltip {
     display: block
 }

 .form-control-file.is-valid~.valid-feedback,
 .form-control-file.is-valid~.valid-tooltip,
 .was-validated .form-control-file:valid~.valid-feedback,
 .was-validated .form-control-file:valid~.valid-tooltip {
     display: block
 }

 .form-check-input.is-valid~.form-check-label,
 .was-validated .form-check-input:valid~.form-check-label {
     color: #28a745
 }

 .form-check-input.is-valid~.valid-feedback,
 .form-check-input.is-valid~.valid-tooltip,
 .was-validated .form-check-input:valid~.valid-feedback,
 .was-validated .form-check-input:valid~.valid-tooltip {
     display: block
 }

 .custom-control-input.is-valid~.custom-control-label,
 .was-validated .custom-control-input:valid~.custom-control-label {
     color: #28a745
 }

 .custom-control-input.is-valid~.custom-control-label::before,
 .was-validated .custom-control-input:valid~.custom-control-label::before {
     border-color: #28a745
 }

 .custom-control-input.is-valid~.valid-feedback,
 .custom-control-input.is-valid~.valid-tooltip,
 .was-validated .custom-control-input:valid~.valid-feedback,
 .was-validated .custom-control-input:valid~.valid-tooltip {
     display: block
 }

 .custom-control-input.is-valid:checked~.custom-control-label::before,
 .was-validated .custom-control-input:valid:checked~.custom-control-label::before {
     border-color: #34ce57;
     background-color: #34ce57
 }

 .custom-control-input.is-valid:focus~.custom-control-label::before,
 .was-validated .custom-control-input:valid:focus~.custom-control-label::before {
     box-shadow: 0 0 0 .2rem rgba(40, 167, 69, .25)
 }

 .custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,
 .was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before {
     border-color: #28a745
 }

 .custom-file-input.is-valid~.custom-file-label,
 .was-validated .custom-file-input:valid~.custom-file-label {
     border-color: #28a745
 }

 .custom-file-input.is-valid~.valid-feedback,
 .custom-file-input.is-valid~.valid-tooltip,
 .was-validated .custom-file-input:valid~.valid-feedback,
 .was-validated .custom-file-input:valid~.valid-tooltip {
     display: block
 }

 .custom-file-input.is-valid:focus~.custom-file-label,
 .was-validated .custom-file-input: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
 }

 .form-control.is-invalid,
 .was-validated .form-control:invalid {
     border-color: #dc3545;
     padding-right: calc(1.5em + .75rem);
     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 + .1875rem);
     background-size: calc(.75em + .375rem) calc(.75em + .375rem)
 }

 .form-control.is-invalid:focus,
 .was-validated .form-control:invalid:focus {
     border-color: #dc3545;
     box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .25)
 }

 .form-control.is-invalid~.invalid-feedback,
 .form-control.is-invalid~.invalid-tooltip,
 .was-validated .form-control:invalid~.invalid-feedback,
 .was-validated .form-control:invalid~.invalid-tooltip {
     display: block
 }

 .was-validated textarea.form-control:invalid,
 textarea.form-control.is-invalid {
     padding-right: calc(1.5em + .75rem);
     background-position: top calc(.375em + .1875rem) right calc(.375em + .1875rem)
 }

 .custom-select.is-invalid,
 .was-validated .custom-select:invalid {
     border-color: #dc3545;
     padding-right: calc((1em + .75rem) * 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 + .375rem) calc(.75em + .375rem)
 }

 .custom-select.is-invalid:focus,
 .was-validated .custom-select:invalid:focus {
     border-color: #dc3545;
     box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .25)
 }

 .custom-select.is-invalid~.invalid-feedback,
 .custom-select.is-invalid~.invalid-tooltip,
 .was-validated .custom-select:invalid~.invalid-feedback,
 .was-validated .custom-select:invalid~.invalid-tooltip {
     display: block
 }

 .form-control-file.is-invalid~.invalid-feedback,
 .form-control-file.is-invalid~.invalid-tooltip,
 .was-validated .form-control-file:invalid~.invalid-feedback,
 .was-validated .form-control-file:invalid~.invalid-tooltip {
     display: block
 }

 .form-check-input.is-invalid~.form-check-label,
 .was-validated .form-check-input:invalid~.form-check-label {
     color: #dc3545
 }

 .form-check-input.is-invalid~.invalid-feedback,
 .form-check-input.is-invalid~.invalid-tooltip,
 .was-validated .form-check-input:invalid~.invalid-feedback,
 .was-validated .form-check-input:invalid~.invalid-tooltip {
     display: block
 }

 .custom-control-input.is-invalid~.custom-control-label,
 .was-validated .custom-control-input:invalid~.custom-control-label {
     color: #dc3545
 }

 .custom-control-input.is-invalid~.custom-control-label::before,
 .was-validated .custom-control-input:invalid~.custom-control-label::before {
     border-color: #dc3545
 }

 .custom-control-input.is-invalid~.invalid-feedback,
 .custom-control-input.is-invalid~.invalid-tooltip,
 .was-validated .custom-control-input:invalid~.invalid-feedback,
 .was-validated .custom-control-input:invalid~.invalid-tooltip {
     display: block
 }

 .custom-control-input.is-invalid:checked~.custom-control-label::before,
 .was-validated .custom-control-input:invalid:checked~.custom-control-label::before {
     border-color: #e4606d;
     background-color: #e4606d
 }

 .custom-control-input.is-invalid:focus~.custom-control-label::before,
 .was-validated .custom-control-input:invalid:focus~.custom-control-label::before {
     box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .25)
 }

 .custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,
 .was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before {
     border-color: #dc3545
 }

 .custom-file-input.is-invalid~.custom-file-label,
 .was-validated .custom-file-input:invalid~.custom-file-label {
     border-color: #dc3545
 }

 .custom-file-input.is-invalid~.invalid-feedback,
 .custom-file-input.is-invalid~.invalid-tooltip,
 .was-validated .custom-file-input:invalid~.invalid-feedback,
 .was-validated .custom-file-input:invalid~.invalid-tooltip {
     display: block
 }

 .custom-file-input.is-invalid:focus~.custom-file-label,
 .was-validated .custom-file-input:invalid:focus~.custom-file-label {
     border-color: #dc3545;
     box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .25)
 }

 .form-inline {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-flow: row wrap;
     flex-flow: row wrap;
     -ms-flex-align: center;
     align-items: center
 }

 .form-inline .form-check {
     width: 100%
 }

 @media (min-width:576px) {
     .form-inline label {
         display: -ms-flexbox;
         display: flex;
         -ms-flex-align: center;
         align-items: center;
         -ms-flex-pack: center;
         justify-content: center;
         margin-bottom: 0
     }

     .form-inline .form-group {
         display: -ms-flexbox;
         display: flex;
         -ms-flex: 0 0 auto;
         flex: 0 0 auto;
         -ms-flex-flow: row wrap;
         flex-flow: row wrap;
         -ms-flex-align: center;
         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 .custom-select,
     .form-inline .input-group {
         width: auto
     }

     .form-inline .form-check {
         display: -ms-flexbox;
         display: flex;
         -ms-flex-align: center;
         align-items: center;
         -ms-flex-pack: center;
         justify-content: center;
         width: auto;
         padding-left: 0
     }

     .form-inline .form-check-input {
         position: relative;
         -ms-flex-negative: 0;
         flex-shrink: 0;
         margin-top: 0;
         margin-right: .25rem;
         margin-left: 0
     }

     .form-inline .custom-control {
         -ms-flex-align: center;
         align-items: center;
         -ms-flex-pack: 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;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     background-color: transparent;
     border: 1px solid transparent;
     padding: .375rem .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(0, 123, 255, .25)
 }

 .btn.disabled,
 .btn:disabled {
     opacity: .65
 }

 a.btn.disabled,
 fieldset:disabled a.btn {
     pointer-events: none
 }

 .btn-primary {
     color: #fff;
     background-color: #007bff;
     border-color: #007bff
 }

 .btn-primary:hover {
     color: #fff;
     background-color: #0069d9;
     border-color: #0062cc
 }

 .btn-primary.focus,
 .btn-primary:focus {
     box-shadow: 0 0 0 .2rem rgba(38, 143, 255, .5)
 }

 .btn-primary.disabled,
 .btn-primary:disabled {
     color: #fff;
     background-color: #007bff;
     border-color: #007bff
 }

 .btn-primary:not(:disabled):not(.disabled).active,
 .btn-primary:not(:disabled):not(.disabled):active,
 .show>.btn-primary.dropdown-toggle {
     color: #fff;
     background-color: #0062cc;
     border-color: #005cbf
 }

 .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(38, 143, 255, .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: #f8f9fa;
     border-color: #f8f9fa
 }

 .btn-light:hover {
     color: #212529;
     background-color: #e2e6ea;
     border-color: #dae0e5
 }

 .btn-light.focus,
 .btn-light:focus {
     box-shadow: 0 0 0 .2rem rgba(216, 217, 219, .5)
 }

 .btn-light.disabled,
 .btn-light:disabled {
     color: #212529;
     background-color: #f8f9fa;
     border-color: #f8f9fa
 }

 .btn-light:not(:disabled):not(.disabled).active,
 .btn-light:not(:disabled):not(.disabled):active,
 .show>.btn-light.dropdown-toggle {
     color: #212529;
     background-color: #dae0e5;
     border-color: #d3d9df
 }

 .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(216, 217, 219, .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-outline-primary {
     color: #007bff;
     border-color: #007bff
 }

 .btn-outline-primary:hover {
     color: #fff;
     background-color: #007bff;
     border-color: #007bff
 }

 .btn-outline-primary.focus,
 .btn-outline-primary:focus {
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .5)
 }

 .btn-outline-primary.disabled,
 .btn-outline-primary:disabled {
     color: #007bff;
     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: #007bff;
     border-color: #007bff
 }

 .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(0, 123, 255, .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: #f8f9fa;
     border-color: #f8f9fa
 }

 .btn-outline-light:hover {
     color: #212529;
     background-color: #f8f9fa;
     border-color: #f8f9fa
 }

 .btn-outline-light.focus,
 .btn-outline-light:focus {
     box-shadow: 0 0 0 .2rem rgba(248, 249, 250, .5)
 }

 .btn-outline-light.disabled,
 .btn-outline-light:disabled {
     color: #f8f9fa;
     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: #f8f9fa;
     border-color: #f8f9fa
 }

 .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(248, 249, 250, .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-link {
     font-weight: 400;
     color: #007bff;
     text-decoration: none
 }

 .btn-link:hover {
     color: #0056b3;
     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-group-lg>.btn,
 .btn-lg {
     padding: .5rem 1rem;
     font-size: 1.25rem;
     line-height: 1.5;
     border-radius: .3rem
 }

 .btn-group-sm>.btn,
 .btn-sm {
     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=button].btn-block,
 input[type=reset].btn-block,
 input[type=submit].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
     }
 }

 .dropdown,
 .dropleft,
 .dropright,
 .dropup {
     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(0, 0, 0, .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^=bottom],
 .dropdown-menu[x-placement^=left],
 .dropdown-menu[x-placement^=right],
 .dropdown-menu[x-placement^=top] {
     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:focus,
 .dropdown-item:hover {
     color: #16181b;
     text-decoration: none;
     background-color: #f8f9fa
 }

 .dropdown-item.active,
 .dropdown-item:active {
     color: #fff;
     text-decoration: none;
     background-color: #d20031;
 }

 .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: -ms-inline-flexbox;
     display: inline-flex;
     vertical-align: middle
 }

 .btn-group-vertical>.btn,
 .btn-group>.btn {
     position: relative;
     -ms-flex: 1 1 auto;
     flex: 1 1 auto
 }

 .btn-group-vertical>.btn:hover,
 .btn-group>.btn:hover {
     z-index: 1
 }

 .btn-group-vertical>.btn.active,
 .btn-group-vertical>.btn:active,
 .btn-group-vertical>.btn:focus,
 .btn-group>.btn.active,
 .btn-group>.btn:active,
 .btn-group>.btn:focus {
     z-index: 1
 }

 .btn-toolbar {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     -ms-flex-pack: start;
     justify-content: flex-start
 }

 .btn-toolbar .input-group {
     width: auto
 }

 .btn-group>.btn-group:not(:first-child),
 .btn-group>.btn:not(:first-child) {
     margin-left: -1px
 }

 .btn-group>.btn-group:not(:last-child)>.btn,
 .btn-group>.btn:not(:last-child):not(.dropdown-toggle) {
     border-top-right-radius: 0;
     border-bottom-right-radius: 0
 }

 .btn-group>.btn-group:not(:first-child)>.btn,
 .btn-group>.btn:not(:first-child) {
     border-top-left-radius: 0;
     border-bottom-left-radius: 0
 }

 .dropdown-toggle-split {
     padding-right: .5625rem;
     padding-left: .5625rem
 }

 .dropdown-toggle-split::after,
 .dropright .dropdown-toggle-split::after,
 .dropup .dropdown-toggle-split::after {
     margin-left: 0
 }

 .dropleft .dropdown-toggle-split::before {
     margin-right: 0
 }

 .btn-group-sm>.btn+.dropdown-toggle-split,
 .btn-sm+.dropdown-toggle-split {
     padding-right: .375rem;
     padding-left: .375rem
 }

 .btn-group-lg>.btn+.dropdown-toggle-split,
 .btn-lg+.dropdown-toggle-split {
     padding-right: .75rem;
     padding-left: .75rem
 }

 .btn-group-vertical {
     -ms-flex-direction: column;
     flex-direction: column;
     -ms-flex-align: start;
     align-items: flex-start;
     -ms-flex-pack: center;
     justify-content: center
 }

 .btn-group-vertical>.btn,
 .btn-group-vertical>.btn-group {
     width: 100%
 }

 .btn-group-vertical>.btn-group:not(:first-child),
 .btn-group-vertical>.btn:not(:first-child) {
     margin-top: -1px
 }

 .btn-group-vertical>.btn-group:not(:last-child)>.btn,
 .btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle) {
     border-bottom-right-radius: 0;
     border-bottom-left-radius: 0
 }

 .btn-group-vertical>.btn-group:not(:first-child)>.btn,
 .btn-group-vertical>.btn:not(:first-child) {
     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=checkbox],
 .btn-group-toggle>.btn input[type=radio],
 .btn-group-toggle>.btn-group>.btn input[type=checkbox],
 .btn-group-toggle>.btn-group>.btn input[type=radio] {
     position: absolute;
     clip: rect(0, 0, 0, 0);
     pointer-events: none
 }

 .input-group {
     position: relative;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     -ms-flex-align: stretch;
     align-items: stretch;
     width: 100%
 }

 .input-group>.custom-file,
 .input-group>.custom-select,
 .input-group>.form-control,
 .input-group>.form-control-plaintext {
     position: relative;
     -ms-flex: 1 1 auto;
     flex: 1 1 auto;
     width: 1%;
     margin-bottom: 0
 }

 .input-group>.custom-file+.custom-file,
 .input-group>.custom-file+.custom-select,
 .input-group>.custom-file+.form-control,
 .input-group>.custom-select+.custom-file,
 .input-group>.custom-select+.custom-select,
 .input-group>.custom-select+.form-control,
 .input-group>.form-control+.custom-file,
 .input-group>.form-control+.custom-select,
 .input-group>.form-control+.form-control,
 .input-group>.form-control-plaintext+.custom-file,
 .input-group>.form-control-plaintext+.custom-select,
 .input-group>.form-control-plaintext+.form-control {
     margin-left: -1px
 }

 .input-group>.custom-file .custom-file-input:focus~.custom-file-label,
 .input-group>.custom-select:focus,
 .input-group>.form-control:focus {
     z-index: 3
 }

 .input-group>.custom-file .custom-file-input:focus {
     z-index: 4
 }

 .input-group>.custom-select:not(:last-child),
 .input-group>.form-control:not(:last-child) {
     border-top-right-radius: 0;
     border-bottom-right-radius: 0
 }

 .input-group>.custom-select:not(:first-child),
 .input-group>.form-control:not(:first-child) {
     border-top-left-radius: 0;
     border-bottom-left-radius: 0
 }

 .input-group>.custom-file {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: center;
     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-append,
 .input-group-prepend {
     display: -ms-flexbox;
     display: flex
 }

 .input-group-append .btn,
 .input-group-prepend .btn {
     position: relative;
     z-index: 2
 }

 .input-group-append .btn:focus,
 .input-group-prepend .btn:focus {
     z-index: 3
 }

 .input-group-append .btn+.btn,
 .input-group-append .btn+.input-group-text,
 .input-group-append .input-group-text+.btn,
 .input-group-append .input-group-text+.input-group-text,
 .input-group-prepend .btn+.btn,
 .input-group-prepend .btn+.input-group-text,
 .input-group-prepend .input-group-text+.btn,
 .input-group-prepend .input-group-text+.input-group-text {
     margin-left: -1px
 }

 .input-group-prepend {
     margin-right: -1px
 }

 .input-group-append {
     margin-left: -1px
 }

 .input-group-text {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: center;
     align-items: center;
     padding: .375rem .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=checkbox],
 .input-group-text input[type=radio] {
     margin-top: 0
 }

 .input-group-lg>.custom-select,
 .input-group-lg>.form-control:not(textarea) {
     height: calc(1.5em + 1rem + 2px)
 }

 .input-group-lg>.custom-select,
 .input-group-lg>.form-control,
 .input-group-lg>.input-group-append>.btn,
 .input-group-lg>.input-group-append>.input-group-text,
 .input-group-lg>.input-group-prepend>.btn,
 .input-group-lg>.input-group-prepend>.input-group-text {
     padding: .5rem 1rem;
     font-size: 1.25rem;
     line-height: 1.5;
     border-radius: .3rem
 }

 .input-group-sm>.custom-select,
 .input-group-sm>.form-control:not(textarea) {
     height: calc(1.5em + .5rem + 2px)
 }

 .input-group-sm>.custom-select,
 .input-group-sm>.form-control,
 .input-group-sm>.input-group-append>.btn,
 .input-group-sm>.input-group-append>.input-group-text,
 .input-group-sm>.input-group-prepend>.btn,
 .input-group-sm>.input-group-prepend>.input-group-text {
     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-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),
 .input-group>.input-group-append:last-child>.input-group-text:not(:last-child),
 .input-group>.input-group-append:not(:last-child)>.btn,
 .input-group>.input-group-append:not(:last-child)>.input-group-text,
 .input-group>.input-group-prepend>.btn,
 .input-group>.input-group-prepend>.input-group-text {
     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:first-child>.btn:not(:first-child),
 .input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),
 .input-group>.input-group-prepend:not(:first-child)>.btn,
 .input-group>.input-group-prepend:not(:first-child)>.input-group-text {
     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: -ms-inline-flexbox;
     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: #007bff;
     background-color: #007bff
 }

 .custom-control-input:focus~.custom-control-label::before {
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25)
 }

 .custom-control-input:focus:not(:checked)~.custom-control-label::before {
     border-color: #80bdff
 }

 .custom-control-input:not(:disabled):active~.custom-control-label::before {
     color: #fff;
     background-color: #b3d7ff;
     border-color: #b3d7ff
 }

 .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: #007bff;
     background-color: #007bff
 }

 .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(0, 123, 255, .5)
 }

 .custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before {
     background-color: rgba(0, 123, 255, .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(0, 123, 255, .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: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-transform .15s ease-in-out;
     transition: transform .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
     transition: transform .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-transform .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;
     -webkit-transform: translateX(.75rem);
     transform: translateX(.75rem)
 }

 .custom-switch .custom-control-input:disabled:checked~.custom-control-label::before {
     background-color: rgba(0, 123, 255, .5)
 }

 .custom-select {
     display: inline-block;
     width: 100%;
     height: calc(1.5em + .75rem + 2px);
     padding: .375rem 1.75rem .375rem .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;
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none
 }

 .custom-select:focus {
     border-color: #80bdff;
     outline: 0;
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .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 + .75rem + 2px);
     margin-bottom: 0
 }

 .custom-file-input {
     position: relative;
     z-index: 2;
     width: 100%;
     height: calc(1.5em + .75rem + 2px);
     margin: 0;
     opacity: 0
 }

 .custom-file-input:focus~.custom-file-label {
     border-color: #80bdff;
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .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 + .75rem + 2px);
     padding: .375rem .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 + .75rem);
     padding: .375rem .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;
     -webkit-appearance: none;
     -moz-appearance: none;
     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(0, 123, 255, .25)
 }

 .custom-range:focus::-moz-range-thumb {
     box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(0, 123, 255, .25)
 }

 .custom-range:focus::-ms-thumb {
     box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(0, 123, 255, .25)
 }

 .custom-range::-moz-focus-outer {
     border: 0
 }

 .custom-range::-webkit-slider-thumb {
     width: 1rem;
     height: 1rem;
     margin-top: -.25rem;
     background-color: #007bff;
     border: 0;
     border-radius: 1rem;
     transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
     -webkit-appearance: none;
     appearance: none
 }

 @media (prefers-reduced-motion:reduce) {
     .custom-range::-webkit-slider-thumb {
         transition: none
     }
 }

 .custom-range::-webkit-slider-thumb:active {
     background-color: #b3d7ff
 }

 .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: #007bff;
     border: 0;
     border-radius: 1rem;
     transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
     -moz-appearance: none;
     appearance: none
 }

 @media (prefers-reduced-motion:reduce) {
     .custom-range::-moz-range-thumb {
         transition: none
     }
 }

 .custom-range::-moz-range-thumb:active {
     background-color: #b3d7ff
 }

 .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: #007bff;
     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: #b3d7ff
 }

 .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: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     padding-left: 0;
     margin-bottom: 0;
     list-style: none
 }

 .nav-link {
     display: block;
     padding: .5rem 1rem
 }

 .nav-link:focus,
 .nav-link:hover {
     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:focus,
 .nav-tabs .nav-link:hover {
     border-color: #e9ecef #e9ecef #dee2e6
 }

 .nav-tabs .nav-link.disabled {
     color: #6c757d;
     background-color: transparent;
     border-color: transparent
 }

 .nav-tabs .nav-item.show .nav-link,
 .nav-tabs .nav-link.active {
     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: #007bff
 }

 .nav-fill .nav-item {
     -ms-flex: 1 1 auto;
     flex: 1 1 auto;
     text-align: center
 }

 .nav-justified .nav-item {
     -ms-flex-preferred-size: 0;
     flex-basis: 0;
     -ms-flex-positive: 1;
     flex-grow: 1;
     text-align: center
 }

 .tab-content>.tab-pane {
     display: none
 }

 .tab-content>.active {
     display: block
 }

 .navbar {
     position: relative;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     -ms-flex-align: center;
     align-items: center;
     -ms-flex-pack: justify;
     justify-content: space-between;
     padding: .5rem 1rem
 }

 .navbar>.container,
 .navbar>.container-fluid {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     -ms-flex-align: center;
     align-items: center;
     -ms-flex-pack: justify;
     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:focus,
 .navbar-brand:hover {
     text-decoration: none
 }

 .navbar-nav {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     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 {
     -ms-flex-preferred-size: 100%;
     flex-basis: 100%;
     -ms-flex-positive: 1;
     flex-grow: 1;
     -ms-flex-align: center;
     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:focus,
 .navbar-toggler:hover {
     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 {
         -ms-flex-flow: row nowrap;
         flex-flow: row nowrap;
         -ms-flex-pack: start;
         justify-content: flex-start
     }

     .navbar-expand-sm .navbar-nav {
         -ms-flex-direction: row;
         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 {
         -ms-flex-wrap: nowrap;
         flex-wrap: nowrap
     }

     .navbar-expand-sm .navbar-collapse {
         display: -ms-flexbox !important;
         display: flex !important;
         -ms-flex-preferred-size: auto;
         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 {
         -ms-flex-flow: row nowrap;
         flex-flow: row nowrap;
         -ms-flex-pack: start;
         justify-content: flex-start
     }

     .navbar-expand-md .navbar-nav {
         -ms-flex-direction: row;
         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 {
         -ms-flex-wrap: nowrap;
         flex-wrap: nowrap
     }

     .navbar-expand-md .navbar-collapse {
         display: -ms-flexbox !important;
         display: flex !important;
         -ms-flex-preferred-size: auto;
         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 {
         -ms-flex-flow: row nowrap;
         flex-flow: row nowrap;
         -ms-flex-pack: start;
         justify-content: flex-start
     }

     .navbar-expand-lg .navbar-nav {
         -ms-flex-direction: row;
         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 {
         -ms-flex-wrap: nowrap;
         flex-wrap: nowrap
     }

     .navbar-expand-lg .navbar-collapse {
         display: -ms-flexbox !important;
         display: flex !important;
         -ms-flex-preferred-size: auto;
         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 {
         -ms-flex-flow: row nowrap;
         flex-flow: row nowrap;
         -ms-flex-pack: start;
         justify-content: flex-start
     }

     .navbar-expand-xl .navbar-nav {
         -ms-flex-direction: row;
         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 {
         -ms-flex-wrap: nowrap;
         flex-wrap: nowrap
     }

     .navbar-expand-xl .navbar-collapse {
         display: -ms-flexbox !important;
         display: flex !important;
         -ms-flex-preferred-size: auto;
         flex-basis: auto
     }

     .navbar-expand-xl .navbar-toggler {
         display: none
     }
 }

 .navbar-expand {
     -ms-flex-flow: row nowrap;
     flex-flow: row nowrap;
     -ms-flex-pack: start;
     justify-content: flex-start
 }

 .navbar-expand>.container,
 .navbar-expand>.container-fluid {
     padding-right: 0;
     padding-left: 0
 }

 .navbar-expand .navbar-nav {
     -ms-flex-direction: row;
     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 {
     -ms-flex-wrap: nowrap;
     flex-wrap: nowrap
 }

 .navbar-expand .navbar-collapse {
     display: -ms-flexbox !important;
     display: flex !important;
     -ms-flex-preferred-size: auto;
     flex-basis: auto
 }

 .navbar-expand .navbar-toggler {
     display: none
 }

 .navbar-light .navbar-brand {
     color: rgba(0, 0, 0, .9)
 }

 .navbar-light .navbar-brand:focus,
 .navbar-light .navbar-brand:hover {
     color: rgba(0, 0, 0, .9)
 }

 .navbar-light .navbar-nav .nav-link {
     color: rgba(0, 0, 0, .5)
 }

 .navbar-light .navbar-nav .nav-link:focus,
 .navbar-light .navbar-nav .nav-link:hover {
     color: rgba(0, 0, 0, .7)
 }

 .navbar-light .navbar-nav .nav-link.disabled {
     color: rgba(0, 0, 0, .3)
 }

 .navbar-light .navbar-nav .active>.nav-link,
 .navbar-light .navbar-nav .nav-link.active,
 .navbar-light .navbar-nav .nav-link.show,
 .navbar-light .navbar-nav .show>.nav-link {
     color: rgba(0, 0, 0, .9)
 }

 .navbar-light .navbar-toggler {
     color: rgba(0, 0, 0, .5);
     border-color: rgba(0, 0, 0, .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(0, 0, 0, 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(0, 0, 0, .5)
 }

 .navbar-light .navbar-text a {
     color: rgba(0, 0, 0, .9)
 }

 .navbar-light .navbar-text a:focus,
 .navbar-light .navbar-text a:hover {
     color: rgba(0, 0, 0, .9)
 }

 .navbar-dark .navbar-brand {
     color: #fff
 }

 .navbar-dark .navbar-brand:focus,
 .navbar-dark .navbar-brand:hover {
     color: #fff
 }

 .navbar-dark .navbar-nav .nav-link {
     color: rgba(255, 255, 255, .5)
 }

 .navbar-dark .navbar-nav .nav-link:focus,
 .navbar-dark .navbar-nav .nav-link:hover {
     color: rgba(255, 255, 255, .75)
 }

 .navbar-dark .navbar-nav .nav-link.disabled {
     color: rgba(255, 255, 255, .25)
 }

 .navbar-dark .navbar-nav .active>.nav-link,
 .navbar-dark .navbar-nav .nav-link.active,
 .navbar-dark .navbar-nav .nav-link.show,
 .navbar-dark .navbar-nav .show>.nav-link {
     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:focus,
 .navbar-dark .navbar-text a:hover {
     color: #fff
 }

 .card {
     position: relative;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     flex-direction: column;
     min-width: 0;
     word-wrap: break-word;
     background-color: #fff;
     background-clip: border-box;
     border: 1px solid rgba(0, 0, 0, .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 {
     -ms-flex: 1 1 auto;
     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(0, 0, 0, .03);
     border-bottom: 1px solid rgba(0, 0, 0, .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(0, 0, 0, .03);
     border-top: 1px solid rgba(0, 0, 0, .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: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     flex-direction: column
 }

 .card-deck .card {
     margin-bottom: 15px
 }

 @media (min-width:576px) {
     .card-deck {
         -ms-flex-flow: row wrap;
         flex-flow: row wrap;
         margin-right: -15px;
         margin-left: -15px
     }

     .card-deck .card {
         display: -ms-flexbox;
         display: flex;
         -ms-flex: 1 0 0%;
         flex: 1 0 0%;
         -ms-flex-direction: column;
         flex-direction: column;
         margin-right: 15px;
         margin-bottom: 0;
         margin-left: 15px
     }
 }

 .card-group {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     flex-direction: column
 }

 .card-group>.card {
     margin-bottom: 15px
 }

 @media (min-width:576px) {
     .card-group {
         -ms-flex-flow: row wrap;
         flex-flow: row wrap
     }

     .card-group>.card {
         -ms-flex: 1 0 0%;
         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-header,
     .card-group>.card:not(:last-child) .card-img-top {
         border-top-right-radius: 0
     }

     .card-group>.card:not(:last-child) .card-footer,
     .card-group>.card:not(:last-child) .card-img-bottom {
         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-header,
     .card-group>.card:not(:first-child) .card-img-top {
         border-top-left-radius: 0
     }

     .card-group>.card:not(:first-child) .card-footer,
     .card-group>.card:not(:first-child) .card-img-bottom {
         border-bottom-left-radius: 0
     }
 }

 .card-columns .card {
     margin-bottom: .75rem
 }

 @media (min-width:576px) {
     .card-columns {
         -webkit-column-count: 3;
         -moz-column-count: 3;
         column-count: 3;
         -webkit-column-gap: 1.25rem;
         -moz-column-gap: 1.25rem;
         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: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     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: -ms-flexbox;
     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: #007bff;
     background-color: #fff;
     border: 1px solid #dee2e6
 }

 .page-link:hover {
     z-index: 2;
     color: #0056b3;
     text-decoration: none;
     background-color: #e9ecef;
     border-color: #dee2e6
 }

 .page-link:focus {
     z-index: 2;
     outline: 0;
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .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: #007bff;
     border-color: #007bff
 }

 .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%;
     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:focus,
 a.badge:hover {
     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: #007bff
 }

 a.badge-primary:focus,
 a.badge-primary:hover {
     color: #fff;
     background-color: #0062cc
 }

 a.badge-primary.focus,
 a.badge-primary:focus {
     outline: 0;
     box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .5)
 }

 .badge-secondary {
     color: #fff;
     background-color: #6c757d
 }

 a.badge-secondary:focus,
 a.badge-secondary:hover {
     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:focus,
 a.badge-success:hover {
     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:focus,
 a.badge-info:hover {
     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:focus,
 a.badge-warning:hover {
     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:focus,
 a.badge-danger:hover {
     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: #f8f9fa
 }

 a.badge-light:focus,
 a.badge-light:hover {
     color: #212529;
     background-color: #dae0e5
 }

 a.badge-light.focus,
 a.badge-light:focus {
     outline: 0;
     box-shadow: 0 0 0 .2rem rgba(248, 249, 250, .5)
 }

 .badge-dark {
     color: #fff;
     background-color: #343a40
 }

 a.badge-dark:focus,
 a.badge-dark:hover {
     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)
 }

 .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-dismissible {
     padding-right: 4rem
 }

 .alert-dismissible .close {
     position: absolute;
     top: 0;
     right: 0;
     padding: .75rem 1.25rem;
     color: inherit
 }

 .alert-primary {
     color: #004085;
     background-color: #cce5ff;
     border-color: #b8daff
 }

 .alert-primary hr {
     border-top-color: #9fcdff
 }

 .alert-primary .alert-link {
     color: #002752
 }

 .alert-secondary {
     color: #383d41;
     background-color: #e2e3e5;
     border-color: #d6d8db
 }

 .alert-secondary hr {
     border-top-color: #c8cbcf
 }

 .alert-secondary .alert-link {
     color: #202326
 }

 .alert-success {
     color: #155724;
     background-color: #d4edda;
     border-color: #c3e6cb
 }

 .alert-success hr {
     border-top-color: #b1dfbb
 }

 .alert-success .alert-link {
     color: #0b2e13
 }

 .alert-info {
     color: #0c5460;
     background-color: #d1ecf1;
     border-color: #bee5eb
 }

 .alert-info hr {
     border-top-color: #abdde5
 }

 .alert-info .alert-link {
     color: #062c33
 }

 .alert-warning {
     color: #856404;
     background-color: #fff3cd;
     border-color: #ffeeba
 }

 .alert-warning hr {
     border-top-color: #ffe8a1
 }

 .alert-warning .alert-link {
     color: #533f03
 }

 .alert-danger {
     color: #721c24;
     background-color: #f8d7da;
     border-color: #f5c6cb
 }

 .alert-danger hr {
     border-top-color: #f1b0b7
 }

 .alert-danger .alert-link {
     color: #491217
 }

 .alert-light {
     color: #818182;
     background-color: #fefefe;
     border-color: #fdfdfe
 }

 .alert-light hr {
     border-top-color: #ececf6
 }

 .alert-light .alert-link {
     color: #686868
 }

 .alert-dark {
     color: #1b1e21;
     background-color: #d6d8d9;
     border-color: #c6c8ca
 }

 .alert-dark hr {
     border-top-color: #b9bbbe
 }

 .alert-dark .alert-link {
     color: #040505
 }

 @-webkit-keyframes progress-bar-stripes {
     from {
         background-position: 1rem 0
     }

     to {
         background-position: 0 0
     }
 }

 @keyframes progress-bar-stripes {
     from {
         background-position: 1rem 0
     }

     to {
         background-position: 0 0
     }
 }

 .progress {
     display: -ms-flexbox;
     display: flex;
     height: 1rem;
     overflow: hidden;
     font-size: .75rem;
     background-color: #e9ecef;
     border-radius: .25rem
 }

 .progress-bar {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     flex-direction: column;
     -ms-flex-pack: center;
     justify-content: center;
     color: #fff;
     text-align: center;
     white-space: nowrap;
     background-color: #007bff;
     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 {
     -webkit-animation: progress-bar-stripes 1s linear infinite;
     animation: progress-bar-stripes 1s linear infinite
 }

 @media (prefers-reduced-motion:reduce) {
     .progress-bar-animated {
         -webkit-animation: none;
         animation: none
     }
 }

 .media {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: start;
     align-items: flex-start
 }

 .media-body {
     -ms-flex: 1;
     flex: 1
 }

 .list-group {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     flex-direction: column;
     padding-left: 0;
     margin-bottom: 0
 }

 .list-group-item-action {
     width: 100%;
     color: #495057;
     text-align: inherit
 }

 .list-group-item-action:focus,
 .list-group-item-action:hover {
     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(0, 0, 0, .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: #007bff;
     border-color: #007bff
 }

 .list-group-horizontal {
     -ms-flex-direction: row;
     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 {
         -ms-flex-direction: row;
         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 {
         -ms-flex-direction: row;
         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 {
         -ms-flex-direction: row;
         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 {
         -ms-flex-direction: row;
         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: #004085;
     background-color: #b8daff
 }

 .list-group-item-primary.list-group-item-action:focus,
 .list-group-item-primary.list-group-item-action:hover {
     color: #004085;
     background-color: #9fcdff
 }

 .list-group-item-primary.list-group-item-action.active {
     color: #fff;
     background-color: #004085;
     border-color: #004085
 }

 .list-group-item-secondary {
     color: #383d41;
     background-color: #d6d8db
 }

 .list-group-item-secondary.list-group-item-action:focus,
 .list-group-item-secondary.list-group-item-action:hover {
     color: #383d41;
     background-color: #c8cbcf
 }

 .list-group-item-secondary.list-group-item-action.active {
     color: #fff;
     background-color: #383d41;
     border-color: #383d41
 }

 .list-group-item-success {
     color: #155724;
     background-color: #c3e6cb
 }

 .list-group-item-success.list-group-item-action:focus,
 .list-group-item-success.list-group-item-action:hover {
     color: #155724;
     background-color: #b1dfbb
 }

 .list-group-item-success.list-group-item-action.active {
     color: #fff;
     background-color: #155724;
     border-color: #155724
 }

 .list-group-item-info {
     color: #0c5460;
     background-color: #bee5eb
 }

 .list-group-item-info.list-group-item-action:focus,
 .list-group-item-info.list-group-item-action:hover {
     color: #0c5460;
     background-color: #abdde5
 }

 .list-group-item-info.list-group-item-action.active {
     color: #fff;
     background-color: #0c5460;
     border-color: #0c5460
 }

 .list-group-item-warning {
     color: #856404;
     background-color: #ffeeba
 }

 .list-group-item-warning.list-group-item-action:focus,
 .list-group-item-warning.list-group-item-action:hover {
     color: #856404;
     background-color: #ffe8a1
 }

 .list-group-item-warning.list-group-item-action.active {
     color: #fff;
     background-color: #856404;
     border-color: #856404
 }

 .list-group-item-danger {
     color: #721c24;
     background-color: #f5c6cb
 }

 .list-group-item-danger.list-group-item-action:focus,
 .list-group-item-danger.list-group-item-action:hover {
     color: #721c24;
     background-color: #f1b0b7
 }

 .list-group-item-danger.list-group-item-action.active {
     color: #fff;
     background-color: #721c24;
     border-color: #721c24
 }

 .list-group-item-light {
     color: #818182;
     background-color: #fdfdfe
 }

 .list-group-item-light.list-group-item-action:focus,
 .list-group-item-light.list-group-item-action:hover {
     color: #818182;
     background-color: #ececf6
 }

 .list-group-item-light.list-group-item-action.active {
     color: #fff;
     background-color: #818182;
     border-color: #818182
 }

 .list-group-item-dark {
     color: #1b1e21;
     background-color: #c6c8ca
 }

 .list-group-item-dark.list-group-item-action:focus,
 .list-group-item-dark.list-group-item-action:hover {
     color: #1b1e21;
     background-color: #b9bbbe
 }

 .list-group-item-dark.list-group-item-action.active {
     color: #fff;
     background-color: #1b1e21;
     border-color: #1b1e21
 }

 .close {
     float: right;
     font-size: 1.5rem;
     line-height: 1;
     color: #000;
     text-shadow: 0 1px 0 #fff;
     opacity: .5
 }

 .close:hover {
     color: #000;
     text-decoration: none
 }

 .close:not(:disabled):not(.disabled):focus,
 .close:not(:disabled):not(.disabled):hover {
     opacity: .75
 }

 button.close {
     padding: 0;
     background-color: transparent;
     border: 0;
     -webkit-appearance: none;
     -moz-appearance: none;
     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(0, 0, 0, .1);
     -webkit-backdrop-filter: blur(10px);
     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: -ms-flexbox;
     display: flex;
     -ms-flex-align: center;
     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: -webkit-transform .3s ease-out;
     transition: transform .3s ease-out;
     transition: transform .3s ease-out, -webkit-transform .3s ease-out;
     -webkit-transform: translate(0, -50px);
     transform: translate(0, -50px)
 }

 @media (prefers-reduced-motion:reduce) {
     .modal.fade .modal-dialog {
         transition: none
     }
 }

 .modal.show .modal-dialog {
     -webkit-transform: none;
     transform: none
 }

 .modal-dialog-scrollable {
     display: -ms-flexbox;
     display: flex;
     max-height: calc(100% - 1rem)
 }

 .modal-dialog-scrollable .modal-content {
     max-height: calc(100vh - 1rem);
     overflow: hidden
 }

 .modal-dialog-scrollable .modal-footer,
 .modal-dialog-scrollable .modal-header {
     -ms-flex-negative: 0;
     flex-shrink: 0
 }

 .modal-dialog-scrollable .modal-body {
     overflow-y: auto
 }

 .modal-dialog-centered {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: center;
     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 {
     -ms-flex-direction: column;
     flex-direction: column;
     -ms-flex-pack: center;
     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: -ms-flexbox;
     display: flex;
     -ms-flex-direction: column;
     flex-direction: column;
     width: 100%;
     pointer-events: auto;
     background-color: #fff;
     background-clip: padding-box;
     border: 1px solid rgba(0, 0, 0, .2);
     border-radius: .3rem;
     outline: 0
 }

 .modal-backdrop {
     position: fixed;
     top: 0;
     left: 0;
     z-index: 1040;
     width: 100vw;
     height: 100vh;
     background-color: #000
 }

 .modal-backdrop.fade {
     opacity: 0
 }

 .modal-backdrop.show {
     opacity: .5
 }

 .modal-header {
     height: 60px;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: start;
     align-items: flex-start;
     -ms-flex-pack: justify;
     justify-content: space-between;
     padding: 1rem 1rem;
     border-bottom: 1px solid #dee2e6;
     border-top-left-radius: .3rem;
     border-top-right-radius: .3rem;
     background: #f3f2f0;
     position: fixed;
     width: 100%;
     z-index: 1;
 }

 .modal-header .close {
     padding: 1rem 1rem;
     margin: -1rem -1rem -1rem auto
 }

 .modal-title {
     margin-bottom: 0;
     line-height: 1.5
 }

 .modal-body {
     position: relative;
     -ms-flex: 1 1 auto;
     flex: 1 1 auto;
     padding: 1rem
 }

 .modal-footer {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: center;
     align-items: center;
     -ms-flex-pack: end;
     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: -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-auto[x-placement^=top],
 .bs-tooltip-top {
     padding: .4rem 0
 }

 .bs-tooltip-auto[x-placement^=top] .arrow,
 .bs-tooltip-top .arrow {
     bottom: 0
 }

 .bs-tooltip-auto[x-placement^=top] .arrow::before,
 .bs-tooltip-top .arrow::before {
     top: 0;
     border-width: .4rem .4rem 0;
     border-top-color: #000
 }

 .bs-tooltip-auto[x-placement^=right],
 .bs-tooltip-right {
     padding: 0 .4rem
 }

 .bs-tooltip-auto[x-placement^=right] .arrow,
 .bs-tooltip-right .arrow {
     left: 0;
     width: .4rem;
     height: .8rem
 }

 .bs-tooltip-auto[x-placement^=right] .arrow::before,
 .bs-tooltip-right .arrow::before {
     right: 0;
     border-width: .4rem .4rem .4rem 0;
     border-right-color: #000
 }

 .bs-tooltip-auto[x-placement^=bottom],
 .bs-tooltip-bottom {
     padding: .4rem 0;
     min-width: 130px;
 }

 .bs-tooltip-auto[x-placement^=bottom] .arrow,
 .bs-tooltip-bottom .arrow {
     top: 0
 }

 .bs-tooltip-auto[x-placement^=bottom] .arrow::before,
 .bs-tooltip-bottom .arrow::before {
     bottom: 0;
     border-width: 0 .4rem .4rem;
     border-bottom-color: #000
 }

 .bs-tooltip-auto[x-placement^=left],
 .bs-tooltip-left {
     padding: 0 .4rem
 }

 .bs-tooltip-auto[x-placement^=left] .arrow,
 .bs-tooltip-left .arrow {
     right: 0;
     width: .4rem;
     height: .8rem
 }

 .bs-tooltip-auto[x-placement^=left] .arrow::before,
 .bs-tooltip-left .arrow::before {
     left: 0;
     border-width: .4rem 0 .4rem .4rem;
     border-left-color: #000
 }

 .tooltip-inner {
     max-width: 200px;
     padding: .25rem .5rem;
     color: #fff;
     text-align: center;
     background-color: #000;
     border-radius: .25rem
 }

 .popover {
     position: absolute;
     top: 0;
     left: 0;
     z-index: 1060;
     display: block;
     max-width: 276px;
     font-family: -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(0, 0, 0, .2);
     border-radius: .3rem
 }

 .popover .arrow {
     position: absolute;
     display: block;
     width: 1rem;
     height: .5rem;
     margin: 0 .3rem
 }

 .popover .arrow::after,
 .popover .arrow::before {
     position: absolute;
     display: block;
     content: "";
     border-color: transparent;
     border-style: solid
 }

 .bs-popover-auto[x-placement^=top],
 .bs-popover-top {
     margin-bottom: .5rem
 }

 .bs-popover-auto[x-placement^=top]>.arrow,
 .bs-popover-top>.arrow {
     bottom: calc((.5rem + 1px) * -1)
 }

 .bs-popover-auto[x-placement^=top]>.arrow::before,
 .bs-popover-top>.arrow::before {
     bottom: 0;
     border-width: .5rem .5rem 0;
     border-top-color: rgba(0, 0, 0, .25)
 }

 .bs-popover-auto[x-placement^=top]>.arrow::after,
 .bs-popover-top>.arrow::after {
     bottom: 1px;
     border-width: .5rem .5rem 0;
     border-top-color: #fff
 }

 .bs-popover-auto[x-placement^=right],
 .bs-popover-right {
     margin-left: .5rem
 }

 .bs-popover-auto[x-placement^=right]>.arrow,
 .bs-popover-right>.arrow {
     left: calc((.5rem + 1px) * -1);
     width: .5rem;
     height: 1rem;
     margin: .3rem 0
 }

 .bs-popover-auto[x-placement^=right]>.arrow::before,
 .bs-popover-right>.arrow::before {
     left: 0;
     border-width: .5rem .5rem .5rem 0;
     border-right-color: rgba(0, 0, 0, .25)
 }

 .bs-popover-auto[x-placement^=right]>.arrow::after,
 .bs-popover-right>.arrow::after {
     left: 1px;
     border-width: .5rem .5rem .5rem 0;
     border-right-color: #fff
 }

 .bs-popover-auto[x-placement^=bottom],
 .bs-popover-bottom {
     margin-top: .5rem
 }

 .bs-popover-auto[x-placement^=bottom]>.arrow,
 .bs-popover-bottom>.arrow {
     top: calc((.5rem + 1px) * -1)
 }

 .bs-popover-auto[x-placement^=bottom]>.arrow::before,
 .bs-popover-bottom>.arrow::before {
     top: 0;
     border-width: 0 .5rem .5rem .5rem;
     border-bottom-color: rgba(0, 0, 0, .25)
 }

 .bs-popover-auto[x-placement^=bottom]>.arrow::after,
 .bs-popover-bottom>.arrow::after {
     top: 1px;
     border-width: 0 .5rem .5rem .5rem;
     border-bottom-color: #fff
 }

 .bs-popover-auto[x-placement^=bottom] .popover-header::before,
 .bs-popover-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-auto[x-placement^=left],
 .bs-popover-left {
     margin-right: .5rem
 }

 .bs-popover-auto[x-placement^=left]>.arrow,
 .bs-popover-left>.arrow {
     right: calc((.5rem + 1px) * -1);
     width: .5rem;
     height: 1rem;
     margin: .3rem 0
 }

 .bs-popover-auto[x-placement^=left]>.arrow::before,
 .bs-popover-left>.arrow::before {
     right: 0;
     border-width: .5rem 0 .5rem .5rem;
     border-left-color: rgba(0, 0, 0, .25)
 }

 .bs-popover-auto[x-placement^=left]>.arrow::after,
 .bs-popover-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 {
     -ms-touch-action: pan-y;
     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%;
     -webkit-backface-visibility: hidden;
     backface-visibility: hidden;
     transition: -webkit-transform .6s ease-in-out;
     transition: transform .6s ease-in-out;
     transition: transform .6s ease-in-out, -webkit-transform .6s ease-in-out
 }

 @media (prefers-reduced-motion:reduce) {
     .carousel-item {
         transition: none
     }
 }

 .carousel-item-next,
 .carousel-item-prev,
 .carousel-item.active {
     display: block
 }

 .active.carousel-item-right,
 .carousel-item-next:not(.carousel-item-left) {
     -webkit-transform: translateX(100%);
     transform: translateX(100%)
 }

 .active.carousel-item-left,
 .carousel-item-prev:not(.carousel-item-right) {
     -webkit-transform: translateX(-100%);
     transform: translateX(-100%)
 }

 .carousel-fade .carousel-item {
     opacity: 0;
     transition-property: opacity;
     -webkit-transform: none;
     transform: none
 }

 .carousel-fade .carousel-item-next.carousel-item-left,
 .carousel-fade .carousel-item-prev.carousel-item-right,
 .carousel-fade .carousel-item.active {
     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-next,
 .carousel-control-prev {
     position: absolute;
     top: 0;
     bottom: 0;
     z-index: 1;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-align: center;
     align-items: center;
     -ms-flex-pack: center;
     justify-content: center;
     width: 15%;
     color: #fff;
     text-align: center;
     opacity: .5;
     transition: opacity .15s ease
 }

 @media (prefers-reduced-motion:reduce) {

     .carousel-control-next,
     .carousel-control-prev {
         transition: none
     }
 }

 .carousel-control-next:focus,
 .carousel-control-next:hover,
 .carousel-control-prev:focus,
 .carousel-control-prev:hover {
     color: #fff;
     text-decoration: none;
     outline: 0;
     opacity: .9
 }

 .carousel-control-prev {
     left: 0
 }

 .carousel-control-next {
     right: 0
 }

 .carousel-control-next-icon,
 .carousel-control-prev-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: -ms-flexbox;
     display: flex;
     -ms-flex-pack: center;
     justify-content: center;
     padding-left: 0;
     margin-right: 15%;
     margin-left: 15%;
     list-style: none
 }

 .carousel-indicators li {
     box-sizing: content-box;
     -ms-flex: 0 1 auto;
     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
 }

 @-webkit-keyframes spinner-border {
     to {
         -webkit-transform: rotate(360deg);
         transform: rotate(360deg)
     }
 }

 @keyframes spinner-border {
     to {
         -webkit-transform: rotate(360deg);
         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%;
     -webkit-animation: spinner-border .75s linear infinite;
     animation: spinner-border .75s linear infinite
 }

 .spinner-border-sm {
     width: 1rem;
     height: 1rem;
     border-width: .2em
 }

 @-webkit-keyframes spinner-grow {
     0% {
         -webkit-transform: scale(0);
         transform: scale(0)
     }

     50% {
         opacity: 1
     }
 }

 @keyframes spinner-grow {
     0% {
         -webkit-transform: scale(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;
     -webkit-animation: spinner-grow .75s linear infinite;
     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: #007bff !important
 }

 a.bg-primary:focus,
 a.bg-primary:hover,
 button.bg-primary:focus,
 button.bg-primary:hover {
     background-color: #0062cc !important
 }

 .bg-secondary {
     background-color: #6c757d !important
 }

 a.bg-secondary:focus,
 a.bg-secondary:hover,
 button.bg-secondary:focus,
 button.bg-secondary:hover {
     background-color: #545b62 !important
 }

 .bg-success {
     background-color: #28a745 !important
 }

 a.bg-success:focus,
 a.bg-success:hover,
 button.bg-success:focus,
 button.bg-success:hover {
     background-color: #1e7e34 !important
 }

 .bg-info {
     background-color: #17a2b8 !important
 }

 a.bg-info:focus,
 a.bg-info:hover,
 button.bg-info:focus,
 button.bg-info:hover {
     background-color: #117a8b !important
 }

 .bg-warning {
     background-color: #ffc107 !important
 }

 a.bg-warning:focus,
 a.bg-warning:hover,
 button.bg-warning:focus,
 button.bg-warning:hover {
     background-color: #d39e00 !important
 }

 .bg-danger {
     background-color: #dc3545 !important
 }

 a.bg-danger:focus,
 a.bg-danger:hover,
 button.bg-danger:focus,
 button.bg-danger:hover {
     background-color: #bd2130 !important
 }

 .bg-light {
     background-color: #f8f9fa !important
 }

 a.bg-light:focus,
 a.bg-light:hover,
 button.bg-light:focus,
 button.bg-light:hover {
     background-color: #dae0e5 !important
 }

 .bg-dark {
     background-color: #343a40 !important
 }

 a.bg-dark:focus,
 a.bg-dark:hover,
 button.bg-dark:focus,
 button.bg-dark:hover {
     background-color: #1d2124 !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: #007bff !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: #f8f9fa !important
 }

 .border-dark {
     border-color: #343a40 !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: -ms-flexbox !important;
     display: flex !important
 }

 .d-inline-flex {
     display: -ms-inline-flexbox !important;
     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: -ms-flexbox !important;
         display: flex !important
     }

     .d-sm-inline-flex {
         display: -ms-inline-flexbox !important;
         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: -ms-flexbox !important;
         display: flex !important
     }

     .d-md-inline-flex {
         display: -ms-inline-flexbox !important;
         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: -ms-flexbox !important;
         display: flex !important
     }

     .d-lg-inline-flex {
         display: -ms-inline-flexbox !important;
         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: -ms-flexbox !important;
         display: flex !important
     }

     .d-xl-inline-flex {
         display: -ms-inline-flexbox !important;
         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: -ms-flexbox !important;
         display: flex !important
     }

     .d-print-inline-flex {
         display: -ms-inline-flexbox !important;
         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 embed,
 .embed-responsive iframe,
 .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.857143%
 }

 .embed-responsive-16by9::before {
     padding-top: 56.25%
 }

 .embed-responsive-4by3::before {
     padding-top: 75%
 }

 .embed-responsive-1by1::before {
     padding-top: 100%
 }

 .flex-row {
     -ms-flex-direction: row !important;
     flex-direction: row !important
 }

 .flex-column {
     -ms-flex-direction: column !important;
     flex-direction: column !important
 }

 .flex-row-reverse {
     -ms-flex-direction: row-reverse !important;
     flex-direction: row-reverse !important
 }

 .flex-column-reverse {
     -ms-flex-direction: column-reverse !important;
     flex-direction: column-reverse !important
 }

 .flex-wrap {
     -ms-flex-wrap: wrap !important;
     flex-wrap: wrap !important
 }

 .flex-nowrap {
     -ms-flex-wrap: nowrap !important;
     flex-wrap: nowrap !important
 }

 .flex-wrap-reverse {
     -ms-flex-wrap: wrap-reverse !important;
     flex-wrap: wrap-reverse !important
 }

 .flex-fill {
     -ms-flex: 1 1 auto !important;
     flex: 1 1 auto !important
 }

 .flex-grow-0 {
     -ms-flex-positive: 0 !important;
     flex-grow: 0 !important
 }

 .flex-grow-1 {
     -ms-flex-positive: 1 !important;
     flex-grow: 1 !important
 }

 .flex-shrink-0 {
     -ms-flex-negative: 0 !important;
     flex-shrink: 0 !important
 }

 .flex-shrink-1 {
     -ms-flex-negative: 1 !important;
     flex-shrink: 1 !important
 }

 .justify-content-start {
     -ms-flex-pack: start !important;
     justify-content: flex-start !important
 }

 .justify-content-end {
     -ms-flex-pack: end !important;
     justify-content: flex-end !important
 }

 .justify-content-center {
     -ms-flex-pack: center !important;
     justify-content: center !important
 }

 .justify-content-between {
     -ms-flex-pack: justify !important;
     justify-content: space-between !important
 }

 .justify-content-around {
     -ms-flex-pack: distribute !important;
     justify-content: space-around !important
 }

 .align-items-start {
     -ms-flex-align: start !important;
     align-items: flex-start !important
 }

 .align-items-end {
     -ms-flex-align: end !important;
     align-items: flex-end !important
 }

 .align-items-center {
     -ms-flex-align: center !important;
     align-items: center !important
 }

 .align-items-baseline {
     -ms-flex-align: baseline !important;
     align-items: baseline !important
 }

 .align-items-stretch {
     -ms-flex-align: stretch !important;
     align-items: stretch !important
 }

 .align-content-start {
     -ms-flex-line-pack: start !important;
     align-content: flex-start !important
 }

 .align-content-end {
     -ms-flex-line-pack: end !important;
     align-content: flex-end !important
 }

 .align-content-center {
     -ms-flex-line-pack: center !important;
     align-content: center !important
 }

 .align-content-between {
     -ms-flex-line-pack: justify !important;
     align-content: space-between !important
 }

 .align-content-around {
     -ms-flex-line-pack: distribute !important;
     align-content: space-around !important
 }

 .align-content-stretch {
     -ms-flex-line-pack: stretch !important;
     align-content: stretch !important
 }

 .align-self-auto {
     -ms-flex-item-align: auto !important;
     align-self: auto !important
 }

 .align-self-start {
     -ms-flex-item-align: start !important;
     align-self: flex-start !important
 }

 .align-self-end {
     -ms-flex-item-align: end !important;
     align-self: flex-end !important
 }

 .align-self-center {
     -ms-flex-item-align: center !important;
     align-self: center !important
 }

 .align-self-baseline {
     -ms-flex-item-align: baseline !important;
     align-self: baseline !important
 }

 .align-self-stretch {
     -ms-flex-item-align: stretch !important;
     align-self: stretch !important
 }

 @media (min-width:576px) {
     .flex-sm-row {
         -ms-flex-direction: row !important;
         flex-direction: row !important
     }

     .flex-sm-column {
         -ms-flex-direction: column !important;
         flex-direction: column !important
     }

     .flex-sm-row-reverse {
         -ms-flex-direction: row-reverse !important;
         flex-direction: row-reverse !important
     }

     .flex-sm-column-reverse {
         -ms-flex-direction: column-reverse !important;
         flex-direction: column-reverse !important
     }

     .flex-sm-wrap {
         -ms-flex-wrap: wrap !important;
         flex-wrap: wrap !important
     }

     .flex-sm-nowrap {
         -ms-flex-wrap: nowrap !important;
         flex-wrap: nowrap !important
     }

     .flex-sm-wrap-reverse {
         -ms-flex-wrap: wrap-reverse !important;
         flex-wrap: wrap-reverse !important
     }

     .flex-sm-fill {
         -ms-flex: 1 1 auto !important;
         flex: 1 1 auto !important
     }

     .flex-sm-grow-0 {
         -ms-flex-positive: 0 !important;
         flex-grow: 0 !important
     }

     .flex-sm-grow-1 {
         -ms-flex-positive: 1 !important;
         flex-grow: 1 !important
     }

     .flex-sm-shrink-0 {
         -ms-flex-negative: 0 !important;
         flex-shrink: 0 !important
     }

     .flex-sm-shrink-1 {
         -ms-flex-negative: 1 !important;
         flex-shrink: 1 !important
     }

     .justify-content-sm-start {
         -ms-flex-pack: start !important;
         justify-content: flex-start !important
     }

     .justify-content-sm-end {
         -ms-flex-pack: end !important;
         justify-content: flex-end !important
     }

     .justify-content-sm-center {
         -ms-flex-pack: center !important;
         justify-content: center !important
     }

     .justify-content-sm-between {
         -ms-flex-pack: justify !important;
         justify-content: space-between !important
     }

     .justify-content-sm-around {
         -ms-flex-pack: distribute !important;
         justify-content: space-around !important
     }

     .align-items-sm-start {
         -ms-flex-align: start !important;
         align-items: flex-start !important
     }

     .align-items-sm-end {
         -ms-flex-align: end !important;
         align-items: flex-end !important
     }

     .align-items-sm-center {
         -ms-flex-align: center !important;
         align-items: center !important
     }

     .align-items-sm-baseline {
         -ms-flex-align: baseline !important;
         align-items: baseline !important
     }

     .align-items-sm-stretch {
         -ms-flex-align: stretch !important;
         align-items: stretch !important
     }

     .align-content-sm-start {
         -ms-flex-line-pack: start !important;
         align-content: flex-start !important
     }

     .align-content-sm-end {
         -ms-flex-line-pack: end !important;
         align-content: flex-end !important
     }

     .align-content-sm-center {
         -ms-flex-line-pack: center !important;
         align-content: center !important
     }

     .align-content-sm-between {
         -ms-flex-line-pack: justify !important;
         align-content: space-between !important
     }

     .align-content-sm-around {
         -ms-flex-line-pack: distribute !important;
         align-content: space-around !important
     }

     .align-content-sm-stretch {
         -ms-flex-line-pack: stretch !important;
         align-content: stretch !important
     }

     .align-self-sm-auto {
         -ms-flex-item-align: auto !important;
         align-self: auto !important
     }

     .align-self-sm-start {
         -ms-flex-item-align: start !important;
         align-self: flex-start !important
     }

     .align-self-sm-end {
         -ms-flex-item-align: end !important;
         align-self: flex-end !important
     }

     .align-self-sm-center {
         -ms-flex-item-align: center !important;
         align-self: center !important
     }

     .align-self-sm-baseline {
         -ms-flex-item-align: baseline !important;
         align-self: baseline !important
     }

     .align-self-sm-stretch {
         -ms-flex-item-align: stretch !important;
         align-self: stretch !important
     }
 }

 @media (min-width:768px) {
     .flex-md-row {
         -ms-flex-direction: row !important;
         flex-direction: row !important
     }

     .flex-md-column {
         -ms-flex-direction: column !important;
         flex-direction: column !important
     }

     .flex-md-row-reverse {
         -ms-flex-direction: row-reverse !important;
         flex-direction: row-reverse !important
     }

     .flex-md-column-reverse {
         -ms-flex-direction: column-reverse !important;
         flex-direction: column-reverse !important
     }

     .flex-md-wrap {
         -ms-flex-wrap: wrap !important;
         flex-wrap: wrap !important
     }

     .flex-md-nowrap {
         -ms-flex-wrap: nowrap !important;
         flex-wrap: nowrap !important
     }

     .flex-md-wrap-reverse {
         -ms-flex-wrap: wrap-reverse !important;
         flex-wrap: wrap-reverse !important
     }

     .flex-md-fill {
         -ms-flex: 1 1 auto !important;
         flex: 1 1 auto !important
     }

     .flex-md-grow-0 {
         -ms-flex-positive: 0 !important;
         flex-grow: 0 !important
     }

     .flex-md-grow-1 {
         -ms-flex-positive: 1 !important;
         flex-grow: 1 !important
     }

     .flex-md-shrink-0 {
         -ms-flex-negative: 0 !important;
         flex-shrink: 0 !important
     }

     .flex-md-shrink-1 {
         -ms-flex-negative: 1 !important;
         flex-shrink: 1 !important
     }

     .justify-content-md-start {
         -ms-flex-pack: start !important;
         justify-content: flex-start !important
     }

     .justify-content-md-end {
         -ms-flex-pack: end !important;
         justify-content: flex-end !important
     }

     .justify-content-md-center {
         -ms-flex-pack: center !important;
         justify-content: center !important
     }

     .justify-content-md-between {
         -ms-flex-pack: justify !important;
         justify-content: space-between !important
     }

     .justify-content-md-around {
         -ms-flex-pack: distribute !important;
         justify-content: space-around !important
     }

     .align-items-md-start {
         -ms-flex-align: start !important;
         align-items: flex-start !important
     }

     .align-items-md-end {
         -ms-flex-align: end !important;
         align-items: flex-end !important
     }

     .align-items-md-center {
         -ms-flex-align: center !important;
         align-items: center !important
     }

     .align-items-md-baseline {
         -ms-flex-align: baseline !important;
         align-items: baseline !important
     }

     .align-items-md-stretch {
         -ms-flex-align: stretch !important;
         align-items: stretch !important
     }

     .align-content-md-start {
         -ms-flex-line-pack: start !important;
         align-content: flex-start !important
     }

     .align-content-md-end {
         -ms-flex-line-pack: end !important;
         align-content: flex-end !important
     }

     .align-content-md-center {
         -ms-flex-line-pack: center !important;
         align-content: center !important
     }

     .align-content-md-between {
         -ms-flex-line-pack: justify !important;
         align-content: space-between !important
     }

     .align-content-md-around {
         -ms-flex-line-pack: distribute !important;
         align-content: space-around !important
     }

     .align-content-md-stretch {
         -ms-flex-line-pack: stretch !important;
         align-content: stretch !important
     }

     .align-self-md-auto {
         -ms-flex-item-align: auto !important;
         align-self: auto !important
     }

     .align-self-md-start {
         -ms-flex-item-align: start !important;
         align-self: flex-start !important
     }

     .align-self-md-end {
         -ms-flex-item-align: end !important;
         align-self: flex-end !important
     }

     .align-self-md-center {
         -ms-flex-item-align: center !important;
         align-self: center !important
     }

     .align-self-md-baseline {
         -ms-flex-item-align: baseline !important;
         align-self: baseline !important
     }

     .align-self-md-stretch {
         -ms-flex-item-align: stretch !important;
         align-self: stretch !important
     }
 }

 @media (min-width:992px) {
     .flex-lg-row {
         -ms-flex-direction: row !important;
         flex-direction: row !important
     }

     .flex-lg-column {
         -ms-flex-direction: column !important;
         flex-direction: column !important
     }

     .flex-lg-row-reverse {
         -ms-flex-direction: row-reverse !important;
         flex-direction: row-reverse !important
     }

     .flex-lg-column-reverse {
         -ms-flex-direction: column-reverse !important;
         flex-direction: column-reverse !important
     }

     .flex-lg-wrap {
         -ms-flex-wrap: wrap !important;
         flex-wrap: wrap !important
     }

     .flex-lg-nowrap {
         -ms-flex-wrap: nowrap !important;
         flex-wrap: nowrap !important
     }

     .flex-lg-wrap-reverse {
         -ms-flex-wrap: wrap-reverse !important;
         flex-wrap: wrap-reverse !important
     }

     .flex-lg-fill {
         -ms-flex: 1 1 auto !important;
         flex: 1 1 auto !important
     }

     .flex-lg-grow-0 {
         -ms-flex-positive: 0 !important;
         flex-grow: 0 !important
     }

     .flex-lg-grow-1 {
         -ms-flex-positive: 1 !important;
         flex-grow: 1 !important
     }

     .flex-lg-shrink-0 {
         -ms-flex-negative: 0 !important;
         flex-shrink: 0 !important
     }

     .flex-lg-shrink-1 {
         -ms-flex-negative: 1 !important;
         flex-shrink: 1 !important
     }

     .justify-content-lg-start {
         -ms-flex-pack: start !important;
         justify-content: flex-start !important
     }

     .justify-content-lg-end {
         -ms-flex-pack: end !important;
         justify-content: flex-end !important
     }

     .justify-content-lg-center {
         -ms-flex-pack: center !important;
         justify-content: center !important
     }

     .justify-content-lg-between {
         -ms-flex-pack: justify !important;
         justify-content: space-between !important
     }

     .justify-content-lg-around {
         -ms-flex-pack: distribute !important;
         justify-content: space-around !important
     }

     .align-items-lg-start {
         -ms-flex-align: start !important;
         align-items: flex-start !important
     }

     .align-items-lg-end {
         -ms-flex-align: end !important;
         align-items: flex-end !important
     }

     .align-items-lg-center {
         -ms-flex-align: center !important;
         align-items: center !important
     }

     .align-items-lg-baseline {
         -ms-flex-align: baseline !important;
         align-items: baseline !important
     }

     .align-items-lg-stretch {
         -ms-flex-align: stretch !important;
         align-items: stretch !important
     }

     .align-content-lg-start {
         -ms-flex-line-pack: start !important;
         align-content: flex-start !important
     }

     .align-content-lg-end {
         -ms-flex-line-pack: end !important;
         align-content: flex-end !important
     }

     .align-content-lg-center {
         -ms-flex-line-pack: center !important;
         align-content: center !important
     }

     .align-content-lg-between {
         -ms-flex-line-pack: justify !important;
         align-content: space-between !important
     }

     .align-content-lg-around {
         -ms-flex-line-pack: distribute !important;
         align-content: space-around !important
     }

     .align-content-lg-stretch {
         -ms-flex-line-pack: stretch !important;
         align-content: stretch !important
     }

     .align-self-lg-auto {
         -ms-flex-item-align: auto !important;
         align-self: auto !important
     }

     .align-self-lg-start {
         -ms-flex-item-align: start !important;
         align-self: flex-start !important
     }

     .align-self-lg-end {
         -ms-flex-item-align: end !important;
         align-self: flex-end !important
     }

     .align-self-lg-center {
         -ms-flex-item-align: center !important;
         align-self: center !important
     }

     .align-self-lg-baseline {
         -ms-flex-item-align: baseline !important;
         align-self: baseline !important
     }

     .align-self-lg-stretch {
         -ms-flex-item-align: stretch !important;
         align-self: stretch !important
     }
 }

 @media (min-width:1200px) {
     .flex-xl-row {
         -ms-flex-direction: row !important;
         flex-direction: row !important
     }

     .flex-xl-column {
         -ms-flex-direction: column !important;
         flex-direction: column !important
     }

     .flex-xl-row-reverse {
         -ms-flex-direction: row-reverse !important;
         flex-direction: row-reverse !important
     }

     .flex-xl-column-reverse {
         -ms-flex-direction: column-reverse !important;
         flex-direction: column-reverse !important
     }

     .flex-xl-wrap {
         -ms-flex-wrap: wrap !important;
         flex-wrap: wrap !important
     }

     .flex-xl-nowrap {
         -ms-flex-wrap: nowrap !important;
         flex-wrap: nowrap !important
     }

     .flex-xl-wrap-reverse {
         -ms-flex-wrap: wrap-reverse !important;
         flex-wrap: wrap-reverse !important
     }

     .flex-xl-fill {
         -ms-flex: 1 1 auto !important;
         flex: 1 1 auto !important
     }

     .flex-xl-grow-0 {
         -ms-flex-positive: 0 !important;
         flex-grow: 0 !important
     }

     .flex-xl-grow-1 {
         -ms-flex-positive: 1 !important;
         flex-grow: 1 !important
     }

     .flex-xl-shrink-0 {
         -ms-flex-negative: 0 !important;
         flex-shrink: 0 !important
     }

     .flex-xl-shrink-1 {
         -ms-flex-negative: 1 !important;
         flex-shrink: 1 !important
     }

     .justify-content-xl-start {
         -ms-flex-pack: start !important;
         justify-content: flex-start !important
     }

     .justify-content-xl-end {
         -ms-flex-pack: end !important;
         justify-content: flex-end !important
     }

     .justify-content-xl-center {
         -ms-flex-pack: center !important;
         justify-content: center !important
     }

     .justify-content-xl-between {
         -ms-flex-pack: justify !important;
         justify-content: space-between !important
     }

     .justify-content-xl-around {
         -ms-flex-pack: distribute !important;
         justify-content: space-around !important
     }

     .align-items-xl-start {
         -ms-flex-align: start !important;
         align-items: flex-start !important
     }

     .align-items-xl-end {
         -ms-flex-align: end !important;
         align-items: flex-end !important
     }

     .align-items-xl-center {
         -ms-flex-align: center !important;
         align-items: center !important
     }

     .align-items-xl-baseline {
         -ms-flex-align: baseline !important;
         align-items: baseline !important
     }

     .align-items-xl-stretch {
         -ms-flex-align: stretch !important;
         align-items: stretch !important
     }

     .align-content-xl-start {
         -ms-flex-line-pack: start !important;
         align-content: flex-start !important
     }

     .align-content-xl-end {
         -ms-flex-line-pack: end !important;
         align-content: flex-end !important
     }

     .align-content-xl-center {
         -ms-flex-line-pack: center !important;
         align-content: center !important
     }

     .align-content-xl-between {
         -ms-flex-line-pack: justify !important;
         align-content: space-between !important
     }

     .align-content-xl-around {
         -ms-flex-line-pack: distribute !important;
         align-content: space-around !important
     }

     .align-content-xl-stretch {
         -ms-flex-line-pack: stretch !important;
         align-content: stretch !important
     }

     .align-self-xl-auto {
         -ms-flex-item-align: auto !important;
         align-self: auto !important
     }

     .align-self-xl-start {
         -ms-flex-item-align: start !important;
         align-self: flex-start !important
     }

     .align-self-xl-end {
         -ms-flex-item-align: end !important;
         align-self: flex-end !important
     }

     .align-self-xl-center {
         -ms-flex-item-align: center !important;
         align-self: center !important
     }

     .align-self-xl-baseline {
         -ms-flex-item-align: baseline !important;
         align-self: baseline !important
     }

     .align-self-xl-stretch {
         -ms-flex-item-align: stretch !important;
         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: -webkit-sticky !important;
     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:-webkit-sticky) or (position:sticky)) {
     .sticky-top {
         position: -webkit-sticky;
         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(0, 0, 0, .075) !important
 }

 .shadow {
     box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important
 }

 .shadow-lg {
     box-shadow: 0 1rem 3rem rgba(0, 0, 0, .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: #007bff !important
 }

 a.text-primary:focus,
 a.text-primary:hover {
     color: #0056b3 !important
 }

 .text-secondary {
     color: #6c757d !important
 }

 a.text-secondary:focus,
 a.text-secondary:hover {
     color: #494f54 !important
 }

 .text-success {
     color: #28a745 !important
 }

 a.text-success:focus,
 a.text-success:hover {
     color: #19692c !important
 }

 .text-info {
     color: #17a2b8 !important
 }

 a.text-info:focus,
 a.text-info:hover {
     color: #0f6674 !important
 }

 .text-warning {
     color: #ffc107 !important
 }

 a.text-warning:focus,
 a.text-warning:hover {
     color: #ba8b00 !important
 }

 .text-danger {
     color: #dc3545 !important
 }

 a.text-danger:focus,
 a.text-danger:hover {
     color: #a71d2a !important
 }

 .text-light {
     color: #f8f9fa !important
 }

 a.text-light:focus,
 a.text-light:hover {
     color: #cbd3da !important
 }

 .text-dark {
     color: #343a40 !important
 }

 a.text-dark:focus,
 a.text-dark:hover {
     color: #121416 !important
 }

 .text-body {
     color: #212529 !important
 }

 .text-muted {
     color: #6c757d !important
 }

 .text-black-50 {
     color: rgba(0, 0, 0, .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 {

     *,
     ::after,
     ::before {
         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
     }

     blockquote,
     pre {
         border: 1px solid #adb5bd;
         page-break-inside: avoid
     }

     thead {
         display: table-header-group
     }

     img,
     tr {
         page-break-inside: avoid
     }

     h2,
     h3,
     p {
         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 #000
     }

     .table {
         border-collapse: collapse !important
     }

     .table td,
     .table th {
         background-color: #fff !important
     }

     .table-bordered td,
     .table-bordered th {
         border: 1px solid #dee2e6 !important
     }

     .table-dark {
         color: inherit
     }

     .table-dark tbody+tbody,
     .table-dark td,
     .table-dark th,
     .table-dark thead th {
         border-color: #dee2e6
     }

     .table .thead-dark th {
         color: inherit;
         border-color: #dee2e6
     }
 }

 ::placeholder {
     font-size: .9em;
 }

 caption {
     text-align: center;
 }

 .table-nocaption caption {
     display: none;
 }

 @media (max-width: 991.98px) {
     .table-rwd {
         overflow: hidden;
     }

     .table-rwd th {
         display: none;
     }

     .table-rwd td {
         display: block;
     }

     .table-rwd td:before {
         content: attr(data-th) " : ";
         font-weight: bold;
         display: block;
         padding-bottom: .75rem;
     }

     .table-rwd tr+tr {
         border-top: 2px solid;
     }
 }

 @media (max-width: 767.98px) {
     .table-rwd-md {
         overflow: hidden;
     }

     .table-rwd-md th {
         display: none;
     }

     .table-rwd-md td {
         display: block;
     }

     .table-rwd-md td:before {
         content: attr(data-th) " : ";
         font-weight: bold;
         display: block;
         padding-bottom: .75rem;
     }

     .table-rwd-md tr+tr {
         border-top: 2px solid;
     }
 }

 @media (max-width: 575.98px) {
     .table-rwd-sm {
         overflow: hidden;
     }

     .table-rwd-sm th {
         display: none;
     }

     .table-rwd-sm td {
         display: block;
     }

     .table-rwd-sm td:before {
         content: attr(data-th) " : ";
         font-weight: bold;
         display: block;
         padding-bottom: .75rem;
     }

     .table-rwd-sm tr+tr {
         border-top: 2px solid;
     }
 }

 .img-center {
     display: block;
     margin: auto;
 }

 .setbg-cover {
     background-size: cover;
 }

 .setbg-contain {
     background-size: contain;
 }

 .setbg-center {
     background-position: center;
 }

 .setbg-top {
     background-position: center top;
 }

 .img-figure {
     text-align: center;
     margin: auto;
 }

 .img-figure figcaption {
     margin-top: 8px;
 }

 .img-figure figcaption:before {
     content: '\f0de';
     font-family: 'Font Awesome 5 Pro';
     font-size: 1rem;
     margin-right: 8px;
     vertical-align: sub;
     font-weight: 900;
 }

 .form-check {
     position: relative;
     display: block;
     min-height: 1.5rem;
     padding-left: 1.5rem;
 }

 .form-check-input {
     position: absolute;
     z-index: -1;
     opacity: 0;
 }

 .form-check-label {
     position: relative;
     margin-bottom: 0;
 }

 .form-check input:disabled+.form-check-label {
     opacity: 0.65;
     cursor: not-allowed;
 }

 .form-check-label::before,
 .form-check-label::after {
     position: absolute;
     top: .25rem;
     left: -1.25rem;
     display: block;
     width: 1rem;
     height: 1rem;
     content: "";
 }

 .form-check-label::before {
     pointer-events: none;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     background-color: #fff;
     border: 1px solid #dee2e6;
     border-radius: .25rem;
     transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
 }

 .form-check-input:focus~.form-check-label::before {
     box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 0, 0, .1);
 }

 .form-check-label::before {
     background: #dee2e6;
 }

 .form-check-primary input:checked~.form-check-label::before {
     background-color: #007bff;
 }

 .form-check-success input:checked~.form-check-label::before {
     background-color: #28a745;
 }

 .form-check-danger input:checked~.form-check-label::before {
     background-color: #dc3545;
 }

 .form-check-warning input:checked~.form-check-label::before {
     background-color: #ffc107;
 }

 .form-check-info input:checked~.form-check-label::before {
     background-color: #17a2b8;
 }

 .form-check .form-check-input[type="radio"]~.form-check-label::before {
     border-radius: 50%;
 }

 .form-check-label::after {
     background-repeat: no-repeat;
     background-position: center center;
     background-size: 60% 60%;
 }

 .form-check .form-check-input:checked~.form-check-label::after {
     background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23444' 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");
 }

 .form-check .form-check-input[type="radio"]:checked~.form-check-label::after {
     background-size: 50% 50%;
     background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23444'/%3E%3C/svg%3E");
 }

 .form-check-primary .form-check-input:checked~.form-check-label::after,
 .form-check-success .form-check-input:checked~.form-check-label::after,
 .form-check-danger .form-check-input:checked~.form-check-label::after,
 .form-check-warning .form-check-input:checked~.form-check-label::after,
 .form-check-info .form-check-input:checked~.form-check-label::after {
     background-image: url("data:image/svg+xml;charset=utf8,%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");
 }

 .form-check-primary .form-check-input[type="radio"]:checked~.form-check-label::after,
 .form-check-success .form-check-input[type="radio"]:checked~.form-check-label::after,
 .form-check-danger .form-check-input[type="radio"]:checked~.form-check-label::after,
 .form-check-warning .form-check-input[type="radio"]:checked~.form-check-label::after,
 .form-check-info .form-check-input[type="radio"]:checked~.form-check-label::after {
     background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");
 }

 .form-check .form-check-input:indeterminate~.form-check-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='%23444' d='M0 2h4'/%3e%3c/svg%3e);
 }

 .form-check-primary .form-check-input:indeterminate~.form-check-label::after,
 .form-check-success .form-check-input:indeterminate~.form-check-label::after,
 .form-check-danger .form-check-input:indeterminate~.form-check-label::after,
 .form-check-warning .form-check-input:indeterminate~.form-check-label::after,
 .form-check-info .form-check-input:indeterminate~.form-check-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);
 }

 .form-check-inline {
     display: -ms-inline-flexbox;
     display: inline-flex;
     margin-right: 1rem;
 }

 .input-upload {
     position: relative;
 }

 .input-upload>[type=file] {
     position: relative;
     z-index: 2;
     width: 100%;
     height: calc(2.25rem + 2px);
     margin: 0;
     opacity: 0;
 }

 .input-upload span {
     position: absolute;
     width: 100%;
     top: 0;
     right: 0;
     left: 0;
     z-index: 1;
     height: calc(2.25rem + 2px);
     padding: .375rem .75rem;
     line-height: 1.8;
     color: #495057;
     background-color: #fff;
     border: 1px solid #ced4da;
     border-radius: .25rem;
     text-align: left;
     overflow: hidden;
 }

 .input-upload span::after {
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     z-index: 3;
     display: block;
     height: 2.25rem;
     padding: .375rem .75rem;
     line-height: 1.8;
     color: #495057;
     content: "瀏覽檔案";
     background-color: #e9ecef;
     border-left: inherit;
     border-radius: 0 .25rem .25rem 0;
 }

 .input-upload span[data-browse]::after {
     content: attr(data-browse);
 }

 .input-upload>[type=file]:focus~span {
     border-color: #80bdff;
     box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
 }

 .list-group-borderless .list-group-item {
     border: none;
 }

 .disabled,
 :disabled {
     cursor: not-allowed !important;
 }

 @charset "utf-8";

 .bootstrap-select>select.bs-select-hidden,
 select.bs-select-hidden,
 select.selectpicker {
     display: none !important
 }

 .bootstrap-select {
     vertical-align: middle
 }

 .bootstrap-select>.dropdown-toggle {
     position: relative;
     width: 100%;
     text-align: right;
     white-space: nowrap;
     display: -webkit-inline-box;
     display: -webkit-inline-flex;
     display: -ms-inline-flexbox;
     display: inline-flex;
     -webkit-box-align: center;
     -webkit-align-items: center;
     -ms-flex-align: center;
     align-items: center;
     -webkit-box-pack: justify;
     -webkit-justify-content: space-between;
     -ms-flex-pack: justify;
     justify-content: space-between
 }

 .bootstrap-select>.dropdown-toggle:after {
     margin-top: -1px
 }

 .bootstrap-select>.dropdown-toggle.bs-placeholder,
 .bootstrap-select>.dropdown-toggle.bs-placeholder:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder:hover {
     color: #999
 }

 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:hover,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:hover,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:hover,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:hover,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:hover,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:active,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:focus,
 .bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:hover {
     color: rgba(255, 255, 255, .5)
 }

 .bootstrap-select>select {
     position: absolute !important;
     bottom: 0;
     left: 50%;
     display: block !important;
     width: .5px !important;
     height: 100% !important;
     padding: 0 !important;
     opacity: 0 !important;
     border: none;
     z-index: 0 !important
 }

 .bootstrap-select>select.mobile-device {
     top: 0;
     left: 0;
     display: block !important;
     width: 100% !important;
     z-index: 2 !important
 }

 .bootstrap-select.is-invalid .dropdown-toggle,
 .error .bootstrap-select .dropdown-toggle,
 .has-error .bootstrap-select .dropdown-toggle,
 .was-validated .bootstrap-select .selectpicker:invalid+.dropdown-toggle {
     border-color: #b94a48
 }

 .bootstrap-select.is-valid .dropdown-toggle,
 .was-validated .bootstrap-select .selectpicker:valid+.dropdown-toggle {
     border-color: #28a745
 }

 .bootstrap-select.fit-width {
     width: auto !important
 }

 .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
     width: 220px
 }

 .bootstrap-select .dropdown-toggle:focus,
 .bootstrap-select>select.mobile-device:focus+.dropdown-toggle {
     outline: thin dotted #333 !important;
     outline: 5px auto -webkit-focus-ring-color !important;
     outline-offset: -2px
 }

 .bootstrap-select.form-control {
     margin-bottom: 0;
     padding: 0;
     border: none;
     height: auto
 }

 :not(.input-group)>.bootstrap-select.form-control:not([class*=col-]) {
     width: 100%
 }

 .bootstrap-select.form-control.input-group-btn {
     float: none;
     z-index: auto
 }

 .form-inline .bootstrap-select,
 .form-inline .bootstrap-select.form-control:not([class*=col-]) {
     width: auto
 }

 .bootstrap-select:not(.input-group-btn),
 .bootstrap-select[class*=col-] {
     float: none;
     display: inline-block;
     margin-left: 0
 }

 .bootstrap-select.dropdown-menu-right,
 .bootstrap-select[class*=col-].dropdown-menu-right,
 .row .bootstrap-select[class*=col-].dropdown-menu-right {
     float: right
 }

 .form-group .bootstrap-select,
 .form-horizontal .bootstrap-select,
 .form-inline .bootstrap-select {
     margin-bottom: 0
 }

 .form-group-lg .bootstrap-select.form-control,
 .form-group-sm .bootstrap-select.form-control {
     padding: 0
 }

 .form-group-lg .bootstrap-select.form-control .dropdown-toggle,
 .form-group-sm .bootstrap-select.form-control .dropdown-toggle {
     height: 100%;
     font-size: inherit;
     line-height: inherit;
     border-radius: inherit
 }

 .bootstrap-select.form-control-lg .dropdown-toggle,
 .bootstrap-select.form-control-sm .dropdown-toggle {
     font-size: inherit;
     line-height: inherit;
     border-radius: inherit
 }

 .bootstrap-select.form-control-sm .dropdown-toggle {
     padding: .25rem .5rem
 }

 .bootstrap-select.form-control-lg .dropdown-toggle {
     padding: .5rem 1rem
 }

 .form-inline .bootstrap-select .form-control {
     width: 100%
 }

 .bootstrap-select.disabled,
 .bootstrap-select>.disabled {
     cursor: not-allowed
 }

 .bootstrap-select.disabled:focus,
 .bootstrap-select>.disabled:focus {
     outline: 0 !important
 }

 .bootstrap-select.bs-container {
     position: absolute;
     top: 0;
     left: 0;
     height: 0 !important;
     padding: 0 !important
 }

 .bootstrap-select.bs-container .dropdown-menu {
     z-index: 1060
 }

 .bootstrap-select .dropdown-toggle .filter-option {
     position: static;
     top: 0;
     left: 0;
     float: left;
     height: 100%;
     width: 100%;
     text-align: left;
     overflow: hidden;
     -webkit-box-flex: 0;
     -webkit-flex: 0 1 auto;
     -ms-flex: 0 1 auto;
     flex: 0 1 auto
 }

 .bs3.bootstrap-select .dropdown-toggle .filter-option {
     padding-right: inherit
 }

 .input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option {
     position: absolute;
     padding-top: inherit;
     padding-bottom: inherit;
     padding-left: inherit;
     float: none
 }

 .input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option .filter-option-inner {
     padding-right: inherit
 }

 .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
     overflow: hidden
 }

 .bootstrap-select .dropdown-toggle .filter-expand {
     width: 0 !important;
     float: left;
     opacity: 0 !important;
     overflow: hidden
 }

 .bootstrap-select .dropdown-toggle .caret {
     position: absolute;
     top: 50%;
     right: 12px;
     margin-top: -2px;
     vertical-align: middle
 }

 .input-group .bootstrap-select.form-control .dropdown-toggle {
     border-radius: inherit
 }

 .bootstrap-select[class*=col-] .dropdown-toggle {
     width: 100%
 }

 .bootstrap-select .dropdown-menu {
     min-width: 100%;
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box
 }

 .bootstrap-select .dropdown-menu>.inner:focus {
     outline: 0 !important
 }

 .bootstrap-select .dropdown-menu.inner {
     position: static;
     float: none;
     border: 0;
     padding: 0;
     margin: 0;
     border-radius: 0;
     -webkit-box-shadow: none;
     box-shadow: none
 }

 .bootstrap-select .dropdown-menu li {
     position: relative
 }

 .bootstrap-select .dropdown-menu li.active small {
     color: rgba(255, 255, 255, .5) !important
 }

 .bootstrap-select .dropdown-menu li.disabled a {
     cursor: not-allowed
 }

 .bootstrap-select .dropdown-menu li a {
     cursor: pointer;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none
 }

 .bootstrap-select .dropdown-menu li a.opt {
     position: relative;
     padding-left: 2.25em
 }

 .bootstrap-select .dropdown-menu li a span.check-mark {
     display: none
 }

 .bootstrap-select .dropdown-menu li a span.text {
     display: inline-block
 }

 .bootstrap-select .dropdown-menu li small {
     padding-left: .5em
 }

 .bootstrap-select .dropdown-menu .notify {
     position: absolute;
     bottom: 5px;
     width: 96%;
     margin: 0 2%;
     min-height: 26px;
     padding: 3px 5px;
     background: #f5f5f5;
     border: 1px solid #e3e3e3;
     -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
     box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
     pointer-events: none;
     opacity: .9;
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box
 }

 .bootstrap-select .no-results {
     padding: 3px;
     background: #f5f5f5;
     margin: 0 5px;
     white-space: nowrap
 }

 .bootstrap-select.fit-width .dropdown-toggle .filter-option {
     position: static;
     display: inline;
     padding: 0
 }

 .bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,
 .bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner {
     display: inline
 }

 .bootstrap-select.fit-width .dropdown-toggle .bs-caret:before {
     content: '\00a0'
 }

 .bootstrap-select.fit-width .dropdown-toggle .caret {
     position: static;
     top: auto;
     margin-top: -1px
 }

 .bootstrap-select.show-tick .dropdown-menu .selected span.check-mark {
     position: absolute;
     display: inline-block;
     right: 15px;
     top: 5px
 }

 .bootstrap-select.show-tick .dropdown-menu li a span.text {
     margin-right: 34px
 }

 .bootstrap-select .bs-ok-default:after {
     content: '';
     display: block;
     width: .5em;
     height: 1em;
     border-style: solid;
     border-width: 0 .26em .26em 0;
     -webkit-transform: rotate(45deg);
     -ms-transform: rotate(45deg);
     -o-transform: rotate(45deg);
     transform: rotate(45deg)
 }

 .bootstrap-select.show-menu-arrow.open>.dropdown-toggle,
 .bootstrap-select.show-menu-arrow.show>.dropdown-toggle {
     z-index: 1061
 }

 .bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before {
     content: '';
     border-left: 7px solid transparent;
     border-right: 7px solid transparent;
     border-bottom: 7px solid rgba(204, 204, 204, .2);
     position: absolute;
     bottom: -4px;
     left: 9px;
     display: none
 }

 .bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after {
     content: '';
     border-left: 6px solid transparent;
     border-right: 6px solid transparent;
     border-bottom: 6px solid #fff;
     position: absolute;
     bottom: -4px;
     left: 10px;
     display: none
 }

 .bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before {
     bottom: auto;
     top: -4px;
     border-top: 7px solid rgba(204, 204, 204, .2);
     border-bottom: 0
 }

 .bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after {
     bottom: auto;
     top: -4px;
     border-top: 6px solid #fff;
     border-bottom: 0
 }

 .bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before {
     right: 12px;
     left: auto
 }

 .bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after {
     right: 13px;
     left: auto
 }

 .bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:after,
 .bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:before,
 .bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:after,
 .bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:before {
     display: block
 }

 .bs-actionsbox,
 .bs-donebutton,
 .bs-searchbox {
     padding: 4px 8px
 }

 .bs-actionsbox {
     width: 100%;
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box
 }

 .bs-actionsbox .btn-group button {
     width: 50%
 }

 .bs-donebutton {
     float: left;
     width: 100%;
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box
 }

 .bs-donebutton .btn-group button {
     width: 100%
 }

 .bs-searchbox+.bs-actionsbox {
     padding: 0 8px 4px
 }

 .bs-searchbox .form-control {
     margin-bottom: 0;
     width: 100%;
     float: none
 }

 .form-inline .bootstrap-select {
     margin-left: .5rem !important;
     margin-right: .5rem !important
 }

 .form-inline .bootstrap-select+.bootstrap-select {
     margin-left: 0 !important
 }

 .bootstrap-datetimepicker-widget {
     list-style: none
 }

 .bootstrap-datetimepicker-widget.dropdown-menu {
     display: block;
     margin: 2px 0;
     padding: 4px;
     width: 19em
 }

 @media (min-width:576px) {
     .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
         width: 38em
     }
 }

 @media (min-width:768px) {
     .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
         width: 38em
     }
 }

 @media (min-width:992px) {
     .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
         width: 38em
     }
 }

 .bootstrap-datetimepicker-widget.dropdown-menu:after,
 .bootstrap-datetimepicker-widget.dropdown-menu:before {
     content: '';
     display: inline-block;
     position: absolute
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.bottom:before {
     border-left: 7px solid transparent;
     border-right: 7px solid transparent;
     border-bottom: 7px solid #ccc;
     border-bottom-color: rgba(0, 0, 0, .2);
     top: -7px;
     left: 7px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.bottom:after {
     border-left: 6px solid transparent;
     border-right: 6px solid transparent;
     border-bottom: 6px solid #fff;
     top: -6px;
     left: 8px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.top:before {
     border-left: 7px solid transparent;
     border-right: 7px solid transparent;
     border-top: 7px solid #ccc;
     border-top-color: rgba(0, 0, 0, .2);
     bottom: -7px;
     left: 6px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.top:after {
     border-left: 6px solid transparent;
     border-right: 6px solid transparent;
     border-top: 6px solid #fff;
     bottom: -6px;
     left: 7px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.pull-right:before {
     left: auto;
     right: 6px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.pull-right:after {
     left: auto;
     right: 7px
 }

 .bootstrap-datetimepicker-widget .list-unstyled {
     margin: 0
 }

 .bootstrap-datetimepicker-widget a[data-action] {
     padding: 6px 0
 }

 .bootstrap-datetimepicker-widget a[data-action]:active {
     box-shadow: none
 }

 .bootstrap-datetimepicker-widget .timepicker-hour,
 .bootstrap-datetimepicker-widget .timepicker-minute,
 .bootstrap-datetimepicker-widget .timepicker-second {
     width: 54px;
     font-size: 1.2em;
     margin: 0
 }

 .bootstrap-datetimepicker-widget button[data-action] {
     padding: 6px
 }

 .bootstrap-datetimepicker-widget .btn[data-action=incrementHours]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Increment Hours"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=incrementMinutes]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Increment Minutes"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=decrementHours]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Decrement Hours"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=decrementMinutes]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Decrement Minutes"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=showHours]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Show Hours"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=showMinutes]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Show Minutes"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=togglePeriod]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Toggle AM/PM"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=clear]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Clear the picker"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=today]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Set the date to today"
 }

 .bootstrap-datetimepicker-widget .picker-switch {
     text-align: center
 }

 .bootstrap-datetimepicker-widget .picker-switch::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Toggle Date and Time Screens"
 }

 .bootstrap-datetimepicker-widget .picker-switch td {
     padding: 0;
     margin: 0;
     height: auto;
     width: auto;
     line-height: inherit
 }

 .bootstrap-datetimepicker-widget .picker-switch td i,
 .bootstrap-datetimepicker-widget .picker-switch td span {
     line-height: 2.5;
     height: 2.5em;
     width: 100%
 }

 .bootstrap-datetimepicker-widget table {
     width: 100%;
     margin: 0
 }

 .bootstrap-datetimepicker-widget table td,
 .bootstrap-datetimepicker-widget table th {
     text-align: center;
     border-radius: .25rem;
     padding: .5em
 }

 .bootstrap-datetimepicker-widget table th {
     height: 20px;
     line-height: 20px;
     width: 20px
 }

 .bootstrap-datetimepicker-widget table th.picker-switch {
     width: 145px
 }

 .bootstrap-datetimepicker-widget table th.disabled,
 .bootstrap-datetimepicker-widget table th.disabled:hover {
     background: 0 0;
     color: #dee2e6;
     cursor: not-allowed
 }

 .bootstrap-datetimepicker-widget table th.prev::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Previous Month"
 }

 .bootstrap-datetimepicker-widget table th.next::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Next Month"
 }

 .bootstrap-datetimepicker-widget table thead tr:first-child th {
     cursor: pointer
 }

 .bootstrap-datetimepicker-widget table thead tr:first-child th:hover {
     background: #f8f9fa
 }

 .bootstrap-datetimepicker-widget table td {
     height: 54px;
     line-height: 54px;
     width: 54px
 }

 .bootstrap-datetimepicker-widget table td.cw {
     font-size: .8em;
     height: 20px;
     line-height: 20px;
     color: #dee2e6
 }

 .bootstrap-datetimepicker-widget table td.day {
     height: 20px;
     line-height: 20px;
     width: 20px
 }

 .bootstrap-datetimepicker-widget table td.day:hover,
 .bootstrap-datetimepicker-widget table td.hour:hover,
 .bootstrap-datetimepicker-widget table td.minute:hover,
 .bootstrap-datetimepicker-widget table td.second:hover {
     background: #f8f9fa;
     cursor: pointer
 }

 .bootstrap-datetimepicker-widget table td.new,
 .bootstrap-datetimepicker-widget table td.old {
     color: #dee2e6
 }

 .bootstrap-datetimepicker-widget table td.today {
     position: relative
 }

 .bootstrap-datetimepicker-widget table td.today:before {
     content: '';
     display: inline-block;
     border: solid transparent;
     border-width: 0 0 7px 7px;
     border-bottom-color: #dee2e6;
     border-top-color: rgba(0, 0, 0, .2);
     position: absolute;
     bottom: 4px;
     right: 4px
 }

 .bootstrap-datetimepicker-widget table td.active,
 .bootstrap-datetimepicker-widget table td.active:hover {
     background-color: #dee2e6;
     color: #007bff;
     text-shadow: 0 -1px 0 rgba(0, 0, 0, .25)
 }

 .bootstrap-datetimepicker-widget table td.active.today:before {
     border-bottom-color: #fff
 }

 .bootstrap-datetimepicker-widget table td.disabled,
 .bootstrap-datetimepicker-widget table td.disabled:hover {
     background: 0 0;
     color: #dee2e6;
     cursor: not-allowed
 }

 .bootstrap-datetimepicker-widget table td i,
 .bootstrap-datetimepicker-widget table td span {
     display: inline-block;
     width: 54px;
     height: 54px;
     line-height: 54px;
     margin: 2px 1.5px;
     cursor: pointer;
     border-radius: .25rem
 }

 .bootstrap-datetimepicker-widget table td i:hover,
 .bootstrap-datetimepicker-widget table td span:hover {
     background: #f8f9fa
 }

 .bootstrap-datetimepicker-widget table td i.active,
 .bootstrap-datetimepicker-widget table td span.active {
     background-color: #dee2e6;
     color: #007bff;
     text-shadow: 0 -1px 0 rgba(0, 0, 0, .25)
 }

 .bootstrap-datetimepicker-widget table td i.old,
 .bootstrap-datetimepicker-widget table td span.old {
     color: #dee2e6
 }

 .bootstrap-datetimepicker-widget table td i.disabled,
 .bootstrap-datetimepicker-widget table td i.disabled:hover,
 .bootstrap-datetimepicker-widget table td span.disabled,
 .bootstrap-datetimepicker-widget table td span.disabled:hover {
     background: 0 0;
     color: #dee2e6;
     cursor: not-allowed
 }

 .bootstrap-datetimepicker-widget.usetwentyfour td.hour {
     height: 27px;
     line-height: 27px
 }

 .bootstrap-datetimepicker-widget.wider {
     width: 21em
 }

 .bootstrap-datetimepicker-widget .datepicker-decades .decade {
     line-height: 1.8em !important
 }

 .input-group.date .input-group-addon {
     cursor: pointer
 }

 .sr-only {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0
 }

 .bootstrap-datetimepicker-widget {
     list-style: none
 }

 .bootstrap-datetimepicker-widget.dropdown-menu {
     display: block;
     margin: 2px 0;
     padding: 4px;
     width: 19em
 }

 @media (min-width:576px) {
     .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
         width: 38em
     }
 }

 @media (min-width:768px) {
     .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
         width: 38em
     }
 }

 @media (min-width:992px) {
     .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
         width: 38em
     }
 }

 .bootstrap-datetimepicker-widget.dropdown-menu:after,
 .bootstrap-datetimepicker-widget.dropdown-menu:before {
     content: '';
     display: inline-block;
     position: absolute
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.bottom:before {
     border-left: 7px solid transparent;
     border-right: 7px solid transparent;
     border-bottom: 7px solid #ccc;
     border-bottom-color: rgba(0, 0, 0, .2);
     top: -7px;
     left: 7px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.bottom:after {
     border-left: 6px solid transparent;
     border-right: 6px solid transparent;
     border-bottom: 6px solid #fff;
     top: -6px;
     left: 8px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.top:before {
     border-left: 7px solid transparent;
     border-right: 7px solid transparent;
     border-top: 7px solid #ccc;
     border-top-color: rgba(0, 0, 0, .2);
     bottom: -7px;
     left: 6px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.top:after {
     border-left: 6px solid transparent;
     border-right: 6px solid transparent;
     border-top: 6px solid #fff;
     bottom: -6px;
     left: 7px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.pull-right:before {
     left: auto;
     right: 6px
 }

 .bootstrap-datetimepicker-widget.dropdown-menu.pull-right:after {
     left: auto;
     right: 7px
 }

 .bootstrap-datetimepicker-widget .list-unstyled {
     margin: 0
 }

 .bootstrap-datetimepicker-widget a[data-action] {
     padding: 6px 0
 }

 .bootstrap-datetimepicker-widget a[data-action]:active {
     box-shadow: none
 }

 .bootstrap-datetimepicker-widget .timepicker-hour,
 .bootstrap-datetimepicker-widget .timepicker-minute,
 .bootstrap-datetimepicker-widget .timepicker-second {
     width: 54px;
     font-size: 1.2em;
     margin: 0
 }

 .bootstrap-datetimepicker-widget button[data-action] {
     padding: 6px
 }

 .bootstrap-datetimepicker-widget .btn[data-action=incrementHours]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Increment Hours"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=incrementMinutes]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Increment Minutes"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=decrementHours]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Decrement Hours"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=decrementMinutes]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Decrement Minutes"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=showHours]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Show Hours"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=showMinutes]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Show Minutes"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=togglePeriod]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Toggle AM/PM"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=clear]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Clear the picker"
 }

 .bootstrap-datetimepicker-widget .btn[data-action=today]::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Set the date to today"
 }

 .bootstrap-datetimepicker-widget .picker-switch {
     text-align: center
 }

 .bootstrap-datetimepicker-widget .picker-switch::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Toggle Date and Time Screens"
 }

 .bootstrap-datetimepicker-widget .picker-switch td {
     padding: 0;
     margin: 0;
     height: auto;
     width: auto;
     line-height: inherit
 }

 .bootstrap-datetimepicker-widget .picker-switch td i,
 .bootstrap-datetimepicker-widget .picker-switch td span {
     line-height: 2.5;
     height: 2.5em;
     width: 100%
 }

 .bootstrap-datetimepicker-widget table {
     width: 100%;
     margin: 0
 }

 .bootstrap-datetimepicker-widget table td,
 .bootstrap-datetimepicker-widget table th {
     text-align: center;
     border-radius: .25rem;
     padding: .5em
 }

 .bootstrap-datetimepicker-widget table th {
     height: 20px;
     line-height: 20px;
     width: 20px
 }

 .bootstrap-datetimepicker-widget table th.picker-switch {
     width: 145px
 }

 .bootstrap-datetimepicker-widget table th.disabled,
 .bootstrap-datetimepicker-widget table th.disabled:hover {
     background: 0 0;
     color: #dee2e6;
     cursor: not-allowed
 }

 .bootstrap-datetimepicker-widget table th.prev::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Previous Month"
 }

 .bootstrap-datetimepicker-widget table th.next::after {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0;
     content: "Next Month"
 }

 .bootstrap-datetimepicker-widget table thead tr:first-child th {
     cursor: pointer
 }

 .bootstrap-datetimepicker-widget table thead tr:first-child th:hover {
     background: #f8f9fa
 }

 .bootstrap-datetimepicker-widget table td {
     height: 54px;
     line-height: 54px;
     width: 54px
 }

 .bootstrap-datetimepicker-widget table td.cw {
     font-size: .8em;
     height: 20px;
     line-height: 20px;
     color: #dee2e6
 }

 .bootstrap-datetimepicker-widget table td.day {
     height: 20px;
     line-height: 20px;
     width: 20px
 }

 .bootstrap-datetimepicker-widget table td.day:hover,
 .bootstrap-datetimepicker-widget table td.hour:hover,
 .bootstrap-datetimepicker-widget table td.minute:hover,
 .bootstrap-datetimepicker-widget table td.second:hover {
     background: #f8f9fa;
     cursor: pointer
 }

 .bootstrap-datetimepicker-widget table td.new,
 .bootstrap-datetimepicker-widget table td.old {
     color: #dee2e6
 }

 .bootstrap-datetimepicker-widget table td.today {
     position: relative
 }

 .bootstrap-datetimepicker-widget table td.today:before {
     content: '';
     display: inline-block;
     border: solid transparent;
     border-width: 0 0 7px 7px;
     border-bottom-color: #dee2e6;
     border-top-color: rgba(0, 0, 0, .2);
     position: absolute;
     bottom: 4px;
     right: 4px
 }

 .bootstrap-datetimepicker-widget table td.active,
 .bootstrap-datetimepicker-widget table td.active:hover {
     background-color: #dee2e6;
     color: #007bff;
     text-shadow: 0 -1px 0 rgba(0, 0, 0, .25)
 }

 .bootstrap-datetimepicker-widget table td.active.today:before {
     border-bottom-color: #fff
 }

 .bootstrap-datetimepicker-widget table td.disabled,
 .bootstrap-datetimepicker-widget table td.disabled:hover {
     background: 0 0;
     color: #dee2e6;
     cursor: not-allowed
 }

 .bootstrap-datetimepicker-widget table td i,
 .bootstrap-datetimepicker-widget table td span {
     display: inline-block;
     width: 54px;
     height: 54px;
     line-height: 54px;
     margin: 2px 1.5px;
     cursor: pointer;
     border-radius: .25rem
 }

 .bootstrap-datetimepicker-widget table td i:hover,
 .bootstrap-datetimepicker-widget table td span:hover {
     background: #f8f9fa
 }

 .bootstrap-datetimepicker-widget table td i.active,
 .bootstrap-datetimepicker-widget table td span.active {
     background-color: #dee2e6;
     color: #007bff;
     text-shadow: 0 -1px 0 rgba(0, 0, 0, .25)
 }

 .bootstrap-datetimepicker-widget table td i.old,
 .bootstrap-datetimepicker-widget table td span.old {
     color: #dee2e6
 }

 .bootstrap-datetimepicker-widget table td i.disabled,
 .bootstrap-datetimepicker-widget table td i.disabled:hover,
 .bootstrap-datetimepicker-widget table td span.disabled,
 .bootstrap-datetimepicker-widget table td span.disabled:hover {
     background: 0 0;
     color: #dee2e6;
     cursor: not-allowed
 }

 .bootstrap-datetimepicker-widget.usetwentyfour td.hour {
     height: 27px;
     line-height: 27px
 }

 .bootstrap-datetimepicker-widget.wider {
     width: 21em
 }

 .bootstrap-datetimepicker-widget .datepicker-decades .decade {
     line-height: 1.8em !important
 }

 .input-group.date .input-group-addon {
     cursor: pointer
 }

 .sr-only {
     position: absolute;
     width: 1px;
     height: 1px;
     margin: -1px;
     padding: 0;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     border: 0
 }

 .wizard,
 .tabcontrol {
     display: block;
     width: 100%;
     overflow: hidden;
 }

 .wizard a,
 .tabcontrol a {
     outline: 0;
 }

 .wizard ul,
 .tabcontrol ul {
     list-style: none !important;
     padding: 0;
     margin: 0;
 }

 .wizard ul>li,
 .tabcontrol ul>li {
     display: block;
     padding: 0;
 }

 .wizard>.steps .current-info,
 .tabcontrol>.steps .current-info {
     position: absolute;
     left: -999em;
 }

 .wizard>.content>.title,
 .tabcontrol>.content>.title {
     position: absolute;
     left: -999em;
 }

 .wizard>.steps {
     position: relative;
     display: block;
     width: 100%;
 }

 .wizard.vertical>.steps {
     display: inline;
     float: left;
     width: 30%;
 }

 .wizard>.steps .number {
     font-size: 1.429em;
 }

 .wizard>.steps>ul>li {
     width: 25%;
 }

 .wizard>.steps>ul>li,
 .wizard>.actions>ul>li {
     float: left;
 }

 .wizard.vertical>.steps>ul>li {
     float: none;
     width: 100%;
 }

 .wizard>.steps a,
 .wizard>.steps a:hover,
 .wizard>.steps a:active {
     display: block;
     width: auto;
     margin: 0 0.5em 0.5em;
     padding: 1em 1em;
     text-decoration: none;
     -webkit-border-radius: 5px;
     -moz-border-radius: 5px;
     border-radius: 5px;
 }

 .wizard>.steps .disabled a,
 .wizard>.steps .disabled a:hover,
 .wizard>.steps .disabled a:active {
     background: #eee;
     color: #aaa;
     cursor: default;
 }

 .wizard>.steps .current a,
 .wizard>.steps .current a:hover,
 .wizard>.steps .current a:active {
     background: #2184be;
     color: #fff;
     cursor: default;
 }

 .wizard>.steps .done a,
 .wizard>.steps .done a:hover,
 .wizard>.steps .done a:active {
     background: #9dc8e2;
     color: #fff;
 }

 .wizard>.steps .error a,
 .wizard>.steps .error a:hover,
 .wizard>.steps .error a:active {
     background: #ff3111;
     color: #fff;
 }

 .wizard>.content {
     background: #eee;
     display: block;
     margin: 0.5em;
     min-height: 35em;
     overflow: hidden;
     position: relative;
     width: auto;
     -webkit-border-radius: 5px;
     -moz-border-radius: 5px;
     border-radius: 5px;
 }

 .wizard.vertical>.content {
     display: inline;
     float: left;
     margin: 0 2.5% 0.5em 2.5%;
     width: 65%;
 }

 .wizard>.content>.body {
     float: left;
     position: absolute;
     width: 95%;
     height: 95%;
     padding: 2.5%;
 }

 .wizard>.content>.body ul {
     list-style: disc !important;
 }

 .wizard>.content>.body ul>li {
     display: list-item;
 }

 .wizard>.content>.body>iframe {
     border: 0 none;
     width: 100%;
     height: 100%;
 }

 .wizard>.content>.body input {
     display: block;
     border: 1px solid #ccc;
 }

 .wizard>.content>.body input[type="checkbox"] {
     display: inline-block;
 }

 .wizard>.content>.body input.error {
     background: rgb(251, 227, 228);
     border: 1px solid #fbc2c4;
     color: #8a1f11;
 }

 .wizard>.content>.body label {
     display: inline-block;
     margin-bottom: 0.5em;
 }

 .wizard>.content>.body label.error {
     color: #8a1f11;
     display: inline-block;
     margin-left: 1.5em;
 }

 .wizard>.actions {
     position: relative;
     display: block;
     text-align: right;
     width: 100%;
 }

 .wizard.vertical>.actions {
     display: inline;
     float: right;
     margin: 0 2.5%;
     width: 95%;
 }

 .wizard>.actions>ul {
     display: inline-block;
     text-align: right;
 }

 .wizard>.actions>ul>li {
     margin: 0 0.5em;
 }

 .wizard.vertical>.actions>ul>li {
     margin: 0 0 0 1em;
 }

 .wizard>.actions a,
 .wizard>.actions a:hover,
 .wizard>.actions a:active {
     background: #2184be;
     color: #fff;
     display: block;
     padding: 0.5em 1em;
     text-decoration: none;
     -webkit-border-radius: 5px;
     -moz-border-radius: 5px;
     border-radius: 5px;
 }

 .wizard>.actions .disabled a,
 .wizard>.actions .disabled a:hover,
 .wizard>.actions .disabled a:active {
     background: #eee;
     color: #aaa;
 }

 .wizard>.loading {}

 .wizard>.loading .spinner {}

 .tabcontrol>.steps {
     position: relative;
     display: block;
     width: 100%;
 }

 .tabcontrol>.steps>ul {
     position: relative;
     margin: 6px 0 0 0;
     top: 1px;
     z-index: 1;
 }

 .tabcontrol>.steps>ul>li {
     float: left;
     margin: 5px 2px 0 0;
     padding: 1px;
     -webkit-border-top-left-radius: 5px;
     -webkit-border-top-right-radius: 5px;
     -moz-border-radius-topleft: 5px;
     -moz-border-radius-topright: 5px;
     border-top-left-radius: 5px;
     border-top-right-radius: 5px;
 }

 .tabcontrol>.steps>ul>li:hover {
     background: #edecec;
     border: 1px solid #bbb;
     padding: 0;
 }

 .tabcontrol>.steps>ul>li.current {
     background: #fff;
     border: 1px solid #bbb;
     border-bottom: 0 none;
     padding: 0 0 1px 0;
     margin-top: 0;
 }

 .tabcontrol>.steps>ul>li>a {
     color: #5f5f5f;
     display: inline-block;
     border: 0 none;
     margin: 0;
     padding: 10px 30px;
     text-decoration: none;
 }

 .tabcontrol>.steps>ul>li>a:hover {
     text-decoration: none;
 }

 .tabcontrol>.steps>ul>li.current>a {
     padding: 15px 30px 10px 30px;
 }

 .tabcontrol>.content {
     position: relative;
     display: inline-block;
     width: 100%;
     height: 35em;
     overflow: hidden;
     border-top: 1px solid #bbb;
     padding-top: 20px;
 }

 .tabcontrol>.content>.body {
     float: left;
     position: absolute;
     width: 95%;
     height: 95%;
     padding: 2.5%;
 }

 .tabcontrol>.content>.body ul {
     list-style: disc !important;
 }

 .tabcontrol>.content>.body ul>li {
     display: list-item;
 }

 .owl-carousel,
 .owl-carousel .owl-item {
     -webkit-tap-highlight-color: transparent;
     position: relative
 }

 .owl-carousel {
     display: none;
     width: 100%;
     z-index: 1
 }

 .owl-carousel .owl-stage {
     position: relative;
     -ms-touch-action: pan-Y;
     touch-action: manipulation;
     -moz-backface-visibility: hidden
 }

 .owl-carousel .owl-stage:after {
     content: ".";
     display: block;
     clear: both;
     visibility: hidden;
     line-height: 0;
     height: 0
 }

 .owl-carousel .owl-stage-outer {
     position: relative;
     overflow: hidden;
     -webkit-transform: translate3d(0, 0, 0)
 }

 .owl-carousel .owl-item,
 .owl-carousel .owl-wrapper {
     -webkit-backface-visibility: hidden;
     -moz-backface-visibility: hidden;
     -ms-backface-visibility: hidden;
     -webkit-transform: translate3d(0, 0, 0);
     -moz-transform: translate3d(0, 0, 0);
     -ms-transform: translate3d(0, 0, 0)
 }

 .owl-carousel .owl-item {
     min-height: 1px;
     float: left;
     -webkit-backface-visibility: hidden;
     -webkit-touch-callout: none
 }

 .owl-carousel .owl-item img {
     display: block;
     width: 100%
 }

 .owl-carousel .owl-dots.disabled,
 .owl-carousel .owl-nav.disabled {
     display: none
 }

 .no-js .owl-carousel,
 .owl-carousel.owl-loaded {
     display: block
 }

 .owl-carousel .owl-dot,
 .owl-carousel .owl-nav .owl-next,
 .owl-carousel .owl-nav .owl-prev {
     cursor: pointer;
     -webkit-user-select: none;
     -khtml-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none
 }

 .owl-carousel .owl-nav button.owl-next,
 .owl-carousel .owl-nav button.owl-prev,
 .owl-carousel button.owl-dot {
     background: 0 0;
     color: inherit;
     border: none;
     padding: 0 !important;
     font: inherit
 }

 .owl-carousel.owl-loading {
     opacity: 0;
     display: block
 }

 .owl-carousel.owl-hidden {
     opacity: 0
 }

 .owl-carousel.owl-refresh .owl-item {
     visibility: hidden
 }

 .owl-carousel.owl-drag .owl-item {
     -ms-touch-action: pan-y;
     touch-action: pan-y;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none
 }

 .owl-carousel.owl-grab {
     cursor: move;
     cursor: grab
 }

 .owl-carousel.owl-rtl {
     direction: rtl
 }

 .owl-carousel.owl-rtl .owl-item {
     float: right
 }

 .owl-carousel .animated {
     animation-duration: 1s;
     animation-fill-mode: both
 }

 .owl-carousel .owl-animated-in {
     z-index: 0
 }

 .owl-carousel .owl-animated-out {
     z-index: 1
 }

 .owl-carousel .fadeOut {
     animation-name: fadeOut
 }

 @keyframes fadeOut {
     0% {
         opacity: 1
     }

     100% {
         opacity: 0
     }
 }

 .owl-height {
     transition: height .5s ease-in-out
 }

 .owl-carousel .owl-item .owl-lazy {
     opacity: 0;
     transition: opacity .4s ease
 }

 .owl-carousel .owl-item .owl-lazy:not([src]),
 .owl-carousel .owl-item .owl-lazy[src^=""] {
     max-height: 0
 }

 .owl-carousel .owl-item img.owl-lazy {
     transform-style: preserve-3d
 }

 .owl-carousel .owl-video-wrapper {
     position: relative;
     height: 100%;
     background: #000
 }

 .owl-carousel .owl-video-play-icon {
     position: absolute;
     height: 80px;
     width: 80px;
     left: 50%;
     top: 50%;
     margin-left: -40px;
     margin-top: -40px;
     background: url(owl.video.play.png) no-repeat;
     cursor: pointer;
     z-index: 1;
     -webkit-backface-visibility: hidden;
     transition: transform .1s ease
 }

 .owl-carousel .owl-video-play-icon:hover {
     -ms-transform: scale(1.3, 1.3);
     transform: scale(1.3, 1.3)
 }

 .owl-carousel .owl-video-playing .owl-video-play-icon,
 .owl-carousel .owl-video-playing .owl-video-tn {
     display: none
 }

 .owl-carousel .owl-video-tn {
     opacity: 0;
     height: 100%;
     background-position: center center;
     background-repeat: no-repeat;
     background-size: contain;
     transition: opacity .4s ease
 }

 .owl-carousel .owl-video-frame {
     position: relative;
     z-index: 1;
     height: 100%;
     width: 100%
 }

 .swiper-container {
     margin-left: auto;
     margin-right: auto;
     position: relative;
     overflow: hidden;
     z-index: 1;
 }

 .swiper-container-no-flexbox .swiper-slide {
     float: left;
 }

 .swiper-container-vertical>.swiper-wrapper {
     -webkit-box-orient: vertical;
     -moz-box-orient: vertical;
     -ms-flex-direction: column;
     -webkit-flex-direction: column;
     flex-direction: column;
 }

 .swiper-wrapper {
     position: relative;
     width: 100%;
     height: 100%;
     z-index: 1;
     display: -webkit-box;
     display: -moz-box;
     display: -ms-flexbox;
     display: -webkit-flex;
     display: flex;
     -webkit-transition-property: -webkit-transform;
     -moz-transition-property: -moz-transform;
     -o-transition-property: -o-transform;
     -ms-transition-property: -ms-transform;
     transition-property: transform;
     -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
     box-sizing: content-box;
 }

 .swiper-container-android .swiper-slide,
 .swiper-wrapper {
     -webkit-transform: translate3d(0px, 0, 0);
     -moz-transform: translate3d(0px, 0, 0);
     -o-transform: translate(0px, 0px);
     -ms-transform: translate3d(0px, 0, 0);
     transform: translate3d(0px, 0, 0);
 }

 .swiper-container-multirow>.swiper-wrapper {
     -webkit-box-lines: multiple;
     -moz-box-lines: multiple;
     -ms-flex-wrap: wrap;
     -webkit-flex-wrap: wrap;
     flex-wrap: wrap;
 }

 .swiper-container-free-mode>.swiper-wrapper {
     -webkit-transition-timing-function: ease-out;
     -moz-transition-timing-function: ease-out;
     -ms-transition-timing-function: ease-out;
     -o-transition-timing-function: ease-out;
     transition-timing-function: ease-out;
     margin: 0 auto;
 }

 .swiper-slide {
     -webkit-flex-shrink: 0;
     -ms-flex: 0 0 auto;
     flex-shrink: 0;
     width: 100%;
     height: 100%;
     position: relative;
 }

 .swiper-container-autoheight,
 .swiper-container-autoheight .swiper-slide {
     height: auto;
 }

 .swiper-container-autoheight .swiper-wrapper {
     -webkit-box-align: start;
     -ms-flex-align: start;
     -webkit-align-items: flex-start;
     align-items: flex-start;
     -webkit-transition-property: -webkit-transform, height;
     -moz-transition-property: -moz-transform;
     -o-transition-property: -o-transform;
     -ms-transition-property: -ms-transform;
     transition-property: transform, height;
 }

 .swiper-container .swiper-notification {
     position: absolute;
     left: 0;
     top: 0;
     pointer-events: none;
     opacity: 0;
     z-index: -1000;
 }

 .swiper-wp8-horizontal {
     -ms-touch-action: pan-y;
     touch-action: pan-y;
 }

 .swiper-wp8-vertical {
     -ms-touch-action: pan-x;
     touch-action: pan-x;
 }

 .swiper-button-prev,
 .swiper-button-next {
     position: absolute;
     top: 50%;
     width: 27px;
     height: 44px;
     margin-top: -22px;
     z-index: 10;
     cursor: pointer;
     -moz-background-size: 27px 44px;
     -webkit-background-size: 27px 44px;
     background-size: 27px 44px;
     background-position: center;
     background-repeat: no-repeat;
 }

 .swiper-button-prev.swiper-button-disabled,
 .swiper-button-next.swiper-button-disabled {
     opacity: 0.35;
     cursor: auto;
     pointer-events: none;
 }

 .swiper-button-prev,
 .swiper-container-rtl .swiper-button-next {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
     left: 10px;
     right: auto;
 }

 .swiper-button-prev.swiper-button-black,
 .swiper-container-rtl .swiper-button-next.swiper-button-black {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-prev.swiper-button-white,
 .swiper-container-rtl .swiper-button-next.swiper-button-white {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-next,
 .swiper-container-rtl .swiper-button-prev {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
     right: 10px;
     left: auto;
 }

 .swiper-button-next.swiper-button-black,
 .swiper-container-rtl .swiper-button-prev.swiper-button-black {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-next.swiper-button-white,
 .swiper-container-rtl .swiper-button-prev.swiper-button-white {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-pagination {
     position: absolute;
     text-align: center;
     -webkit-transition: 300ms;
     -moz-transition: 300ms;
     -o-transition: 300ms;
     transition: 300ms;
     -webkit-transform: translate3d(0, 0, 0);
     -ms-transform: translate3d(0, 0, 0);
     -o-transform: translate3d(0, 0, 0);
     transform: translate3d(0, 0, 0);
     z-index: 10;
 }

 .swiper-pagination.swiper-pagination-hidden {
     opacity: 0;
 }

 .swiper-pagination-fraction,
 .swiper-pagination-custom,
 .swiper-container-horizontal>.swiper-pagination-bullets {
     bottom: 10px;
     left: 0;
     width: 100%;
 }

 .swiper-pagination-bullet {
     width: 8px;
     height: 8px;
     display: inline-block;
     border-radius: 100%;
     background: #000;
     opacity: 0.2;
 }

 button.swiper-pagination-bullet {
     border: none;
     margin: 0;
     padding: 0;
     box-shadow: none;
     -moz-appearance: none;
     -ms-appearance: none;
     -webkit-appearance: none;
     appearance: none;
 }

 .swiper-pagination-clickable .swiper-pagination-bullet {
     cursor: pointer;
 }

 .swiper-pagination-white .swiper-pagination-bullet {
     background: #fff;
 }

 .swiper-pagination-bullet-active {
     opacity: 1;
     background: #007aff;
 }

 .swiper-pagination-white .swiper-pagination-bullet-active {
     background: #fff;
 }

 .swiper-pagination-black .swiper-pagination-bullet-active {
     background: #000;
 }

 .swiper-container-vertical>.swiper-pagination-bullets {
     right: 10px;
     top: 50%;
     -webkit-transform: translate3d(0px, -50%, 0);
     -moz-transform: translate3d(0px, -50%, 0);
     -o-transform: translate(0px, -50%);
     -ms-transform: translate3d(0px, -50%, 0);
     transform: translate3d(0px, -50%, 0);
 }

 .swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
     margin: 5px 0;
     display: block;
 }

 .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
     margin: 0 5px;
 }

 .swiper-pagination-progress {
     background: rgba(0, 0, 0, 0.25);
     position: absolute;
 }

 .swiper-pagination-progress .swiper-pagination-progressbar {
     background: #007aff;
     position: absolute;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     -webkit-transform: scale(0);
     -ms-transform: scale(0);
     -o-transform: scale(0);
     transform: scale(0);
     -webkit-transform-origin: left top;
     -moz-transform-origin: left top;
     -ms-transform-origin: left top;
     -o-transform-origin: left top;
     transform-origin: left top;
 }

 .swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
     -webkit-transform-origin: right top;
     -moz-transform-origin: right top;
     -ms-transform-origin: right top;
     -o-transform-origin: right top;
     transform-origin: right top;
 }

 .swiper-container-horizontal>.swiper-pagination-progress {
     width: 100%;
     height: 4px;
     left: 0;
     top: 0;
 }

 .swiper-container-vertical>.swiper-pagination-progress {
     width: 4px;
     height: 100%;
     left: 0;
     top: 0;
 }

 .swiper-pagination-progress.swiper-pagination-white {
     background: rgba(255, 255, 255, 0.5);
 }

 .swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
     background: #fff;
 }

 .swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
     background: #000;
 }

 .swiper-container-3d {
     -webkit-perspective: 1200px;
     -moz-perspective: 1200px;
     -o-perspective: 1200px;
     perspective: 1200px;
 }

 .swiper-container-3d .swiper-wrapper,
 .swiper-container-3d .swiper-slide,
 .swiper-container-3d .swiper-slide-shadow-left,
 .swiper-container-3d .swiper-slide-shadow-right,
 .swiper-container-3d .swiper-slide-shadow-top,
 .swiper-container-3d .swiper-slide-shadow-bottom,
 .swiper-container-3d .swiper-cube-shadow {
     -webkit-transform-style: preserve-3d;
     -moz-transform-style: preserve-3d;
     -ms-transform-style: preserve-3d;
     transform-style: preserve-3d;
 }

 .swiper-container-3d .swiper-slide-shadow-left,
 .swiper-container-3d .swiper-slide-shadow-right,
 .swiper-container-3d .swiper-slide-shadow-top,
 .swiper-container-3d .swiper-slide-shadow-bottom {
     position: absolute;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     pointer-events: none;
     z-index: 10;
 }

 .swiper-container-3d .swiper-slide-shadow-left {
     background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
     background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -moz-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-3d .swiper-slide-shadow-right {
     background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
     background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-3d .swiper-slide-shadow-top {
     background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
     background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-3d .swiper-slide-shadow-bottom {
     background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
     background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
     background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-coverflow .swiper-wrapper,
 .swiper-container-flip .swiper-wrapper {
     -ms-perspective: 1200px;
 }

 .swiper-container-cube,
 .swiper-container-flip {
     overflow: visible;
 }

 .swiper-container-cube .swiper-slide,
 .swiper-container-flip .swiper-slide {
     pointer-events: none;
     -webkit-backface-visibility: hidden;
     -moz-backface-visibility: hidden;
     -ms-backface-visibility: hidden;
     backface-visibility: hidden;
     z-index: 1;
 }

 .swiper-container-cube .swiper-slide .swiper-slide,
 .swiper-container-flip .swiper-slide .swiper-slide {
     pointer-events: none;
 }

 .swiper-container-cube .swiper-slide-active,
 .swiper-container-flip .swiper-slide-active,
 .swiper-container-cube .swiper-slide-active .swiper-slide-active,
 .swiper-container-flip .swiper-slide-active .swiper-slide-active {
     pointer-events: auto;
 }

 .swiper-container-cube .swiper-slide-shadow-top,
 .swiper-container-flip .swiper-slide-shadow-top,
 .swiper-container-cube .swiper-slide-shadow-bottom,
 .swiper-container-flip .swiper-slide-shadow-bottom,
 .swiper-container-cube .swiper-slide-shadow-left,
 .swiper-container-flip .swiper-slide-shadow-left,
 .swiper-container-cube .swiper-slide-shadow-right,
 .swiper-container-flip .swiper-slide-shadow-right {
     z-index: 0;
     -webkit-backface-visibility: hidden;
     -moz-backface-visibility: hidden;
     -ms-backface-visibility: hidden;
     backface-visibility: hidden;
 }

 .swiper-container-cube .swiper-slide {
     visibility: hidden;
     -webkit-transform-origin: 0 0;
     -moz-transform-origin: 0 0;
     -ms-transform-origin: 0 0;
     transform-origin: 0 0;
     width: 100%;
     height: 100%;
 }

 .swiper-container-cube.swiper-container-rtl .swiper-slide {
     -webkit-transform-origin: 100% 0;
     -moz-transform-origin: 100% 0;
     -ms-transform-origin: 100% 0;
     transform-origin: 100% 0;
 }

 .swiper-container-cube .swiper-slide-active,
 .swiper-container-cube .swiper-slide-next,
 .swiper-container-cube .swiper-slide-prev,
 .swiper-container-cube .swiper-slide-next+.swiper-slide {
     pointer-events: auto;
     visibility: visible;
 }

 .swiper-container-cube .swiper-cube-shadow {
     position: absolute;
     left: 0;
     bottom: 0px;
     width: 100%;
     height: 100%;
     background: #000;
     opacity: 0.6;
     -webkit-filter: blur(50px);
     filter: blur(50px);
     z-index: 0;
 }

 .swiper-container-fade.swiper-container-free-mode .swiper-slide {
     -webkit-transition-timing-function: ease-out;
     -moz-transition-timing-function: ease-out;
     -ms-transition-timing-function: ease-out;
     -o-transition-timing-function: ease-out;
     transition-timing-function: ease-out;
 }

 .swiper-container-fade .swiper-slide {
     pointer-events: none;
     -webkit-transition-property: opacity;
     -moz-transition-property: opacity;
     -o-transition-property: opacity;
     transition-property: opacity;
 }

 .swiper-container-fade .swiper-slide .swiper-slide {
     pointer-events: none;
 }

 .swiper-container-fade .swiper-slide-active,
 .swiper-container-fade .swiper-slide-active .swiper-slide-active {
     pointer-events: auto;
 }

 .swiper-zoom-container {
     width: 100%;
     height: 100%;
     display: -webkit-box;
     display: -moz-box;
     display: -ms-flexbox;
     display: -webkit-flex;
     display: flex;
     -webkit-box-pack: center;
     -moz-box-pack: center;
     -ms-flex-pack: center;
     -webkit-justify-content: center;
     justify-content: center;
     -webkit-box-align: center;
     -moz-box-align: center;
     -ms-flex-align: center;
     -webkit-align-items: center;
     align-items: center;
     text-align: center;
 }

 .swiper-zoom-container>img,
 .swiper-zoom-container>svg,
 .swiper-zoom-container>canvas {
     max-width: 100%;
     max-height: 100%;
     object-fit: contain;
 }

 .swiper-scrollbar {
     border-radius: 10px;
     position: relative;
     -ms-touch-action: none;
     background: rgba(0, 0, 0, 0.1);
 }

 .swiper-container-horizontal>.swiper-scrollbar {
     position: absolute;
     left: 1%;
     bottom: 3px;
     z-index: 50;
     height: 5px;
     width: 98%;
 }

 .swiper-container-vertical>.swiper-scrollbar {
     position: absolute;
     right: 3px;
     top: 1%;
     z-index: 50;
     width: 5px;
     height: 98%;
 }

 .swiper-scrollbar-drag {
     height: 100%;
     width: 100%;
     position: relative;
     background: rgba(0, 0, 0, 0.5);
     border-radius: 10px;
     left: 0;
     top: 0;
 }

 .swiper-scrollbar-cursor-drag {
     cursor: move;
 }

 .swiper-lazy-preloader {
     width: 42px;
     height: 42px;
     position: absolute;
     left: 50%;
     top: 50%;
     margin-left: -21px;
     margin-top: -21px;
     z-index: 10;
     -webkit-transform-origin: 50%;
     -moz-transform-origin: 50%;
     transform-origin: 50%;
     -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
     -moz-animation: swiper-preloader-spin 1s steps(12, end) infinite;
     animation: swiper-preloader-spin 1s steps(12, end) infinite;
 }

 .swiper-lazy-preloader:after {
     display: block;
     content: "";
     width: 100%;
     height: 100%;
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
     background-position: 50%;
     -webkit-background-size: 100%;
     background-size: 100%;
     background-repeat: no-repeat;
 }

 .swiper-lazy-preloader-white:after {
     background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
 }

 @-webkit-keyframes swiper-preloader-spin {
     100% {
         -webkit-transform: rotate(360deg);
     }
 }

 @keyframes swiper-preloader-spin {
     100% {
         transform: rotate(360deg);
     }
 }

 body.compensate-for-scrollbar {
     overflow: hidden;
 }

 .fancybox-active {
     height: auto;
 }

 .fancybox-is-hidden {
     left: -9999px;
     margin: 0;
     position: absolute !important;
     top: -9999px;
     visibility: hidden;
 }

 .fancybox-container {
     -webkit-backface-visibility: hidden;
     height: 100%;
     left: 0;
     outline: none;
     position: fixed;
     -webkit-tap-highlight-color: transparent;
     top: 0;
     -ms-touch-action: manipulation;
     touch-action: manipulation;
     transform: translateZ(0);
     width: 100%;
     z-index: 99992;
 }

 .fancybox-container * {
     box-sizing: border-box;
 }

 .fancybox-outer,
 .fancybox-inner,
 .fancybox-bg,
 .fancybox-stage {
     bottom: 0;
     left: 0;
     position: absolute;
     right: 0;
     top: 0;
 }

 .fancybox-outer {
     -webkit-overflow-scrolling: touch;
     overflow-y: auto;
 }

 .fancybox-bg {
     background: rgb(30, 30, 30);
     opacity: 0;
     transition-duration: inherit;
     transition-property: opacity;
     transition-timing-function: cubic-bezier(.47, 0, .74, .71);
 }

 .fancybox-is-open .fancybox-bg {
     opacity: .9;
     transition-timing-function: cubic-bezier(.22, .61, .36, 1);
 }

 .fancybox-infobar,
 .fancybox-toolbar,
 .fancybox-caption,
 .fancybox-navigation .fancybox-button {
     direction: ltr;
     opacity: 0;
     position: absolute;
     transition: opacity .25s ease, visibility 0s ease .25s;
     visibility: hidden;
     z-index: 99997;
 }

 .fancybox-show-infobar .fancybox-infobar,
 .fancybox-show-toolbar .fancybox-toolbar,
 .fancybox-show-caption .fancybox-caption,
 .fancybox-show-nav .fancybox-navigation .fancybox-button {
     opacity: 1;
     transition: opacity .25s ease 0s, visibility 0s ease 0s;
     visibility: visible;
 }

 .fancybox-infobar {
     color: #ccc;
     font-size: 13px;
     -webkit-font-smoothing: subpixel-antialiased;
     height: 44px;
     left: 0;
     line-height: 44px;
     min-width: 44px;
     mix-blend-mode: difference;
     padding: 0 10px;
     pointer-events: none;
     top: 0;
     -webkit-touch-callout: none;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
 }

 .fancybox-toolbar {
     right: 0;
     top: 0;
 }

 .fancybox-stage {
     direction: ltr;
     overflow: visible;
     transform: translateZ(0);
     z-index: 99994;
 }

 .fancybox-is-open .fancybox-stage {
     overflow: hidden;
 }

 .fancybox-slide {
     -webkit-backface-visibility: hidden;
     display: none;
     height: 100%;
     left: 0;
     outline: none;
     overflow: auto;
     -webkit-overflow-scrolling: touch;
     padding: 44px;
     position: absolute;
     text-align: center;
     top: 0;
     transition-property: transform, opacity;
     white-space: normal;
     width: 100%;
     z-index: 99994;
 }

 .fancybox-slide::before {
     content: '';
     display: inline-block;
     font-size: 0;
     height: 100%;
     vertical-align: middle;
     width: 0;
 }

 .fancybox-is-sliding .fancybox-slide,
 .fancybox-slide--previous,
 .fancybox-slide--current,
 .fancybox-slide--next {
     display: block;
 }

 .fancybox-slide--image {
     overflow: hidden;
     padding: 44px 0;
 }

 .fancybox-slide--image::before {
     display: none;
 }

 .fancybox-slide--html {
     padding: 6px;
 }

 .fancybox-content {
     background: #fff;
     display: inline-block;
     margin: 0;
     max-width: 100%;
     overflow: auto;
     -webkit-overflow-scrolling: touch;
     padding: 44px;
     position: relative;
     text-align: left;
     vertical-align: middle;
 }

 .fancybox-slide--image .fancybox-content {
     animation-timing-function: cubic-bezier(.5, 0, .14, 1);
     -webkit-backface-visibility: hidden;
     background: transparent;
     background-repeat: no-repeat;
     background-size: 100% 100%;
     left: 0;
     max-width: none;
     overflow: visible;
     padding: 0;
     position: absolute;
     top: 0;
     -ms-transform-origin: top left;
     transform-origin: top left;
     transition-property: transform, opacity;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     z-index: 99995;
 }

 .fancybox-can-zoomOut .fancybox-content {
     cursor: zoom-out;
 }

 .fancybox-can-zoomIn .fancybox-content {
     cursor: zoom-in;
 }

 .fancybox-can-swipe .fancybox-content,
 .fancybox-can-pan .fancybox-content {
     cursor: -webkit-grab;
     cursor: grab;
 }

 .fancybox-is-grabbing .fancybox-content {
     cursor: -webkit-grabbing;
     cursor: grabbing;
 }

 .fancybox-container [data-selectable='true'] {
     cursor: text;
 }

 .fancybox-image,
 .fancybox-spaceball {
     background: transparent;
     border: 0;
     height: 100%;
     left: 0;
     margin: 0;
     max-height: none;
     max-width: none;
     padding: 0;
     position: absolute;
     top: 0;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     width: 100%;
 }

 .fancybox-spaceball {
     z-index: 1;
 }

 .fancybox-slide--video .fancybox-content,
 .fancybox-slide--map .fancybox-content,
 .fancybox-slide--pdf .fancybox-content,
 .fancybox-slide--iframe .fancybox-content {
     height: 100%;
     overflow: visible;
     padding: 0;
     width: 100%;
 }

 .fancybox-slide--video .fancybox-content {
     background: #000;
 }

 .fancybox-slide--map .fancybox-content {
     background: #e5e3df;
 }

 .fancybox-slide--iframe .fancybox-content {
     background: #fff;
     max-height: 100vh;
     overflow: auto;
 }

 .fancybox-video,
 .fancybox-iframe {
     background: transparent;
     border: 0;
     display: block;
     height: 100%;
     margin: 0;
     overflow: hidden;
     padding: 0;
     width: 100%;
 }

 .fancybox-iframe {
     left: 0;
     position: absolute;
     top: 0;
 }

 .fancybox-error {
     background: #fff;
     cursor: default;
     max-width: 400px;
     padding: 40px;
     width: 100%;
 }

 .fancybox-error p {
     color: #444;
     font-size: 16px;
     line-height: 20px;
     margin: 0;
     padding: 0;
 }

 .fancybox-button {
     background: rgba(30, 30, 30, .6);
     border: 0;
     border-radius: 0;
     box-shadow: none;
     cursor: pointer;
     display: inline-block;
     height: 44px;
     margin: 0;
     padding: 10px;
     position: relative;
     transition: color .2s;
     vertical-align: top;
     visibility: inherit;
     width: 44px;
 }

 .fancybox-button,
 .fancybox-button:visited,
 .fancybox-button:link {
     color: #ccc;
 }

 .fancybox-button:hover {
     color: #fff;
 }

 .fancybox-button:focus {
     outline: none;
 }

 .fancybox-button.fancybox-focus {
     outline: 1px dotted;
 }

 .fancybox-button[disabled],
 .fancybox-button[disabled]:hover {
     color: #888;
     cursor: default;
     outline: none;
 }

 .fancybox-button div {
     height: 100%;
 }

 .fancybox-button svg {
     display: block;
     height: 100%;
     overflow: visible;
     position: relative;
     width: 100%;
 }

 .fancybox-button svg path {
     fill: currentColor;
     stroke-width: 0;
 }

 .fancybox-button--play svg:nth-child(2),
 .fancybox-button--fsenter svg:nth-child(2) {
     display: none;
 }

 .fancybox-button--pause svg:nth-child(1),
 .fancybox-button--fsexit svg:nth-child(1) {
     display: none;
 }

 .fancybox-progress {
     background: #ff5268;
     height: 2px;
     left: 0;
     position: absolute;
     right: 0;
     top: 0;
     -ms-transform: scaleX(0);
     transform: scaleX(0);
     -ms-transform-origin: 0;
     transform-origin: 0;
     transition-property: transform;
     transition-timing-function: linear;
     z-index: 99998;
 }

 .fancybox-close-small {
     background: transparent;
     border: 0;
     border-radius: 0;
     color: #ccc;
     cursor: pointer;
     opacity: .8;
     padding: 8px;
     position: absolute;
     right: -12px;
     top: -44px;
     z-index: 401;
 }

 .fancybox-close-small:hover {
     color: #fff;
     opacity: 1;
 }

 .fancybox-slide--html .fancybox-close-small {
     color: currentColor;
     padding: 10px;
     right: 0;
     top: 0;
 }

 .fancybox-slide--image.fancybox-is-scaling .fancybox-content {
     overflow: hidden;
 }

 .fancybox-is-scaling .fancybox-close-small,
 .fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
     display: none;
 }

 .fancybox-navigation .fancybox-button {
     background-clip: content-box;
     height: 100px;
     opacity: 0;
     position: absolute;
     top: calc(50% - 50px);
     width: 70px;
 }

 .fancybox-navigation .fancybox-button div {
     padding: 7px;
 }

 .fancybox-navigation .fancybox-button--arrow_left {
     left: 0;
     left: env(safe-area-inset-left);
     padding: 31px 26px 31px 6px;
 }

 .fancybox-navigation .fancybox-button--arrow_right {
     padding: 31px 6px 31px 26px;
     right: 0;
     right: env(safe-area-inset-right);
 }

 .fancybox-caption {
     background: linear-gradient(to top, rgba(0, 0, 0, .85) 0%, rgba(0, 0, 0, .3) 50%, rgba(0, 0, 0, .15) 65%, rgba(0, 0, 0, .075) 75.5%, rgba(0, 0, 0, .037) 82.85%, rgba(0, 0, 0, .019) 88%, rgba(0, 0, 0, 0) 100%);
     bottom: 0;
     color: #eee;
     font-size: 14px;
     font-weight: 400;
     left: 0;
     line-height: 1.5;
     padding: 75px 44px 25px 44px;
     pointer-events: none;
     right: 0;
     text-align: center;
     z-index: 99996;
 }

 @supports (padding: max(0px)) {
     .fancybox-caption {
         padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
     }
 }

 .fancybox-caption--separate {
     margin-top: -50px;
 }

 .fancybox-caption__body {
     max-height: 50vh;
     overflow: auto;
     pointer-events: all;
 }

 .fancybox-caption a,
 .fancybox-caption a:link,
 .fancybox-caption a:visited {
     color: #ccc;
     text-decoration: none;
 }

 .fancybox-caption a:hover {
     color: #fff;
     text-decoration: underline;
 }

 .fancybox-loading {
     animation: fancybox-rotate 1s linear infinite;
     background: transparent;
     border: 4px solid #888;
     border-bottom-color: #fff;
     border-radius: 50%;
     height: 50px;
     left: 50%;
     margin: -25px 0 0 -25px;
     opacity: .7;
     padding: 0;
     position: absolute;
     top: 50%;
     width: 50px;
     z-index: 99999;
 }

 @keyframes fancybox-rotate {
     100% {
         transform: rotate(360deg);
     }
 }

 .fancybox-animated {
     transition-timing-function: cubic-bezier(0, 0, .25, 1);
 }

 .fancybox-fx-slide.fancybox-slide--previous {
     opacity: 0;
     transform: translate3d(-100%, 0, 0);
 }

 .fancybox-fx-slide.fancybox-slide--next {
     opacity: 0;
     transform: translate3d(100%, 0, 0);
 }

 .fancybox-fx-slide.fancybox-slide--current {
     opacity: 1;
     transform: translate3d(0, 0, 0);
 }

 .fancybox-fx-fade.fancybox-slide--previous,
 .fancybox-fx-fade.fancybox-slide--next {
     opacity: 0;
     transition-timing-function: cubic-bezier(.19, 1, .22, 1);
 }

 .fancybox-fx-fade.fancybox-slide--current {
     opacity: 1;
 }

 .fancybox-fx-zoom-in-out.fancybox-slide--previous {
     opacity: 0;
     transform: scale3d(1.5, 1.5, 1.5);
 }

 .fancybox-fx-zoom-in-out.fancybox-slide--next {
     opacity: 0;
     transform: scale3d(.5, .5, .5);
 }

 .fancybox-fx-zoom-in-out.fancybox-slide--current {
     opacity: 1;
     transform: scale3d(1, 1, 1);
 }

 .fancybox-fx-rotate.fancybox-slide--previous {
     opacity: 0;
     -ms-transform: rotate(-360deg);
     transform: rotate(-360deg);
 }

 .fancybox-fx-rotate.fancybox-slide--next {
     opacity: 0;
     -ms-transform: rotate(360deg);
     transform: rotate(360deg);
 }

 .fancybox-fx-rotate.fancybox-slide--current {
     opacity: 1;
     -ms-transform: rotate(0deg);
     transform: rotate(0deg);
 }

 .fancybox-fx-circular.fancybox-slide--previous {
     opacity: 0;
     transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
 }

 .fancybox-fx-circular.fancybox-slide--next {
     opacity: 0;
     transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
 }

 .fancybox-fx-circular.fancybox-slide--current {
     opacity: 1;
     transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
 }

 .fancybox-fx-tube.fancybox-slide--previous {
     transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg);
 }

 .fancybox-fx-tube.fancybox-slide--next {
     transform: translate3d(100%, 0, 0) scale(.1) skew(10deg);
 }

 .fancybox-fx-tube.fancybox-slide--current {
     transform: translate3d(0, 0, 0) scale(1);
 }

 @media all and (max-height: 576px) {
     .fancybox-slide {
         padding-left: 6px;
         padding-right: 6px;
     }

     .fancybox-slide--image {
         padding: 6px 0;
     }

     .fancybox-close-small {
         right: -6px;
     }

     .fancybox-slide--image .fancybox-close-small {
         background: #4e4e4e;
         color: #f2f4f6;
         height: 36px;
         opacity: 1;
         padding: 6px;
         right: 0;
         top: 0;
         width: 36px;
     }

     .fancybox-caption {
         padding-left: 12px;
         padding-right: 12px;
     }

     @supports (padding: max(0px)) {
         .fancybox-caption {
             padding-left: max(12px, env(safe-area-inset-left));
             padding-right: max(12px, env(safe-area-inset-right));
         }
     }
 }

 .fancybox-share {
     background: #f4f4f4;
     border-radius: 3px;
     max-width: 90%;
     padding: 30px;
     text-align: center;
 }

 .fancybox-share h1 {
     color: #222;
     font-size: 35px;
     margin: 0 0 20px 0;
 }

 .fancybox-share p {
     margin: 0;
     padding: 0;
 }

 .fancybox-share__button {
     border: 0;
     border-radius: 3px;
     display: inline-block;
     font-size: 14px;
     line-height: 40px;
     margin: 0 5px 10px 5px;
     min-width: 130px;
     padding: 0 15px;
     text-decoration: none;
     transition: all .2s;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     white-space: nowrap;
 }

 .fancybox-share__button:visited,
 .fancybox-share__button:link {
     color: #fff;
 }

 .fancybox-share__button:hover {
     text-decoration: none;
 }

 .fancybox-share__button--fb {
     background: #3b5998;
 }

 .fancybox-share__button--fb:hover {
     background: #344e86;
 }

 .fancybox-share__button--pt {
     background: #bd081d;
 }

 .fancybox-share__button--pt:hover {
     background: #aa0719;
 }

 .fancybox-share__button--tw {
     background: #1da1f2;
 }

 .fancybox-share__button--tw:hover {
     background: #0d95e8;
 }

 .fancybox-share__button svg {
     height: 25px;
     margin-right: 7px;
     position: relative;
     top: -1px;
     vertical-align: middle;
     width: 25px;
 }

 .fancybox-share__button svg path {
     fill: #fff;
 }

 .fancybox-share__input {
     background: transparent;
     border: 0;
     border-bottom: 1px solid #d7d7d7;
     border-radius: 0;
     color: #5d5b5b;
     font-size: 14px;
     margin: 10px 0 0 0;
     outline: none;
     padding: 10px 15px;
     width: 100%;
 }

 .fancybox-thumbs {
     background: #ddd;
     bottom: 0;
     display: none;
     margin: 0;
     -webkit-overflow-scrolling: touch;
     -ms-overflow-style: -ms-autohiding-scrollbar;
     padding: 2px 2px 4px 2px;
     position: absolute;
     right: 0;
     -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
     top: 0;
     width: 212px;
     z-index: 99995;
 }

 .fancybox-thumbs-x {
     overflow-x: auto;
     overflow-y: hidden;
 }

 .fancybox-show-thumbs .fancybox-thumbs {
     display: block;
 }

 .fancybox-show-thumbs .fancybox-inner {
     right: 212px;
 }

 .fancybox-thumbs__list {
     font-size: 0;
     height: 100%;
     list-style: none;
     margin: 0;
     overflow-x: hidden;
     overflow-y: auto;
     padding: 0;
     position: absolute;
     position: relative;
     white-space: nowrap;
     width: 100%;
 }

 .fancybox-thumbs-x .fancybox-thumbs__list {
     overflow: hidden;
 }

 .fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
     width: 7px;
 }

 .fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
     background: #fff;
     border-radius: 10px;
     box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
 }

 .fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
     background: #2a2a2a;
     border-radius: 10px;
 }

 .fancybox-thumbs__list a {
     -webkit-backface-visibility: hidden;
     backface-visibility: hidden;
     background-color: rgba(0, 0, 0, .1);
     background-position: center center;
     background-repeat: no-repeat;
     background-size: cover;
     cursor: pointer;
     float: left;
     height: 75px;
     margin: 2px;
     max-height: calc(100% - 8px);
     max-width: calc(50% - 4px);
     outline: none;
     overflow: hidden;
     padding: 0;
     position: relative;
     -webkit-tap-highlight-color: transparent;
     width: 100px;
 }

 .fancybox-thumbs__list a::before {
     border: 6px solid #ff5268;
     bottom: 0;
     content: '';
     left: 0;
     opacity: 0;
     position: absolute;
     right: 0;
     top: 0;
     transition: all .2s cubic-bezier(.25, .46, .45, .94);
     z-index: 99991;
 }

 .fancybox-thumbs__list a:focus::before {
     opacity: .5;
 }

 .fancybox-thumbs__list a.fancybox-thumbs-active::before {
     opacity: 1;
 }

 @media all and (max-width: 576px) {
     .fancybox-thumbs {
         width: 110px;
     }

     .fancybox-show-thumbs .fancybox-inner {
         right: 110px;
     }

     .fancybox-thumbs__list a {
         max-width: calc(100% - 10px);
     }
 }

 html,
 body {
     background: #F3F2F0;
 }

 html::before,
 html::after {
     content: " ";
     position: fixed;
     background: #fff;
     top: -500px;
     bottom: -500px;
     width: 65px;
     height: calc(100% + 1000px);
     z-index: 3;
     box-shadow: 0 -3px 8px rgba(0, 0, 0, 0.14);
 }

 html::before {
     left: 0;
 }

 html::after {
     right: 0;
     z-index: 2;
 }

 .content-wrap {
     height: 100%;
 }

 .content-wrap::before {
     content: "";
     background: #fff;
     position: fixed;
     z-index: 3;
     width: 100vw;
     height: 50px;
     left: 0;
     top: 0;
 }

 .content-wrap::after {
     content: "";
     background: #fff;
     position: fixed;
     z-index: 3;
     width: 100vw;
     height: 50px;
     left: 0;
     bottom: 0;
 }

 .wrapper {
     position: relative;
     height: 100%;
     width: 100%;
 }

 @media (max-width: 959px) {

     html::before,
     html::after {
         width: 10px;
     }

     .content-wrap::before,
     .content-wrap::after {
         height: 65px;
     }
 }

 .menu-container {
     width: 80%;
     margin: 0 auto;
 }

 .menu-mobile {
     display: none;
     padding: 20px;
 }

 .menu-mobile:after {
     font-size: 2.5rem;
     padding: 0;
     float: right;
     position: relative;
     top: 50%;
     -webkit-transform: translateY(-25%);
     -ms-transform: translateY(-25%);
     transform: translateY(-25%);
 }

 .menu-dropdown-icon:before {
     content: "\f054";
     font-family: 'Font Awesome 5 Pro';
     display: none;
     cursor: pointer;
     float: right;
     padding: 1em 1.5em;
     color: #333;
     transition: transform .3s ease-in-out;
 }

 .menu-dropdown-icon.open:before {
     transform: rotate(-90deg);
 }

 .menu>ul {
     margin: 0 auto;
     width: 100%;
     list-style: none;
     padding: 0;
     position: relative;
     box-sizing: border-box;
 }

 .menu>ul:before,
 .menu>ul:after {
     content: "";
     display: table;
 }

 .menu>ul:after {
     clear: both;
 }

 .menu>ul>li {
     float: left;
     padding: 0;
     margin: 0;
 }

 .menu>ul>li a {
     text-decoration: none;
     padding: 0.95em 3em;
     display: block;
 }

 .menu>ul>li.open,
 .menu>ul>li:hover {
     background: #f0f0f0;
 }

 .menu>ul>li>ul {
     display: none;
     width: 100%;
     background: #f0f0f0;
     padding: 20px;
     position: absolute;
     z-index: 99;
     left: 0;
     margin: 0;
     list-style: none;
     box-sizing: border-box;
 }

 .menu>ul>li>ul:before,
 .menu>ul>li>ul:after {
     content: "";
     display: table;
 }

 .menu>ul>li>ul:after {
     clear: both;
 }

 .menu>ul>li>ul>li {
     margin: 0;
     padding-bottom: 0;
     list-style: none;
     width: 25%;
     background: none;
     float: left;
 }

 .menu>ul>li>ul>li a {
     color: #777;
     padding: .2em 0;
     display: block;
 }

 .menu>ul>li>ul>li>ul {
     display: block;
     padding: 0;
     margin: 10px 0 0;
     list-style: none;
     box-sizing: border-box;
 }

 .menu>ul>li>ul>li>ul:before,
 .menu>ul>li>ul>li>ul:after {
     content: "";
     display: table;
 }

 .menu>ul>li>ul>li>ul:after {
     clear: both;
 }

 .menu>ul>li>ul>li>ul>li {
     float: left;
     width: 100%;
     padding: 10px 0;
     margin: 0;
     font-size: .8em;
 }

 .menu>ul>li>ul>li>ul>li a {
     border: 0;
 }

 .menu>ul>li>ul.normal-sub {
     width: 100%;
     left: 0;
     padding: 1.2rem 3.5rem;
 }

 .menu>ul>li.open>ul.normal-sub {
     display: block;
 }

 .menu>ul>li>ul.normal-sub>li {
     width: 100%;
 }

 @media(min-width:960px) {
     .menu>ul>li>ul.normal-sub {
         min-height: 54vh;
         box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125);
     }
 }

 @media(min-width:1366px) {
     .menu>ul>li>ul.normal-sub {
         min-height: 45vh;
     }
 }

 @media (min-width: 1537px) {
     .menu>ul>li>ul.normal-sub {
         min-height: 43vh;
     }
 }

 @media(width:1280px) {
     .menu>ul>li>ul.normal-sub {
         min-height: 45vh;
     }
 }

 @media (width: 1536px) {
     .menu>ul>li>ul.normal-sub {
         min-height: 45vh;
     }
 }

 @media only screen and (max-width: 959px) {
     .menu-container {
         width: 100%;
     }

     .menu-mobile {
         display: block;
     }

     .menu-dropdown-icon:before {
         display: block;
     }

     .menu>ul {
         display: none;
     }

     .menu>ul>li {
         width: 100%;
         float: none;
         display: block;
     }

     .menu>ul>li a {
         padding: 1.5em;
         width: 100%;
         display: block;
     }

     .menu>ul>li>ul {
         position: relative;
     }

     .menu>ul>li>ul.normal-sub {
         width: 100%;
         padding: 0.8rem 3.5rem;
     }

     .menu>ul>li>ul>li {
         float: none;
         width: 100%;
     }

     .menu>ul>li>ul>li:first-child {
         margin: 0;
     }

     .menu>ul>li>ul>li>ul {
         position: relative;
     }

     .menu>ul>li>ul>li>ul>li {
         float: none;
     }

     .menu .show-on-mobile {
         display: block;
     }
 }

 .main-menu {
     width: 100%;
     position: relative;
 }

 .main-menu:after {
     content: "";
     position: absolute;
     width: 100%;
     bottom: 1px;
     z-index: -1;
     box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125);
     height: 1px;
 }

 .main-menu .menu-container {
     width: 100%;
 }

 .main-menu a {
     color: #333;
 }

 .main-menu .menu li a {
     font-family: 'Noto Serif TC', serif;
     font-size: 1rem;
     font-weight: 500;
 }

 .main-menu .menu>ul>li>a {
     padding: .7em 1.5em;
 }

 @media screen\0 {
     .main-menu {
         margin-top: 4px;
     }

     .main-menu .menu>ul>li>a {
         padding: .6em 1.5em;
     }
 }

 .main-menu .menu .language {
     display: none;
 }

 @media(min-width:960px) and (max-width:1440px) {
     .main-menu .menu>ul {
         display: flex;
     }

     .main-menu .menu>ul>li {
         -ms-flex: 1 1 auto !important;
         flex: 1 1 auto !important;
     }

     .main-menu .menu>ul>li>a {
         padding: 11px 0;
         text-align: center;
     }
 }

 @media(min-width:960px) {
     .main-menu .menu>ul>li>a {
         border-bottom: transparent solid 3px;
     }

     .main-menu .menu>ul>li.active>a {
         border-color: #444;
     }
 }

 @media only screen and (max-width: 959px) {
     .main-menu {
         position: absolute;
         left: 0;
     }

     .main-menu .menu>ul>li.open,
     .main-menu .menu>ul>li:hover,
     .menu>ul>li>ul,
     .menu>ul>li:hover {
         background: transparent;
     }

     .main-menu .menu li a {
         padding: 0.85em 1.5em;
     }

     .main-menu .menu>ul>li>a {
         font-weight: 500;
     }

     .main-menu .menu .language {
         display: block;
         position: relative;
         height: 52px;
     }

     .main-menu .menu .language a {
         display: inline;
     }

     .main-menu .menu .language li {
         float: left;
         width: 40px;
         position: relative;
     }

     .menu .show-on-mobile .language li.tw {
         display: none;
     }

     .main-menu .menu>ul>li.language>ul.normal-sub>li a {
         text-indent: -9999em;
         padding: 0 0;
         display: flex;
         border: #5e5e5e solid 2px;
         border-radius: 50%;
         width: 40px;
         height: 40px;
     }

     .main-menu .menu .language li a i {
         background: url(../images/icon-4ntt.svg) no-repeat;
         background-size: 103%;
         text-indent: -9999em;
         width: 28px;
         height: 25px;
         padding: 0;
         position: absolute;
         left: 6px;
         top: 6px;
     }

     .main-menu .menu .language li+li {
         margin-left: 0.5rem;
     }

     .main-menu .menu .language .icon-tw {
         background-position-y: 46.5%;
     }

     .main-menu .menu .language .icon-en {
         background-position-y: 57%;
         top: 5px;
     }

     .main-menu .menu .language .icon-jp {
         background-position-y: 66.8%;
         left: 7px;
         top: 3px;
     }

     .main-menu .menu .language .normal-sub {
         background: transparent;
         padding: 0.8rem 0.5rem;
         width: 230px;
     }

     .main-menu .menu .language .normal-sub {
         background: transparent;
         padding: 0.8rem 0.5rem;
         width: auto;
         float: right;
         margin-right: 15px;
         margin-top: -15px;
     }

     .main-menu .menu>ul>li:not(.menu-dropdown-icon) {
         position: relative;
     }

     .main-menu .menu>ul>li:not(.menu-dropdown-icon)::after,
     .main-menu .menu .language::after {
         content: '';
         display: block;
         background: #595959;
         width: calc(100% - 30px);
         height: 1px;
         position: absolute;
         bottom: 0;
         left: 15px;
     }

     .main-menu .menu>ul>li>ul.normal-sub {
         padding: 0rem 0.4rem 0.8rem;
         margin: auto;
         display: block !important;
     }

     .main-menu .menu>ul>li:not(.language)>ul.normal-sub {
         width: calc(100% - 35px);
         border-bottom: #595959 solid 1px;
     }

     .main-menu .menu>ul>li:not(.language)>ul.normal-sub>li:not(.item-image) {
         float: left;
         width: 30%;
     }

     .main-menu .menu>ul>li:not(.language)>ul.normal-sub>li a {
         display: initial;
     }

     .main-menu .menu-mobile {
         background: url(../images/icon-4ntt.svg) no-repeat;
         background-size: 80%;
         display: block;
         text-indent: -9999em;
         width: 40px;
         height: 40px;
         padding: 0;
         position: absolute;
         right: 20px;
         top: 15px;
     }

     .main-menu .menu>ul {
         width: calc(100% - 20px);
     }

     .main-menu .menu-dropdown-icon:before {
         display: none !important;
     }

     .main-menu .menu-container {
         background: transparent;
     }

     .menu .show-on-mobile {
         margin-top: 65px;
         padding: 30px 0 10vh 0;
         height: calc(100vh - 65px);
         overflow: auto;
         position: fixed;
         left: 10px;
         background: #E9E7E4;
     }

     .menu>ul>li>ul.normal-sub>li a {
         padding: 0.7em 0;
         font-size: .94rem;
     }
 }

 @media screen\0 {
     .mb .main-menu .menu>ul>li>a {
         background: url(../images/icon-4ntt.svg) no-repeat center;
         background-size: 1200%;
         background-position-y: 0%;
     }
 }

 @media (max-width: 959px) {
     .main-menu:after {
         width: calc(100% - 20px);
         left: 10px;
         top: 62px;
         box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
     }
 }

 @media (max-width: 414px) {
     .main-menu .menu>ul>li>a {
         font-size: 1.2rem;
         padding: 0.6em .8em;
     }

     .main-menu .menu>ul>li>ul.normal-sub {
         padding: 0rem 0rem 0.8rem;
     }

     .main-menu .menu>ul>li:not(.language)>ul.normal-sub {
         margin-top: -10px;
     }

     .main-menu .menu>ul>li:not(.language)>ul.normal-sub>li:not(.item-image) {
         width: 50%;
     }

     .main-menu .menu>ul>li:not(.language)>ul.normal-sub>li:nth-of-type(odd):not(.item-image) {
         clear: both;
     }
 }

 @media (max-width: 320px) {
     .main-menu .menu>ul>li>a {
         font-size: 1.2rem;
         padding: 0.6em 1.2em;
     }

     .main-menu .menu li a {
         font-size: .8em;
         ;
     }

     .menu .show-on-mobile {
         padding: 20px 0 13vh 0;
     }
 }

 .menu>ul>li>ul.normal-sub>li.item-image {
     position: absolute;
     width: 70%;
     display: none;
     right: 40px;
     top: 28px;
 }

 .main-menu .menu>ul>li>ul.normal-sub>li:not(.item-image) a {
     border: 0;
     padding: 0.4em 0;
     color: #777;
     width: 100%;
     display: block;
     position: relative;
 }

 .main-menu .menu>ul>li>ul.normal-sub>li.active a {
     color: #d20031;
 }

 .main-menu .menu>ul>li>ul.normal-sub>li:not(.item-image) a::after {
     content: "\f061";
     font-family: 'Font Awesome 5 Pro';
     margin-left: .5rem;
     opacity: 0;
 }

 .main-menu .menu>ul>li>ul.normal-sub>li:not(.item-image) a:hover::after {
     opacity: 1;
 }

 @media(min-width:960px) {
     .menu>ul>li>ul.normal-sub {
         padding-right: 65%;
         padding-left: 30px;
     }

     .menu>ul>li>ul.normal-sub>li.item-image {
         width: 60%;
         display: block;
     }

     .menu>ul>li>ul.normal-sub>li.item-image img {
         height: auto;
         font-size: 13px;
         color: rgba(0, 0, 0, 0.2);
     }

     .menu>ul>li>ul.normal-sub.item2col>li:not(.item-image) {
         width: 75%;
         float: none;
     }

     .menu>ul>li>ul.normal-sub>li:first-of-type {
         margin-top: 10px;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(n+9):not(.item-image) {
         position: absolute;
         top: 28px;
         width: 180px;
         margin-left: 185px;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(10):not(.item-image) {
         margin-top: calc(2.5rem - 1px);
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(11):not(.item-image) {
         margin-top: calc(5rem - 2px);
         ;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(12):not(.item-image) {
         margin-top: calc(7.5rem - 3px);
         ;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(13):not(.item-image) {
         margin-top: calc(10rem - 4px);
         ;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(14):not(.item-image) {
         margin-top: calc(12.5rem - 5px);
         ;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(15):not(.item-image) {
         margin-top: calc(15rem - 6px);
         ;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(16):not(.item-image) {
         margin-top: calc(17.5rem - 7px);
         ;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(n+17):not(.item-image) {
         display: none;
     }

     .menu .owl-stage .owl-item {
         width: 100%;
     }

     .menu .owl-stage .owl-item .item {
         height: 330px;
         max-height: 250px;
         overflow: hidden;
     }

     .menu .owl-stage .owl-item .item a {
         padding: 0;
         width: 100%;
         height: 100%;
         display: flex;
         justify-content: center;
         align-items: center;
     }

     .menu .owl-theme .owl-nav {
         display: none;
     }

     .menu .owl-theme .owl-dots .owl-dot span {
         width: 10px;
         height: 10px;
         margin: 5px 7px;
         background: #bebebe;
         display: block;
         -webkit-backface-visibility: visible;
         transition: opacity .2s ease;
         border-radius: 30px;
     }

     .menu .owl-theme .owl-dots .owl-dot:only-child {
         display: none;
     }

     .menu .owl-carousel {
         display: flex;
         -ms-flex-pack: center;
         justify-content: center;
     }

     .menu .owl-theme .owl-dots {
         position: absolute;
         bottom: 0;
     }

     .menu .owl-theme .owl-dots .owl-dot.active span,
     .menu .owl-theme .owl-dots .owl-dot:hover span {
         background: #d20031;
     }
 }

 @media screen\0 {
     .menu .owl-theme .owl-dots {
         left: 50%;
     }
 }

 @media(min-width:1024px) {
     .menu>ul>li>ul.normal-sub {
         padding-right: 65%;
         padding-left: 45px;
     }

     .menu>ul>li>ul.normal-sub>li.item-image {
         right: 25px;
         height: 300px;
         overflow: hidden;
     }

     .menu .owl-carousel {
         height: 300px;
         display: flex;
         justify-content: center;
         align-items: center;
     }

     .menu .owl-stage .owl-item .item {
         max-height: 340px;
     }
 }

 @media(width:1024px) {
     .menu>ul>li>ul.normal-sub>li.item-image {
         width: 50%;
     }

     .menu>ul>li>ul.normal-sub.item2col>li:not(.item-image) {
         width: 100%;
     }
 }

 @media(min-width:1367px) {
     .menu .owl-stage .owl-item {
         width: calc(79% - 50px);
     }

     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(n+9):not(.item-image) {
         margin-left: 280px;
     }
 }

 @media(min-width:1440px) {
     .menu>ul>li>ul.normal-sub>li.item-image {
         height: 330px;
     }

     .menu .owl-carousel {
         height: 330px;
     }

     .menu .owl-stage .owl-item {
         width: 100%;
         height: 330px !important;
     }
 }

 @media(min-height:600px) and (max-height:820px) {
     .menu .owl-stage .owl-item .item {
         max-height: 33vh;
     }

     .menu>ul>li>ul.normal-sub>li.item-image {
         height: 33vh;
     }

     .menu .owl-carousel {
         height: 33vh;
     }

     .menu .owl-stage .owl-item {
         width: 100%;
         height: 33vh !important;
     }
 }

 @media(max-height:600px) {
     .menu .owl-stage .owl-item .item {
         max-height: 250px;
     }

     .menu>ul>li>ul.normal-sub>li.item-image {
         height: 250px;
     }

     .menu .owl-carousel {
         height: 250px;
     }

     .menu .owl-stage .owl-item {
         width: 100%;
         height: 250px !important;
     }
 }

 @media(width:1440px) {
     .menu>ul>li>ul.normal-sub.item2col>li:nth-of-type(n+9):not(.item-image) {
         margin-left: 230px;
     }
 }

 @media(width:1536px)and(height:864px) {
     .menu .owl-stage .owl-item .item {
         max-height: 290px;
     }
 }

 @media(width:1920px) {
     .menu>ul>li>ul.normal-sub>li.item-image {
         box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     }
 }

 .navbar-brand {
     background: url(../images/logo-m.svg) no-repeat;
     background-size: contain;
     display: block;
     text-indent: -9999em;
     width: 155px;
     height: 32px;
     padding: 0;
     position: absolute;
     margin: 15px;
     -webkit-transition: none;
     -moz-transition: none;
     -ms-transition: none;
     -o-transition: none;
     transition: none;
 }

 @media(min-width:960px) {
     .navbar-brand {
         background: url(../images/logo-pc.svg) no-repeat;
         background-size: contain;
         display: inline-block;
         text-indent: -9999em;
         width: 55px;
         height: 212px;
         position: fixed;
         z-index: 3;
         left: 15px;
         top: calc((100% - 212px) / 2);
         margin: 0;
     }
 }

 @media screen\0 {
     .navbar-brand {
         left: 8px;
     }
 }

 header {
     position: fixed;
     top: 0;
     z-index: 1000;
     width: 100%;
 }

 header .container {
     max-width: calc(100% - 100px);
 }

 .frame-right {
     width: 50px;
     position: fixed;
     z-index: 999;
     right: 0.4rem;
     top: 50%;
 }

 @media(min-width:960px) {
     .frame-right {
         -ms-transform: translateY(-50%);
         -webkit-transform: translateY(-50%);
         -moz-transform: translateY(-50%);
         -o-transform: tranlslateY(-50%);
         transform: translateY(-50%);
     }
 }

 .tool-bar {
     list-style: none;
     padding: 0.7rem 0.5rem;
 }

 .tool-bar a {
     display: block;
 }

 .tool-bar i {
     background: url(../images/icon-4ntt.svg) no-repeat center;
     background-size: cover;
     display: block;
     width: 38px;
     height: 48px;
     padding: 0;
 }

 .tool-bar .btn {
     width: 40px;
     margin: auto;
     display: block;
     padding: inherit;
 }

 .tool-bar i.icon-calendar {
     background-position-y: 11.5%;
 }

 .tool-bar i.icon-search {
     background-position-y: 23.5%;
 }

 .tool-bar i.icon-member {
     background-position-y: 35.5%;
 }

 .tool-bar i.icon-tw {
     background-position-y: 46%;
     background-position-x: 28%;
     background-size: 85%;
     margin: 2px 0;
     height: 40px;
 }

 .tool-bar i.icon-en {
     background-position-y: 58%;
     background-position-x: 28%;
     background-size: 85%;
     margin: 0;
     height: 35px;
 }

 .tool-bar i.icon-jp {
     background-position-y: 68%;
     background-position-x: 28%;
     background-size: 85%;
     margin: 2px 0;
     height: 42px;
 }

 .tool-bar i.icon-share,
 .tool-bar .icon-NTTinfo,
 .tool-bar .btn-NTTinfo {
     display: none;
     margin: auto;
 }

 @media(max-width:959px) {
     .frame-right {
         top: initial;
         bottom: 0.5rem;
         width: 100%;
         right: 0;
     }

     .tool-bar {
         width: calc(100% - 20px);
         display: flex;
         padding: 0;
         margin: 0 auto;
     }

     .tool-bar [class*='btn-'] {
         display: block;
     }

     .tool-bar li {
         -ms-flex: 1 1 auto !important;
         flex: 1 1 auto !important;
     }

     .tool-bar i {
         background-position-x: 55%;
     }

     .tool-bar i.icon-calendar {
         margin: auto;
     }

     .tool-bar i.icon-search {
         margin: auto;
     }

     .tool-bar i.icon-member {
         margin: auto;
         background-position-y: 35%;
         background-size: 92%;
     }

     .tool-bar i.icon-tw {
         background-position-y: 46%;
         background-size: 85%;
         height: 38px;
         margin: auto;
     }

     .tool-bar i.icon-en {
         background-size: 92%;
         background-position-y: 57.5%;
         margin: 2px 1px;
         height: 38px;
         margin: auto;
     }

     .tool-bar i.icon-jp {
         background-size: 92%;
         margin: 2px 1px;
         height: 38px;
         margin: auto;
     }

     .tool-bar i.icon-share {
         display: block;
         background-position-y: 78.5%
     }

     .tool-bar i.icon-NTTinfo {
         display: block;
         background-position-y: 89%;
         ;
         background-position-x: 15%;
     }

     .tool-bar .btn-NTTinfo {
         display: block;
     }
 }

 @media screen\0 {

     .tool-bar i.icon-en,
     .tool-bar i.icon-jp,
     .tool-bar i {
         background-size: 1200%;
     }

     .tool-bar i.icon-en,
     .tool-bar i.icon-jp {
         background-position-x: 50.5%;
     }
 }

 .frame-bottom {
     position: fixed;
     width: calc(100% - 130px);
     left: 65px;
     bottom: 0;
     z-index: 999;
     display: none;
 }

 .btn-sitemap {
     color: #000;
     border: none;
 }

 .frame-bottom .NTTinfo {
     text-align: center;
     -ms-flex: 0 0 5%;
     flex: 0 0 5%;
     max-width: 5%;
 }

 .frame-bottom .edm {
     text-align: center;
 }

 @media(min-width: 1200px) {
     .frame-bottom .container {
         max-width: 100%;
         padding: 0;
     }
 }

 @media(min-width:960px) {
     .frame-bottom {
         display: block;
         height: 50px;
     }

     .frame-bottom .container {
         padding-top: 4px;
     }

     .frame-bottom .container::after {
         content: "";
         position: absolute;
         width: 100%;
         height: 1px;
         top: -1px;
         left: 0;
         z-index: -1;
         box-shadow: 0 -1px 8px rgba(0, 0, 0, 0.36);
     }
 }

 @media(max-width:959px) {
     .frame-bottom .container {
         width: 100%;
         max-width: inherit;
     }

     .frame-bottom .container:after {
         width: calc(100% - 20px);
         left: 10px;
     }

     .contents::after {
         content: "";
         position: fixed;
         width: calc(100% - 20px);
         left: 10px;
         height: 1px;
         bottom: 63px;
         z-index: 1;
         box-shadow: 0 -1px 8px rgba(0, 0, 0, 0.65);
     }
 }

 @media(min-width:768px) {
     .nav-footer {
         width: 90%;
         margin: 40px auto 0;
     }
 }

 .nav-footer.nav-fill {
     display: -webkit-box;
     width: 100%;
     overflow: auto;
 }

 .nav-footer.nav-fill .nav-item {
     text-align: left;
 }

 .nav-footer .nav-link {
     color: #000;
     font-weight: bold;
     text-align: left;
 }

 .nav-footer .list-group-item {
     border: none;
     background: transparent;
     text-align: left;
     padding: 0;
 }

 .nav-footer .list-group-item a {
     color: #000;
     padding: 5px 15px;
     display: block;
 }

 .social .nav a {
     width: 35px;
     padding: .5rem .5rem .7rem;
 }

 .social .nav i {
     font-size: 1.5rem;
     color: #666666;
     width: 35px;
 }

 .social .nav a:hover i {
     color: #333;
 }

 .social .nav .nav-item+.nav-item {
     margin-left: 5px
 }

 .social .nav i.icon-issuu {
     background: url(../images/icon-issuu.svg) no-repeat 0 1px;
     width: 23px;
     height: 25px;
     display: block;
 }

 @media(min-width:768px) {
     .copyright p {
         font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
         text-align: right;
         padding: .5rem 0;
         margin: 0;
     }
 }

 .subscribe .form-control {
     background: transparent;
     color: #343a40;
     border: #343a40 solid 1px;
 }

 .subscribe .input-group>.input-group-append>.btn {
     border-radius: 0;
 }

 #NTTinfo {
     background: #F3F2F0;
     position: fixed;
     z-index: 2;
     width: calc(100vw - 20px);
     bottom: 65px;
     max-height: calc(100vh - 7.2rem);
 }

 #NTTinfo p {
     font-size: 1.15rem;
     font-family: 'Noto Serif TC', serif;
     border-bottom: #545454 solid 1px;
 }

 #NTTinfo p {
     display: block;
     padding-bottom: 0;
     position: relative;
 }

 @media(min-width:768px) {
     #NTTinfo .btn-map {
         padding: 5px 0;
     }

     #NTTinfo p a {
         position: absolute;
         right: 0;
         bottom: 0;
     }
 }

 #NTTinfo ul li {
     display: flex;
     font-size: 1rem;
 }

 #NTTinfo ul li * {
     -ms-flex: 1 1 auto !important;
     flex: 1 1 auto !important;
     text-align: right;
 }

 #NTTinfo .btn-map {
     padding-right: 0;
     padding-left: 20px;
 }

 #NTTinfo .btn-map i {
     margin-right: .5rem !important;
 }

 #NTTinfo .btn-map:hover i {
     top: 2px;
     position: absolute;
     left: 0;
 }

 #NTTinfo ul {
     margin-top: 15px;
 }

 #NTTinfo .col-lg-9 .col-lg+.col-lg {
     margin-top: 20px;
 }

 #NTTinfo .col-lg-9 {
     margin-top: 20px;
 }

 #NTTinfo ul li a {
     padding-right: 60px;
     color: #000;
     text-decoration: underline;
 }

 @media(width:1536px) {
     #NTTinfo ul li a {
         padding-right: 35px;
     }
 }

 @media(min-width:768px) {
     #NTTinfo {
         box-shadow: 0 -2px 28px rgba(0, 0, 0, 0.25), 0 6px 10px rgba(0, 0, 0, 0.22);
     }

     #NTTinfo .row>div[class*='col-md']:first-of-type * {
         max-width: 320px;
         margin-left: auto;
         margin-right: auto;
     }

     #NTTinfo ul li a {
         font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
         font-size: 1rem;
     }

     #NTTinfo .col-lg-9 {
         margin-top: 0;
     }
 }

 @media(max-width:500px) {
     #NTTinfo {
         padding: 3vh 0 5vh;
     }
 }

 @media(max-width:414px) {
     #NTTinfo ul li a {
         padding-right: 53px;
     }

     #NTTinfo .col-lg-9 .row {
         margin: 0;
     }
 }

 @media(max-width:375px) {
     #NTTinfo p {
         font-size: 1.02rem;
     }

     #NTTinfo ul li {
         font-size: .9rem;
     }

     #NTTinfo ul li a {
         padding-right: 48px;
     }
 }

 @media (max-width: 320px) {
     #NTTinfo ul li {
         font-size: 0.7rem;
     }

     #NTTinfo ul li a {
         padding-right: 50px;
     }

     #NTTinfo p {
         font-size: .8rem;
         ;
     }
 }

 @media(min-width:992px) {
     #NTTinfo .container {
         max-width: 100vw;
     }
 }

 @media(min-width:960px) {
     #NTTinfo {
         width: 100%;
         bottom: 50px;
         padding: 2rem 65px;
     }

     #NTTinfo .container {
         max-width: 80vw;
     }

     #NTTinfo .row>div[class*='col-md']:first-of-type .footer-logo {
         width: 315px;
         max-width: 100%;
         margin-bottom: 0.5rem;
         display: block;
     }

     #NTTinfo .col-lg-9 .col-lg+.col-lg {
         margin-top: 0;
     }
 }

 @media(max-width:959px) {
     #NTTinfo {
         overflow: auto;
         left: 10px;
     }

     #NTTinfo .container {
         padding: 1.5rem 25px 4rem;
     }

     #NTTinfo .row {
         margin: 0;
     }
 }

 @media(width:1536px) {
     #NTTinfo .container {
         max-width: 90vw;
     }
 }

 .footer-title {
     font-size: 1.6rem;
     font-family: 'Noto Serif TC', serif;
     margin-top: 25px;
     margin-bottom: 15px;
     padding: 0 0 0 10px;
     border-left: #d20031 solid 9px;
 }

 .footer-link {
     color: #444;
     padding: 0.4rem 0;
     border-bottom: #444 solid 1px;
     position: relative;
     display: block;
     font-size: 1rem;
 }

 .footer-link:hover {
     color: #000;
     text-decoration: none;
 }

 .footer-link::after {
     content: "\f061";
     font-family: "Font Awesome 5 Pro";
     position: absolute;
     right: 0;
     -webkit-transition: all 0.2s linear;
     -moz-transition: all 0.2s linear;
     -ms-transition: all 0.2s linear;
     -o-transition: all 0.2s linear;
     transition: all 0.2s linear;
 }

 .footer-link:hover::after {
     right: 10px;
 }

 @media(min-width:993px) and (max-width:1365px) {
     #NTTinfo .col-lg-3 {
         padding-right: 0;
     }

     #NTTinfo .col-lg-9 {
         padding-left: 0;
     }

     #NTTinfo .col-lg-3,
     #NTTinfo .col-lg-9 {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%;
     }

     #NTTinfo .col-lg-9 .col-lg {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     #NTTinfo .col-lg-9 .col-lg+.col-lg {
         margin-top: 20px;
     }
 }

 @media(min-width:1366px) and (max-width:1440px) {
     #NTTinfo .container {
         max-width: 85vw;
     }

     #NTTinfo .col-lg-3 {
         flex: 0 0 35%;
         max-width: 30%;
     }

     #NTTinfo .col-lg-9 {
         flex: 0 0 70%;
         max-width: 70%;
         padding-top: 20px;
     }

     #NTTinfo .col-lg-9 .col-lg {
         flex: 0 0 50%;
         max-width: 50%;
     }

     #NTTinfo .col-lg-9 .col-lg:last-of-type {
         margin-top: 20px;
     }
 }

 @media(width:1536px) {
     #NTTinfo .col-lg-3 {
         flex: 0 0 35%;
         max-width: 30%;
     }

     #NTTinfo .col-lg-9 {
         flex: 0 0 70%;
         max-width: 70%;
         padding-top: 20px;
     }
 }

 @media(max-width:500px) {
     #NTTinfo .footer-logo {
         max-width: 100%;
     }
 }

 #NTTinfo ul li *,
 #NTTinfo ul li a,
 #NTTinfo .btn-map,
 .footer-link,
 #NTTinfo ul li {
     font-family: 'Noto Serif TC', serif;
 }

 .btn-top {
     color: #444;
     border-radius: 50%;
     width: 45px;
     height: 45px;
     padding: .5rem 1rem;
     position: fixed;
     opacity: 0;
     cursor: inherit;
     bottom: 50px;
     right: 50px;
     background: #d20031;
     box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
 }

 .btn-top.show {
     opacity: 1;
     cursor: pointer;
 }

 .btn-top i {
     font-size: 1.5rem;
     color: #fff;
     width: 35px;
     text-align: center;
     vertical-align: middle;
     line-height: 2.5rem;
     position: absolute;
     left: 0;
     right: 0;
     top: 0;
     bottom: 0;
     margin: auto;
 }

 .btn-top:hover {
     text-decoration: none;
 }

 @media(max-width:767px) {
     .btn-top {
         bottom: 20px;
         right: 20px;
     }
 }

 @media(max-width:645px) {
     .btn-top {
         bottom: 10px;
         right: 10px;
     }
 }

 * {
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
 }

 h1,
 h2,
 h3,
 h4 {
     font-family: 'Noto Serif TC', serif;
 }

 p,
 ul li,
 span {
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
 }

 ul {
     padding: 0;
 }

 ul li {
     list-style: none;
 }

 main {
     padding: 0;
     width: calc(100% - 20px);
     margin: 65px auto;
     position: relative;
 }

 @media(min-width: 960px) {
     main {
         width: calc(100% - 130px);
         min-height: 100%;
         height: auto;
         margin: 50px auto;
     }
 }

 a {
     -webkit-transition: all 0.2s linear;
     -moz-transition: all 0.2s linear;
     -ms-transition: all 0.2s linear;
     -o-transition: all 0.2s linear;
     transition: all 0.2s linear;
 }

 .wtbox {
     position: relative;
     width: 80%;
     margin: 0 auto;
     padding: 2.5%;
     background: #fff;
     box-shadow: 5px 5px 30px #e2e2e2;
     clear: both;
 }

 .wtbox.row {
     padding: 0;
 }

 .wtbox.row-offcanvas {
     overflow-x: hidden;
     display: -webkit-box;
     margin: 40px auto;
 }

 .wtbox.row-offcanvas>div[class*='col-md-'] {
     transition: 0.5s;
 }

 .wtbox.vertical-centered {
     margin-top: 10%;
 }

 @media(min-width:960px) {
     .wtbox.row>div[class*='col-md-'] {
         padding: 2.5% 5%;
     }

     .vertical-centered:not(.row-offcanvas) {
         position: absolute;
         top: 50%;
         left: 50%;
         transform: translate(-50%, -50%);
         margin: 0;
     }

     .wtbox.vertical-centered {
         width: calc(100% - 130px);
         margin-top: 0;
     }
 }

 #inquireForm .wtbox.vertical-centered {
     margin-top: 10%;
 }

 @media(min-width:1440px) {
     .wtbox.vertical-centered {
         width: calc(80% - 130px);
     }
 }

 @media(max-width:959px) {
     .wtbox.row-offcanvas {
         height: 85vh;
         position: relative;
     }

     .wtbox.row-offcanvas>div[class*='col-md-'] {
         position: absolute;
         top: 0;
         width: 100%;
         left: 0;
         right: 0;
         height: 100%;
         transition: 0.5s;
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
         padding: 20px;
     }

     .wtbox.row-offcanvas>div[class*='col-md-']:first-of-type {
         left: 0;
     }

     .wtbox.row-offcanvas.active>div[class*='col-md-']:first-of-type {
         left: -100%;
     }

     .wtbox.row-offcanvas>div[class*='col-md-']:last-of-type {
         left: 100%;
     }

     .wtbox.row-offcanvas.active>div[class*='col-md-']:last-of-type {
         left: 0%;
     }

     .wtbox {
         padding: 15px;
         width: calc(100% - 30px);
     }
 }

 [data-toggle="offcanvas"] {
     display: none;
 }

 .mb [data-toggle="offcanvas"] {
     display: block;
 }

 @media(max-width:960px) {
     [data-toggle="offcanvas"] {
         display: block;
     }
 }

 .btn-link {
     font-family: 'Noto Serif TC', serif;
 }

 .btn.red {
     background: #D85656;
     color: #fff;
 }

 .btn.red:hover {
     background: #ca4949;
     color: #fff;
     text-decoration: none;
 }

 .btn.red.login:not(.btn-block) {
     width: 200px;
     border-radius: 0;
     margin: 0 auto;
     display: block;
 }

 .img-cover {
     background: url(../images/img-nodata.jpg) center;
     background-size: cover;
     color: #fff;
     border: none;
     overflow: hidden;
     display: flex;
     justify-content: center;
     align-items: center;
     height: auto;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 .img-cover:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .img-cover img {
     -o-object-fit: cover;
     object-fit: cover;
     width: 100%;
     height: 245px;
     color: rgba(255, 255, 255, 0.2);
     -webkit-backface-visibility: hidden;
     backface-visibility: hidden;
     position: relative;
 }

 .img-cover img::after {
     background: #313131;
     content: "";
     width: 20px;
     height: 20px;
     display: block;
     position: absolute;
     top: 0;
 }

 .img-cover.compat-object-fit {
     position: relative;
     background-size: cover;
     background-position: center center;
 }

 .img-cover.compat-object-fit>a {
     position: absolute;
     top: 0;
     bottom: 0;
     left: 0;
     right: 0;
 }

 @media(min-width: 768px) {
     .img-cover {
         height: 230px;
     }

     .img-cover img {
         font-size: 13px;
         color: rgba(0, 0, 0, 0.2);
     }
 }

 .img-cover.square {
     height: 0;
     padding-bottom: 100%;
     position: relative;
     text-align: center;
     overflow: hidden;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
 }

 .img-cover.square:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .img-cover.square img {
     position: absolute;
     top: 50%;
     left: 0;
     transform: translateY(-50%) !important;
     width: 100%;
     height: 100%;
     padding: 0;
 }

 .img-cover.square img::after {
     background: #484848;
 }

 @media(max-width:500px) {
     .img-cover.square img {
         transform: translateY(-50.1%) !important;
     }
 }

 @media screen\0 {
     .img-cover.square img {
         left: 0;
     }

     .img-cover.compat-object-fit .card-img {
         display: none;
     }
 }

 @media screen and (-webkit-min-device-pixel-ratio:0) {
     .img-cover.compat-object-fit {
         background-image: none !important;
     }
 }

 @media screen and (-webkit-min-device-pixel-ratio:0) {
     .img-cover.compat-object-fit .card-img {
         display: inline-block;
     }
 }

 @media screen\0 {
     .img-cover.compat-object-fit .card-img {
         display: none;
     }
 }

 .swiper-slide {
     padding: 0;
     background: transparent;
 }

 .swiper-container-fade .swiper-slide {
     opacity: 0 !important;
 }

 .swiper-container-fade .swiper-slide-active {
     opacity: 1 !important;
 }

 .swiper-button-prev,
 .swiper-button-next {
     background-image: none;
     width: 50px;
     height: 50px;
     border-radius: 50%;
     border: #9e9e9e solid 2px;
     padding: 0 1.4rem;
     line-height: 3rem;
     background: rgba(255, 255, 255, 0.65);
     z-index: 1;
 }

 .swiper-container+.swiper-pagination {
     width: 100%;
     margin-top: 5px;
 }

 .swiper-container+.swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet {
     margin-left: 7px;
 }

 .swiper-pagination-bullet-active {
     background: #d20031;
 }

 div[class*='swiper-button-'] {
     background: rgba(255, 255, 255, 0.9);
     border-color: #FFF;
     box-shadow: 2px 2px 4px #000;
     border-width: 2px !important;
 }

 div[class*='swiper-button-']::before {
     font-family: 'Font Awesome 5 Pro';
     font-size: 1.8rem;
     color: #7d7d7d;
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     margin: auto;
     text-align: center;
 }

 .swiper-button-next::before {
     content: "\f054";
 }

 .swiper-button-prev::before {
     content: "\f053";
 }

 .swiper-button-disabled {
     display: none !important;
 }

 .swiper-container {
     width: 100% !important;
 }

 .swiper-button-prev {
     left: -20px;
 }

 .swiper-button-next {
     right: -20px;
 }

 .form-check-secondary input:checked~.form-check-label::before {
     background: #2b2b2b;
 }

 .form-check-secondary input:checked~.form-check-label::after {
     background-image: none !important;
     content: "\f00c";
     font-size: 85%;
     font-family: 'Font Awesome 5 Pro';
     color: #f3f2f0;
     left: -18px;
     top: 2px;
 }

 @media(max-width:768px) {
     .form-check-secondary input:checked~.form-check-label::after {
         font-size: 90%;
     }
 }

 .form-control.datepicker,
 .bootstrap-datetimepicker-widget table tr>* {
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
 }

 .cards-wrap.row {
     margin: 0;
 }

 .cards-wrap .col-md {
     clear: both;
 }

 .cards-wrap .card {
     background: transparent;
     border: none;
     border-radius: 0;
 }

 .cards-wrap .card-title {
     margin-bottom: 0.5rem;
     line-height: 1.2rem;
 }

 .cards-wrap .card.ntt .card-title::before {
     content: '';
     display: inline-block;
     background: url(../images/icon-4ntt.svg) no-repeat;
     width: 25px;
     height: 22px;
     background-size: cover;
     margin-right: 0.3rem;
     background-position-y: 97.5%;
 }

 .cards-wrap .card-title a {
     font-family: 'Noto Serif TC', serif;
     font-size: 1.2rem;
     color: #333;
     text-decoration: none;
 }

 .cards-wrap .card-title a:hover {
     color: #d20031;
     text-decoration: underline;
 }

 .cards-wrap .card-body {
     padding: .5rem 0 2rem;
 }

 .cards-wrap .event-time {
     display: block;
 }

 .list .cards-wrap .event-time {
     cursor: default;
 }

 @media(min-width:768px) {
     .cards-wrap .card .img-cover {
         height: 130px;
     }
 }

 @media(min-width:800px) {
     .cards-wrap .card .img-cover {
         height: 140px;
     }

     .cards-wrap .card-title {
         min-height: auto;
         margin-bottom: 1rem;
     }
 }

 @media(min-width:992px) {
     .cards-wrap .card .img-cover {
         height: 180px;
     }

     .cards-wrap .card-title {
         min-height: 95px;
         line-height: 1.8rem;
         margin-bottom: 0;
     }
 }

 @media(min-width:1280px) {
     .cards-wrap .card .img-cover {
         height: 225px;
     }

     .cards-wrap .card-title a {
         font-size: 1.5rem;
     }
 }

 @media(max-width:414px) {
     .cards-wrap .event-time {
         padding: 0 10px;
     }

     .cards-wrap .card-title {
         padding: 0 5px;
     }

     .cards-wrap .card-title a {
         font-size: 1.4rem;
         line-height: 2rem;
     }
 }

 .cards-wrap .card .img-cover img {
     transform: scale(1);
     opacity: 1;
     min-height: 240px;
 }

 .eventTip .arrow::before {
     border-bottom-color: #d20031;
     border-top-color: #d20031;
     filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.7));
 }

 .eventTip .tooltip-inner {
     z-index: 1;
     position: relative;
     background: #d20031;
     color: #fff;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
 }

 .eventTip .tooltip-inner span {
     display: block;
 }

 .eventTip .tooltip-inner span b {
     font-weight: normal;
     margin: 0 3px;
 }

 .INDEX .eventTip .tooltip-inner span,
 .INDEXEN1 .eventTip .tooltip-inner span,
 .INDEXJP1 .eventTip .tooltip-inner span {
     width: max-content;
 }

 @media(min-width:960px) {
     .cards-wrap .event-time {
         display: block;
         max-width: 100%;
         width: inherit;
         height: 1.5rem;
         overflow: hidden;
         white-space: nowrap;
         text-overflow: ellipsis;
         -webkit-line-clamp: 1;
         -webkit-box-orient: vertical;
         -moz-box-orient: vertical;
         max-height: 1.5rem\9;
     }

     .cards-wrap .event-time {
         cursor: crosshair;
     }

     .cards-wrap .event-time:hover {
         background: #e2e2e2;
     }

     .events-group.list .cards-wrap .event-time:hover {
         background: transparent;
     }
 }

 .event-time>span {
     font-family: 'EB Garamond', 'Noto Serif TC', serif;
     font-size: 1.1rem;
     padding-right: .4rem;
     border-right: #333 solid 1px;
 }

 .event-time>span+span {
     padding-left: .4rem;
 }

 .event-time>span:last-of-type {
     border: none;
 }

 @media(max-width:959px) {
     .cards-wrap .event-time {
         padding: 0 10px 0px;
         margin: .5rem .5rem 1rem;
         border-left: #ddd solid 3px;
     }

     .cards-wrap .event-time>span {
         padding: 0;
         font-size: .8rem;
         display: block;
         border: none;
     }
 }

 .event-time>span b {
     font-family: 'Noto Serif TC', serif;
     font-weight: normal;
     padding: 0 .2rem;
 }

 .cards-wrap .action {
     border: #B1B1B1 solid 1px;
     border-right: 0;
     border-left: 0;
     text-align: center;
     clear: both;
     display: flex;
     justify-content: center;
 }

 .cards-wrap .action .btn-link {
     font-family: 'Noto Serif TC', serif;
     color: #333;
     padding: .65rem .75rem;
     font-size: 1rem;
     font-weight: 500;
 }

 @media(max-width:1280px) {
     .cards-wrap .action .btn-link {
         font-size: .8rem;
     }
 }

 @media(max-width:768px) {
     .cards-wrap .action .btn-link {
         font-size: 1rem;
     }
 }

 @media(max-width:414px) {
     .cards-wrap .action .btn-link {
         font-size: .9rem;
     }
 }

 @media(max-width:320px) {
     .cards-wrap .action .btn-link {
         font-size: .7rem;
     }
 }

 .cards-wrap .action .btn-link:hover {
     text-decoration: none;
     color: #d20031;
 }

 .cards-wrap .action .btn-link i {
     margin-right: 0.5rem;
 }

 .cards-wrap .card .img-link {
     display: block;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
     display: flex;
     align-items: center;
 }

 .cards-wrap .card .img-link:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .cards-wrap .card .img-cover img {
     height: auto;
 }

 .card-date {
     color: #8F8F8F;
     font-family: 'Buenard', 'Noto Serif TC', serif;
     font-size: 1rem;
     line-height: 1.2rem;
     margin: 0;
     padding-top: 0.4rem;
 }

 .content .btn-more {
     color: #333;
     font-size: 1.2rem;
     font-family: 'Buenard', 'Noto Serif TC', serif;
     text-align: center;
     text-decoration: none;
     display: block;
     width: 200px;
     margin: auto;
     border: #333 solid 1px;
     padding: .5rem;
     background: transparent;
 }

 .content .btn-more:hover {
     background: #333;
     color: #fff;
 }

 .news-wrap .card-title a {
     font-size: 1.2rem;
     line-height: 1rem;
 }

 .news-wrap .card .img-cover {
     height: auto;
 }

 .news-wrap .cards-wrap .card .img-cover img {
     height: 100%;
 }

 .news-wrap {
     margin: 30px 0;
 }

 .news-wrap .item {
     border-bottom: #b8b8b8 solid 1px;
     padding: 20px 0 15px;
 }

 .news-wrap .card-title,
 .news-wrap .card-title a {
     position: relative;
     color: #212529;
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
     outline: 0;
 }

 .news-wrap .card-date {
     font-size: 1rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     color: #656565;
     vertical-align: auto;
     letter-spacing: 0;
     width: 120px;
     padding: 3px 0;
     line-height: 1.5rem;
     background: #FFF;
     border-radius: 8px;
     text-align: center;
     border: 1px solid #D8D9D1;
     float: left;
     margin-right: 10px;
 }

 .pagination {
     margin: 20px 0 40px;
 }

 .pagination>li>a,
 .pagination>li>span,
 .pagination>li>a:focus,
 .pagination>li>a:hover,
 .pagination>li>span:focus,
 .pagination>li>span:hover,
 .pagination>li:first-child>a,
 .pagination>li:first-child>span,
 .pagination>li:last-child>a,
 .pagination>li:last-child>span,
 .page-item.disabled .page-link {
     border-radius: 0;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     color: #858585;
     border-color: #858585;
     padding: 10px 15px;
     font-size: 16px;
     border: none;
     background: transparent;
     -webkit-transition: none;
     -moz-transition: none;
     -ms-transition: none;
     -o-transition: none;
     transition: none;
 }

 .pagination>.active>a,
 .pagination>.active>a:focus,
 .pagination>.active>a:hover,
 .pagination>.active>span,
 .pagination>.active>span:focus,
 .pagination>.active>span:hover,
 .pagination>li>a:focus,
 .pagination>li>a:hover,
 .pagination>li>a:focus,
 .pagination>li>a:hover,
 .pagination>li>span:focus,
 .pagination>li>span:hover,
 .pagination>li>a:focus,
 .pagination>li>a:hover,
 .pagination.page-item.active .page-link,
 .pagination.page-item.active .page-link:focus,
 .pagination.page-item.active .page-link:hover {
     background-color: #9f9f9f;
     color: #fff;
     border-color: #858585;
     border-bottom: transparent solid 2px;
 }

 .pagination>li>a:focus,
 .pagination>li>a:hover,
 .pagination>li>span:focus,
 .pagination>li>span:hover {
     color: #858585;
     border-bottom: #858585 solid 2px;
     background: none;
 }

 .pagination .page-item.active .page-link,
 .pagination.page-item.active .page-link:hover {
     z-index: auto;
     color: #333;
     border: none;
     border-bottom: #333 solid 2px;
     background: none;
 }

 .page-item:first-child .page-link,
 .page-item:last-child .page-link {
     border-radius: 0;
 }

 .addthis_inline_share_toolbox {
     display: flex;
     -ms-flex-pack: center;
     justify-content: center;
 }

 .at-style-responsive .at-share-btn {
     background: transparent !important;
 }

 p.ntt::before,
 .ntt.post-title::before,
 .ntt.card-title::before {
     content: '';
     display: inline-block;
     background: url(../images/icon-4ntt.svg) no-repeat;
     width: 25px;
     height: 22px;
     background-size: cover;
     margin-right: 0.3rem;
     background-position-y: 97.5%;
 }

 .list-collapse .card-body {
     padding-left: 40px;
 }

 .list-collapse .collapsebtn {
     position: relative;
     color: #212529;
     font-size: 1.5rem;
     text-decoration: none;
     font-family: 'Noto Serif TC', serif;
     text-align: left;
     padding-left: 55px;
 }

 .list-collapse .collapsebtn:hover {
     text-decoration: none;
 }

 .list-collapse .collapsebtn:before {
     font-family: "Font Awesome 5 pro";
     color: #b8b8b8;
     padding-right: 12px;
     position: absolute;
     left: 12px;
 }

 .list-collapse .collapsebtn[aria-expanded="false"]:before {
     content: '\f067';
 }

 .list-collapse .collapsebtn[aria-expanded="true"]:before {
     content: '\EA7F';
 }

 .list-collapse .collapse.show .card-body {
     position: relative;
 }

 .list-collapse .collapse.show .card-body::before {
     content: " ";
     position: absolute;
     background: #b8b8b8;
     height: 100%;
     width: 2px;
     left: 20px;
     top: 0px;
 }

 .list-collapse:last-child .collapse.show .card-body::before {
     content: " ";
     position: absolute;
     background: #b8b8b8;
     height: 100%;
     width: 0px;
     left: 0px;
     top: 0px;
 }

 .form-check-primary input:checked~.form-check-label::before {
     background-color: #000;
 }

 .INDEXEN1 main,
 .INDEXJP1 main,
 .INDEX main,
 .hp main {
     width: 100%;
 }

 .INDEXEN1 section,
 .INDEXJP1 section,
 .INDEX section,
 .hp section {
     position: relative;
     width: 100%;
     background: #E7E5E2;
 }

 @media(min-width: 960px) {

     .INDEXEN1 section,
     .INDEXJP1 section,
     .INDEX section,
     .hp section {
         margin: auto;
     }
 }

 .INDEXEN1 section,
 .INDEXJP1 section,
 .INDEX section,
 .hp section {
     min-height: calc(100vh - 100px);
     padding: 2.5rem 0 2rem;
 }

 @media(min-width:1366px) and (max-width:1440px) {

     .INDEXEN1 section,
     .INDEXJP1 section,
     .INDEX section,
     .hp section {
         min-height: calc(100vh - 130px);
     }
 }

 @media(height:1366px) {

     .INDEXEN1 section,
     .INDEXJP1 section,
     .INDEX section,
     .hp section {
         min-height: calc(50vh - 100px);
     }
 }

 .INDEXEN1 section:nth-last-of-type(odd),
 .INDEXJP1 section:nth-last-of-type(odd),
 .INDEX section:nth-last-of-type(odd),
 .hp section:nth-last-of-type(odd) {
     background: #F3F2F0;
 }

 .section-title {
     color: #000;
     text-align: center;
     margin-bottom: 2rem;
 }

 .section-title span {
     display: block;
     color: #A7A7A7;
     font-family: 'Buenard', 'Noto Serif TC', serif;
     font-size: 1.5rem;
     font-weight: normal;
 }

 @media(max-width:500px) {
     .section-title {
         font-size: 1.5rem;
     }

     .section-title span {
         font-size: 1rem;
         margin-top: .2rem;
     }
 }

 #video-bg {
     position: absolute;
     right: 0;
     top: -4px;
     min-width: 100%;
     min-height: 100%;
     width: auto;
     height: auto;
     z-index: 0;
 }

 @media(min-width: 768px) {
     #video-bg {
         display: block;
     }
 }

 .video-background {
     background: #000;
     position: fixed;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
 }

 .video-foreground,
 .video-background iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     pointer-events: none;
 }

 @media (min-aspect-ratio: 16/9) {
     .video-foreground {
         height: 300%;
         top: -100%;
     }
 }

 @media (max-aspect-ratio: 16/9) {
     .video-foreground {
         width: 300%;
         left: -100%;
     }
 }

 #Intro {
     position: relative;
     background: transparent;
     padding: 0;
 }

 #Intro .mb {
     display: none;
 }

 #Intro .img-cover {
     height: 100%;
 }

 #Intro .img-cover img {
     height: auto;
     width: 100%;
 }

 @media(min-width:1024px) {
     #Intro {
         margin-top: 25px;
     }
 }

 @media(min-width:1366px) and (max-width:1440px) {
     #Intro {
         height: calc(100vh - 130px);
     }
 }

 #Intro .intro-bg {
     width: 100%;
     z-index: 1;
     color: transparent;
 }

 #Intro .mb.intro-bg {
     width: calc(100% - 20px);
     height: auto;
 }

 #Intro .pc.intro-bg {
     display: none;
 }

 .intro-logo-wrap>* {
     position: absolute;
     z-index: 1;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
     -ms-transform: translate(-50%, -50%);
     -o-transform: translate(-50%, -50%);
     display: flex;
     justify-content: center;
     align-items: center;
 }

 .drop-shadow {
     -webkit-filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.7));
     filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.7))
 }

 .intro-logo {
     -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.7));
     filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.7));
 }

 .bg-img {
     background-image: url(images/img-hpIntro-pc-01.jpg);
     width: 100%;
     height: 100%;
     opacity: 0.9;
     display: block;
     position: absolute;
     filter: blur(8px);
     -webkit-filter: blur(8px);
     top: 0;
     background-size: cover;
     background-position: center;
 }

 .img-wrap>a,
 .img-wrap {
     height: calc(100vh - 100px);
     width: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     position: absolute;
     top: 0;
     overflow: hidden;
     background: #949494;
 }

 .img-wrap>a,
 .img-wrap {
     max-height: 100%;
 }

 .btn-action {
     position: absolute;
     z-index: 1;
     width: 80px;
     height: 80px;
     bottom: 8vh;
     text-align: center;
     color: #fff;
     border: #fff solid 4px;
     border-radius: 50%;
     left: calc((100% - 80px) / 2);
     opacity: .6;
     background: rgba(0, 0, 0, 0.6);
     padding-left: 2px;
 }

 .btn-action:hover {
     opacity: 1;
     color: #fff;
     text-decoration: none;
 }

 .btn-action:focus {
     text-decoration: none;
 }

 .btn-action i {
     font-size: 2.2rem;
     line-height: 4.5rem;
 }

 @media(max-width:768px) {
     .btn-action i::before {
         margin-top: 7px;
         margin-left: -2px;
         display: block;
     }
 }

 .video-background .btn-action {
     bottom: 15vh;
 }

 #Intro .video-background {
     display: none;
 }

 .bg-img {
     background-image: url(images/img-hpIntro-pc-01.jpg);
     width: 100%;
     height: 100%;
     opacity: 0.9;
     display: block;
     position: absolute;
     filter: blur(8px);
     -webkit-filter: blur(8px);
     top: 0;
     background-size: cover;
     background-position: center;
 }

 .mb .intro-logo-wrap,
 .mb #Intro .video-background {
     display: none;
 }

 @media screen\0 {

     .img-wrap>a,
     .img-wrap {
         position: absolute;
         left: 0;
         top: 0;
     }

     .bg-img {
         display: none;
     }
 }

 @media(min-width:960px) {
     #Intro .intro-bg.pc {
         display: block;
     }

     #Intro .intro-bg.mb {
         display: none;
     }

     #Intro .video-background {
         display: block;
         z-index: 0;
     }
 }

 @media(max-width:414px) {
     #Intro {
         height: calc(100vh - 130px);
     }
 }

 @media(width:375px) and (height:812px) {
     #Intro {
         overflow: hidden;
         position: relative;
     }

     #Intro .intro-bg {
         height: 100%;
         position: absolute;
         top: 0;
         right: 0;
         bottom: 0;
         left: 0;
         margin: auto;
     }

     .btn-action {
         bottom: 10vh;
     }
 }

 @media (max-width:960px) {
     #Intro .mb {
         display: block;
     }

     #Intro .pc {
         display: none;
     }

     #Intro .mb.intro-bg {
         height: calc(100vh - 130px);
         width: auto;
     }

     .btn-action {
         width: 40px;
         height: 40px;
         border-width: 2px;
         left: calc((100% - 40px) / 2);
         bottom: 15px;
     }

     .btn-action i {
         font-size: 1.4rem;
         line-height: 2.2rem;
     }
 }

 @media (max-width:414px) {
     #Intro .mb.intro-bg {
         width: calc(100% - 10px);
         height: auto;
     }

     .img-wrap {
         height: calc(100vh - 130px);
     }

     .img-wrap>a {
         height: calc(100vh - 130px);
     }
 }

 @media (width:768px) and (height: 725px) {
     #Intro .mb.intro-bg {
         width: auto;
         height: 100%;
     }
 }

 @media(min-width:960px) {
     .img-wrap.video {
         display: none;
     }
 }

 #hot {
     position: relative;
     overflow: hidden;
 }

 @media(min-width:1366px) and (max-width:1440px) {
     #hot {
         height: 82vh;
         min-height: auto;
     }
 }

 #hot::after {
     content: '';
     display: block;
     width: 100%;
     height: 250px;
     position: absolute;
     z-index: 0;
     left: 0;
     bottom: 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(bottom, rgb(242, 241, 239) 0%, rgba(242, 241, 239, 0.31) 80%, rgba(242, 241, 239, 0) 100%);
     background: -webkit-linear-gradient(bottom, rgb(242, 241, 239) 0%, rgba(242, 241, 239, 0.31) 80%, rgba(242, 241, 239, 0) 100%);
     background: linear-gradient(to top, rgb(242, 241, 239) 0%, rgba(242, 241, 239, 0.31) 80%, rgba(242, 241, 239, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
 }

 .hotslider-wrap {
     z-index: 1;
     position: relative;
 }

 .hotslider-wrap .swiper-slide {
     -ms-flex-negative: 0;
 }

 .hotslider-wrap .swiper-container.one {
     padding-top: 40px;
     text-align: center;
 }

 .hotslider-wrap .swiper-container.one .swiper-slide {
     padding: 0 43px;
 }

 .hotslider-wrap .swiper-container {
     width: 100%;
     padding-bottom: 70px;
     position: relative;
 }

 @media(width:1920px) {
     .hotslider-wrap .swiper-container {
         padding-bottom: 65px;
     }
 }

 @media(min-width:960px) {
     .hotslider-wrap {
         width: 100%;
         position: absolute;
         top: 50%;
         left: 50%;
         -webkit-transform: translate(-50%, -50%);
         transform: translate(-50%, -50%);
     }

     .hotslider-wrap .swiper-container {
         width: calc(100% + 1px);
         margin-left: -1px;
     }

     .hotslider-wrap .swiper-container::before,
     .hotslider-wrap .swiper-container::after {
         content: '';
         display: block;
         height: 100%;
         width: 240px;
         max-width: 20%;
         position: absolute;
         top: 0;
         z-index: 2;
     }

     .hotslider-wrap .swiper-container::before {
         left: 0;
         background: #f3f2f0;
         background: -moz-linear-gradient(left, rgb(242, 241, 239, 0.65) 0%, rgba(242, 241, 239, 0) 60%, rgba(242, 241, 239, 0) 100%);
         background: -webkit-linear-gradient(left, rgba(242, 241, 239, 0.65) 0%, rgba(242, 241, 239, 0) 80%, rgba(242, 241, 239, 0) 100%);
         background: linear-gradient(to right, rgb(242, 241, 239, 0.65) 0%, rgba(242, 241, 239, 0) 60%, rgba(242, 241, 239, 0) 100%) filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=1);
     }

     .hotslider-wrap .swiper-container::after {
         right: 0;
         background: #f3f2f0;
         background: -moz-linear-gradient(right, rgb(242, 241, 239, 0.65) 0%, rgba(242, 241, 239, 0) 60%, rgba(242, 241, 239, 0) 100%);
         background: -webkit-linear-gradient(right, rgba(242, 241, 239, 0.65) 0%, rgba(242, 241, 239, 0) 80%, rgba(242, 241, 239, 0) 100%);
         background: linear-gradient(to left, rgb(242, 241, 239, 0.65) 0%, rgba(242, 241, 239, 0) 60%, rgba(242, 241, 239, 0) 100%) filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=1);
     }
 }

 @media screen\0 {

     .hotslider-wrap .swiper-container::before,
     .hotslider-wrap .swiper-container::after {
         display: none;
     }
 }

 .hotslider-wrap .swiper-slide img {
     display: block;
     margin: auto;
     width: 100%;
 }

 @media(max-width:959px) {
     .hotslider-wrap .swiper-slide img {
         width: auto;
         height: 75vh;
     }
 }

 @media(max-width:767px) {
     #hot {
         padding: 0;
     }
 }

 @media(max-width:414px) {
     #hot {
         padding: 0;
         min-height: auto;
     }

     .hotslider-wrap .swiper-slide img {
         max-width: 100%;
         height: inherit;
         width: 100%;
     }
 }

 .hotslider-wrap .swiper-slide {
     width: 100%;
     height: auto;
 }

 .hotslider-wrap .hot .swiper-slide {
     width: 100%;
     position: relative;
     background: #444;
 }

 @media(min-width:1024px) {
     .hotslider-wrap .swiper-slide {
         width: 900px;
     }

     .hotslider-wrap .hot .swiper-slide {
         width: 900px;
     }
 }

 @media(min-width:1366px) and (max-width:1440px) {
     .hotslider-wrap {
         top: 55%;
     }

     .hotslider-wrap .swiper-slide {
         width: 1000px;
     }

     .hotslider-wrap .hot .swiper-slide {
         width: 1000px;
     }

     .hotslider-wrap .swiper-container::before,
     .hotslider-wrap .swiper-container::after {
         width: 130px;
     }
 }

 @media(min-width:1441px) {
     .hotslider-wrap .swiper-slide {
         width: 1320px;
     }

     .hotslider-wrap .hot .swiper-slide {
         width: 1320px;
     }

     @media(width:1536px) {
         .hotslider-wrap .swiper-slide {
             width: 1100px;
         }

         .hotslider-wrap .hot .swiper-slide {
             width: 1100px;
         }

         .hotslider-wrap .swiper-container::before,
         .hotslider-wrap .swiper-container::after {
             width: 150px;
         }
     }
 }

 .hotslider-wrap .swiper-slide img {
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
 }

 .hotslider-wrap .swiper-slide .slider-image .preview-icon {
     z-index: -1;
     width: calc(100% - 30px);
 }

 .hotslider-wrap .swiper-slide.swiper-slide-active .slider-image:hover .preview-icon {
     opacity: 1;
     -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
     z-index: 1;
 }

 .hotslider-wrap .swiper-container-horizontal>.swiper-pagination-bullets,
 .hotslider-wrap .swiper-pagination-custom,
 .hotslider-wrap .swiper-pagination-fraction {
     bottom: 0;
 }

 .hotslider-wrap .swiper-pagination-bullet {
     background: transparent none repeat scroll 0 0;
     border: 1px solid #ee0f6f;
     border-radius: 10px;
     display: inline-block;
     height: 10px;
     opacity: 1;
     -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
     width: 26px;
     -webkit-transition: 0.2s;
     transition: 0.2s;
     display: none;
 }

 .hotslider-wrap .swiper-pagination-bullet-active {
     background: rgba(0, 0, 0, 0) -webkit-linear-gradient(left, #ee0f6f 0%, #f89482 100%) repeat scroll 0 0;
     background: rgba(0, 0, 0, 0) linear-gradient(to right, #ee0f6f 0%, #f89482 100%) repeat scroll 0 0;
     border: medium none;
     height: 12px;
     opacity: 1;
     -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
     width: 12px;
 }

 @media(min-width:768px) {
     .hotslider-wrap .swiper-pagination-bullet {
         display: none;
     }
 }

 .hotslider-wrap .hot .swiper-slide .img-description {
     position: absolute;
     display: none;
     width: 100%;
     bottom: 0;
     padding: 1.2rem 1.5rem 0.8rem;
     color: #b6b6b6;
     text-align: center;
     border-top: #d7d7d7 solid 1px;
     background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.9) 100%);
     background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.9) 100%);
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.9) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
     -webkit-transition: all 0.2s linear;
     -moz-transition: all 0.2s linear;
     -ms-transition: all 0.2s linear;
     -o-transition: all 0.2s linear;
     transition: all 0.2s linear;
 }

 .hotslider-wrap .hot .swiper-slide .img-description .img-title {
     font-size: 2.2rem;
 }

 @media(min-width:1366px) and (max-width:1440px) {
     .hotslider-wrap .hot .swiper-slide .img-description .img-title {
         font-size: 1.6rem;
     }
 }

 @media(max-width:1280px) {
     .hotslider-wrap .hot .swiper-slide .img-description .img-title {
         font-size: 1.4rem;
     }
 }

 .hotslider-wrap .hot .swiper-slide .img-description a {
     color: #dbdbdb;
     text-decoration: none;
     font-family: 'Noto Serif TC', serif;
 }

 .hotslider-wrap .hot .swiper-slide .img-description:hover,
 .hotslider-wrap .hot .swiper-slide .img-description:hover a {
     color: #fff;
 }

 .hotslider-wrap .hot .swiper-slide .img-description p {
     font-family: 'Buenard', 'Noto Serif TC', serif;
     font-size: 1.2rem;
     margin-bottom: 0.2rem;
 }

 .hotslider-wrap .hot .swiper-slide .action {
     text-align: center;
     position: absolute;
     width: 100%;
     bottom: -3.6rem;
     display: none;
 }

 @media(max-width:1536px) {
     .hotslider-wrap .hot .swiper-slide .action {
         bottom: -3.6rem;
     }
 }

 @media(max-width:320px) {
     .hotslider-wrap .hot .swiper-slide .action {
         bottom: -2.6rem;
     }
 }

 .hotslider-wrap .hot .swiper-slide-active .action {
     display: block;
 }

 .hotslider-wrap .hot .swiper-slide .btn-link {
     border: #333 solid 1px;
     border-radius: 2rem;
     padding: 0.4rem 1.5rem;
     color: #333;
     margin-top: 0.2rem;
     font-size: 1.4rem;
     font-family: 'Noto Serif TC', serif;
 }

 .hotslider-wrap .hot .swiper-slide .btn-link:hover {
     text-decoration: none;
     background: #333;
     color: #fff;
 }

 .hotslider-wrap .hot .swiper-slide .btn-link i {
     margin-right: 0.5rem;
 }

 .hotslider-wrap .hot .swiper-slide-active .action {
     display: block;
 }

 .hotslider-wrap .hot .swiper-slide .slider-image {
     display: block;
 }

 .hotslider-wrap .swiper-slide .img-description,
 .hotslider-wrap .swiper-slide .slider-image {
     opacity: 0.7;
 }

 .hotslider-wrap .swiper-slide-active .img-description,
 .hotslider-wrap .swiper-slide-active .slider-image {
     opacity: 1;
 }

 .hotslider-wrap .hot .swiper-slide img.pc {
     display: none;
 }

 .hotslider-wrap .hot .swiper-slide img.mb {
     display: block;
 }

 .hotslider-wrap div[class*='swiper-button-']::before {
     font-weight: 300;
     font-size: 1.6rem;
     line-height: 3rem;
 }

 .hotslider-wrap .swiper-button-prev {
     left: 75px;
 }

 .hotslider-wrap .swiper-button-next {
     right: 75px;
 }

 .hotslider-wrap .hot .swiper-slide .btn-link+.btn-link {
     margin-left: .6rem;
 }

 @media(max-width:959px) {
     .hotslider-wrap div[class*='swiper-button-'] {
         top: inherit;
         bottom: 0;
         width: 51px;
         height: 51px;
         border-width: 1px;
         line-height: 3.3rem;
         box-shadow: 2px 1px 3px #000;
     }

     .hotslider-wrap .hot .swiper-slide-active .action {
         display: flex;
         justify-content: center;
     }

     .hotslider-wrap .swiper-button-prev {
         left: 25px;
     }

     .hotslider-wrap .swiper-button-next {
         right: 25px;
     }
 }

 @media(max-width:767px) {
     .hotslider-wrap div[class*='swiper-button-'] {
         bottom: 1px;
     }

     .hotslider-wrap .hot .swiper-slide .btn-ticket {
         display: none;
     }

     .hotslider-wrap .hot .swiper-slide .btn-link i {
         display: none;
     }
 }

 @media(min-width:960px) {
     .hotslider-wrap .hot .swiper-slide .img-description {
         display: block;
     }

     .hotslider-wrap .hot .swiper-slide .img-cover.slider-image {
         height: 500px;
         display: flex;
         justify-content: center;
         align-items: center;
     }

     .hotslider-wrap .hot .swiper-slide .img-cover.slider-image img.pc {
         display: block;
         height: auto;
         width: 100%;
     }

     .hotslider-wrap .hot .swiper-slide .img-cover.slider-image:hover img.pc {
         opacity: 1;
         transform: scale(1);
         -webkit-transform: scale(1);
         -moz-transform: scale(1);
         -ms-transform: scale(1);
         -o-transform: scale(1);
     }

     .hotslider-wrap .hot .swiper-slide img.mb {
         display: none;
     }

     .hotslider-wrap .hot .swiper-slide img.pc {
         display: block;
         max-height: 625px;
     }

     .hotslider-wrap .hot .swiper-slide .btn-link {
         display: inline-block;
         width: auto;
         margin: initial;
     }

     .hotslider-wrap div[class*='swiper-button-'] {
         top: 50%;
         bottom: initial;
     }

     .hotslider-wrap div[class*='swiper-button-']::before {
         font-weight: normal;
     }
 }

 @media(min-width:1441px) {
     .hotslider-wrap .hot .swiper-slide .img-cover.slider-image {
         height: 625px;
         display: flex;
         justify-content: center;
         align-items: center;
     }
 }

 @media(max-width:1280px) {
     .hotslider-wrap .hot .swiper-slide .img-cover.slider-image {
         height: 425px;
     }

     .hotslider-wrap .hot .swiper-slide .img-description {
         padding: .8rem 1.5rem 0rem;
     }

     .hotslider-wrap .hot .swiper-slide .btn-link {
         font-size: 1.2rem;
     }
 }

 @media(max-width:960px) {
     .hotslider-wrap .hot .swiper-slide .slider-image.img-cover {
         height: auto;
     }
 }

 @media(width:1920px) {
     .hotslider-wrap .swiper-button-prev {
         left: 185px;
     }

     .hotslider-wrap .swiper-button-next {
         right: 185px;
     }
 }

 @media(max-width:414px) {
     .hotslider-wrap div[class*='swiper-button-'] {
         bottom: 10px;
     }

     .hotslider-wrap .hot .swiper-slide .slider-image.img-cover {
         width: 100%;
         height: calc(100vh - 210px);
         display: flex;
         align-items: center;
         justify-content: center;
     }

     .hotslider-wrap .hot .swiper-slide .slider-image img {
         height: 100%;
         width: auto;
         max-width: initial;
     }
 }

 @media(max-width:375px) {
     .hotslider-wrap .hot .swiper-slide .btn-link {
         font-size: 1.2rem;
     }

     .hotslider-wrap div[class*='swiper-button-'] {
         width: 45px;
         height: 45px;
         bottom: 3px;
     }

     .hotslider-wrap div[class*='swiper-button-']::before {
         line-height: 3rem;
         width: 50px;
         height: 50px;
         margin-left: -1px;
     }
 }

 @media(max-width:355px) {
     .hotslider-wrap .hot .swiper-slide .btn-link {
         font-size: 1rem;
         padding: 0.4rem 1rem;
     }
 }

 @media(width:375px) and (height:812px) {
     .hotslider-wrap .hot .swiper-slide .slider-image {
         height: calc(90vh - 120px);
         position: relative;
         display: flex;
         justify-content: center;
         align-items: center;
         background: #000;
     }

     .hotslider-wrap .hot .swiper-slide .slider-image img {
         width: calc(100% - 20px);
         height: auto;
     }
 }

 @media(max-width:320px) {
     .hotslider-wrap .hot .swiper-slide .slider-image {
         height: calc(85vh - 120px);
         position: relative;
         display: flex;
         justify-content: center;
         align-items: center;
         background: #000;
     }

     .hotslider-wrap div[class*="swiper-button-"] {
         width: 30px;
         height: 30px;
         bottom: 18px;
         padding: 0;
     }

     .hotslider-wrap div[class*='swiper-button-']::before {
         font-size: 1rem;
         line-height: 2rem;
     }
 }

 #events {
     height: initial;
     padding: 2rem 0;
     position: relative;
 }

 @media(min-width:1366px) {
     #events {
         padding: 5rem 0;
     }
 }

 @media(min-width:1366px) and (max-width:1440px) {
     #events {
         padding-bottom: 0;
     }
 }

 #events::after {
     content: '';
     display: block;
     width: 100%;
     height: 250px;
     position: absolute;
     z-index: 0;
     left: 0;
     bottom: 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(bottom, rgb(231, 229, 226) 0%, rgba(231, 229, 226, 0.31) 80%, rgba(231, 229, 226, 0) 100%);
     background: -webkit-linear-gradient(bottom, rgb(231, 229, 226) 0%, rgba(231, 229, 226, 0.31) 80%, rgba(231, 229, 226, 0) 100%);
     background: linear-gradient(to top, rgb(231, 229, 226) 0%, rgba(231, 229, 226, 0.31) 80%, rgba(231, 229, 226, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
 }

 #events .cards-wrap {
     position: relative;
     z-index: 1;
 }

 @media(max-width:768px) {
     #events .cards-wrap {
         margin: 0 10px;
     }
 }

 #news {
     min-height: auto;
     padding: 8rem 0;
     position: relative;
     overflow: hidden;
     width: 100%;
 }

 @media(width:1920px) {
     #news {
         padding: 2rem 0;
         position: relative;
         margin-top: -2rem;
     }
 }

 #news>*:not(.bubble) {
     position: relative;
     z-index: 1;
 }

 .newslider {
     z-index: 0;
     position: relative;
 }

 .newslider .card {
     background: transparent;
     border: none;
 }

 .newslider .card .img-cover {
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 .newslider .card .img-cover:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .newslider .img-cover img {
     height: auto;
 }

 @media(max-width:414px) {
     .newslider .card .img-cover img {
         height: auto;
         width: 100%;
     }
 }

 .newslider .card-body {
     padding: 0;
 }

 .newslider .card-title a {
     color: #423D35;
     font-family: 'Noto Serif TC', serif;
     font-size: 1.1rem;
     text-decoration: none;
     line-height: 1.6rem;
     display: inline-block;
 }

 .newslider div[class*='swiper-button-'] {
     border-color: #ddd;
     width: 60px;
     height: 60px;
     line-height: 3.5rem;
 }

 .newslider div[class*='swiper-button-']::before {
     font-size: 1.5rem;
     color: #696969;
 }

 .newslider .swiper-container {
     padding: 0 25px;
 }

 .newslider.logo .swiper-slide {
     display: flex;
     justify-content: center;
 }

 @media(width:1920px) {
     .newslider.logo {
         width: 80%;
         margin: auto;
     }
 }

 @media(min-width:1441px) {
     .newslider .swiper-container {
         width: 100%;
     }

     .newslider .swiper-button-prev {
         left: -100px;
     }

     .newslider .swiper-button-next {
         right: -100px;
     }
 }

 @media(min-width:1366px) and (max-width:1440px) {
     .newslider .swiper-button-prev {
         left: -40px;
     }

     .newslider .swiper-button-next {
         right: -40px;
     }
 }

 @media(min-width:768px) and (max-width:1439px) {
     .newslider .swiper-container {
         width: 77%;
     }
 }

 @media(max-width:991px) {
     #news {
         padding: 2rem 0 0;
     }

     #news .container {
         max-width: 100%;
     }

     .newslider .swiper-container {
         width: 80%;
     }
 }

 @media(max-width:750px) {
     .newslider .swiper-container {
         width: 60%;
     }
 }

 @media(max-width:414px) {
     .newslider .swiper-container {
         width: 80%;
     }

     .newslider div[class*='swiper-button-'] {
         border-color: #ddd;
         width: 40px;
         height: 40px;
         padding: 0;
     }

     .newslider div[class*='swiper-button-']::before {
         font-size: 1.2rem;
         line-height: 2.4rem;
     }
 }

 .mb .bubble {
     display: none;
 }

 .bubble {
     display: block;
     position: absolute;
     top: 0%;
     left: 70%;
     width: 48px;
     height: 48px;
     background: rgba(255, 255, 255, 0);
     border-radius: 50%;
     border: rgba(255, 255, 255, 0.54) solid 2px;
     box-shadow: 0 0px 28px rgba(255, 255, 255, 0.79), 0 0px 10px rgba(255, 255, 255, 0.65);
     overflow: hidden;
     z-index: 0;
     animation: glitter 4.5s linear 0s infinite normal;
     -webkit-animation: glitter 4.5s linear 0s infinite normal;
     -moz-animation: glitter 4.5s linear 0s infinite normal;
     -ms-animation: glitter 4.5s linear 0s infinite normal;
     -o-animation: glitter 4.5s linear 0s infinite normal;
 }

 @media screen\0 {
     .bubble {
         display: none;
     }
 }

 @-webkit-keyframes glitter {
     0% {
         -webkit-transform: scale(1.0);
         opacity: 1;
     }

     25% {
         -webkit-transform: scale(0.5);
         opacity: 0;
     }

     50% {
         -webkit-transform: scale(1.0);
         opacity: 1;
     }

     75% {
         -webkit-transform: scale(0.5);
         opacity: 0;
     }

     100% {
         -webkit-transform: scale(1.0);
         opacity: 1;
     }
 }

 @-moz-keyframes glitter {
     0% {
         -moz-transform: scale(1.0);
         opacity: 1;
     }

     25% {
         -moz-transform: scale(0.5);
         opacity: 0;
     }

     50% {
         -moz-transform: scale(1.0);
         opacity: 1;
     }

     75% {
         -moz-transform: scale(0.5);
         opacity: 0;
     }

     100% {
         -moz-transform: scale(1.0);
         opacity: 1;
     }
 }

 #service {
     min-height: auto;
     padding: 6rem 0;
     overflow: hidden;
     position: relative;
 }

 #service::after {
     content: '';
     display: block;
     width: 100%;
     height: 250px;
     position: absolute;
     z-index: 1;
     left: 0;
     top: 0;
     background: #e7e5e2;
     background: -moz-linear-gradient(top, rgb(231, 229, 226) 0%, rgba(231, 229, 226, 0.31) 80%, rgba(231, 229, 226, 0) 100%);
     background: -webkit-linear-gradient(top, rgb(231, 229, 226) 0%, rgba(231, 229, 226, 0.31) 80%, rgba(231, 229, 226, 0) 100%);
     background: linear-gradient(to bottom, rgb(231, 229, 226) 0%, rgba(231, 229, 226, 0.31) 80%, rgba(231, 229, 226, 0) 100%);
 }

 #service .section-title {
     margin-bottom: 4rem;
 }

 .iconslider {
     z-index: 0;
     position: relative;
 }

 .iconslider .card {
     background: transparent;
     border: none;
 }

 .iconslider .card-body {
     padding-left: 0;
     padding-right: 0;
     text-align: center;
 }

 .iconslider .card .btn-link {
     border: #444 solid 1px;
     border-radius: 50%;
     height: 130px;
     width: 130px;
     margin: auto;
     display: flex;
     justify-content: center;
     align-items: center;
 }

 .iconslider .card .btn-link:hover {
     background: #fff;
     border: #fff solid 1px;
 }

 .iconslider .card img {
     width: 55px;
     display: block;
 }

 .iconslider .card-title a {
     font-family: 'Noto Serif TC', serif;
     color: #333;
     font-size: 1.4rem;
     font-weight: 500;
 }

 @media(max-width:500px) {
     .iconslider .row {
         margin: 0;
     }

     .iconslider .card-body {
         padding-top: 0;
     }

     .iconslider .card-title a {
         font-size: 1rem;
     }
 }

 #service .container {
     z-index: 2;
     position: relative;
 }

 #service #video-bg {
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     margin: auto;
     opacity: .5;
 }

 #service .video-background {
     position: initial;
     z-index: 0;
 }

 #service::before,
 #service .video-background::before {
     content: '';
     display: none;
     width: 100%;
     height: 100%;
     position: absolute;
     z-index: 1;
     top: 0;
     left: 0;
     background: linear-gradient(-45deg, rgb(242, 241, 239, 0.6), rgb(242, 241, 239), rgba(242, 241, 239, 0.2));
     background-size: 400% 400%;
     animation: gradientBG 15s ease infinite;
 }

 @keyframes gradientBG {
     0% {
         background-position: 0% 50%;
     }

     50% {
         background-position: 100% 50%;
     }

     100% {
         background-position: 0% 50%;
     }
 }

 @media(max-width:768px) {
     #service {
         padding: 2rem 0;
     }
 }

 @media(min-width:768px) and (min-aspect-ratio: 16/9) {
     #service .container {
         z-index: 2;
     }

     #service .video-foreground {
         display: block;
     }

     #service::before,
     #service .video-background::before {
         display: block;
     }
 }

 @media (max-aspect-ratio: 16/9) {
     #service .video-foreground {
         display: none;
     }
 }

 @media (max-width:767px) {
     #service #video-bg {
         display: none;
     }

     #service .video-foreground {
         display: none;
     }

     .iconslider .col-6:nth-of-type(odd) {
         padding-right: 0;
     }

     .iconslider .col-6:nth-of-type(even) {
         padding-left: 0;
     }
 }

 @media (max-width:413px) {
     .iconslider .card .btn-link {
         width: 100px;
         height: 100px;
     }
 }

 .nav-slider {
     position: relative;
     width: 100%;
     list-style: none;
     text-align: center;
 }

 .nav-slider.fixed {
     width: calc(100% - 20px);
     position: fixed;
     z-index: 2;
     top: 65px;
     box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
     border: none;
 }

 .section-nav {
     margin: 0;
     height: auto;
 }

 .section-nav li a {
     padding: 1rem 0;
     color: #333;
     font-size: 1rem;
     font-weight: bold;
     font-family: 'Noto Serif TC', serif;
     text-decoration: none;
     transition: all 0.2s ease;
 }

 .section-nav li a:hover {
     color: #000;
 }

 .section-nav li.active a {
     border-bottom: 2px solid #333;
 }

 .nav-slider div[class*='swiper-button-'] {
     width: 70px;
     height: 100%;
     border: none;
     border-radius: 0;
     top: 0;
     margin-top: 0;
     line-height: 4rem;
     z-index: 1;
     display: none;
 }

 .nav-slider div[class*='swiper-button-']::before {
     font-weight: 300;
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     margin: auto;
 }

 .nav-slider .swiper-button-next {
     right: 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(right, rgb(230, 230, 230) 0%, rgba(230, 230, 230, 0.9) 60%, rgba(230, 230, 230, 0) 100%);
     background: -webkit-linear-gradient(right, rgb(230, 230, 230) 0%, rgba(230, 230, 230, 0.9) 60%, rgba(230, 230, 230, 0) 100%);
     background: linear-gradient(to left, rgb(230, 230, 230) 0%, rgba(230, 230, 230, 0.9) 60%, rgba(230, 230, 230, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=1);
 }

 .nav-slider .swiper-button-next::before {
     right: -15px !important;
 }

 .nav-slider .swiper-button-prev {
     left: 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(left, rgb(230, 230, 230) 0%, rgba(230, 230, 230, 0.9) 60%, rgba(230, 230, 230, 0) 100%);
     background: -webkit-linear-gradient(left, rgb(230, 230, 230) 0%, rgba(230, 230, 230, 0.9) 60%, rgba(230, 230, 230, 0) 100%);
     background: linear-gradient(to right, rgb(230, 230, 230) 0%, rgba(230, 230, 230, 0.9) 60%, rgba(230, 230, 230, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=1);
 }

 .nav-slider .swiper-button-prev::before {
     left: -15px !important;
 }

 @media(min-width:1024px) {
     .section-nav li a {
         font-size: 1.2rem;
     }
 }

 .section-nav .nav-top .nav-link::before {
     content: "\f341";
     font-family: 'Font Awesome 5 Pro';
     margin-right: .5rem;
 }

 @media(min-width:960px) {
     .nav-slider .btn-collapse {
         display: none;
     }

     .nav-slider div[class*='swiper-button-'] {
         display: none;
     }

     .subnav-nav {
         width: 80%;
         margin: 0 auto;
         list-style: none;
         text-align: center;
     }

     .nav-slider.fixed {
         width: calc(100% - 130px);
         top: 50px;
     }

     .section-nav {
         margin: 0 auto;
         list-style: none;
         text-align: center;
     }

     .fixed .section-nav {
         width: 100%;
     }

     .section-nav li {
         display: inline-block;
     }

     .fixed .section-nav .nav-top {
         -ms-flex-positive: 2;
         flex-grow: 2;
     }
 }

 @media(max-width:959px) {
     .nav-slider:not(.anchor-wrap) .swiper-container {
         width: calc(100% - 45px) !important;
         margin: 0;
     }

     .nav-slider .swiper-slide {
         text-align: center;
         font-size: 18px;
         width: auto;
         display: -webkit-box;
         display: -ms-flexbox;
         display: -webkit-flex;
         display: flex;
         -webkit-box-pack: center;
         -ms-flex-pack: center;
         -webkit-justify-content: center;
         justify-content: center;
         -webkit-box-align: center;
         -ms-flex-align: center;
         -webkit-align-items: center;
         align-items: center;
     }

     .subnav-wrap .subnav-nav li a {
         padding: 1rem !important;
     }

     .nav-slider .btn-collapse {
         position: absolute;
         right: 0;
         top: 0;
         padding: 12px 10px 8px;
         line-height: 36px;
         outline: 0;
         outline: 0;
         box-shadow: none;
     }

     .nav-slider .btn-collapse[aria-expanded="true"] {
         -moz-transform: rotate(180deg);
         -webkit-transform: rotate(180deg);
         -o-transform: rotate(180deg);
         -ms-transform: rotate(180deg);
         transform: rotate(180deg);
     }
 }

 .section-nav li a {
     padding: 1rem;
 }

 #navCollapse {
     background: #fff;
     padding: 10px 0;
 }

 #navCollapse .section-nav {
     display: block;
 }

 #navCollapse .swiper-slide {
     text-align: left;
     justify-content: left;
 }

 #navCollapse .section-nav li a {
     width: 100%;
     padding: 5px 40px 5px 15px;
     position: relative;
 }

 #navCollapse .section-nav li.active a {
     border: none;
     color: #d20031;
 }

 #navCollapse .section-nav li.active a::after {
     content: "\f060";
     font-family: 'Font Awesome 5 Pro';
     position: absolute;
     right: 10px;
     top: 50%;
     transform: translate(-50%, -50%);
 }
 }

 @media(max-width:500px) {
     .section-nav li a {
         letter-spacing: 4px;
     }
 }

 .anchor-wrap {
     width: 100%;
     z-index: 2;
     background: #F1F0EE;
     border: #B1B1B1 solid 1px;
     border-left: none;
     border-right: none;
 }

 .anchor-wrap.fixed {
     box-shadow: none;
     border-bottom: #B1B1B1 solid 1px;
 }

 .anchor-wrap .subnav-nav {
     width: 100%;
 }

 @media(width:1920px) {
     .anchor-wrap .subnav-nav {
         width: 80%;
     }
 }

 @media(min-width:960px) {
     .anchor-wrap {
         display: block;
     }

     #programDetail .anchor-wrap .section-nav {
         width: 80%;
         margin: 0 !important;
         transition: none;
     }

     #programDetail .anchor-wrap.fixed .section-nav {
         width: 100%;
     }
 }

 @media(min-width:960px) {
     .section-nav .nav-top {
         opacity: 0;
         -ms-flex-positive: 0;
         flex-grow: 0;
         display: none;
     }

     .anchor-wrap.fixed .section-nav .nav-top {
         display: inline-block;
     }

     .anchor-wrap.fixed .section-nav .nav-top .nav-link {
         width: 60%;
         margin: auto;
         border-radius: 30px;
         border: #333 solid 1px;
         padding: .5rem;
         position: absolute;
         top: 50%;
         left: 50%;
         transform: translate(-50%, -50%);
     }
 }

 .anchor-wrap.fixed .section-nav .nav-top {
     opacity: 1;
     height: auto;
     position: relative;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .anchor-wrap.fixed .section-nav .nav-top .nav-link {
     border-radius: 30px;
     border: #333 solid 1px;
     width: auto;
     padding: .2rem 2rem;
     left: auto;
     right: 0;
     transform: translate(0, -50%) scale(0.8);
 }

 @media(max-width:959px) {
     .section-nav .nav-top {
         opacity: 0;
     }

     .anchor-wrap.fixed .section-nav .nav-top {
         opacity: 1;
     }

     .anchor-wrap.fixed .section-nav .nav-top .nav-link {
         width: 100%;
         transform: none;
     }

     .anchor-wrap .section-nav li a {
         padding: .5rem 2rem;
     }
 }

 @media(max-width:768px) {
     .anchor-wrap.fixed .section-nav .nav-top .nav-link {
         transform: translate(0, 0) scale(0.8);
     }
 }

 @media(width:768px) and (height:1024px) {
     .anchor-wrap.fixed .section-nav .nav-top .nav-link {
         width: 30%;
         top: 50%;
         left: 20%;
     }
 }

 .subnav-wrap {
     position: relative;
     background: -moz-linear-gradient(top, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
     background: -webkit-linear-gradient(top, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
     background: linear-gradient(to bottom, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#E6E6E6', endColorstr='#F5F5F5', GradientType=0);
     border-bottom: #d1d1d1 solid 1px;
     border-left: none;
     border-right: none;
 }

 .subnav-wrap .subnav-nav a {
     font-weight: normal;
     color: #333;
     font-size: 1rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     text-decoration: none;
     transition: all 0.2s ease;
     padding: 1rem 0;
 }

 .subnav-wrap .subnav-nav a:hover {
     color: #000;
 }

 .subnav-wrap .subnav-nav li.active a,
 .subnav-wrap .subnav-nav li a:hover {
     border-bottom: none;
     color: #fff;
     background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000033', endColorstr='#000000b3', GradientType=0);
 }

 .subnav-wrap .section-nav .nav-item+.nav-item {
     border-left: #c2c2c2 solid 1px;
 }

 @media(max-width:768px) {
     .subnav-wrap .subnav-nav a {
         border-bottom: transparent solid 2px;
     }

     .subnav-wrap .subnav-nav li.active a,
     .subnav-wrap .subnav-nav li a:hover {
         color: #000;
         font-weight: bold;
         background: transparent;
         -ms-filter: "progid:DXImageTransform.Microsoft.gradient(enabled=false)";
         filter: none !important;
         border-bottom: 2px solid #444;
     }

     .subnav-wrap .section-nav .nav-item+.nav-item {
         border: none;
     }
 }

 .jumbotron {
     position: relative;
     margin-bottom: 0;
     overflow: hidden;
     padding: 0;
 }

 .jumbotron::before {
     position: absolute;
     opacity: .5;
     left: 0;
     top: 0;
     z-index: 1;
     content: '';
     display: block;
     width: 100%;
     height: 100%;
     background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.7) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000033', endColorstr='#000000b3', GradientType=0);
 }

 .jumbotron .parallax-image {
     position: absolute;
     left: 0;
     top: 0;
     z-index: 0;
     width: 100%;
     height: 100%;
     overflow: hidden;
     z-index: 0;
     top: 0;
 }

 @media(max-width:767px) {
     .jumbotron .parallax-image img {
         height: auto;
         width: 100%;
     }
 }

 @media(max-width:610px) {
     .jumbotron .parallax-image img {
         height: 100px;
         width: auto;
     }
 }

 .jumbotron>* {
     position: relative;
     z-index: 1;
 }

 .jumbotron nav {
     position: absolute;
     right: 5px;
     top: 0;
 }

 .jumbotron nav li {
     width: initial !important;
 }

 nav[aria-label="breadcrumb"] .breadcrumb {
     background-color: #f1f0ee;
 }

 .jumbotron:not(.d-none)+nav[aria-label="breadcrumb"] {
     position: absolute;
     top: 5px;
     right: 5px;
     z-index: 1;
     margin-top: 0;
 }

 @media(min-width:960px) {
     nav[aria-label="breadcrumb"] {
         margin-top: 20px;
     }
 }

 .jumbotron:not(.d-none)+nav[aria-label="breadcrumb"] .breadcrumb {
     background: transparent;
 }

 .jumbotron:not(.d-none)+nav[aria-label="breadcrumb"] .breadcrumb li,
 .jumbotron:not(.d-none)+nav[aria-label="breadcrumb"] .breadcrumb li a,
 .jumbotron:not(.d-none)+nav[aria-label="breadcrumb"] .breadcrumb-item+.breadcrumb-item::before {
     color: #fff;
     background: transparent;
     width: initial !important;
 }

 .jumbotron:not(.d-none)+nav[aria-label="breadcrumb"] .active {
     width: initial !important;
 }

 .jumbotron .container {
     padding: 3.8rem 0.2rem 1rem;
 }

 .breadcrumb {
     margin-bottom: 0;
 }

 @media(max-width:959px) {
     .breadcrumb {
         padding: 0;
         transform: scale(0.9);
     }

     nav[aria-label="breadcrumb"] .breadcrumb-item:nth-of-type(2)::before,
     nav[aria-label="breadcrumb"] .breadcrumb .breadcrumb-item:first-of-type {
         display: none;
     }
 }

 @media(min-width: 576px) {
     .jumbotron .container {
         padding: 4rem 1rem 2rem;
     }
 }

 @media(min-width: 768px) {
     .jumbotron .container {
         padding: 3.5rem 0rem 1.2rem;
         max-width: 100%;
     }
 }

 @media(min-width: 1200px) {
     .jumbotron .container {
         max-width: calc(100% - 20px);
         padding: 6.5rem 1.5rem 1.8rem;
         position: relative;
     }
 }

 @media(max-width: 768px) {
     .jumbotron .container {
         padding: 3rem .5rem 1rem;
         max-width: 100%;
     }
 }

 .function-btn .btn {
     color: #333333;
     border-color: #333333;
     padding: 5px 45px;
     border-radius: 0;
 }

 .function-btn .btn+.btn {
     margin-left: 1rem;
 }

 .function-btn .btn i {
     margin-right: .5rem;
 }

 @media (min-width: 960px) {
     .function-btn {
         position: absolute;
         right: 33px;
         margin-top: -65px;
         z-index: 1;
     }

     .functionbar-wrap+.function-btn {
         margin-top: -115px;
     }

     .function-btn .btn {
         color: #fff;
         border: 1px solid #fff;
         border-radius: 0;
         padding: 5px 45px;
         z-index: 1;
         width: initial;
     }

     .function-btn .btn:hover {
         background: #fff;
         color: #000;
         text-decoration: none;
     }
 }

 @media (max-width: 959px) {
     .function-btn {
         position: fixed;
         bottom: 65px;
         width: calc(100% - 20px);
         z-index: 1;
         background: #f3f2f0;
         background: -moz-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: -webkit-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: linear-gradient(to top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
         padding: 20px;
         display: flex;
     }

     .function-btn .btn {
         padding: 5px 25px;
     }
 }

 @media (max-width: 600px) {
     .function-btn .btn {
         padding: 5px 5px;
         font-size: 14px
     }
 }

 @media (max-width: 375px) {
     .function-btn .btn {
         padding: 5px 0;
     }

     .function-btn .btn i {
         display: none;
     }
 }

 .main-title {
     color: #fff;
     font-size: 1.6rem;
     margin: 0;
     padding: 0 25px;
 }

 section.main {
     padding-bottom: 5rem;
     position: relative;
 }

 @media(min-width:768px) {
     section.main {
         padding-bottom: 40vh;
     }

     .APPLY section.main {
         padding-bottom: 0;
     }

     .main-title {
         font-size: 2.4rem;
     }
 }

 @media(min-width:1336px) {
     .list .tooltip-inner {
         max-width: inherit;
     }
 }

 .functionbar-wrap.fixed {
     width: calc(100% - 20px);
     position: fixed;
     z-index: 2;
     top: 65px;
     left: 10px;
 }

 .functionbar-wrap .collapsing .card,
 .functionbar-wrap .collapse .card {
     border: #e4e4e4 solid 1px;
     border-radius: 0;
     box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125);
     padding: .8rem 1.25rem;
 }

 .functionbar {
     display: -ms-flexbox;
     display: flex;
     background: -moz-linear-gradient(top, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
     background: -webkit-linear-gradient(top, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
     background: linear-gradient(to bottom, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#E6E6E6', endColorstr='#F5F5F5', GradientType=0);
     box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125);
 }

 .functionbar .dropdown-menu {
     box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125);
     border-radius: 0;
     border: #e4e4e4 solid 1px;
 }

 .functionbar .nav-link {
     color: #333;
     font-size: 15px;
 }

 .functionbar .nav-item.search {
     position: relative;
 }

 .functionbar .nav-item.search .btn-filtersearch {
     opacity: 1;
 }

 .functionbar .nav-item.search .btn-filtersearch.active {
     opacity: 0;
 }

 .functionbar .nav-link {
     position: relative;
     padding: 1.2rem;
 }

 @media(min-width:960px) {
     .functionbar .nav-link {
         height: 60px;
     }
 }

 .functionbar .filter .nav-link[aria-expanded="true"]::before {
     content: '';
     background: #333;
     width: 100%;
     display: block;
     height: 4px;
     position: absolute;
     bottom: 0px;
     left: 0;
     border: none;
     margin: 0;
 }

 .functionbar .filter .nav-item .nav-link::after,
 .functionbar .filter .nav-item .nav-link.dropdown-toggle::after {
     content: "\f077";
     font-family: 'Font Awesome 5 Pro';
     border: none;
     margin: 0 0 0 5px;
     vertical-align: inherit;
 }

 .functionbar .filter .nav-item .nav-link[aria-expanded="false"]::after {
     content: "\f078";
 }

 .functionbar .filter .nav-item.search .nav-link::after,
 .functionbar .filter .nav-item.tenderSearch .nav-link::after {
     display: none;
 }

 .functionbar .filter .nav-item .nav-link.btn-filtersearch::after {
     content: "\f002";
     font-family: "Font Awesome 5 pro";
     margin-left: 1rem;
 }

 .functionbar .filter .nav-item .nav-link.btn-callfilter::after {
     content: "\f002";
     font-family: "Font Awesome 5 pro";
     margin-left: 1rem;
 }

 @media(min-width:768px) {
     .functionbar .filter {
         padding-left: 0.5rem;
     }
 }

 @media(min-width:960px) {
     .functionbar-wrap.fixed {
         width: calc(100% - 130px);
         left: 65px;
         top: 50px;
     }
 }

 @media(max-width:959px) {

     #programForm .functionbar-wrap.fixed,
     #calendarForm .functionbar-wrap.fixed {
         top: auto;
         bottom: 0;
     }

     #programForm .functionbar-wrap.fixed .functionbar,
     #calendarForm .functionbar-wrap.fixed .functionbar {
         background: #f3f2f0;
         background: -moz-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: -webkit-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: linear-gradient(to top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
         padding: 20px;
     }

     #programForm .functionbar-wrap.fixed .filter,
     #calendarForm .functionbar-wrap.fixed .filter {
         margin: auto !important;
     }

     #programForm .functionbar-wrap.fixed .functionbar .nav-link,
     #calendarForm .functionbar-wrap.fixed .functionbar .nav-link {
         padding: .5rem 5rem;
         border: #444 solid 1px;
     }
 }

 .functionbar-wrap .row .col-md-2 {
     display: -ms-flexbox;
     display: flex;
     -ms-flex-pack: end;
     justify-content: flex-end;
     -ms-flex-align: end;
     align-items: flex-end;
 }

 .functionbar-wrap .row .col-md-2 .btn {
     padding: .375rem 1.2rem .375rem 2rem;
     letter-spacing: 10px;
     text-align: center;
     background: #444;
     margin-left: 10px;
 }

 .functionbar-wrap .row .col-md-2 .form-check {
     margin-bottom: 5px;
 }

 .functionbar .mode .nav-link {
     padding: 1.2rem 1.5rem;
 }

 .functionbar .mode .nav-item+.nav-item .nav-link {
     border-left: #c2c2c2 solid 1px;
 }

 .functionbar .mode .active .nav-link {
     color: #fff;
     background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000033', endColorstr='#000000b3', GradientType=0);
 }

 .functionbar .mode,
 .functionbar .mode span {
     display: none;
 }

 @media(min-width:1140px) {

     .functionbar .mode,
     .functionbar .mode span {
         display: inline-block;
     }

     .functionbar .mode .nav-link i {
         margin-right: 5px;
     }
 }

 .functionbar .form-group {
     display: inline-block;
     margin-bottom: 0;
 }

 .functionbar .form-control {
     background: transparent;
     border-radius: 0;
 }

 .functionbar .bootstrap-select>.dropdown-toggle,
 .functionbar .bootstrap-select>.dropdown-toggle:active,
 .functionbar .bootstrap-select>.dropdown-toggle:focus {
     padding: 1rem;
     background: transparent;
     border: none;
     outline: none !important;
     box-shadow: none;
 }

 .functionbar .bootstrap-select>.dropdown-toggle:after {
     content: "\f078";
     font-family: 'Font Awesome 5 Pro';
     border: none;
     margin-left: .8rem;
     margin-top: .15rem;
 }

 .functionbar .bs-select.show>.dropdown-menu {
     border-top: #333 solid 3px;
 }

 #filterSearch {
     position: absolute;
     left: 0;
     top: 10px;
     -webkit-transition: width 1s ease;
     -moz-transition: width 1s ease;
     -o-transition: width 1s ease;
     transition: width 1s ease;
     display: inline-block;
     overflow: hidden;
     white-space: nowrap;
     vertical-align: middle;
     line-height: 30px;
     height: 40px;
     width: 0px;
 }

 #filterSearch.in {
     width: 220px;
 }

 #filterSearch .form {
     width: calc(100% - 30px);
 }

 #filterSearch .btn-close {
     color: #000;
     position: absolute;
     right: 0;
     top: 0;
 }

 .filterModal .modal-content,
 #filterBox .modal-content {
     overflow: auto;
 }

 #filterBox .main-filter {
     display: block;
 }

 #filterBox .main-filter .nav-item a,
 .filterModal .title,
 #filterBox .title {
     color: #212529;
     display: block;
     border-bottom: #444 solid 1px;
     font-size: 1rem;
     padding: .6rem 0;
     position: relative;
 }

 #filterBox .main-filter .nav-item a:before {
     float: right;
     margin-right: 10px;
 }

 #filterBox .main-filter .nav-item a[aria-expanded="true"]:before {
     font-family: "Font Awesome 5 pro";
     content: "\f068";
 }

 #filterBox .main-filter .nav-item a[aria-expanded="false"]:before {
     font-family: "Font Awesome 5 pro";
     content: '\f067';
 }

 #filterBox .btn-collapse {
     position: absolute;
     right: 0;
     bottom: 0;
     outline: 0;
     width: 100%;
     text-align: right;
 }

 #filterBox .card-body .btn {
     display: none;
 }

 #filterBox .title+div {
     padding: .5rem 0;
 }

 .filterModal .form-group,
 #filterBox .form-group {
     margin: 1rem 0
 }

 #filterBox .col-md-10 .form-check {
     width: 50%;
     float: left;
     margin-bottom: 5px;
 }

 .functionbar .filter .nav li,
 .functionbar .mode .list {
     display: none;
 }

 #nttplusForm .functionbar .filter .nav li {
     display: block;
 }

 .functionbar .filter .nav .tenderSearch,
 .functionbar .filter .nav .callfilter,
 .modal .nav li {
     display: block;
 }

 .functionbar .filter .timeline li {
     display: block;
 }

 #filterBox .main-filter .search a,
 .modal .nav .callfilter,
 .forMb {
     display: none;
 }

 @media (max-width: 959px) {
     .forMb {
         display: block;
     }

     #filterBox .main-filter .search .filtertags-wrap {
         padding: 1rem 0;
     }
 }

 @media(min-width:960px) {

     .functionbar .filter .tenderSearch,
     .functionbar .filter .nav .callfilter {
         display: none;
     }

     .functionbar .filter li:not(.callfilter),
     .functionbar .mode .list {
         display: block;
     }

     .functionbar .nav-item>div:not(.form-group) {
         position: absolute;
         width: 100%;
         left: 0px;
         z-index: 1;
     }
 }

 @media(max-width:959px) {
     #filterBox .nav-item>div:not(.form-group) .card {
         background: transparent;
         border: none;
         padding: 1.25rem 0;
     }

     #filterBox .nav-item>div:not(.form-group) .card .row {
         margin: 0;
     }

     .filtertags-wrap,
     .filtertags-wrap .container,
     .filtertags-wrap .row>div[class*='col-md-'] {
         padding: 0;
     }

     #filterBox .filter-search .form-group {
         margin: 0;
     }

     #filterBox .filter-search .form-control {
         background-color: #fff;
         background-clip: padding-box;
         border: 1px solid #ced4da;
     }

     #filterBox .modal-body {
         padding: 4rem 15px;
     }
 }

 .PROGRAMCALENDAR .form-group.time,
 .filter-cont .nav-item.time,
 .filter-cont .filtertags-wrap {
     display: none;
 }

 .functionbar .monthList {
     display: none;
 }

 .functionbar .monthList .nav-link {
     padding: 1rem 1.5rem;
 }

 .functionbar .monthList .nav-item+.nav-item .nav-link {
     border-left: #c2c2c2 solid 1px;
 }

 .functionbar .monthList .active .nav-link {
     color: #fff;
     background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000033', endColorstr='#000000b3', GradientType=0);
 }

 .functionbar .monthList span {
     display: none;
 }

 @media(max-width:1150px) {
     .functionbar .monthList {
         overflow: auto;
     }

     .functionbar .monthList .nav {
         display: block;
         -ms-flex-wrap: initial;
         flex-wrap: initial;
         overflow: auto;
         white-space: nowrap;
     }

     .functionbar .monthList .nav li {
         display: inline-block;
     }
 }

 @media(min-width:1140px) {
     .functionbar .monthList {
         padding-right: 0.5rem;
     }

     .functionbar .monthList span {
         display: inline-block;
     }

     .functionbar .monthList .nav-link i {
         margin-right: 5px;
     }

     .functionbar .filter .timeline li.month {
         display: none;
     }
 }

 @media(min-width:960px) {
     .functionbar .monthList {
         display: block;
     }
 }

 @media(min-width:960px) {
     .functionbar .filter .timeline li.month {
         display: none;
     }
 }

 @media(max-width:414px) {
     .functionbar-wrap .bootstrap-select .dropdown-menu.inner {
         height: 350px;
     }
 }

 #filterBox {
     padding-right: 0 !important;
     left: 0;
     top: 0;
     width: 100%;
     display: none;
 }

 #filterBox .modal-dialog {
     margin: 0;
     min-height: 100%;
 }

 #filterBox .modal-content {
     border-radius: 0;
     border: none;
     height: 100vh;
     background: #F3F2F0;
     position: initial;
     padding-bottom: 60px;
 }

 #filterBox .modal-footer {
     background: #F3F2F0;
     position: absolute;
     bottom: 0;
     width: 100%;
 }

 .modal-open .modal-backdrop,
 .list.modal-open .modal-backdrop {
     background: transparent;
 }

 #filterBox .btn-filtersearch {
     color: #333;
     font-size: 1rem;
     font-weight: bolder;
     font-family: 'Noto Serif TC', serif;
     text-align: center;
     text-decoration: none;
     display: block;
     margin: auto;
     border: #333 solid 1px;
     padding: .5rem 0;
     border-radius: 0;
 }

 #filterBox .btn-filtersearch i {
     margin-right: .5rem;
 }

 @media (min-width: 576px) {
     #filterBox .modal-dialog {
         max-width: 100%;
     }
 }

 .tenderSearch-wrap,
 .filtertags-wrap {
     padding: 1rem .25rem 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     background: -webkit-linear-gradient(top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     background: linear-gradient(to bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
 }

 .filtertags-group {
     display: none !important;
 }

 .functionbar-wrap.fixed .filtertags-wrap {
     padding: 1rem .25rem 3rem;
 }

 .filtertags-wrap .row {
     margin-right: 0;
     margin-left: 0;
 }

 .filter-search .row .col-md-4 {
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .functionbar .tenderSearch .nav-link i {
     margin-right: .5rem;
 }

 @media(min-width:1520px) {
     .tenderSearch-wrap .container {
         max-width: 70vw;
     }
 }

 @media(min-width:960px) {
     .filtertags-group {
         display: block !important;
     }
 }

 @media(max-width:959px) {
     .filter-search .row .col-md-4 {
         display: none;
     }
 }

 .filtertags-header {
     border-bottom: #ccc solid 1px;
     padding: .5rem .25rem;
     display: block;
 }

 .filtertags-title {
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     font-size: 1.2rem;
 }

 .btn-filterclear,
 .btn-filterclear:hover {
     color: #333;
     line-height: 2rem;
     text-decoration: none;
     position: absolute;
     right: 0;
     top: 13px;
 }

 .btn-filterclear i {
     margin-right: .4rem;
 }

 .filtertags-group {
     padding: .8rem 85px .8rem 0;
     position: relative;
 }

 .filtertag {
     font-size: 1rem;
     font-weight: normal;
     background-color: rgba(0, 0, 0, 0.1);
     color: #333;
     padding: .4rem .8rem;
     margin-right: .6rem;
     margin-bottom: .4rem;
 }

 .filtertag:hover {
     background: #f4f4f4;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
 }

 .filtertag:last-of-type {
     margin-right: 0;
 }

 .btn-removetag,
 .btn-removetag:hover {
     margin-left: .6rem;
     color: #333;
 }

 .filtertags-wrap .action {
     display: flex;
     justify-content: center;
     align-items: center;
     height: 100%;
 }

 .filtertags-wrap .btn-filtersearch {
     color: #333;
     font-size: 1rem;
     font-weight: bolder;
     font-family: 'Noto Serif TC', serif;
     text-align: center;
     text-decoration: none;
     display: block;
     margin: auto;
     border: #333 solid 1px;
     padding: .5rem 0rem;
     border-radius: 0;
     width: 100%;
 }

 .filtertags-wrap .btn-filtersearch i {
     margin-right: .5rem;
 }

 .filter-search .form .form-control {
     border: none;
     background: transparent;
     border-radius: 0;
     border-bottom: #444 solid 1px;
 }

 .filter-search .form .btn-search {
     border-bottom: #444 solid 1px;
     border-radius: 0;
     z-index: 0;
 }

 .filtertags-wrap .form-group {
     margin-bottom: 0;
 }

 .functionbar-wrap .form-check {
     display: inline-block;
     margin: 5px 0;
 }

 .functionbar-wrap div[class*='col-md-']:first-of-type .form-check {
     width: 20%;
 }

 .functionbar-wrap .form-check label {
     font-size: 1rem;
 }

 .alert.nodata {
     font-family: 'Noto Serif TC', serif;
     font-size: 1.5rem;
 }

 .events-group {
     margin-top: 1.5rem;
     clear: both;
 }

 .events-group .row {
     margin-left: 0;
     margin-right: 0;
 }

 .events-group .events-price {
     float: right;
     color: #313131;
     font-family: 'EB Garamond', 'Noto Serif TC', serif;
     font-size: .9rem;
     line-height: 1.2rem;
     margin-bottom: .4rem;
 }

 .events-group .events-place {
     font-size: 1rem;
 }

 .events-group:not(.list) .events-place {
     position: absolute;
     left: 0;
     bottom: 87px;
     font-weight: normal;
 }

 .events-group:not(.list) .events-price {
     font-size: 1rem;
     position: absolute;
     right: 0;
     bottom: 80px;
 }

 .events-group:not(.list) .events-price {
     max-width: calc(100% - 100px);
     width: inherit;
     height: 1.5rem;
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     -webkit-line-clamp: 1;
     -webkit-box-orient: vertical;
 }

 .events-group:not(.list) .action {
     margin-top: 50px;
 }

 .events-group:not(.list) .action .btn-link:nth-of-type(2) {
     max-width: calc(100% - 115px);
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     -webkit-line-clamp: 1;
     -webkit-box-orient: vertical;
 }

 .events-group.list .action .btn-link:nth-of-type(2) {
     max-width: 100%;
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     -webkit-line-clamp: 1;
     -webkit-box-orient: vertical;
 }

 @media (min-width: 768px) {
     .events-group .container {}
 }

 @media (min-width:768px) and (max-width: 991px) {
     .events-group:not(.list) .row>div[class*='col-md-'] {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%;
     }

     .events-group:not(.list) .cards-wrap .card .img-cover {
         height: 205px;
     }
 }

 @media(min-width:1440px) {
     .events-group {
         margin-top: 40px;
     }

     .events-group .container {}
 }

 @media(max-width:414px) {
     .events-group .container {
         padding: 0;
     }

     .events-group .row {
         margin-left: 15px;
         margin-right: 15px;
     }
 }

 .events-group.list .cards-wrap {
     margin-left: 0;
     margin-right: 0;
 }

 .events-group.list .img-link {
     width: 25%;
     display: flex;
     align-items: center;
     justify-content: center;
     height: auto;
 }

 .events-group.list div[class*='col-md-'] .card {
     display: block;
     padding: 2rem 3rem;
     overflow: auto;
     border-bottom: #C7C7C7 solid 1px;
 }

 .events-group.list div[class*='col-md-']:last-of-type .card {
     border: none;
 }

 .events-group.list .cards-wrap .card .img-link {
     display: flex;
     align-items: center;
     height: auto;
     width: 100%;
 }

 .events-group.list .card>* {
     display: block;
     float: left;
 }

 .events-group.list .img-link {
     width: inherit;
     max-width: 25%;
 }

 .events-group.list .card-body {
     width: 75%;
     padding: 0;
     position: relative;
     min-height: 160px;
 }

 .events-group.list .card-body>* {
     float: left;
     display: block;
 }

 .events-group.list .card-title {
     width: 40%;
     padding: 0 1rem;
 }

 .events-group.list .event-time {
     width: 20%;
     min-width: 170px;
     height: auto;
     max-height: inherit;
     margin-bottom: 0;
     padding: 0 1rem .2rem;
     border-left: #333 solid 1px;
     overflow: visible;
     white-space: normal;
     -webkit-line-clamp: unset;
     -webkit-box-orient: inherit;
     -moz-box-orient: inherit;
 }

 @media(min-width:769px) and (max-width:959px) {
     .events-group.list .event-time {
         min-width: 140px;
     }
 }

 .events-group.list .event-time span {
     border: none;
     padding: 0;
     display: block;
 }

 .events-group.list .events-place {
     display: table;
     margin: 20px 5px 0;
     width: auto;
     padding: 0px 10px;
     border: #444 solid 1px;
     border-radius: 18px;
     font-size: .9rem;
 }

 .events-group.list .events-price {
     font-size: 1rem;
     position: absolute;
     left: 0;
     top: 55px;
     text-align: left;
 }

 .events-group.list .events-price::before {
     content: '票價：';
     display: inline-block;
 }

 .events-group.list .action>*:nth-child(3) {
     top: 110px;
 }

 .events-group .events-place i {
     margin-right: .2rem;
 }

 .events-group.list .cards-wrap .action {
     width: 30%;
     border: none;
     float: right;
     clear: inherit;
     position: relative;
     padding-bottom: 35px;
 }

 @media(max-width:1000px) {
     .events-group.list .cards-wrap .action {
         width: 28%;
     }
 }

 .events-group.list .cards-wrap .action .btn-link {
     width: 100%;
     border: #333 solid 1px;
     border-radius: 0;
     font-weight: 500;
 }

 .events-group.list .cards-wrap .action .btn-link+.btn-link {
     margin-top: .5rem;
 }

 .events-group.list .cards-wrap .btn-more {
     margin: 2rem auto;
 }

 @media(min-width:768px) {
     .events-group.list .container {
         max-width: 100%;
         padding: 0;
     }

     .events-group.list .col-md-12 {
         padding-left: 0;
         padding-right: 0;
     }
 }

 .animated-modal {
     max-width: 550px;
     border-radius: 4px;
     overflow: hidden;
     transform: translateX(100%);
     transition: all .7s;
 }

 .animated-modal h2,
 .animated-modal p {
     transform: translateX(100%);
     opacity: 0;
     transition-property: transform, opacity;
     transition-duration: .4s;
 }

 .fancybox-slide--current .animated-modal,
 .fancybox-slide--current .animated-modal h2,
 .fancybox-slide--current .animated-modal p {
     transform: translateX(0);
     opacity: 1;
 }

 .fancybox-slide--current .animated-modal h2 {
     transition-delay: .1s;
 }

 .fancybox-slide--current .animated-modal p {
     transition-delay: .3s;
 }

 .fancybox-eventartist .fancybox-toolbar .fancybox-button,
 .fancybox-artist .fancybox-toolbar .fancybox-button,
 .fancybox-guide .fancybox-toolbar .fancybox-button {
     background: transparent;
     color: #000;
 }

 @media(min-width:960px) {

     .fancybox-eventartist .fancybox-slide,
     .fancybox-artist .fancybox-slide,
     .fancybox-guide .fancybox-slide {
         padding: 50px 65px 50px 0;
         text-align: right;
         overflow: hidden !important;
     }

     .fancybox-eventartist .fancybox-slide .fancybox-content,
     .fancybox-artist .fancybox-slide .fancybox-content,
     .fancybox-guide .fancybox-slide .fancybox-content {
         box-shadow: 0 -5px 10px rgba(0, 0, 0, 0.4);
         border: #e2e2e2 solid 1px;
         position: absolute;
         right: 45px;
         height: calc(100vh - 93px) !important;
     }

     .fancybox-eventartist .fancybox-slide .fancybox-content {
         width: 510px !important;
     }

     .fancybox-guide .fancybox-slide .fancybox-content {
         width: 80% !important;
     }
 }

 @media(max-width:959px) {

     .fancybox-modal .fancybox-slide,
     .fancybox-eventartist .fancybox-slide,
     .fancybox-artist .fancybox-slide,
     .fancybox-guide .fancybox-slide {
         padding: 0;
     }

     .fancybox-modal .fancybox-slide--iframe .fancybox-content,
     .fancybox-eventartist .fancybox-slide--iframe .fancybox-content,
     .fancybox-artist .fancybox-slide--iframe .fancybox-content,
     .fancybox-guide .fancybox-slide--iframe .fancybox-content {
         height: 100vh !important;
         width: 100vw !important;
         overflow: auto;
     }
 }

 .fancybox-artist {
     z-index: 1000;
 }

 .fancybox-artist.fancybox-is-open .fancybox-bg {
     opacity: 0.5;
 }

 .fancybox-artist .fancybox-toolbar .fancybox-button {
     background: transparent;
     color: #000;
 }

 @media(min-width:960px) {
     .fancybox-artist {
         z-index: 2;
     }

     .fancybox-artist.fancybox-is-open .fancybox-bg {
         opacity: 0.3;
         width: calc(100% - 130px);
         position: absolute;
         top: 0;
         right: 0;
         bottom: 0;
         left: 0;
         margin: auto;
         height: calc(100% - 100px);
     }

     .fancybox-artist .fancybox-slide {
         padding: 50px 65px 50px 0;
         text-align: right;
     }

     .fancybox-artist .fancybox-content {
         width: 85% !important;
         box-shadow: 0 -5px 10px rgba(0, 0, 0, 0.4);
         border: #e2e2e2 solid 1px;
     }

     .ARTIST .fancybox-artist .fancybox-content {
         right: 48px;
         position: absolute;
     }

     .fancybox-artist .fancybox-toolbar {
         right: 65px;
         top: 50px;
         opacity: 1 !important;
         visibility: initial;
     }
 }

 @media(max-width:959px) {
     .fancybox-artist .fancybox-slide {
         padding: 0;
     }
 }

 .compensate-for-scrollbar {
     margin-right: 0 !important;
 }

 .fancybox-eventartist {
     z-index: 1000;
 }

 .fancybox-eventartist.fancybox-is-open .fancybox-bg {
     opacity: 0.5;
 }

 @media(min-width:960px) {
     .fancybox-eventartist {
         z-index: 2;
     }

     .fancybox-eventartist.fancybox-is-open .fancybox-bg {
         opacity: 0.3;
         width: calc(100% - 130px);
         position: absolute;
         top: 0;
         right: 0;
         bottom: 0;
         left: 0;
         margin: auto;
         height: calc(100% - 100px);
     }

     .fancybox-eventartist .fancybox-slide {
         padding: 25px 65px 25px 0;
         text-align: right;
     }

     .fancybox-artist .fancybox-content,
     .fancybox-eventartist .fancybox-content {
         width: 500px !important;
         height: calc(100% - 100px) !important;
         box-shadow: 0 -5px 10px rgba(0, 0, 0, 0.4);
         border: #e2e2e2 solid 1px;
     }

     .fancybox-eventartist .fancybox-toolbar {
         right: 65px;
         top: 50px;
         opacity: 1 !important;
         visibility: initial;
     }
 }

 @media(max-width:768px) {
     .fancybox-eventartist .fancybox-slide {
         padding: 0;
     }

     .fancybox-eventartist .fancybox-toolbar .fancybox-button {
         background: transparent;
         color: #000;
     }
 }

 .fancybox-guide {
     z-index: 1000;
 }

 .fancybox-guide.fancybox-is-open .fancybox-bg {
     opacity: 0.5;
 }

 @media(min-width:960px) {
     .fancybox-guide {
         z-index: 2;
     }

     .fancybox-guide.fancybox-is-open .fancybox-bg {
         opacity: 0.3;
         width: calc(100% - 130px);
         position: absolute;
         top: 0;
         right: 0;
         bottom: 0;
         left: 0;
         margin: auto;
         height: calc(100% - 100px);
     }

     .fancybox-guide .fancybox-toolbar {
         right: 65px;
         top: 50px;
         opacity: 1 !important;
         visibility: initial;
     }
 }

 .fancybox-custom-layout .fancybox-is-open .fancybox-bg {
     opacity: .3;
 }

 @media all and (min-width: 600px) {
     .fancybox-custom-layout .fancybox-bg {
         background: #fcfaf9;
     }

     .fancybox-custom-layout.fancybox-is-open .fancybox-bg {
         opacity: 1;
     }

     .fancybox-custom-layout .fancybox-caption {
         background: #f1ecec;
         bottom: 0;
         color: #6c6f73;
         left: auto;
         padding: 30px 20px;
         right: 44px;
         top: 0;
         width: 256px;
     }

     .fancybox-custom-layout .fancybox-caption h3 {
         color: #444;
         font-size: 21px;
         line-height: 1.3;
         margin-bottom: 24px;
     }

     .fancybox-custom-layout .fancybox-caption a {
         color: #444;
     }

     .fancybox-custom-layout .fancybox-caption::before {
         display: none;
     }

     .fancybox-custom-layout .fancybox-stage {
         right: 300px;
     }

     .fancybox-custom-layout .fancybox-toolbar {
         background: #3b3b45;
         bottom: 0;
         left: auto;
         right: 0;
         top: 0;
         width: 44px;
     }

     .fancybox-custom-layout .fancybox-button {
         background: transparent;
     }

     .fancybox-custom-layout .fancybox-navigation .fancybox-button div {
         padding: 6px;
         background: #fcfaf9;
         border-radius: 50%;
         transition: opacity .2s;
         box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);
         opacity: .7;
     }

     .fancybox-custom-layout .fancybox-navigation .fancybox-button:not([disabled]):hover div {
         opacity: 1;
     }

     .fancybox-custom-layout .fancybox-navigation .fancybox-button[disabled] {
         color: #999;
     }

     .fancybox-custom-layout .fancybox-navigation .fancybox-button:not([disabled]) {
         color: #333;
     }

     .fancybox-custom-layout .fancybox-button--arrow_right {
         right: 308px;
     }
 }

 .fancybox-gallery .fancybox-stage {
     right: 40vw;
 }

 .fancybox-gallery .fancybox-right {
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 60vw;
     background: #f1ecec;
     transition: opacity 366ms;
     z-index: 99994;
     display: flex;
     justify-content: center;
     overflow: auto;
 }

 .fancybox-gallery .fancybox-is-closing .fancybox-right {
     opacity: 0;
 }

 .fancybox-gallery .fancybox-right>div {
     margin: auto;
 }

 .fancybox-gallery .fancybox-caption {
     position: relative;
     top: auto;
     left: auto;
     bottom: auto;
     border: 0;
     color: #222;
     background: transparent;
     text-align: left;
     padding-left: 50px;
     padding-top: 12px;
 }

 .fancybox-gallery .fancybox-caption__body {
     max-height: none;
 }

 .fancybox-gallery .fancybox-toolbar {
     top: 20px;
     right: 20px;
 }

 .fancybox-gallery .fancybox-toolbar .fancybox-button {
     background: transparent;
     color: #000;
 }

 .fancybox-gallery .fancybox-toolbar .fancybox-button:hover {
     color: #000;
     transform: translateY(-1px);
 }

 .fancybox-gallery .fancybox-navigation .fancybox-button--arrow_right {
     right: calc(40vw + 8px);
 }

 .fancybox-gallery.fancybox-show-thumbs .fancybox-inner {
     right: 0;
 }

 .fancybox-gallery .fancybox-right .fancybox-thumbs {
     margin: 0 44px;
     position: relative;
     width: auto;
     background: transparent;
 }

 .fancybox-guidelist {}

 .fancybox-guidelist .fancybox-slide {
     padding: 0;
 }

 .fancybox-guidelist .fancybox-toolbar .fancybox-button {
     background: transparent;
     color: #000;
 }

 .fancybox-publication {}

 .fancybox-publication .fancybox-slide {
     padding: 0;
 }

 .img-gallery {
     width: 100%;
 }

 @media(min-width:600px) {
     .img-gallery {
         width: 49%;
         display: inline-block;
         padding-right: 20px;
     }
 }

 @media(min-width:960px) {
     .img-gallery {
         width: 25%;
         display: inline-block;
         padding-right: 20px;
     }
 }

 .img-gallery .card-title {
     font-size: 1.1rem;
     font-weight: bold;
     font-family: 'Noto Serif TC', serif;
     margin-bottom: .5rem;
     display: inline-block;
     padding: 0 5px;
 }

 .img-gallery .img-cover {
     display: block;
     position: relative;
     display: flex;
     justify-content: center;
     align-items: center;
     border-radius: 5px;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 .img-gallery .img-cover:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .img-gallery .img-cover::before {
     color: #fff;
     font-weight: 300;
     display: block;
     font-size: 5rem;
     font-family: "Font Awesome 5 pro";
     content: "\f302";
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     margin: auto;
     width: 100px;
     height: 80px;
     line-height: initial;
     z-index: 1;
 }

 .img-gallery .img-cover::after {
     content: '';
     opacity: 0;
     background: rgba(210, 0, 49, .6);
     position: absolute;
     width: 100%;
     z-index: 0;
     height: 100%;
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 .img-gallery .img-cover:hover::after {
     opacity: 1;
 }

 @media (min-width: 768px) {
     .img-cover:hover img {
         opacity: 1;
         -webkit-transform: scale(1);
         transform: scale(1);
         -moz-transform: scale(1);
         -ms-transform: scale(1);
         -o-transform: scale(1);
     }
 }

 .img-slider {
     position: relative;
     z-index: 0;
 }

 .img-slider .swiper-container {
     width: 100%;
     height: 500px;
     margin: 20px auto;
     background: #000;
 }

 .img-slider .swiper-container.bkv {
     border: 1px solid #ccc;
     background: transparent;
 }

 .img-slider .swiper-slide {
     text-align: center;
     font-size: 18px;
     background: transparent;
     display: -webkit-box;
     display: -ms-flexbox;
     display: -webkit-flex;
     display: flex;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     -webkit-justify-content: center;
     justify-content: center;
     -webkit-box-align: center;
     -ms-flex-align: center;
     -webkit-align-items: center;
     align-items: center;
 }

 .img-slider .swiper-slide figcaption {
     display: none;
 }

 .img-slider .swiper-slide figure {
     width: 100%;
     height: 100%;
     margin: 0;
 }

 .img-slider .swiper-slide figure a {
     height: 100%;
     display: flex;
     justify-content: center;
     align-items: center;
 }

 .img-slider .swiper-slide figure .img-cover {
     background: #2f2f2f;
 }

 .img-slider .swiper-slide figure .img-cover img {
     height: 100%;
     width: auto;
 }

 .video-slider div[class*='swiper-button-'],
 .img-slider div[class*='swiper-button-'] {
     width: 40px;
     height: 40px;
     padding: 0;
     line-height: 2.4rem;
     line-height: 2.4rem;
 }

 .video-slider div[class*='swiper-button-']:hover,
 .img-slider div[class*='swiper-button-']:hover {
     background: #000;
 }

 .video-slider div[class*='swiper-button-']::before,
 .img-slider div[class*='swiper-button-']::before {
     font-size: 1.2rem;
     color: #000;
 }

 .video-slider div[class*='swiper-button-']:hover::before,
 .img-slider div[class*='swiper-button-']:hover::before {
     color: #f1f0ee;
 }

 .video-slider .swiper-button-next,
 .img-slider .swiper-button-next {
     right: -20px;
 }

 .video-slider .swiper-button-prev,
 .img-slider .swiper-button-prev {
     left: -20px;
 }

 .video-slider {
     position: relative;
     z-index: 0;
 }

 .video-slider .swiper-container {
     width: 100%;
     height: 500px;
     margin: 20px auto;
     background: #000;
 }

 .video-slider .swiper-slide {
     text-align: center;
     font-size: 18px;
     background: transparent;
     display: -webkit-box;
     display: -ms-flexbox;
     display: -webkit-flex;
     display: flex;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     -webkit-justify-content: center;
     justify-content: center;
     -webkit-box-align: center;
     -ms-flex-align: center;
     -webkit-align-items: center;
     align-items: center;
 }

 .video-slider .swiper-slide img {
     height: 100%;
 }

 .video-slider .swiper-slide a {
     position: relative;
 }

 .video-slider .swiper-slide a::before {
     content: '';
     background: url(../images/icon-play.svg) no-repeat;
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     margin: auto;
     width: 100px;
     height: 100px;
     -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.7));
     filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.7));
 }

 @media(max-width:1366px) {
     .img-slider .swiper-slide figure .img-cover img {
         width: 100%;
         height: auto;
     }

     .video-slider .swiper-container,
     .img-slider .swiper-container {
         height: 300px;
         width: 80%;
     }

     .video-slider .swiper-button-next,
     .img-slider .swiper-button-next {
         right: 0;
     }

     .video-slider .swiper-button-prev,
     .img-slider .swiper-button-prev {
         left: 0;
     }

     .video-slider .swiper-slide img {
         width: 100%;
         height: auto;
     }
 }

 @media (max-width: 1280px) {

     .img-slider .swiper-container,
     .video-slider .swiper-container {
         height: 385px;
     }
 }

 @media (max-width: 768px) {

     .img-slider .swiper-container,
     .video-slider .swiper-container {
         height: 290px;
     }
 }

 @media (max-width: 500px) {

     .img-slider .swiper-container,
     .video-slider .swiper-container {
         height: 185px;
     }
 }

 .guide-list {
     position: relative;
     padding: 2rem 5rem;
     margin-bottom: 30vh;
 }

 .guide-list .img-cover {
     height: 0;
     padding-bottom: 66.85%;
     position: relative;
     text-align: center;
     overflow: hidden;
 }

 .guide-list .img-cover img,
 .guide-list .img-cover:hover img {
     position: absolute;
     top: 50%;
     left: 0;
     transform: translateY(-50%);
     width: 100%;
     padding: 0;
     width: auto;
     height: 100%;
 }

 @media(max-width:500px) {

     .guide-list .img-cover img,
     .guide-list .img-cover:hover img {
         transform: translateY(-50.1%) !important;
     }
 }

 .guide-btn {
     margin: auto;
 }

 .guide-btn a {
     width: 100%;
 }

 .guide-con h3 {
     margin: .6rem 0;
     line-height: 1.7rem;
 }

 .guide-con {
     margin-bottom: 25px;
 }

 .guide-con a h3 {
     font-size: 1.2rem;
     font-family: 'Noto Serif TC', serif;
     color: #212529;
 }

 .guide-con a,
 .guide-con a:hover,
 .guide-con a:hover h3 {
     color: #d20031;
 }

 @media(min-width:1280px) {
     .guide-con a h3 {
         font-size: 1.5rem;
     }
 }

 .guide-con p {
     font-size: 1rem;
     font-weight: normal;
     letter-spacing: .3px;
 }

 .guide-con img {
     width: 100%;
 }

 @media(max-width:767px) {
     .guide-list {
         padding: 2rem;
     }
 }

 .guide-list .btn.scheduled-guide {
     position: absolute;
     right: 33px;
     top: -65px;
     color: #fff;
     border: 1px solid #fff;
     border-radius: 0;
     padding: 5px 45px;
     z-index: 1;
 }

 .guide-list .btn.scheduled-guide i {
     padding-right: 10px;
 }

 .guide-list .btn.scheduled-guide:hover {
     background: rgba(0, 0, 0, 0.6);
     text-decoration: none;
     margin-bottom: 2px;
 }

 .guide .post-title {
     border-bottom: 1px solid #C7C7C7;
     padding-bottom: 16px;
 }

 @media(max-width:767px) {
     .guide-list .btn.scheduled-guide {
         position: unset;
         color: #333333;
         border: 1px solid #333333;
         border-radius: 0;
         padding: 5px 45px;
         margin-bottom: 26px;
         width: 100%;
     }

     .guide-list .btn.scheduled-guide:hover {
         position: unset;
         color: #ffffff;
         border: 1px solid #333333;
         border-radius: 0;
         padding: 5px 45px;
         margin-bottom: 26px;
         width: 100%;
     }
 }

 @media(max-width:1024px) {
     .guide-list .guide-con {
         min-height: auto;
         height: auto;
     }
 }

 @media (max-width: 800px) {
     .guide-list {
         padding: 2rem 1rem 10vh;
     }

     .guide-list .container {
         max-width: 100%;
     }
 }

 @media (max-width: 767px) {
     .guide-list .col-md-4 {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%;
     }
 }

 @media (max-width: 500px) {
     .guide-list .guide-con {
         margin: 0 5px;
     }
 }

 @media (max-width: 414px) {
     .guide-list .col-md-4 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }
 }

 .btn.know-more {
     border: 1px solid #333333;
     padding: 7px 10px;
     color: #333333;
     border-radius: 0;
     font-size: .9rem;
     width: 100%;
     position: absolute;
     bottom: 0;
 }

 .btn.know-more:hover {
     text-decoration: none;
     border: 1px solid #333333;
     background: #333333;
     padding: 7px 10px;
     color: #fff;
 }

 @media(max-width:767px) {
     .btn.know-more {
         position: unset;
     }
 }

 .list-collapse.card {
     background-color: rgba(0, 0, 0, 0);
     border: 0;
 }

 .list-collapse .card-header {
     padding: .75rem 1.25rem;
     margin-bottom: 0;
     background-color: rgba(0, 0, 0, 0);
     border-bottom: 0;
 }

 .list-collapse .reser-title {
     position: relative;
     color: #212529;
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
 }

 .list-collapse .reser-title:hover {
     text-decoration: none;
 }

 .list-collapse .reser-date {
     font-size: 1rem;
     color: #656565;
     vertical-align: auto;
     letter-spacing: 0;
     width: 120px;
     padding: 3px 0;
     line-height: 1.5rem;
     background: #FFF;
     border-radius: 8px;
     text-align: center;
     border: 1px solid #D8D9D1;
     display: inline-block;
     margin-right: 5px;
 }

 @media(max-width:500px) {
     .list-collapse .reser-date {
         width: calc(100vw - 160px);
     }
 }

 .list-collapse .card-header .reser-title:before {
     position: absolute;
     left: -22px;
     top: 9px;
     font-family: "Font Awesome 5 pro";
     content: '\f067';
     font-size: 1.5rem;
     color: #707070;
     font-weight: 100;
 }

 .list-collapse .card-header .reser-title[aria-expanded="false"]:before {
     font-family: "Font Awesome 5 pro";
     content: '\f068';
 }

 .list-collapse .table td,
 .tender .table th {
     padding: .75rem;
     vertical-align: top;
     border-bottom: 1px solid #dee2e6;
 }

 .tender {
     padding: 2rem 1.5rem 3.5rem;
 }

 @media(min-width:960px) {
     .tender {
         padding: 2rem 5rem 3.5rem;
     }
 }

 @media (min-width: 768px) {
     .tender .download-list li {
         width: 100%;
         float: none;
     }

     .tender .download-list li:nth-of-type(even) a {
         margin-left: 0;
     }

     .tender .download-list li:nth-of-type(2n+1) a {
         margin-right: 0;
     }
 }

 .post-content .file-downlow-title {
     padding: .75rem;
     vertical-align: top;
     font-size: .9rem;
     font-weight: 600;
     margin-bottom: 0;
 }

 .file-downlow {
     display: block;
     color: #3D3D3D;
     background: #EAEAEA;
     padding: 10px 35px 10px 20px;
     font-size: .8rem;
     position: relative;
 }

 .file-downlow:hover {
     color: #3D3D3D;
 }

 .file-downlow i {
     position: absolute;
     right: 12px;
     top: 15px;
     color: #707070;
 }

 .list .mfp-wrap {
     top: 0 !important;
 }

 .list .mfp-iframe-holder .mfp-content {
     max-width: 100%;
 }

 .functionbar.center {
     justify-content: center;
 }

 .functionbar .mode.show span {
     display: unset;
 }

 .publication {
     position: relative;
     padding: 2rem 5rem;
 }

 .monthly-issue .issue {
     margin-bottom: 30px;
     background: transparent;
     border: none;
 }

 .monthly-issue .issue .img-cover {
     height: 0;
     padding-bottom: 148%;
     position: relative;
     text-align: center;
     overflow: hidden;
 }

 .monthly-issue .issue .card-body {
     padding: .5rem 0;
 }

 .monthly-issue .issue .issue-img {
     position: absolute;
     top: 50%;
     left: 0;
     transform: translateY(-50%);
     width: 100%;
     padding: 0;
     width: auto;
     height: 100%;
 }

 .monthly-issue .issue-title {
     font-size: 1.2rem;
     border-top: #a1a1a1 solid 1px;
     border-bottom: #a1a1a1 solid 1px;
     padding: .5rem 0 .7rem;
     display: flex;
     align-items: center;
 }

 .monthly-issue .issue .date {
     font-size: 1.2rem;
     margin-top: 5px;
     margin-bottom: 1px;
 }

 .monthly-issue .issue .date .period {
     font-family: 'Noto Serif TC', serif;
     font-weight: 200;
     font-size: 1rem;
     min-height: 35px;
     display: flex;
     align-items: center;
     padding-bottom: 5px;
 }

 @media(min-width:1024px) {
     .monthly-issue .issue-title {
         font-size: 1rem;
         min-height: 70px;
         display: flex;
         align-items: center;
     }
 }

 @media(min-width:1465px) {
     .monthly-issue .issue-title {
         font-size: 1.3rem;
         min-height: 70px;
     }
 }

 @media(max-width:1200px) {
     .monthly-issue .issue-title {
         font-size: 1.2rem;
         line-height: 1.4rem;
         min-height: 60px;
     }
 }

 @media(min-width:769px) and (max-width:1100px) {
     .publication .row div[class*='col-'] {
         -ms-flex: 0 0 33.333333%;
         flex: 0 0 33.333333%;
         max-width: 33.333333%;
     }
     .publication .row div.col-12 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     .monthly-issue .issue-title {
         font-size: 1rem;
         line-height: 1.2rem;
     }
 }

 @media(min-width:960px) {
     .publication {
         margin-bottom: 20vh;
     }
 }

 @media(max-width:768px) {
     .publication {
         padding: 2rem 1rem;
     }

     .publication .row div[class*='col-'] {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%;
     }
     .publication .row div.col-12 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     .monthly-issue .issue-title {
         min-height: 40px;
     }
 }

 @media(max-width:500px) {
     .publication {
         max-width: 240px;
         margin: auto;
     }

     .publication .mt-5 {
         margin-top: 0 !important;
     }

     .publication .row div[class*='col-'] {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }
 }

 @media(max-width:500px) {
     .monthly-issue .issue .issue-img {
         transform: translateY(-50.1%) !important;
     }
 }

 .banner-area {
     width: 90%;
     margin: 60px auto;
     box-shadow: 5px 5px 30px #e2e2e2;
     max-height: 456px;
     overflow: hidden;
     display: flex;
 }

 .banner-area .banner,
 .banner-area .banner.withIntroduction img {
     height: 100%;
 }

 .banner-area .banner.withIntroduction {
     flex: 6;
     width: 60%;
     overflow: hidden;
 }

 .introduction {
     flex: 4;
     padding: 20px 50px 0;
 }

 .introduction p {
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
 }

 .introduction p {
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     display: -webkit-box;
     -webkit-line-clamp: 10;
     -webkit-box-orient: vertical;
     white-space: normal;
 }

 .fullsrc-img {
     position: relative;
     padding: 35px 0;
     display: grid;
 }

 .fullsrc-img .row {
     margin: 20px 0;
 }

 .fullsrc-img img {
     max-width: 80%;
     display: block;
     margin: 30px auto;
 }

 .fullsrc-img p {
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
     font-weight: 500;
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     display: -webkit-box;
     -webkit-line-clamp: 10;
     -webkit-box-orient: vertical;
     white-space: normal;
 }

 @media(max-width:768px) {
     .fullsrc-img img {
         position: relative;
         top: 50%;
         transform: translateY(-50%);
         max-width: 80%;
         display: block;
         margin: 30px auto;
     }
 }

 @media(max-width:500px) {
     .fullsrc-img img {
         transform: translateY(-50.1%) !important;
     }
 }

 .fullsrc-img::before,
 .fullsrc-img::after {
     content: '';
     width: 100%;
     position: absolute;
     border: #848484 solid 1px;
     border-left: none;
     border-right: none;
     margin: auto;
     left: 0;
     right: 0;
     bottom: 0;
     top: 0;
 }

 .fullsrc-img::before {
     height: calc(100% - 35px);
 }

 .fullsrc-img::after {
     border-width: 5px;
     height: calc(100% - 45px);
 }

 .nttplus {
     width: 90%;
     margin: 0 auto 30vh;
 }

 .nttplus h3 {
     font-size: 1.2rem;
     padding: 15px 0;
 }

 @media(min-width:1280px) {
     .nttplus h3 {
         font-size: 1.5rem;
     }
 }

 .nttplus .img-cover {
     height: 0;
     padding-bottom: 67%;
     position: relative;
     text-align: center;
     overflow: hidden;
 }

 .nttplus .img-cover img,
 .nttplus .img-cover:hover img {
     position: absolute;
     top: 50%;
     left: 0;
     transform: translateY(-50%) !important;
     width: 100%;
     padding: 0;
     width: auto;
     height: 100%;
 }

 .nttplus .img-cover img::after {
     background: #424242;
 }

 .nttplus .container .row div[class*='col-'] {
     margin-bottom: 10px;
     height: 300px/;
 }

 .nttplus .row div[class*='col-'] h3 a {
     margin: 10px 0px 50px;
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
     color: #212529;
 }

 .nttplus .row div h3 a:hover {
     color: #d20031;
 }

 @media(max-width:1000px) {
     .banner-area .banner.withIntroduction img {
         width: 100%;
     }

     .banner-area {
         max-height: initial;
         overflow: hidden;
         display: block;
     }

     .banner-area .banner.withIntroduction {
         display: block;
         width: 100%;
         overflow: hidden;
     }

     .introduction {
         padding: 20px 50px 0;
         display: block;
         width: 100%;
     }
 }

 @media(max-width:767px) {
     .fullsrc-img .row {
         margin: 0;
     }
 }

 @media(max-width:500px) {

     .nttplus .img-cover img,
     .nttplus .img-cover:hover img {
         transform: translateY(-50.1%) !important;
     }
 }

 .artist-wrap {
     position: relative;
     padding: 2rem 1.2rem;
 }

 .artist-wrap .row {
     margin: 0;
 }

 .artist-wrap .artist-description p {
     font-size: 1rem;
     font-weight: normal;
     letter-spacing: .3px;
     width: 100%;
 }

 .artists-list p {
     text-align: center;
     padding: 2px 0;
 }

 .artist-description iframe {
     max-width: 100%;
 }

 .artists-list .swiper-slide .card {
     padding: 0 14px;
 }

 .artists-list .img-link.img-cover {
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
 }

 .artists-list .img-link.img-cover:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 @media(max-width:1300px) and (min-width:768px) {
     .artist-wrap .row div[class*='col-'] {
         -ms-flex: 0 0 50%;
         flex: 0 0 50%;
         max-width: 50%;
     }
 }

 @media(min-width:1200px) {
     .artist-wrap {
         padding: 40px;
     }

     .artist-wrap .row div[class*='col-'] {
         padding-left: 15px;
         padding-right: 15px;
     }
 }

 @media(max-width:430px) {
     .artist-wrap .row div[class*='col-'] {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
         padding: 0;
     }
 }

 .timeline-wrap {
     position: relative;
     padding: 40px 0 50vh;
 }

 .timeline-wrap::before {
     content: '';
     position: absolute;
     top: 0;
     left: 60px;
     height: 100%;
     width: 20px;
     background: #D85656;
     display: block;
 }

 .timeline-wrap .btn-search i {
     margin-right: .5rem;
 }

 .timeline-wrap .row {
     margin: 0;
 }

 .timeline-wrap div[class*='col-'] {
     padding: 0;
 }

 .timeline-wrap.nodata::before {
     display: none;
 }

 .timeline-wrap .month-event {
     position: relative;
 }

 .timeline-wrap .month-event+.month-event {
     margin-top: 30px;
     padding: 2rem 0;
 }

 .timeline-wrap .month-event::before {
     position: absolute;
     content: '';
     color: #fff;
     top: 20px;
     left: 14%;
     background: #fff;
     width: 12px;
     height: 13px;
     border-radius: 50%;
 }

 .timeline-wrap .month-event+.month-event::before {
     top: 50px;
 }

 .timeline-wrap .month-event::after {
     position: absolute;
     content: '';
     bottom: -70px;
     left: 8%;
     background: #f1f0ee;
     transform: skew(-42deg);
     width: 18px;
     height: 45px;
 }

 .timeline-wrap .month-event:last-of-type::after {
     display: none;
 }

 .timeline-wrap .monEvent-title {
     color: #D85656;
     font-size: 1.4rem;
     font-family: 'Noto Serif TC', serif;
     text-align: right;
     width: 50%;
 }

 .timeline-wrap .monEvent-list {
     position: relative;
     padding: 0 20px;
 }

 .timeline-wrap .event-item::after {
     content: '';
     position: absolute;
     top: 15px;
     left: -14px;
     height: 0;
     width: 0;
     border: 7px solid transparent;
     border-right: 7px solid white;
 }

 .monEvent-list .event-item {
     position: relative;
     padding: 20px;
     background: #fff;
     border-radius: 3px;
     box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
     word-break: break-all;
 }

 .monEvent-list .event-item+.event-item {
     margin-top: 1rem;
 }

 .monEvent-list .event-data {
     overflow: auto;
     margin-bottom: .8rem;
 }

 .monEvent-list .event-tag {
     background: #D85656;
     padding: .2rem 1.5rem;
     margin-right: .8rem;
     display: inline-block;
     border-radius: .2rem;
     color: #fff;
 }

 .monEvent-list .event-dates {
     display: inline-block;
 }

 .monEvent-list .event-dates span+span::before {
     content: '、';
 }

 .timeline-wrap .btn-search {
     color: #333333;
     border-color: #333333;
     padding: 5px 45px;
     margin-bottom: 26px;
     width: 100%;
 }

 @media(min-width:1366px) {
     .timeline-wrap .monEvent-list p {
         width: 80%;
     }
 }

 @media(min-width:768px) {
     .timeline-wrap {
         margin: 0 20px;
     }

     .timeline-wrap::before {
         left: 13.666667%;
     }

     .timeline-wrap .month-event::before {
         left: 14%;
         top: 15px;
     }
 }

 @media(min-width:1280px) {
     .timeline-wrap .monEvent-title {
         font-size: 2rem;
     }

     .timeline-wrap::before {
         left: 8%;
     }

     .timeline-wrap .col-2 {
         -ms-flex: 0 0 10.666667%;
         flex: 0 0 10.666667%;
         max-width: 10.666667%;
     }

     .timeline-wrap .month-event::before {
         left: 8.3%;
     }

     .timeline-wrap .btn-search {
         position: absolute;
         right: 33px;
         top: -125px;
         color: #fff;
         border: 1px solid #fff;
         border-radius: 0;
         padding: 5px 45px;
         z-index: 1;
         width: initial;
     }
 }

 @media(max-width:1440px) {
     .timeline-wrap .monEvent-title {
         font-size: 2rem;
         width: 65%;
     }

     .timeline-wrap .month-event::before {
         left: 8.35%;
     }
 }

 @media(max-width:1279px) {
     .timeline-wrap .month-event::before {
         left: 14.1%;
     }

     .timeline-wrap .month-event::after {
         left: 13.8%;
     }
 }

 @media(max-width:959px) {
     .timeline-wrap .month-event+.month-event {
         padding-top: 105px;
     }

     .timeline-wrap .month-event+.month-event::before {
         top: 123px;
     }
 }

 @media(max-width:767px) {
     .timeline-wrap .monEvent-title {
         width: 80%;
     }

     .timeline-wrap .col-2 {
         -ms-flex: 0 0 25%;
         flex: 0 0 25%;
         max-width: 25%;
     }

     .timeline-wrap .col-10 {
         -ms-flex: 0 0 75%;
         flex: 0 0 75%;
         max-width: 75%;
     }

     .timeline-wrap::before {
         left: 21.8%;
     }

     .timeline-wrap .month-event::before {
         left: 22.4%;
     }

     .timeline-wrap .month-event::after {
         left: 21.8%;
     }
 }

 @media(max-width:480px) {
     .timeline-wrap .monEvent-title {
         margin-top: 5px;
         font-size: 1.5rem;
     }
 }

 .main .store-list {
     margin-top: 35px;
 }

 .store-list .cards-wrap .img-cover {
     height: 0;
     padding-bottom: 67%;
     position: relative;
     text-align: center;
     overflow: hidden;
 }

 .store-list .cards-wrap .img-cover img,
 .store-list .cards-wrap .img-cover:hover img {
     position: absolute;
     top: 50%;
     left: 0;
     transform: translateY(-50%) !important;
     width: 100%;
     padding: 0;
     width: auto;
     height: 100% !important;
 }

 .main .store-list .card-title {
     padding-right: 30px;
     position: relative;
 }

 .main .store-list .card-title .floor-circle {
     position: absolute;
     right: 0;
     top: 9px;
     line-height: 1.3rem;
 }

 .store>h2 {
     font-size: 1.7rem;
     border-bottom: 1px solid #c7c7c7;
     margin: 2rem 1.2rem;
     padding-bottom: .8rem;
 }

 .store .post-content .btn-back {
     margin: 2rem auto;
 }

 @media(min-width: 1200px) {
     .store>h2 {
         margin: 2rem 16rem 0;
     }
 }

 @media(min-width: 1025px) {
     .store>h2 {
         margin: 2rem 5rem 0;
     }
 }

 @media(min-width: 1200px) {
     .store>h2 {
         margin: 2rem 12rem 0;
     }
 }

 @media(max-width:500px) {
     .main .store-list .row {
         margin: 0;
     }
 }

 @media(max-width:500px) {

     .store-list .cards-wrap .img-cover img,
     .store-list .cards-wrap .img-cover:hover img {
         transform: translateY(-50.1%) !important;
     }
 }

 .searchbar {
     display: block;
     width: 100%;
     background: #EAEAEA;
     padding: 40px 0 20px;
 }

 .searchbar .searchSet {
     position: relative;
 }

 .searchSet input {
     border: 1px solid #272727;
     padding: 0 19px;
     font-size: 1.1rem;
     position: relative;
 }

 .searchSet .input-group input:not(.datepicker) {
     border-right: none;
 }

 .searchSet .input-group .btn-search {
     border: 1px solid #272727;
     border-left: none;
     background-color: #fff;
     z-index: 1;
 }

 .searchSet .input-group.date-range .datepicker:first-of-type {
     border-right: none;
     border-radius: .25rem 0 0 .25rem;
 }

 .searchSet .input-group.date-range .datepicker:last-of-type {
     border-left: none;
 }

 .searchSet .input-group.date-range .input-group-text {
     border: 1px solid #272727;
     border-left: none;
     border-right: none;
     background: #fff;
 }

 .searchlist .searchbar .total {
     margin-top: 10px;
 }

 .searchlist .searchbar .total p {
     font-size: 1rem;
     font-weight: normal;
     letter-spacing: .3px;
 }

 .results_list {
     padding: 20px 0;
 }

 .results_list+nav .pagination {
     margin-bottom: 30vh;
 }

 .monEvent-list {
     padding-bottom: 30vh;
 }

 .results_list .results_content h3 a {
     font-size: 1.2rem;
     margin: 1.5rem 0 .6rem;
     color: #212529;
     font-family: 'Noto Serif TC', serif;
 }

 .results_list .results_content {
     border-bottom: 1px solid #ddd;
     padding: 1rem 0 .4rem;
 }

 .results_list .results_content p {
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     display: -webkit-box;
     -webkit-line-clamp: 3;
     -webkit-box-orient: vertical;
     white-space: normal;
 }

 .searchSet label {
     display: none;
 }

 @media(min-width:768px) {
     .results_list {
         margin-bottom: 30vh;
     }

     .searchbar.fixed {
         background: #f3f2f0;
         background: -moz-linear-gradient(top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: -webkit-linear-gradient(top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: linear-gradient(to bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
         position: fixed;
         z-index: 1;
         top: 50px;
         left: 0;
     }
 }

 @media(max-width:768px) {
     .searchSet .form-row div[class*='col-md-'] {
         margin-bottom: 10px;
     }

     .searchSet label {
         display: block;
     }
 }

 @media (min-width: 1200px) {
     .shortcut-wrap .container {
         max-width: 1240px;
     }
 }

 .iframe-rwd {
     position: relative;
     padding-bottom: 54%;
     padding-top: 25px;
     height: 0;
     margin-bottom: 20px;
 }

 .iframe-rwd iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
 }

 .shortcut-wrap {
     background: rgba(51, 51, 51, 0.9);
     height: 150px;
     position: fixed;
     width: calc(100% - 130px);
     bottom: 50px;
 }

 .shortcut-wrap img {
     margin-right: 25px;
 }

 .shortcut-wrap p {
     margin-bottom: 0;
     color: #fff;
 }

 @media (min-width: 960px) {
     .shortcut-wrap {
         width: calc(100% - 130px);
         bottom: 50px;
     }

     .shortcut-wrap .container {
         max-width: 80vw;
     }
 }

 @media(max-width:959px) {
     .shortcut-wrap {
         bottom: 65px;
         width: calc(100% - 20px);
         height: 150px;
     }

     .shortcut-wrap .row {
         margin: 0;
     }

     .shortcut-wrap p {
         width: 100%;
         line-height: 36px;
     }
 }

 @media(max-width:768px) {
     .shortcut-wrap img {
         display: none;
     }
 }

 .grid-wrap {
     position: relative;
     padding: 2rem 5rem;
     margin-bottom: 30vh;
 }

 .grid-wrap h2 {
     font-size: 1.7rem;
     border-bottom: 1px solid #c7c7c7;
     padding-bottom: 8px;
     margin: 40px 0;
     display: block;
     width: 100%;
 }

 .grid-wrap h3 {
     font-size: 1.2rem;
     padding: 15px 0;
 }

 @media(min-width:1280px) {
     .grid-wrap h3 {
         font-size: 1.5rem;
     }
 }

 .grid-wrap .img-cover {
     height: 0;
     padding-bottom: 67%;
     position: relative;
     text-align: center;
     overflow: hidden;
 }

 .grid-wrap .img-cover img,
 .grid-wrap .img-cover:hover img {
     position: absolute;
     top: 50%;
     left: 0;
     transform: translateY(-50%) !important;
     width: 100%;
     padding: 0;
     width: auto;
     height: 100%;
 }

 .grid-wrap .img-cover img::after {
     background: #424242;
 }

 .grid-wrap .container .row div[class*='col-'] {
     margin-bottom: 10px;
     height: 300px/;
 }

 .grid-wrap .row div[class*='col-'] h3 a {
     margin: 10px 0px 50px;
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
     color: #212529;
 }

 .grid-wrap .row div h3 a:hover {
     color: #d20031;
 }

 @media(max-width:768px) {
     .grid-wrap {
         padding: 0 1.5rem;
     }

     .grid-group .row {
         margin: 0;
     }
 }

 @media(max-width:500px) {

     .grid-wrap .img-cover img,
     .grid-wrap .img-cover:hover img {
         transform: translateY(-50.1%) !important;
     }
 }

 .post-featured-image img {
     width: 100%;
 }

 .post-featured-image .pc {
     display: none;
 }

 .post-featured-image .mb {
     display: block;
 }

 @media(min-width:768px) {
     .post-featured-image .pc {
         display: block;
     }

     .post-featured-image .mb {
         display: none;
     }
 }

 .parallax-image {
     padding-top: 50%;
     position: relative;
 }

 .parallax-image>img {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: auto;
 }

 @media(max-width:1440px) {
     .post-featured-image {
         padding-top: 55%;
     }
 }

 @media (max-width: 1366px) {
     .post-featured-image {
         padding-top: 56%;
     }
 }

 @media (max-width: 1280px) {
     .post-featured-image {
         padding-top: 57%;
     }
 }

 @media(width:1536px) {
     .post-featured-image {
         padding-top: 53.5%;
     }
 }

 @media (max-width: 1024px) {
     .post-featured-image {
         padding-top: 63%;
     }
 }

 .post-featured-image {
     padding-top: 50%;
 }

 @media (max-width: 960px) {
     .post-featured-image {
         padding-top: 65%;
     }
 }

 @media (max-width: 600px) {
     .post-featured-image {
         padding-top: 67%;
     }
 }

 @media (width: 800px) and (height:1280px) {
     .post-featured-image {
         padding-top: 36%;
     }
 }

 @media (width: 768px) and (height:1024px) {
     .post-featured-image {
         padding-top: 36%;
     }
 }

 @media (height: 1366px) {
     .post-featured-image {
         padding-top: 63%;
     }
 }

 .post-content {
     min-height: 1500px;
     margin-bottom: 20px;
 }

 .lightbox .post-content {
     min-height: initial;
 }

 .post-content .main-content {
     padding: 2rem 1.2rem;
 }

 @media(min-width:960px) {
     .post-content .main-content {
         width: 800px;
         margin: auto;
     }
 }

 @media(min-width:1280px) {
     .post-content .main-content {
         width: 90%;
         margin: 0 auto;
     }

     .store>h2 {
         width: 90%;
         margin: 2rem auto;
     }
 }

 @media (min-width: 1336px) {
     .post-content .main-content {
         max-width: 1280px;
         padding: 2rem 65px 3.5rem;
     }
 }

 .store .post-content .main-content {
     padding: 1rem 0;
 }

 @media(max-width:500px) {
     .store>h2 {
         margin-bottom: 0;
     }

     .store .post-content .main-content {
         padding: 0 1rem 2vh;
     }
 }

 .main-content.store {
     margin-bottom: 40px;
 }

 .main-content.store img {
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
 }

 .main-content.store .img-slider img {
     width: auto;
     max-height: 100%;
 }

 .post-content .main-content .row {
     margin: 0;
 }

 .post-content,
 .post-header-cont {
     background: #F1F0EE;
     position: relative;
 }

 .post-header-cont {
     box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.125);
 }

 .post-title {
     font-size: 2rem;
     letter-spacing: 1px;
     border-bottom: 1px solid #696969;
     padding-bottom: 7px;
 }

 .post-header-cont .post-title {
     border-bottom: none;
 }

 @media(max-width:800px) {
     .post-header-cont>.row {
         margin: 0;
     }

     .post-header-cont {
         padding: 15px 0;
     }
 }

 @media(max-width:414px) {
     .post-title {
         font-size: 1.5rem;
     }
 }

 @media(min-width:1336px) {
     .post-content .main-content {
         padding: 2rem 5rem 3.5rem;
         min-height: 100vh;
         height: inherit;
     }
 }

 .post-content .main-content .main-content {
     padding: 0;
     width: auto;
 }

 @media(min-width:960px) {
     .post-header-cont {
         margin-top: -240px;
         padding: 1.2rem 2rem;
     }
 }

 @media(max-width:1024px) {
     .post-header-cont>.row .col-md-10 {
         -ms-flex: 0 0 75%;
         flex: 0 0 75%;
         max-width: 75%;
     }

     .post-header-cont>.row .col-md-2 {
         -ms-flex: 0 0 25%;
         flex: 0 0 25%;
         max-width: 25%;
     }
 }

 @media(max-width:960px) {

     .post-header-cont>.row .col-md-2,
     .post-header-cont>.row .col-md-10 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     .post-header-cont>.row .col-md-2 {
         display: none !important;
     }
 }

 .post-wrapper .btn-back {
     border-radius: 0;
     margin: auto;
     width: 200px;
     display: block;
 }

 .post-wrapper .btn-back::before {
     content: "\f053";
     font-family: 'Font Awesome 5 Pro';
     margin-right: .5rem;
 }

 .post-header-cont .breadcrumb {
     background: transparent;
     padding: 0;
     margin-bottom: .6rem;
 }

 .post-header-cont .breadcrumb a {
     color: #333;
 }

 .post-action>a,
 .post-action .btn {
     color: #333;
     font-size: 1rem;
     font-weight: bolder;
     font-family: 'Noto Serif TC', serif;
     text-align: center;
     text-decoration: none;
     display: block;
     margin: auto;
     border: #333 solid 1px;
     padding: .5rem 0rem;
     border-radius: 0;
     width: 100%;
 }

 .post-action>a:hover,
 .post-action .btn:hover {
     background: #333;
     color: #fff;
     font-weight: normal;
     text-decoration: none;
 }

 .post-action>a+a,
 .post-action .dropdown {
     margin-top: 1rem;
 }

 .addevent .dropdown-menu {
     right: -25px;
     left: auto !important;
 }

 .post-action .addevent .dropdown-menu {
     right: -20px;
     left: auto !important;
     z-index: 3;
 }

 .post-header-cont .addevent .btn {
     letter-spacing: -1px;
     font-size: 0.95rem;
 }

 .post-action>a i,
 .post-action .btn i {
     margin-right: .5rem;
 }

 .post-action>a.btn-link:first-child {
     background: #D20031;
     color: #FFF;
     transition: all 0.5s ease-in-out;
     border: none;
     animation: Breathe 5s ease-out infinite normal;
 }

 @keyframes Breathe {
     0% {
         transform: scale(1);
     }

     25% {
         transform: scale(1.1);
     }

     60% {
         transform: scale(1);
     }

     100% {
         transform: scale(1);
     }
 }

 .post-action>a.btn-link:first-child:hover {
     background: #000;
     color: #FFF;
     transform: scale(1.05);
 }

 .post-header-cont .event-time {
     margin-left: -.8em;
 }

 .post-header-cont .event-time span {
     font-size: 1.2rem;
     border: none;
     position: relative;
     padding: 0 .8rem;
     display: inline-block;
 }

 @media(max-width:959px) {
     .post-header-cont {
         padding: 10px 0;
     }

     .post-header-cont .row {
         margin: 0;
     }

     .post-header-cont .post-action {
         display: flex;
     }

     .post-header-cont .post-action>a+a,
     .post-header-cont .post-action .dropdown {
         margin-top: 0;
         -ms-flex: 0 0 45%;
         flex: 0 0 45%;
         max-width: 45%;
     }

     .post-header-cont .post-action .dropdown {
         margin: auto;
     }
 }

 @media (max-width: 959px) {
     .post-header-cont .row {
         padding: 0 15px;
     }
 }

 @media(max-width:414px) {
     .post-header-cont .event-time {
         margin-left: 0;
     }

     .post-header-cont .event-time span {
         font-size: 1rem;
     }

     .post-header-cont .post-action>a i,
     .post-action .btn i {
         display: none;
     }
 }

 @media(max-width:320px) {
     .post-header-cont .event-time span {
         font-size: .9rem;
         padding: 0 .4rem;
     }
 }

 .post-header-cont .event-time span::after {
     content: '';
     height: 80%;
     position: absolute;
     width: 1px;
     background: #333;
     right: 0;
     top: 20%;
 }

 .post-header-cont .event-time span:last-of-type::after {
     display: none;
 }

 .post-header-cont .event-time span:last-of-type {
     padding-right: 0;
 }

 .meta-info>div {
     display: inline-block;
     float: left;
     font-size: 1rem;
 }

 .meta-info>div i {
     font-size: .9rem;
     margin-right: .3rem;
 }

 .meta-info>div+div {
     margin-left: 1rem;
 }

 .post-wrapper section.active {}

 .post-content .section-nav li {
     margin-bottom: 0;
 }

 @media(min-width:960px) {
     .post-wrapper .section-wrap {
         padding-bottom: 10rem;
     }

     .section-nav {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         text-align: center;
     }

     .section-nav .nav-item {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         text-align: center;
     }

     .section-nav .nav-top {
         opacity: 0;
         -ms-flex-positive: 0;
         flex-grow: 0;
     }
 }

 #programDetail section {
     width: 100%;
 }

 @media(min-width:768px) {
     #programDetail section:first-of-type {
         padding-top: 0;
     }

     #programDetail section {
         padding: 1.5rem 0 0;
     }
 }

 @media(max-width:768px) {
     #programDetail section {
         padding-top: 6rem;
         margin-top: -6rem;
     }

     #programDetail section:last-of-type(1 of :not(.d-none)) {
         min-height: 500px;
         padding-bottom: 20vh;
     }
 }

 .event-infolist-wrap {
     margin-top: 1.5rem;
     width: 85%;
     transition: all 0.5s ease-in-out;
 }

 .event-infolist-wrap:before {
     content: '';
     display: block;
     height: 100%;
     position: absolute;
     left: 0rem;
     border-right: #999 1px dotted;
 }

 .event-infolist-wrap.fixed:before {
     left: -1rem;
 }

 .event-infolist-wrap.fixed {
     width: 100%;
     position: fixed;
     top: 120px;
     -ms-flex: 0 0 20%;
     flex: 0 0 20%;
     max-width: 20%;
 }

 .event-infolist-wrap.fixed .event-info {
     overflow-y: auto;
     overflow-x: hidden;
     max-height: calc(100vh - 300px);
     margin-bottom: 1.5rem;
     position: relative;
     padding-right: 25px;
 }

 .event-infolist-wrap.fixed .event-info::-webkit-scrollbar {
     width: 3px;
 }

 .event-infolist-wrap.fixed .event-info::-webkit-scrollbar-track {
     background-color: #dbdbdb;
     border-right: 1px solid transparent;
 }

 .event-infolist-wrap.fixed .event-info::-webkit-scrollbar-thumb {
     background-color: #636363;
 }

 .event-infolist-wrap.fixed .event-info::-webkit-scrollbar-thumb:hover {
     background-color: #3d3d3d;
 }

 .event-info .swiper-container {
     width: 100%;
     height: 100%;
 }

 .event-info .swiper-slide {
     font-size: 18px;
     height: auto;
     -webkit-box-sizing: border-box;
     box-sizing: border-box;
     padding: 30px;
 }

 .event-infolist-wrap .info-title {
     font-family: 'Noto Serif TC', serif;
     font-size: 1rem;
     border-bottom: #444 solid 1px;
     padding: 0;
     font-weight: 900;
     margin-bottom: 10px;
     display: inline-block;
     width: 100%;
     display: block;
     border-bottom: 1px dotted #999;
 }

 .event-infolist-wrap .event-time>span {
     border: none;
     display: block;
 }

 .event-infolist-wrap .event-time>span:last-of-type {
     padding: 0;
 }

 .info-item {
     position: relative;
 }

 .info-item+.info-item {
     margin-top: 1rem;
 }

 .event-info .btn {
     color: #000;
     border-radius: 99rem;
     border: #999 solid 1px;
     background: #F1F0EE;
     display: table;
     font-weight: 400;
     font-size: 0.8rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     text-decoration: none;
     margin: 10px 0;
 }

 .event-info .btn:hover {
     background-color: #fafafa;
 }

 .event-info .btn i {
     margin-right: 0.6rem;
     font-size: 17px;
 }

 @media(min-width:1200px) {
     .event-info .btn {
         right: -1rem;
         top: 6px;
         margin: 0;
     }

     .info-cont+.addevent {
         position: absolute;
         z-index: 8;
         right: -1rem;
         top: 6px;
     }

     .info-cont+.btn {
         position: absolute;
         z-index: 1;
     }
 }

 .post-content .info-cont .event-time>span,
 .post-content .info-cont .event-time>span b,
 .post-content .info-cont>* {
     font-size: .9rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     font-weight: normal;
 }

 .post-content .info-cont .event-time>span+span {
     padding-left: 0;
 }

 .post-content .info-cont img {
     width: auto !important;
     height: auto !important;
     max-width: 100%;
 }

 .post-content .info-cont p {
     word-break: break-word;
 }

 .post-content .info-cont .hyphenate {
     width: 100%;
     -webkit-hyphens: auto;
     visibility: visible !important;
 }

 .event-info img {
     max-width: 100%;
 }

 @media (min-width: 960px) {
     .fancybox-eventartist .fancybox-slide {
         padding: 50px 65px 50px 0;
         ;
     }

     .fancybox-eventartist .fancybox-content {
         height: 100% !important;
     }

     .fancybox-eventartist .fancybox-toolbar {
         top: 50px;
     }
 }

 @media(max-width:768px) {
     .event-infolist-wrap {
         margin-top: 0;
     }

     .event-infolist-wrap .info-title {
         font-weight: bold;
         border-width: 2px;
         display: inline-block;
         margin-bottom: 10px;
     }
 }

 @media(max-width:414px) {
     .event-infolist-wrap {
         width: 100%;
     }
 }

 .artists-list {
     position: relative;
     z-index: 0;
     padding: 2rem 0;
 }

 .artists-list .card {
     background: transparent;
     border: none;
     border-radius: 0;
 }

 .artists-list .card-img-top {
     border-radius: 0;
     width: 250px;
     max-width: 100%;
     display: block;
     margin: auto;
 }

 .post-content .artists-list .card-body {
     padding: 0;
     text-align: center;
 }

 .artists-list .card .title,
 .artists-list .card a {
     font-family: 'Noto Serif TC', serif;
     text-align: center;
     margin: 1rem 0 .5rem;
     color: #000;
     outline: 0;
 }

 .artists-list .card-body p {
     width: 100%;
 }

 .artists-list div[class*='swiper-button-'] {
     width: 40px;
     height: 40px;
     padding: 0;
     line-height: 2.4rem;
 }

 .artists-list div[class*='swiper-button-']::before {
     font-size: 1.4rem;
 }

 @media(min-width:1500px) {
     .artists-list .swiper-button-prev {
         left: inherit;
         right: 60px;
     }
 }

 @media(min-width:768px) {
     .artists-list div[class*='swiper-button-'] {
         margin-top: -55px;
     }

     .artists-list .card-img-top {
         width: 200px;
     }
 }

 @media(max-width:500px) {
     .artists-list .row div[class*='col-'] {
         padding: 0 15px;
     }
 }

 .section-wrap section .title {
     margin-bottom: 1.5rem;
     margin-left: -.5rem;
     border: none;
 }

 @media(max-width:414px) {
     .section-wrap section+section {
         margin-top: 3rem;
     }
 }

 .post-content br {
     display: block;
     height: .2rem;
     content: '';
 }

 .post-content p {
     font-size: 1rem;
     font-weight: normal;
     letter-spacing: .3px;
     width: 100%;
 }

 .hyphenate {
     width: 100%;
     -webkit-hyphens: auto;
     visibility: visible !important;
 }

 .post-content p.tip {
     color: #d2145a;
     font-size: 1.2rem;
     font-family: 'Noto Serif TC', serif;
     border-left: #D2145A solid 3px;
     padding: 0 10px;
 }

 .post-content h3 {
     font-size: 1.2rem;
     font-weight: bold;
     margin: 1.5rem 0 .6rem;
 }

 .post-content h4 {
     font-size: 1.1rem;
     font-weight: bold;
     margin: 1.5rem 0 .6rem;
     color: #4B08A1;
 }

 .post-content img,
 .post-content iframe {
     max-width: 100%;
 }

 .post-content blockquote {
     padding: 2rem 3rem 1.5rem;
     margin: 2rem 0;
     background: #F8F7F6;
     box-shadow: 0.4rem 0.4rem 0px #E4E4E4;
 }

 .post-content blockquote,
 .post-content blockquote * {
     font-size: 1.2rem;
     font-family: 'Noto Serif TC', serif;
     font-weight: 500;
 }

 .post-content blockquote span {
     font-family: 'Noto Serif TC', serif;
     font-weight: 500;
     text-align: right;
     display: block;
     margin-top: 15px;
 }

 .post-content blockquote span::before {
     content: "\f86c";
     font-family: 'Font Awesome 5 Pro';
     margin: 0 .2rem;
 }

 .post-content ul.list-info {
     margin-bottom: 0;
 }

 .post-content ul.list-info li {
     padding: 1rem 0 .5rem;
     border-bottom: #777 dotted 1px;
 }

 .post-content .postcont-wrap ul.list-info li {
     border-bottom: #777 dotted 1px;
 }

 .post-content ul.list-info li p {
     font-family: 'Noto Serif TC', serif;
     margin: 0;
 }

 .post-content ul.list-info li p.title,
 .post-content ul.list-info li p.title a {
     font-size: 1.4rem;
     margin-bottom: 10px;
     color: #333;
     font-family: 'Noto Serif TC', serif;
     text-decoration: none;
     position: relative;
 }

 .post-content ul.list-info li p.title a:hover {
     color: #d20031;
 }

 .post-content ul.list-info li p.title a::after {
     content: "";
     position: absolute;
     z-index: -1;
     right: 0;
     width: 0;
     bottom: -5px;
     background: #d20031;
     height: 1px;
     transition-property: width;
     transition-duration: 0.3s;
     transition-timing-function: ease-out;
 }

 .post-content ul.list-info li p.title a:hover::after,
 .post-content ul.list-info li p.title a:focus::after,
 .post-content ul.list-info li p.title a:active::after {
     left: 0;
     right: auto;
     width: 100%;
 }

 .post-content ul.list-info li p.describe {
     font-size: 1.2rem;
 }

 .post-content ul.list-info li>a {
     color: #000;
     font-family: 'Noto Serif TC', serif;
     font-weight: 500;
     font-size: 1.1rem;
     margin-bottom: -7px;
     -webkit-transition: none;
     -moz-transition: none;
     -o-transition: none;
     transition: none;
     display: block;
     text-align: right;
     margin-top: 0;
 }

 .post-content ul.list-info li>a:hover {
     text-decoration: none;
 }

 .post-content ul.list-info li>a::after {
     content: "\f061";
     font-weight: 400;
     font-family: 'Font Awesome 5 Pro';
     margin-left: .5rem;
 }

 .post-content ul.list-info li>a:hover {
     margin-right: .3rem;
 }

 @media(min-width:960px) {
     .post-content ul.list-info li p {
         width: calc(100% - 100px);
     }

     .post-content ul.list-info li>a {
         float: right;
         display: block;
         margin-top: -26px;
     }
 }

 @media(max-width:600px) {
     .post-content blockquote {
         font-size: 1rem;
         padding: 10px 20px;
     }
 }

 .post-content iframe {
     max-width: 100%;
 }

 #programDetail .post-featured-image {
     overflow: hidden;
     padding-top: 50%;
     margin-top: 24px;
 }

 @media(max-width:1770px) {
     #programDetail .post-featured-image {
         padding-top: 51%;
     }
 }

 @media(max-width:1600px) {
     #programDetail .post-featured-image {
         padding-top: 53%;
     }
 }

 @media(max-width:1280px) {
     #programDetail .post-featured-image {
         padding-top: 57%;
     }
 }

 @media(max-width:1200px) {
     #programDetail .post-featured-image {
         padding-top: 59%;
     }
 }

 @media(max-width:1035px) {
     #programDetail .post-featured-image {
         padding-top: 63%;
     }
 }

 @media(max-width:960px) {
     #programDetail .post-featured-image {
         padding-top: 66%;
     }
 }

 @media(max-width:959px) {
     #programDetail .post-featured-image {
         margin-top: 0;
         padding-top: 36%;
     }
 }

 .postcont-wrap {
     background: #f1f0ee;
     z-index: 1;
     position: relative;
 }

 .postcont-wrap .row {
     margin: 0;
 }

 #programDetail .anchor-wrap .nav-item:first-of-type {
     display: none;
 }

 @media(max-width:1440px) {
     #programDetail .postcont-wrap>.row>.col-md-9 {
         -ms-flex: 0 0 66.666667%;
         flex: 0 0 66.666667%;
         max-width: 66.666667%;
     }

     #programDetail .postcont-wrap>.row>.col-md-3 {
         -ms-flex: 0 0 33.333333%;
         flex: 0 0 33.333333%;
         max-width: 33.333333%;
     }

     #programDetail .post-content .postcont-wrap .main-content {
         padding: 2rem 1rem 2rem 3rem;
     }

     .event-infolist-wrap.fixed {
         -ms-flex: 0 0 26%;
         flex: 0 0 26%;
         max-width: 26%;
     }
 }

 @media(max-width:1440px) {}

 @media(max-width:1024px) {
     #programDetail .post-header {
         max-height: inherit;
     }

     #programDetail .postcont-wrap>.row>.col-md-9 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     #programDetail .postcont-wrap>.row>.col-md-3 {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     #programDetail .post-content .postcont-wrap .main-content {
         padding: 2rem 1rem 15vh;
     }

     .event-infolist-wrap.fixed {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }

     .event-infolist-wrap {
         width: 100%;
     }

     #programDetail .section-wrap {
         padding-bottom: 0;
     }

     .event-infolist-wrap {
         padding: 2rem 1rem;
     }

     #programDetail .postcont-wrap .post-action.fixed {
         position: fixed;
         left: 65px;
         bottom: 50px;
         width: calc(100% - 130px);
         z-index: 1;
         background: #f3f2f0;
         background: -moz-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: -webkit-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: linear-gradient(to top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
         padding: 20px;
         display: flex;
     }

     #programDetail .postcont-wrap .post-action.fixed>a {
         width: 70%;
         margin: inherit;
     }

     .post-sharing.fixed {
         position: fixed;
         bottom: 65px;
         width: calc(26%);
         z-index: 2;
         right: 65px;
     }
 }

 @media (max-width: 959px) {
     #programDetail .postcont-wrap .post-action.fixed {
         left: 10px;
         width: calc(100% - 20px);
     }

     #programDetail .anchor-wrap .nav-item:first-of-type {
         display: block;
     }
 }

 @media(max-width:768px) {
     #programDetail .postcont-wrap .post-action.fixed {
         left: 10px;
         bottom: 65px;
         width: calc(100% - 20px);
     }

     .post-sharing.fixed {
         bottom: 80px;
         width: calc(26%);
         right: 20px;
     }
 }

 @media(max-width:768px) {
     .post-content .postcont-wrap .main-content {
         padding: 0;
     }
 }

 @media (max-width: 565px) {
     #programDetail .postcont-wrap .post-action.fixed>a {
         width: 45%;
     }

     .post-sharing.fixed {
         width: calc(50%);
     }
 }

 @media(max-width:414px) {
     .postcont-wrap .row div[class*='col-md-'] {
         padding: 10px;
     }

     .anchor-wrap+.postcont-wrap {
         margin-top: -4rem;
     }

     .anchor-wrap.fixed+.postcont-wrap {
         margin-top: 0;
     }

     .event-infolist-wrap {
         padding: 0rem 1rem;
     }
 }

 @media (max-width: 414px) {
     #programDetail .postcont-wrap .post-action.fixed>a {
         width: 55%;
     }

     .post-sharing.fixed {
         width: calc(40%);
     }
 }

 @media (max-width: 360px) {
     #programDetail .postcont-wrap .post-action.fixed>a {
         width: 50%;
     }

     .post-sharing.fixed {
         width: calc(45%);
     }
 }

 @media (max-width: 320px) {
     #programDetail .postcont-wrap .post-action.fixed>a {
         width: 45%;
     }

     .post-sharing.fixed {
         width: calc(50%);
     }
 }

 .post-content .postcont-wrap .main-content {
     padding: 2rem 3rem;
 }

 .post-content .postcont-wrap .main-content section>.title {
     font-size: 1.7rem;
     font-family: 'Noto Serif TC', serif;
     margin: 40px 0 15px -20px;
     display: block;
     width: 100%;
     border-left: #d20031 solid 8px;
     padding-left: 10px;
     padding-bottom: 0;
 }

 @media(min-width:768px) {
     .post-content .postcont-wrap .main-content {
         width: 80%;
         margin: auto;
     }
 }

 .newsimg-wrap {
     margin: 20px;
 }

 @media(min-width:768px) {
     .newsimg-wrap {
         margin-left: 40px;
         margin-top: 40px;
     }

     .newsimg-wrap.fixed {
         position: fixed;
         max-width: 35%;
         top: 50px;
     }
 }

 .post-content {
     min-height: auto;
 }

 .ticket img {
     margin-bottom: 20px;
 }

 .ticket .btn.btn-link.apply {
     margin: 5px;
     width: 45%;
     display: inline-block;
     padding: 5px 0;
 }

 .post-content .p-red {
     color: #D85656;
 }

 .post-content .p-green {
     color: #3CCB99;
 }

 .post-content .p-blue {
     color: #009BBB;
 }

 .post-content .marker {
     background-color: yellow;
 }

 .post-content .p-bold {
     font-weight: bold;
 }

 .post-content .right {
     float: right;
     margin-bottom: 0;
     margin-top: 10px;
 }

 .post-content .left {
     float: left;
     margin-bottom: 0;
     margin-top: 10px;
 }

 .post-content h2 {
     font-size: 1.7rem;
     border-bottom: 1px solid #c7c7c7;
     padding-bottom: 8px;
     margin: 40px 0 8px 0;
     display: block;
     width: 100%;
 }

 .post-content h2:first-child {
     margin: 10px 0 8px 0;
 }

 .post-content h2.border0 {
     border-bottom: 0px solid #c7c7c7;
 }

 .post-content .p-red {
     color: #D85656;
 }

 .post-content .marker {
     background: yellow;
 }

 .post-content ul li,
 .post-content ol li {
     margin-bottom: 15px;
 }

 .post-content ol:not([class]) li,
 .content ol:not([class]) li {
     list-style: decimal;
     font-size: 1rem;
 }

 .post-content ul:not([class]),
 .content ul:not([class]) {
     padding-inline-start: 43px;
 }

 .post-content ul:not([class]) li,
 .content ul:not([class]) li {
     list-style: disc;
     margin-left: 0;
     font-size: 1rem;
     letter-spacing: .3px;
 }

 .post-content ul>li ul>li {
     margin-bottom: 0;
 }

 .post-content ul.disc li,
 .post-content ul.discDate li,
 .post-content ul.num li {
     list-style: disc;
     margin-left: 25px;
     font-size: 1rem;
     letter-spacing: .3px;
 }

 .post-content ul.qna {
     padding-top: 13px;
     position: relative;
     margin-bottom: 10px;
 }

 .post-content ul.qna+ul.qna {
     border-top: 1px solid rgba(0, 0, 0, .1);
 }

 .post-content ul.qna li {
     font-size: 1rem;
     margin-left: 28px;
     position: relative;
 }

 .post-content ul.qna li:before {
     content: 'A';
     background: #212529;
     border-radius: 50%;
     color: #fff;
     padding: 1px 6px;
     margin-right: 10px;
     font-size: .7rem;
     position: absolute;
     left: -26px;
     top: 2px;
 }

 .post-content ul.qna>li:first-child {
     color: #D85656;
 }

 .post-content ul.qna li:first-child::before {
     content: 'Q';
     background: #D85656;
 }

 .post-content ul.qna li>ul li:before {
     display: none;
 }

 .post-content ul.qna li>ul li {
     color: #212529;
 }

 .post-content ul.cjk li {
     list-style: trad-chinese-informal;
     margin-left: 40px;
     font-size: 1rem;
 }

 .post-content ul.num li {
     list-style: decimal;
     font-size: 1rem;
 }

 .post-content ul>li>ul.disc li {
     list-style: disc;
     margin-left: 25px;
     font-size: 1rem;
     letter-spacing: .3px;
 }

 .post-content ul.discDate li .date {
     display: inline;
     font-size: .9rem;
 }

 .post-content ul.discDate li .cont,
 .post-content ul.discDate li .cont p {
     display: inline;
 }

 .post-content ul.connect li {
     position: relative;
     display: flex;
 }

 .post-content ul.connect li .title {
     padding-left: 19px;
     padding-right: 20px;
     font-weight: bolder;
     flex: 1;
 }

 .post-content ul.connect li:before {
     content: '';
     position: absolute;
     width: 7px;
     height: 7px;
     border-radius: 10px;
     background: #b7b7b7;
     top: 10px;
 }

 .post-content ul.connect li:after {
     content: '';
     position: absolute;
     width: 1px;
     height: 100%;
     border-radius: 10px;
     background: #b7b7b7;
     top: 10px;
     left: 3px;
 }

 .post-content ul.connect li:last-child:after {
     content: '';
     position: unset;
 }

 .post-content ul.connect li .cont {
     font-size: 1rem;
     padding-left: 0px;
     flex: 9;
 }

 .post-content ul.step {
     display: flex;
 }

 .post-content ul.step li {
     list-style: none;
     background: #EAEAEA;
     display: inline-block;
     padding: 10px 20px;
     margin-right: 35px;
     flex: auto;
     text-align: center;
     border-radius: 5px;
     position: relative;
 }

 .post-content ul.step li:after {
     content: '';
     position: absolute;
     right: -25px;
     top: 9px;
     width: 0;
     height: 0;
     border-style: solid;
     border-width: 13px 0 13px 13px;
     border-color: transparent transparent transparent #EAEAEA;
 }

 .post-content ul.step li:last-child {
     margin-right: 0px;
 }

 .post-content ul.step li:last-child:after {
     border-width: 0;
 }

 .post-content ul.discDate li>div {
     display: inline-block;
     margin-left: 5px;
 }

 .post-content ul.thumb {
     font-size: 1rem;
 }

 .post-content ul.thumb li {
     position: relative;
     line-height: 50px;
     margin: 0 0 10px;
     display: block;
     min-height: 50px;
 }

 .post-content ul.thumb img {
     width: 50px;
     position: absolute;
     left: 0;
 }

 .post-content ul.thumb .cont {
     display: inline-block;
     padding-left: 65px;
 }

 .post-content ul.info>li:first-child {
     list-style: none;
 }

 .post-content ul.info .title {
     width: 15%;
     display: inline-block;
     position: relative;
     vertical-align: top;
 }

 .post-content ul.info .title:after {
     content: '';
     position: absolute;
     background: #7d7d7d;
     right: 17px;
     top: 3px;
     height: 20px;
     width: 4px;
 }

 .post-content ul.info .cont {
     width: 80%;
     display: inline-block;
     font-size: 1rem;
     margin-bottom: 10px;
 }

 .post-content .benefitList.notic li {
     font-family: 'Noto Serif TC', serif;
     color: #212529;
     font-size: 1.2rem;
 }

 .post-content .benefitList.notic {
     margin: 20px 0;
 }

 .post-content .benefitList.notic li::before {
     color: #3CCB99;
 }

 .post-content .downloadList {
     overflow: auto;
 }

 .post-content .downloadList li {
     display: block;
     margin-bottom: 10px;
 }

 .post-content .downloadList li a {
     color: #3D3D3D;
     font-size: 1rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
     text-decoration: none;
     display: block;
     border-radius: 7px;
     background: #EAEAEA;
     padding: .5rem 3rem .5rem 1rem;
     position: relative;
 }

 @media (min-width: 768px) {
     .post-content .downloadList li {
         width: 50%;
         float: left;
     }

     .post-content .downloadList li:nth-of-type(odd) a {
         margin-right: .5rem;
     }
 }

 @media(max-width:960px) {
     .post-content ul.info>li {
         display: block;
         margin: 0;
         margin-bottom: 27px;
     }

     .post-content ul.info .title {
         width: auto;
         display: block;
         position: relative;
         vertical-align: top;
     }

     .post-content ul.info .cont {
         width: auto;
         display: block;
         font-size: 1rem;
     }

     .post-content ul.info .title:after {
         content: '';
         position: absolute;
         background: #7d7d7d;
         left: 0;
         top: 31px;
         height: 4px;
         width: 47px;
     }
 }

 .post-content .emphasis {
     background: #f7f7f7;
     padding: 20px 40px;
     margin-bottom: 25px;
 }

 .post-content .emphasis p,
 .post-content .emphasis a {
     font-family: 'Noto Serif TC', serif;
     font-size: 1.2rem;
 }

 .post-content .callout {
     background: #EAEAEA;
     padding: 20px 30px 10px;
     border-radius: 15px;
     border: 1px solid #bababa;
     margin-top: 18px;
 }

 .post-content img {
     max-width: 100%;
     display: block;
 }

 .post-content .btn.link {
     background: #eaeaea;
     padding: 10px 20px;
     margin-top: 10px;
     position: relative;
     display: block;
     text-align: left;
     color: #000;
 }

 .post-content .btn.link:hover {
     background: #e1e1e1;
 }

 .post-content .link a {
     color: #212529;
     margin-bottom: 0;
     display: block;
     text-decoration: none;
 }

 .post-content .link:after {
     font-family: 'Font Awesome 5 Pro';
     content: "\f054";
     position: absolute;
     top: 9px;
     right: 19px;
     color: #717171;
 }

 .post-wrapper .tag {
     background: #E2E0E0;
     padding: 5px 15px;
     font-size: .8rem;
     border-radius: 5px;
     vertical-align: middle;
     margin: 5px 0;
     display: inline-block;
 }

 .table.ex-table thead th {
     border-bottom: 1px solid #babec2;
 }

 .table.ex-table td,
 .table.ex-table th {
     border-top: 1px solid #babec2;
     border-bottom: 1px solid #babec2;
     text-align: center;
     vertical-align: middle;
     font-size: 1rem;
 }

 .table.ex-table.text-left td,
 .table.ex-table.text-left th {
     text-align: left;
 }

 @media(max-width:991.08px) {
     .table.ex-table td {
         display: flex;
     }

     .table.ex-table td,
     .table.ex-table th {
         border-top: 1px solid #babec2;
         border-bottom: 0px solid #babec2;
         text-align: left;
         vertical-align: unset;
         font-size: 1rem;
     }

     .table-rwd td:before {
         content: attr(data-th) " ";
         display: inline-block;
         padding-bottom: 0rem;
         width: 100px;
     }

     .table-rwd.exceed td:before {
         content: attr(data-th) " ";
         display: block;
         padding-bottom: 0rem;
         width: 100%;
     }

     .table-rwd.exceed td {
         display: block;
     }

     .table-rwd tr td:first-child {
         background: #EAEAEA;
     }
 }

 .post-content .Activity {
     background: #EAEAEA;
     padding: 20px 30px 54px 30px;
     margin-top: 15px;
     overflow: auto;
 }

 .post-content .Activity.row {
     padding: 20px 30px;
 }

 .post-content .ac-date {
     margin-bottom: 1px;
     color: #515151;
     font-family: 'Noto Serif TC', serif;
 }

 .post-content .Activity .ac-title,
 .post-content .cube .ac-title {
     font-family: 'Noto Serif TC', serif;
     font-size: 1.3rem;
     margin-bottom: 10px;
     display: block;
 }

 .post-content .Activity .btn.apply,
 .post-content .Activity .btn.more {
     display: block;
     float: right;
     margin: 0 4px;
     position: relative;
     top: auto;
 }

 .post-content .Activity .ultitle {
     margin-bottom: 9px;
     border-bottom: 3px solid #6c6c6c;
     display: inline-block;
     font-weight: 800;
 }

 .post-content .Activity .btnarea.single-r {
     text-align: center;
     display: block;
 }

 @media (max-width:770px) {

     .post-content .Activity .btn.apply,
     .post-content .Activity .btn.more {
         display: block;
         margin: 8px 4px;
         width: 100%;
         text-align: center;
     }
 }

 .post-content .Activity .btnarea .btn.btn-link {
     display: inline-block;
     padding: 6px 29px;
     margin: 0 5px;
     float: none;
     width: auto;
     flex: 6;
 }

 .post-content .Activity.sec {
     padding: 20px 30px;
 }

 @media (max-width: 1427px) {
     .post-content .Activity.sec .btnarea .btn.btn-link {
         padding: 6px 29px;
         margin: 7px 5px;
         width: 100%;
         display: block;
     }
 }

 .post-content .card.Activity {
     background: #EAEAEA;
     padding: 0;
     margin-top: 0;
 }

 .post-content .card.Activity .card-body {
     padding: 20px 30px 22px;
 }

 .post-content .Activity .btnarea {
     text-align: center;
     display: flex;
 }

 .post-content .Activity .btnarea .btn.btn-link {
     display: inline-block;
     padding: 6px 0px;
     margin: 0 5px;
     width: 46%;
     float: none;
     text-align: center;
 }

 .post-content .Activity .btnarea.single-r .btn.btn-link {
     display: inline-block;
     padding: 6px 34px;
     margin: 7px 5px;
     width: 100%;
     float: none;
     text-align: center;
 }

 @media (max-width: 1300px) {
     .post-content .card.Activity.third .btnarea .btn.btn-link {
         display: block;
         padding: 6px 34px;
         margin: 11px 5px;
         width: 100%;
         float: none;
     }

     .post-content .Activity .btnarea {
         display: block
     }
 }

 @media (max-width:1100px) {
     .post-content .Activity .btnarea .btn.btn-link {
         display: block;
         padding: 6px 34px;
         margin: 11px 5px;
         width: 100%;
         float: none;
     }
 }

 .post-content .card.Activity.third .card-body ul.connect li {
     position: relative;
     display: block;
 }

 .post-content .card.Activity.third .card-body ul.connect li .title {
     padding-left: 19px;
     padding-right: 20px;
     font-weight: bolder;
     flex: none;
     display: block;
     margin-bottom: 0;
 }

 .post-content .card.Activity.third .card-body ul.connect li .cont {
     flex: none;
     display: block;
     padding-left: 19px;
     padding-right: 20px;
 }

 .post-content .cube {
     border: 1px solid #c7c7c7;
     padding: 10px 25px 0px 25px;
     position: relative;
     margin-bottom: 20px;
 }

 .post-content .cube:after {
     content: '';
     position: absolute;
     left: 0;
     top: 16px;
     width: 7px;
     height: 24px;
     background: #c7c7c7;
 }

 .post-content .cube .ac-title {
     letter-spacing: 5px;
 }

 .post-content .saying {
     border-bottom: 1px solid #c7c7c7;
     border-top: 1px solid #c7c7c7;
     padding: 35px 0px;
     margin: 30px 50px -20px;
     position: relative;
 }

 .post-content .saying::before {
     content: '“';
     font-family: 'EB Garamond';
     font-size: 5.5rem;
     position: absolute;
     left: -45px;
     top: -45px;
     width: 50px;
 }

 .post-content .saying::after {
     content: " ” ";
     font-family: 'EB Garamond';
     font-size: 5.5rem;
     position: absolute;
     right: -60px;
     bottom: -96px;
     width: 50px;
 }

 .post-content .saying p {
     font-family: 'Noto Serif TC', serif;
     font-size: 1.2rem;
     width: auto;
 }

 .post-content .saying .writer {
     font-family: 'Noto Serif TC', serif;
     font-size: 1rem;
     position: absolute;
     bottom: 35px;
     right: 21px;
 }

 .post-content .saying .sayingfooter {
     width: 70%;
     height: 30px;
     display: block;
     margin-top: 35px;
 }

 .post-content .saying .sayingfooter>.writer {
     display: block;
     background: #f1f0ed;
     padding-left: 18px;
 }

 @media(max-width:767px) {
     .post-content .saying {
         margin: 15px 35px;
     }

     .post-content .saying::before {
         left: -94px;
         top: -46px;
         width: 50px;
         height: 50px
     }

     .post-content .saying::after {
         right: -54px;
         bottom: 0;
         width: 50px;
         height: 50px;
     }

     .post-content .saying p {
         font-size: 1rem;
     }
 }

 .post-content .significance {
     background: #EAEAEA;
     padding: 70px 50px 30px 50px;
     margin: 50px 0;
     position: relative;
 }

 .post-content .significance h3 {
     position: absolute;
     left: 31px;
     top: -44px;
     font-size: 1.7rem;
     letter-spacing: 8px;
     line-height: 36px;
 }

 .post-content .blockquote-footer {
     text-align: right;
     color: #212529;
     font-size: .9rem;
 }

 .post-content .blockquote-footer .Source {
     display: inline-block;
 }

 .post-content .card {
     background-color: rgba(255, 255, 255, 0);
     border: 0;
     margin-bottom: 25px;
 }

 .post-content .card-body {
     padding: 0;
 }

 .post-content .TracePoint {
     text-align: center;
     margin: 15px auto;
     line-height: 0;
 }

 @media(max-width:959px) {
     .post-content .TracePoint {
         margin: 0 auto 15px;
     }
 }

 .post-content .node {
     border: 1px solid #babec2;
     padding: 4px 20px;
     border-radius: 50px;
     color: #212529;
     display: inline-block;
     font-size: .9rem;
     line-height: 20px;
 }

 .post-content .node+.node {
     margin-left: 10px;
 }

 .post-content a.node:hover {
     color: #333333;
     background: #d9dbde;
     text-decoration: none;
     display: inline-block;
 }

 .post-content .node i {
     padding-right: 4px;
     font-size: 1rem;
 }

 .target-fix {
     position: relative;
     top: -160px;
     display: block;
     height: 0;
     overflow: hidden;
 }

 .post-content .sliderContent {
     border-top: 1px solid #c7c7c7;
     padding: 15px 0 26px;
 }

 .post-content .sliderContent:last-child {
     border-bottom: 1px solid #c7c7c7;
 }

 .post-content .sliderContent .swiper-button-prev,
 .post-content .sliderContent .swiper-button-next {
     width: 40px;
     height: 48px;
     padding: 0rem 1.6rem 0rem 1.2rem;
     line-height: 3.1rem;
 }

 .post-content .sliderContent div[class*='swiper-button-']::before {
     font-size: 1.5rem;
 }

 .post-content .sliderContent .img-slider .swiper-container {
     height: auto;
     margin: 20px auto 0px auto;
 }

 .c-title {
     font-family: 'Noto Serif TC', serif;
     font-size: 1.3rem;
     margin-bottom: 10px;
     display: block;
 }

 .bannerword {
     position: relative;
 }

 .bannerword .images {
     max-height: 399px;
     overflow: hidden;
     z-index: 2;
     margin-bottom: 60px;
 }

 .bannerword .images img {
     width: 100%;
 }

 .bannerword .container {
     position: absolute;
     right: 50px;
     top: 105px;
     width: 47%;
     background: #fff;
     z-index: 1;
     padding: 15px 41px;
     border-left: 8px solid #4d4d4d;
 }

 @media (max-width: 1300px) {
     .bannerword .container {
         position: absolute;
         width: 60%;
     }
 }

 @media (max-width: 820px) {
     .bannerword .container {
         position: absolute;
         width: 87%;
     }
 }

 @media (max-width: 500px) {
     .bannerword .images {
         margin-bottom: 0;
     }

     .bannerword .container {
         position: unset;
         width: 100%;
         background: #fff;
         z-index: 1;
         padding: 15px 41px;
         border-left: 8px solid #4d4d4d;
         margin-bottom: 20px;
     }
 }

 .post-content .single {
     border-top: #C7C7C7 solid 1px;
     border-bottom: #C7C7C7 solid 1px;
     padding: 20px 0;
 }

 .post-content .single+.single {
     border-top: none;
 }

 .post-content .single h3 {
     font-size: 1.5rem;
     margin: 20px 0;
     border-bottom: #444 solid 1px;
     display: inline-block;
 }

 .post-content .single .picList a {
     display: block;
     border-radius: 0;
 }

 .post-content .single .picList h3 {
     font-size: 1.2rem;
     display: inline;
 }

 .post-content .single .picList h3 a {
     padding: 10px 0;
     color: #000;
     font-family: 'Noto Serif TC', serif;
 }

 .post-content .picList {
     padding-top: 15px;
 }

 .post-content .picList .card-img-top {
     border-radius: 0;
 }

 .post-content .picList.col2 .card {
     float: left;
     width: 50%;
     padding: 0 10px;
 }

 @media(max-width:414px) {
     .post-content .picList.col2 .card {
         width: 100%;
         float: none;
     }
 }

 .post-content .link-group .btn {
     border-radius: 0;
     margin-bottom: 10px;
 }

 .post-content .modal-content {
     overflow: auto;
     max-height: 700px;
 }

 .post-content .modal-content .modal-body p {
     margin-bottom: 0;
 }

 @media (min-width: 576px) {
     .modal-dialog {
         max-width: 800px;
     }
 }

 .post-content h3.nttonline {
     color: #fff;
     font-size: 1.6rem;
     font-family: 'Noto Serif TC', serif;
     display: block;
     width: 100%;
     border-left: #d20031 solid 8px;
     padding: 0px 0 30px 10px;
     padding-bottom: 0;
     background-color: #222;
     line-height: 50px;
     margin-bottom: 0;
 }

 @media(max-width:768px) {
     .post-content h3.nttonline {
         font-size: 1.2rem;
         line-height: 30px;
     }
 }

 .related.img ul {
     overflow: auto;
     padding: 0 30px;
     margin: 0 -30px;
 }

 .related.img ul li {
     float: left;
     padding: 0 5px 25px;
     list-style: none;
 }

 .related.img ul li:first-of-type {
     padding-left: 0;
 }

 .related.img ul li:last-of-type {
     padding-right: 0;
 }

 .related.img .img-link {
     height: 200px;
     width: 200px;
     display: block;
     border: #dfdfdf solid 1px;
     border-radius: 2px;
     margin-bottom: 10px;
     background: #fff;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 .related.img .img-link:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .related.img .img-link img {
     max-width: 100%;
     max-height: 100%;
     width: auto;
     margin: auto;
     display: block;
     position: relative;
     top: 50%;
     left: 0/10;
     transform: translateY(-50%);
 }

 @media(max-width:500px) {
     .related.img .img-link img {
         transform: translateY(-50.1%) !important;
     }
 }

 .related {
     clear: both;
 }

 .related .title {
     font-size: 1.2rem;
     font-family: 'Noto Serif TC', serif;
     margin: .8rem 0 .4rem;
     padding: 5px;
 }

 .related .title span {
     border-left: #444 solid 1px;
     margin-left: 1rem;
     padding-left: 1rem;
 }

 .post-content .downloadList {
     overflow: auto;
 }

 .post-content .downloadList li {
     display: block;
     margin-bottom: 10px;
 }

 .post-content .downloadList li a {
     color: #3D3D3D;
     font-size: 1rem;
     font-family: 'Noto Serif TC', serif;
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
     text-decoration: none;
     display: block;
     border-radius: 7px;
     background: #EAEAEA;
     padding: .5rem 3rem .5rem 1rem;
     position: relative;
 }

 .post-content .downloadList li a::after {
     content: "\f019";
     color: #989898;
     font-weight: 900;
     font-family: 'Font Awesome 5 Pro';
     position: absolute;
     right: 1rem;
 }

 .post-content .downloadList li a:hover {
     background: #d4d4d4;
 }

 .post-content .downloadList li a:hover::after {
     color: #333;
 }

 @media(min-width:768px) {
     .post-content .downloadList li {
         width: 50%;
         float: left;
     }

     .post-content .downloadList li:nth-of-type(even) a {
         margin-left: .5rem;
     }

     .post-content .downloadList li:nth-of-type(odd) a {
         margin-right: .5rem;
     }
 }

 .floor-circle {
     color: #fff;
     border-radius: 50%;
     font-size: 0.5rem;
     position: relative;
     z-index: 0;
     text-align: center;
     width: 24px;
     display: inline-block;
 }

 .floor-circle+.floor-circle {
     margin: 0px 4px;
 }

 .floor-circle::after {
     content: "";
     position: absolute;
     left: 0px;
     top: -2px;
     width: 24px;
     height: 23px;
     background: #898989;
     border-radius: 50%;
     z-index: -1;
 }

 .list-collapse .card-body {
     padding-left: 40px;
 }

 .list-collapse .collapsebtn {
     position: relative;
     color: #212529;
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
     outline: 0;
 }

 .list-collapse .collapsebtn:hover {
     text-decoration: none;
 }

 .list-collapse .collapsebtn:before {
     font-family: "Font Awesome 5 pro";
     color: #b8b8b8;
     padding-right: 12px;
 }

 .list-collapse .collapsebtn[aria-expanded="false"]:before {
     content: '\f067';
 }

 .list-collapse .collapsebtn[aria-expanded="true"]:before {
     content: '\f068';
 }

 .list-collapse .collapse.show .card-body {
     position: relative;
 }

 .list-collapse .collapse.show .card-body::before {
     content: " ";
     position: absolute;
     background: #b8b8b8;
     height: 100%;
     width: 2px;
     left: 20px;
     top: 0px;
 }

 .list-collapse:last-child .collapse.show .card-body::before {
     content: " ";
     position: absolute;
     background: #b8b8b8;
     height: 100%;
     width: 0px;
     left: 0px;
     top: 0px;
 }

 @media(min-width:960px) {
     .tender .list-collapse .table {
         table-layout: fixed;
     }
 }

 .btn.icon::before {
     font-family: "Font Awesome 5 pro";
     content: '';
     margin-right: .5rem;
 }

 .icon.btn-web::before {
     content: '\f0c1';
 }

 .icon.btn-dm::before {
     content: '\f279';
     font-weight: 900;
 }

 .icon.btn-book::before {
     content: '\f499';
     font-weight: 900;
 }

 .btn.btn-link.apply {
     background: #212529;
     border-radius: 0;
     padding: 6px 45px;
     color: #fff;
     margin: 0 2px;
 }

 .btn.btn-link.apply:hover {
     background: #383d43;
     text-decoration: none;
 }

 .btn.btn-link.open {
     background: #EAEAEA;
     border-radius: 0;
     padding: 6px 45px;
     color: #212529;
     margin: 0 2px;
 }

 .btn.btn-link.open:hover {
     background: #cdcdcd;
     text-decoration: none;
 }

 .btn.btn-link.more {
     border: 1px solid #212529;
     color: #212529;
     border-radius: 0;
     padding: 6px 45px;
     margin: 0 2px;
 }

 .post-content .row>div {
     margin-bottom: 15px;
 }

 .illustrate img {
     margin: 0 auto;
 }

 .illustrate {
     text-align: center;
     font-size: 1rem;
     font-weight: normal;
     letter-spacing: .3px;
 }

 .illustrate span {
     position: relative;
 }

 .illustrate span:before {
     font-family: "Font Awesome 5 pro";
     font-weight: 900;
     content: "\f0de";
     position: absolute;
     top: 3px;
     left: -15px;
 }

 .TARGET main,
 .BUILDING1 main {
     padding-bottom: 0;
 }

 .TARGET .visual-wrap,
 .BUILDING1 .visual-wrap {
     margin-top: 0;
 }

 .TARGET .post-content .main-content,
 .BUILDING1 .post-content .main-content {
     padding: 0;
     background: #1d1e22;
     width: 100%;
     max-width: 100%;
 }

 .visual-wrap {
     animation: fadein 3s;
     -moz-animation: fadein 3s;
     -webkit-animation: fadein 3s;
     -o-animation: fadein 3s;
     -webkit-animation: fadein 3s;
 }

 @keyframes fadein {
     from {
         opacity: 0;
     }

     to {
         opacity: 1;
     }
 }

 @-moz-keyframes fadein {
     from {
         opacity: 0;
     }

     to {
         opacity: 1;
     }
 }

 @-webkit-keyframes fadein {
     from {
         opacity: 0;
     }

     to {
         opacity: 1;
     }
 }

 @-o-keyframes fadein {
     from {
         opacity: 0;
     }

     to {
         opacity: 1;
     }
 }

 .visual-wrap .content {
     height: 100%;
     overflow-x: hidden;
     overflow-y: auto;
     -webkit-clip-path: border-box;
     clip-path: border-box;
     -webkit-transform: translateZ(0);
     transform: translateZ(0);
 }

 .visual-wrap .block {
     position: relative;
     height: 100vh;
 }

 .visual-wrap .block.h-md {
     height: 80vh;
 }

 .visual-wrap .block.h-lg {
     height: 140vh;
 }

 .visual-wrap [class*='item-parallax'] {
     position: absolute;
     width: 100%;
     height: 100%;
     transition: -webkit-transform 0.3s ease-out;
     transition: transform 0.3s ease-out;
     transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
     will-change: transform;
 }

 .visual-wrap .item-parallax-media {
     z-index: 1;
 }

 .visual-wrap .item-parallax-media img {
     will-change: transform;
 }

 .visual-wrap .item-parallax-content {
     z-index: 2;
 }

 .visual-wrap .block:nth-child(1) .item-parallax-content {
     -webkit-transform: translateY(calc(var(--yBlock-1) * 0.5px));
     transform: translateY(calc(var(--yBlock-1) * 0.5px));
 }

 .visual-wrap .block:nth-child(1) .item-parallax-media img {
     -webkit-transform: translateY(calc(var(--yBlock-1) * 0.1px));
     transform: translateY(calc(var(--yBlock-1) * 0.1px));
 }

 .visual-wrap .block:nth-child(2) .item-parallax-content {
     -webkit-transform: translateY(calc(var(--yBlock-2) * 0.5px));
     transform: translateY(calc(var(--yBlock-2) * 0.5px));
 }

 .visual-wrap .block:nth-child(2) .item-parallax-media img {
     -webkit-transform: translateY(calc(var(--yBlock-2) * 0.1px));
     transform: translateY(calc(var(--yBlock-2) * 0.1px));
 }

 .visual-wrap .block:nth-child(3) .item-parallax-content {
     -webkit-transform: translateY(calc(var(--yBlock-3) * 0.5px));
     transform: translateY(calc(var(--yBlock-3) * 0.5px));
 }

 .visual-wrap .block:nth-child(3) .item-parallax-media img {
     -webkit-transform: translateY(calc(var(--yBlock-3) * 0.1px));
     transform: translateY(calc(var(--yBlock-3) * 0.1px));
 }

 .visual-wrap .block:nth-child(4) .item-parallax-content {
     -webkit-transform: translateY(calc(var(--yBlock-4) * 0.5px));
     transform: translateY(calc(var(--yBlock-4) * 0.5px));
 }

 .visual-wrap .block:nth-child(4) .item-parallax-media img {
     -webkit-transform: translateY(calc(var(--yBlock-4) * 0.1px));
     transform: translateY(calc(var(--yBlock-4) * 0.1px));
 }

 .visual-wrap .block:nth-child(5) .item-parallax-content {
     -webkit-transform: translateY(calc(var(--yBlock-5) * 0.1px));
     transform: translateY(calc(var(--yBlock-5) * 0.1px));
 }

 .visual-wrap .block:nth-child(5) .item-parallax-media img {
     -webkit-transform: translateY(calc(var(--yBlock-5) * 0.1px));
     transform: translateY(calc(var(--yBlock-5) * 0.1px));
 }

 .visual-wrap .block:nth-child(6) .item-parallax-content {
     -webkit-transform: translateY(calc(var(--yBlock-6) * 0.5px));
     transform: translateY(calc(var(--yBlock-6) * 0.5px));
 }

 .visual-wrap .block:nth-child(6) .item-parallax-media img {
     -webkit-transform: translateY(calc(var(--yBlock-6) * 0.1px));
     transform: translateY(calc(var(--yBlock-6) * 0.1px));
 }

 .visual-wrap {
     height: calc(100vh - 100px);
     margin-top: 25px;
     background-color: #00171f;
 }

 .visual-wrap .flex-container {
     display: flex;
 }

 .visual-wrap .centered-content {
     margin: auto;
 }

 .visual-wrap .head-large {
     margin-bottom: 5vw;
     font-size: 7vw;
     line-height: 1.2em;
     font-family: 'Inknut Antiqua', serif;
     color: white;
 }

 .visual-wrap .head-small {
     margin-bottom: 1.5rem;
     font-size: 1.2rem;
     line-height: 1.2em;
     font-family: 'Roboto Condensed', sans-serif;
     color: white;
     text-transform: uppercase;
     letter-spacing: 0.5em;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
 }

 .visual-wrap .head-small {
     font-size: 1.7rem;
     border-bottom: 1px solid #c7c7c7;
     padding-bottom: 8px;
     margin: 40px 0 8px 0;
     display: block;
     width: 100%;
 }

 .visual-wrap .head-centered {
     text-align: center;
 }

 .visual-wrap .copy {
     display: block;
     max-width: 500px;
     margin-right: auto;
     margin-bottom: 1.5rem;
     margin-left: auto;
     padding-right: 1.5rem;
     padding-left: 1.5rem;
     font-family: 'Roboto', sans-serif;
     font-size: 1rem;
     line-height: 1.8em;
     text-align: center;
 }

 .visual-wrap .copy-white {
     color: white;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
 }

 .visual-wrap .item-parallax-media {
     overflow: hidden;
 }

 .visual-wrap .item-parallax-media img {
     position: absolute;
     top: -20px;
     left: 0;
     width: 100%;
     height: 100%;
     -o-object-fit: cover;
     object-fit: cover;
 }

 .visual-wrap .section-landing:before {
     content: '';
     position: absolute;
     top: 50%;
     left: 24%;
     width: 10px;
     height: 80%;
     background-color: white;
     z-index: 3;
     -webkit-transform: translateY(-13vw);
     transform: translateY(-13vw);
 }

 .visual-wrap .section-landing:after {
     content: '';
     position: absolute;
     width: 100%;
     height: 100%;
     display: block;
     left: 0;
     top: 0;
     background: rgba(0, 0, 0, 0.25);
     z-index: 1;
 }

 .visual-wrap .section-landing .item-parallax-media {
     opacity: calc(1 - (var(--y) * 0.0009));
 }

 .visual-wrap .landing-content {
     padding-left: 30%;
 }

 .visual-wrap .section-intro:before {
     content: '';
     position: absolute;
     top: 50%;
     left: 50%;
     width: 10px;
     height: 80%;
     background-color: #38565f;
     -webkit-transform: translateX(-50%) translateY(-50%) rotate(calc((var(--y) * 0.1deg)));
     transform: translateX(-50%) translateY(-50%) rotate(calc((var(--y) * 0.1deg)));
     will-change: transform;
     -webkit-backface-visibility: visible;
     backface-visibility: visible;
 }

 .visual-wrap .img-grid {
     flex-direction: column;
     justify-content: space-around;
 }

 .visual-wrap .img-gridItem {
     position: relative;
     width: 100%;
     max-width: 800px;
     margin-right: auto;
     margin-left: auto;
 }

 @media(min-width:1366px) {
     .visual-wrap .img-gridItem.width-lg {
         max-width: 1000px;
     }
 }

 .visual-wrap .img-gridItem img {
     display: block;
     width: 50%;
     height: 40vh;
     -o-object-fit: cover;
     object-fit: cover;
     will-change: transform;
     -webkit-backface-visibility: visible;
     backface-visibility: visible;
 }

 .visual-wrap .img-gridItem.type-left img {
     margin-right: auto;
 }

 .visual-wrap .img-gridItem.type-right img {
     margin-left: auto;
 }

 .visual-wrap .img-gridItem:nth-child(1) img {
     -webkit-transform: translateX(calc(var(--yBlock-4) * -0.03%));
     transform: translateX(calc(var(--yBlock-4) * -0.03%));
 }

 .visual-wrap .img-gridItem:nth-child(2) img {
     -webkit-transform: translateX(calc(var(--yBlock-4) * 0.03%));
     transform: translateX(calc(var(--yBlock-4) * 0.03%));
 }

 .visual-wrap .img-caption {
     position: absolute;
     top: 50%;
     left: 0;
     width: 50%;
     -webkit-transform: translateY(-50%);
     transform: translateY(-50%);
 }

 .visual-wrap .width-lg .img-caption {
     width: 60%;
 }

 .visual-wrap .img-caption * {
     text-align: left;
     padding-right: 1.5rem;
     padding-left: 1.5rem;
 }

 .visual-wrap .width-lg .img-caption * {
     text-align: left;
     padding-right: .5rem;
     padding-left: .5rem;
 }

 .visual-wrap .width-lg .img-caption p {
     margin: 0;
     max-width: fit-content;
 }

 .visual-wrap .type-left .img-caption {
     right: 0;
 }

 .visual-wrap .type-right .img-caption {
     left: 0;
 }

 .visual-wrap .section-end:before {
     content: '';
     position: absolute;
     bottom: 50%;
     left: 24%;
     width: 10px;
     height: 80%;
     background-color: white;
     z-index: 3;
     -webkit-transform: translateY(8vw);
     transform: translateY(8vw);
 }

 .visual-wrap .custom-properties-ftw {
     padding: 2.5rem 1.5rem;
 }

 .visual-wrap .custom-properties-ftw .head-small {
     margin-bottom: 0;
 }

 .visual-wrap .parallax-image {
     width: 100%;
     overflow: hidden;
 }

 @media(max-width:1336px) and (min-width:1024px) {
     .visual-wrap .parallax-image.designer {
         height: 130vh;
     }
 }

 .visual-wrap .parallax-image.designer h2,
 .visual-wrap .parallax-image.designer p {
     text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
 }

 @media(min-width:960px) {
     .visual-wrap .parallax-image .container {
         position: absolute;
         top: 50%;
         left: 50%;
         transform: translate(-50%, -50%);
         z-index: 1;
     }
 }

 .slideshow .swiper-slide a[data-fancybox] {
     position: absolute;
     bottom: 27%;
     padding: 0 10px 3px 10px;
     z-index: 2;
     margin: auto;
     color: #fff;
     background: rgba(0, 0, 0, 0.6);
     font-size: 2rem;
     border-radius: 50%;
 }

 .modalbox .card-img-top {
     margin-bottom: 20px;
     max-width: 100%;
 }

 .fancybox-slide--html {
     padding: 0;
 }

 .fancybox-modal .fancybox-slide {
     width: auto;
 }

 .fancybox-content.modalbox {
     max-width: 100%;
     height: 100%;
 }

 @media(min-width:960px) {

     .slideshow .swiper-slide .card-img-top,
     .slideshow .swiper-slide [data-fancybox-close],
     .slideshow .swiper-slide a[data-fancybox] {
         display: none;
     }
 }

 .visual-wrap section.parallax-image>img {
     z-index: 0;
 }

 .visual-wrap section.parallax-image.blur>img {
     filter: blur(5px);
     -webkit-filter: blur(5px);
 }

 @media(max-width:959px) {
     .visual-wrap section.parallax-image {
         overflow: hidden;
         background-size: cover;
         padding-top: 20px;
         min-height: 50vh;
     }

     .visual-wrap section.parallax-image>img {
         width: 100%;
         height: auto;
         display: none;
     }
 }

 .visual-wrap section .bg-img {
     z-index: 0;
 }

 .visual-wrap .section-title {
     margin-bottom: 5vw;
     font-size: 7vw;
     font-family: 'Noto Serif TC', serif;
     font-weight: 500;
     line-height: 1.2em;
     text-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
     position: absolute;
     color: #fff;
     top: 30%;
     left: 0;
     right: 0;
 }

 .visual-wrap .section-title span {
     color: #fff;
     font-family: 'Noto Serif TC', serif;
 }

 @media(min-width:1366px) {
     .visual-wrap section.parallax-image .containerb {
         max-width: 80vw;
     }
 }

 .visual-wrap section.parallax-image>*:not(img) {
     z-index: 1;
 }

 .visual-wrap section.parallax-image .container img {
     margin: auto;
     transform: inherit !important;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 .visual-wrap section.parallax-image .container img:hover {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .post-content .visual-wrap .container p:not([class]) {
     width: auto;
 }

 .visual-wrap section.parallax-image:after {
     content: '';
     position: absolute;
     width: 100%;
     height: 100%;
     display: block;
     left: 0;
     top: 0;
     background: rgba(0, 0, 0, 0.15);
     z-index: 0;
 }

 @media(max-width:959px) {
     .visual-wrap section.parallax-image:after {
         display: none;
     }
 }

 .build-intoduction {
     width: 100%;
     height: 100vh;
 }

 @media(max-width:959px) {
     .build-intoduction {
         height: 90vh;
         margin-bottom: 60px;
     }
 }

 .build-intoduction .swiper-container {
     width: 100%;
     height: 100%;
 }

 .build-intoduction .slide {
     display: flex;
     justify-content: center;
     align-items: center;
     position: relative;
     text-align: center;
     font-size: 18px;
     background: #fff;
     overflow: hidden;
 }

 .build-intoduction .slide-image {
     position: absolute;
     top: -200px;
     left: -200px;
     width: calc(100% + 400px);
     height: calc(100% + 400px);
     background-position: 50% 50%;
     background-size: cover;
 }

 .build-intoduction .slide-image .card-body {
     opacity: 0;
 }

 .build-intoduction .swiper-slide-active .slide-image .card-body {
     opacity: 1;
 }

 .build-intoduction .slide-title {
     font-size: 4rem;
     line-height: 1;
     max-width: 50%;
     white-space: normal;
     word-break: break-word;
     color: #FFF;
     z-index: 100;
     font-family: 'Oswald', sans-serif;
     text-transform: uppercase;
     font-weight: normal;
 }

 @media (min-width: 45em) {
     .build-intoduction .slide-title {
         font-size: 2.5vw;
         max-width: none;
         margin-top: -35rem;
         font-weight: bold;
     }
 }

 .build-intoduction .slide-title span {
     white-space: pre;
     display: inline-block;
     opacity: 0;
     font-family: 'Noto Serif TC', serif;
     text-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
 }

 @media(max-width:768px) {
     .build-intoduction .slide-title {
         font-size: 2rem;
         margin-top: -25rem;
     }
 }

 .build-intoduction .slideshow {
     position: relative;
 }

 .build-intoduction .modalbox {
     display: none;
     max-width: 600px;
 }

 .build-intoduction .slideshow-pagination {
     position: absolute;
     bottom: 5rem;
     left: 0;
     width: 100%;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     transition: .3s opacity;
     z-index: 10;
 }

 .build-intoduction .slideshow-pagination-item {
     display: flex;
     align-items: center;
 }

 .build-intoduction .slideshow-pagination-item .pagination-number {
     opacity: 0.5;
 }

 .build-intoduction .slideshow-pagination-item:hover,
 .slideshow-pagination-item:focus {
     cursor: pointer;
 }

 .build-intoduction .slideshow-pagination-item:last-of-type .pagination-separator {
     width: 0;
 }

 .build-intoduction .slideshow-pagination-item.active .pagination-number {
     opacity: 1;
 }

 .build-intoduction .slideshow-pagination-item.active .pagination-separator {
     width: 10vw;
 }

 .build-intoduction .slideshow-navigation-button {
     position: absolute;
     top: 0;
     display: flex;
     justify-content: center;
     align-items: center;
     height: 100%;
     width: 5rem;
     z-index: 1000;
     transition: all .3s ease;
     color: #FFF;
 }

 .build-intoduction .slideshow-navigation-button:hover,
 .slideshow-navigation-button:focus {
     cursor: pointer;
 }

 .build-intoduction .slideshow-navigation-button.prev {
     left: 0;
 }

 .build-intoduction .slideshow-navigation-button.next {
     right: 0;
 }

 .build-intoduction .pagination-number {
     font-size: 1.8rem;
     color: #FFF;
     font-family: 'Oswald', sans-serif;
     padding: 0 0.5rem;
 }

 .build-intoduction .pagination-separator {
     display: none;
     position: relative;
     width: 40px;
     height: 2px;
     background: rgba(255, 255, 255, 0.25);
     transition: all .3s ease;
 }

 @media (min-width: 45em) {
     .build-intoduction .pagination-separator {
         display: block;
     }
 }

 .build-intoduction .pagination-separator-loader {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: #FFFFFF;
     transform-origin: 0 0;
 }

 .build-intoduction .card-body {
     position: fixed;
     bottom: 27%;
     left: 20%;
     margin: auto;
     width: 30vw;
     height: auto;
     padding: 18px;
     text-align: left;
     border: #fff solid 1px;
     color: #fff;
     background: rgba(0, 0, 0, 0.39);
 }

 .post-content .build-intoduction .card-body h3 {
     margin: 10px 0;
 }

 .visualslider-wrap {
     height: calc(100vh - 65px);
     position: relative;
     background: #f3f2f0;
     padding-bottom: 65px;
 }

 .visualslider-wrap .swiper-container {
     height: 100%;
 }

 .visualslider-wrap .swiper-slide {
     position: relative;
 }

 .visualslider-wrap .swiper-slide a[data-fancybox] {
     z-index: 2;
     color: #fff;
     background: rgba(0, 0, 0, 0.6);
     font-size: 2rem;
     border-radius: 50%;
     right: auto;
     margin: auto;
     padding: 3px 9px 0;
     position: absolute;
     bottom: 10%;
     left: 50%;
     transform: translate(-50%, -50%);
 }

 .visualslider-wrap .slide-image {
     height: 100%;
     background-size: cover;
     background-position: center;
 }

 .visualslider-wrap .slide-title {
     color: #fff;
     font-size: 2rem;
     font-family: 'Noto Serif TC', serif;
     font-weight: 700;
     text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
     width: 100%;
     text-align: center;
     height: fit-content;
     position: absolute;
     top: 10%;
     right: 0;
     left: 0;
     margin: auto;
 }

 @media(max-width:1336px) and (min-width:1024px) {
     .visualslider-wrap .slide-title {
         top: 20%;
     }
 }

 .visualslider-wrap div[class*='swiper-button-'] {
     background: transparent;
     border-color: transparent;
 }

 .visualslider-wrap div[class*='swiper-button-']::before {
     color: #fff;
     -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.7));
     filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.7));
 }

 .visualslider-wrap .swiper-pagination-bullet {
     border: #fff solid 1px;
 }

 .visualslider-wrap .swiper-pagination-bullet-active {
     border-color: #d20031;
 }

 .visualslider-wrap .card.ani {
     position: absolute;
     bottom: 10%;
     left: 20%;
     margin: auto;
 }

 .visualslider-wrap .card.ani {
     position: absolute;
     bottom: 10%;
     left: 20%;
     margin: auto;
     width: 30vw;
 }

 .visualslider-wrap .season.card.ani {
     width: 70vw;
     left: 12%;
 }

 .visualslider-wrap .card-body {
     height: auto;
     max-height: 40vh;
     overflow: auto;
     text-align: left;
     border: #fff solid 1px;
     color: #fff;
     background: rgba(0, 0, 0, 0.8);
     border: none 0px;
     padding: 20px;
     box-shadow: 0 10px 50px rgba(147, 147, 147, 0.6);
 }

 .visualslider-wrap .card-body::-webkit-scrollbar {
     width: 3px;
 }

 .visualslider-wrap .card-body::-webkit-scrollbar-track {
     background-color: #000;
     border-right: 1px solid transparent;
 }

 .visualslider-wrap .card-body::-webkit-scrollbar-thumb {
     background-color: #dbdbdb;
 }

 .visualslider-wrap .card-body::-webkit-scrollbar-thumb:hover {
     background-color: #dbdbdb;
 }

 .visualslider-wrap .card-body h3 {
     margin-top: 0;
 }

 .visualslider-wrap .modalbox {
     display: none;
 }

 @media screen\0 {
     .visualslider-wrap .season .card-body.season {
         width: 500px;
     }
 }

 .visualslider-wrap .card-body h2 {
     margin: 12px 0 8px 0
 }

 .visualslider-wrap .swiper-slide .cont h3 {
     border-bottom: 3px solid #999;
     margin: 10px 0;
 }

 .visualslider-wrap .swiper-slide .cont h3 span {
     display: block;
     font-size: 11px;
     margin: 6px 0;
 }

 .modalbox .card-img-top {
     margin-bottom: 20px;
     max-width: 100%;
 }

 .fancybox-slide--html {
     padding: 0;
 }

 .fancybox-modal .fancybox-slide {
     width: auto;
 }

 .fancybox-content.modalbox {
     max-width: 100%;
     height: 100%;
 }

 @media(min-width:960px) {
     .visualslider-wrap {
         height: calc(100vh - 50px);
         padding-bottom: 50px;
     }

     .visualslider-wrap .swiper-slide .card-img-top,
     .visualslider-wrap .swiper-slide [data-fancybox-close],
     .visualslider-wrap .swiper-slide a[data-fancybox] {
         display: none;
     }

     .visualslider-wrap .slide-title {
         font-size: 2.5vw;
         width: 40%;
     }
 }

 @media (max-width: 500px) {
     .post-content .node+.node {
         margin: 5px 0;
     }

     .post-content .node {
         width: 100%;
         margin: 5px 0;
     }

     .btn.btn-link.apply {
         display: block;
         width: 100%;
         margin-bottom: 8px;
     }

     .newslider.logo .swiper-button-next {
         right: 0;
     }

     .newslider.logo .swiper-button-prev {
         left: 0;
     }

     .post-content .col,
     .col-1,
     .col-10,
     .col-11,
     .col-12,
     .col-2,
     .col-3,
     .col-4,
     .col-5,
     .col-6,
     .col-7,
     .col-8,
     .col-9,
     .col-auto,
     .col-lg,
     .col-lg-1,
     .col-lg-10,
     .col-lg-11,
     .col-lg-12,
     .col-lg-2,
     .col-lg-3,
     .col-lg-4,
     .col-lg-5,
     .col-lg-6,
     .col-lg-7,
     .col-lg-8,
     .col-lg-9,
     .col-lg-auto,
     .col-md,
     .col-md-1,
     .col-md-10,
     .col-md-11,
     .col-md-12,
     .col-md-2,
     .col-md-3,
     .col-md-4,
     .col-md-5,
     .col-md-6,
     .col-md-7,
     .col-md-8,
     .col-md-9,
     .col-md-auto,
     .col-sm,
     .col-sm-1,
     .col-sm-10,
     .col-sm-11,
     .col-sm-12,
     .col-sm-2,
     .col-sm-3,
     .col-sm-4,
     .col-sm-5,
     .col-sm-6,
     .col-sm-7,
     .col-sm-8,
     .col-sm-9,
     .col-sm-auto,
     .col-xl,
     .col-xl-1,
     .col-xl-10,
     .col-xl-11,
     .col-xl-12,
     .col-xl-2,
     .col-xl-3,
     .col-xl-4,
     .col-xl-5,
     .col-xl-6,
     .col-xl-7,
     .col-xl-8,
     .col-xl-9,
     .col-xl-auto {
         padding-right: 0px;
         padding-left: 0px;
     }
 }

 .form .breadcrumb {
     background: transparent;
     float: right;
 }

 .form .breadcrumb li,
 .breadcrumb a,
 .breadcrumb-item+.breadcrumb-item::before {
     color: #414141;
 }

 .wizard.wizard-circle>.steps {
     position: relative;
     display: block;
     width: 100%;
 }

 .wizard.wizard-circle>.steps .current-info {
     position: absolute;
     left: -99999px;
 }

 .wizard.wizard-circle>.steps>ul {
     display: table;
     width: 100%;
     table-layout: fixed;
     margin: 0 auto;
     padding: 0;
     list-style: none;
 }

 .wizard.wizard.wizard-circle>.steps>ul>li {
     display: table-cell;
     vertical-align: top;
     text-align: center;
     position: relative;
     float: none;
 }

 .wizard.wizard-circle>.steps .disabled a:hover,
 .wizard.wizard-circle>.steps>ul>li a {
     position: relative;
     padding-top: 52px;
     margin-top: 20px;
     margin-bottom: 20px;
     display: block;
     text-decoration: none;
     font-size: 15px;
     color: #888;
     background: transparent;
 }

 .wizard.wizard-circle>.steps>ul>li:before {
     content: '';
     display: block;
     position: absolute;
     z-index: 9;
     left: 0;
 }

 .wizard.wizard-circle>.steps>ul>li:after {
     content: '';
     display: block;
     position: absolute;
     z-index: 9;
     right: 0;
 }

 .wizard.wizard-circle>.steps>ul>li:first-child:before,
 .wizard.wizard-circle>.steps>ul>li:last-child:after {
     width: 0;
 }

 .wizard.wizard-circle>.steps>ul>li.current a,
 .wizard.wizard-circle>.steps>ul>li.done a {
     color: #666ee8;
 }

 .wizard.wizard-circle>.steps>ul>li.current .step,
 .wizard.wizard-circle>.steps>ul>li.done .step {
     border-color: #666EE8;
     background-color: #fff;
     color: #666EE8;
 }

 .wizard.wizard-circle>.steps .current a,
 .wizard.wizard-circle>.steps .current a:hover,
 .wizard.wizard-circle>.steps .current a:active {
     background: transparent;
 }

 .wizard.wizard-circle>.steps .done a,
 .wizard.wizard-circle>.steps .done a:hover,
 .wizard.wizard-circle>.steps .done a:active {
     background: transparent;
 }

 .wizard.wizard-circle>.steps .step {
     background-color: #fff;
     display: inline-block;
     position: absolute;
     top: 0;
     left: 50%;
     margin-left: -24px;
     z-index: 10;
     text-align: center;
 }

 .wizard.wizard-circle>.content {
     position: relative;
     width: auto;
     padding: 0;
     margin: 0 0 1rem 0;
     border: 1px solid #ddd;
     border-top: 4px solid #ddd;
     background: transparent;
     min-height: 20em;
     border-radius: 0;
 }

 .wizard.wizard-circle>.content>.title {
     position: absolute;
     left: -99999px;
 }

 .wizard.wizard-circle>.content>.body {
     padding: 20px;
 }

 .wizard-circle>.actions {
     position: relative;
     display: block;
     text-align: right;
     padding: 20px;
     padding-top: 0;
 }

 .wizard.wizard-circle>.actions>ul {
     list-style: none;
     padding: 0;
     margin: 0;
     text-align: right;
 }

 .wizard.wizard-circle>.actions>ul:after {
     content: '';
     display: table;
     clear: both;
 }

 .wizard.wizard-circle>.actions>ul>li {
     float: left;
 }

 .wizard.wizard-circle>.actions>ul>li+li {
     margin-left: 10px;
 }

 .wizard.wizard-circle>.actions>ul>li>a {
     background: #fff;
     color: #444;
     display: block;
     padding: 7px 12px;
     border-radius: 2px;
     border: 1px solid #b7b7b7;
     text-decoration: none;
     border-radius: 4px;
 }

 .wizard.wizard-circle>.actions>ul>li>a:hover {
     -webkit-box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.05) inset;
     box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.05) inset;
     background: #343a40;
     border: 1px solid #343a40;
     color: #fff;
 }

 .wizard.wizard-circle>.actions>ul>li>a:focus {
     -webkit-box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.05) inset;
     box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.05) inset;
     background: #343a40;
     border: 1px solid #343a40;
 }

 .wizard.wizard-circle>.actions>ul>li>a:active {
     -webkit-box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.1) inset;
     box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.1) inset;
     border: 1px solid #b7b7b7;
     background: #fff;
     color: #444;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#previous"] {
     background-color: #fcfcfc;
     color: #333;
     border: 1px solid #ddd;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#previous"]:hover {
     -webkit-box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.02) inset;
     box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.02) inset;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#previous"]:focus {
     -webkit-box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.02) inset;
     box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.02) inset;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#previous"]:active {
     -webkit-box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.04) inset;
     box-shadow: 0 0 0 100px rgba(0, 0, 0, 0.04) inset;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#finish"] {
     -webkit-box-shadow: none;
     box-shadow: none;
     border: 1px solid #007bff;
     color: #007bff;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#finish"]:hover {
     -webkit-box-shadow: none;
     box-shadow: none;
     border: 1px solid #007bff;
     color: #fff;
     background: #007bff;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#finish"] :focus {
     -webkit-box-shadow: none;
     box-shadow: none;
     border: 1px solid #007bff;
     color: #007bff;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#finish"]:active {
     -webkit-box-shadow: none;
     box-shadow: none;
     border: 1px solid #007bff;
     color: #007bff;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a {
     color: #999999;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a:hover {
     color: #999999;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a:focus {
     color: #999999;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a[href="#previous"] {
     -webkit-box-shadow: none;
     box-shadow: none;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a[href="#previous"]:hover {
     -webkit-box-shadow: none;
     box-shadow: none;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a[href="#previous"]:focus {
     -webkit-box-shadow: none;
     box-shadow: none;
 }

 .wizard.wizard-circle>.steps>ul>li:before,
 .wizard.wizard-circle>.steps>ul>li:after {
     top: 43px;
     width: 50%;
     height: 5px;
     background-color: #666EE8;
 }

 .wizard.wizard-circle>.steps>ul>li.current:after {
     background-color: #F4F5FA;
 }

 .wizard.wizard-circle>.steps>ul>li.current~li:before {
     background-color: #F4F5FA;
 }

 .wizard.wizard-circle>.steps>ul>li.current~li:after {
     background-color: #F4F5FA;
 }

 .wizard.wizard-circle>.steps .step {
     width: 50px;
     height: 50px;
     line-height: 40px;
     border: 5px solid #F4F5FA;
     font-size: 1.5rem !important;
     border-radius: 50%;
 }

 .wizard.wizard-circle>.steps>ul>li.current .step,
 .wizard.wizard-circle>.steps>ul>li.done .step {
     border-color: #707070;
     background-color: #fff;
     color: #707070;
 }

 .wizard.wizard-circle>.steps>ul>li.current .step,
     {
     border-color: #707070;
     background-color: #fff;
     color: #707070;
     z-index: 1;
 }

 .wizard.wizard-circle>.steps>ul>li.done .step {
     border-color: #707070;
     background-color: #707070;
     color: #fff;
     z-index: 1;
 }

 .wizard.wizard-circle>.steps>ul>li.current a,
 .wizard.wizard-circle>.steps>ul>li.done a {
     color: #707070;
 }

 .wizard.wizard-circle>.steps .step {
     border: 5px solid #D9D9D9;
     z-index: 1;
 }

 .wizard.wizard-circle>.steps>ul>li.current:after {
     background-color: #D9D9D9;
     z-index: 0;
 }

 .wizard.wizard-circle>.steps>ul>li.current~li:before {
     background-color: #D9D9D9;
     z-index: 0;
 }

 .wizard.wizard-circle>.steps>ul>li:before,
 .wizard.wizard-circle>.steps>ul>li:after {
     background-color: #707070;
     z-index: 0;
 }

 .wizard,
 .tabcontrol {
     display: block;
     width: 100%;
     overflow: initial;
     position: relative;
 }

 .wizard.wizard-circle>.content {
     position: relative;
     width: 80%;
     padding: 0;
     margin: 0 auto;
     border: 0;
     border-top: 0;
     border-radius: 0;
     overflow: unset;
     min-height: auto;
 }

 @media(max-width:768px) {
     .wizard.wizard-circle>.content {
         width: calc(100% - 30px);
     }
 }

 .form .login-from {
     float: none;
     position: relative;
     width: auto;
     height: auto;
     padding: 2.5%;
     background: #fff;
     box-shadow: 5px 5px 30px #e2e2e2;
 }

 .wizard.wizard-circle>.content>.wtbox {
     margin-bottom: 100px;
     padding: 45px 2.5% 130px;
     position: relative;
     width: 100%;
 }

 @media(max-width:320px) {
     .form-title {
         font-size: 1.5rem;
     }
 }

 .form-if {
     display: block;
     font-size: 1.2rem;
     letter-spacing: 1px;
     color: #6f6f6f;
 }

 .form-cont {
     margin: 35px auto 0;
 }

 @media(max-width:768px) {
     .form-cont>.row {
         margin: 0;
     }
 }

 @media(min-width:960px) {
     .form-cont {
         width: 80%;
     }
 }

 .sr-guid {
     margin-top: 30px;
 }

 @media(min-width:768px) {
     .sr-guid {
         max-width: 100%;
     }
 }

 .alert {
     position: relative;
     padding: 1.5rem 2.2rem;
 }

 .alert-secondary {
     color: #383d41;
     background-color: #f5f4f4;
     border-color: #fff;
     margin-top: 15px;
 }

 .title-p {
     position: relative;
     font-weight: 600;
     margin-bottom: 35px;
 }

 .title-p::before {
     content: "";
     position: absolute;
     width: 20px;
     height: 2px;
     background: #4d4d4d;
     left: 0;
     top: 28px;
 }

 p.danger {
     color: #d75556;
 }

 .alert-secondary.area ul.notice li {
     position: relative;
     position: relative;
     padding-left: 19px;
     margin-bottom: 10px;
 }

 .step-from .form-cont .agree-from {
     margin: 23px auto;
     text-align: center;
 }

 .alert-secondary.area ul.notice li:before {
     position: absolute;
     content: '※';
     left: 0;
     color: #d75556;
 }

 .step-from .form-cont .alert.area .table td,
 .step-from .form-cont .alert.area .table th {
     border-bottom: 1px solid #babec2;
 }

 .alert.area .table-bordered td,
 .alert.area .table-bordered th {
     border: 1px solid #babec2;
 }

 .step-from .form-cont .alert.area .table td,
 .step-from .form-cont .alert.area .table th {
     vertical-align: middle;
 }

 .step-from .form-cont .alert.area .table.table-rwd {
     margin-top: 10px;
 }

 .step-from .form-cont .alert.area .table.table-rwd th {
     text-align: center;
     font-weight: bolder;
 }

 @media(max-width:959px) {
     .alert {
         padding: 15px;
     }

     .step-from .form-cont ul.notice li {
         padding-left: 0px;
     }

     .step-from .form-cont ul.notice li::before {
         position: absolute;
         content: "※";
         left: -19px;
         color: rgb(215, 85, 86);
     }

     .step-from .form-cont .alert.area .table-rwd td:before {
         content: attr(data-th) " ";
         margin-right: 15px;
     }

     .step-from .form-cont .alert.area .table td,
     .step-from .form-cont .alert.area .table th {
         border-bottom: 0px solid #babec2;
     }

     .step-from .form-cont .alert.area .table td:last-child,
     .step-from .form-cont .alert.area .table th:last-child {
         border-bottom: 1px solid #babec2;
     }

     .alert-secondary.area ul.notice li:before {
         position: absolute;
         content: "※";
         left: -19px;
         color: rgb(215, 85, 86);
     }

     .alert-secondary.area ul.notice li {
         padding-left: 0;
     }

     .alert-secondary.area ul.notice {
         padding-left: 15px;
     }
 }

 .reser-title {
     color: #212529;
     font-size: 1.5rem;
     font-family: 'Noto Serif TC', serif;
 }

 .reser-title.collapse-title:hover {
     color: #212529;
     text-decoration: none;
 }

 .reser-title.collapse-title[aria-expanded="false"]:after {
     font-family: "Font Awesome 5 pro";
     content: '\f078';
 }

 .reser-title.collapse-title:after {
     font-family: "Font Awesome 5 pro";
     content: '\f077';
 }

 .form .card {
     border: 0;
 }

 .form .card-body {
     padding: 0;
 }

 .form .table td,
 .form .table th {
     border-bottom: 1px solid #dee2e6;
 }

 .form .table.table-col td,
 .form .table.table-col th {
     text-align: center;
 }

 .form .table.table-col td.cancle {
     background: #ffe4e4;
     color: #a50000;
 }

 .notification-mes {
     text-align: center;
     margin: 10px 0 30px;
 }

 .notification-mes .far {
     display: block;
     font-size: 110px;
 }

 .notification-mes .fa-check-circle,
 .text-mes.success {
     color: #A1E0AF;
 }

 .notification-mes .fa-times-circle,
 .text-mes.danger {
     color: #FF7474;
 }

 .text-mes {
     font-size: 1.4rem;
     margin: 10px auto 12px;
     display: block;
     letter-spacing: 2px;
     font-weight: 600;
     margin-bottom: 40px;
     line-height: 1.8rem;
 }

 .text-mes.success {
     color: #6eab7b;
 }

 .notification-mes p {
     font-size: 1.1rem;
 }

 @media(max-width:960px) {
     .text-mes {
         font-size: 1.2rem;
         font-weight: normal;
         letter-spacing: 0;
         width: 280px;
         line-height: 30px;
         margin-bottom: 20px;
     }

     .notification-mes p {
         text-align: center !important;
     }
 }

 .wizard-circle>.actions {
     width: calc(100% - 130px);
     position: absolute;
     text-align: center;
     padding: 20px;
     padding-top: 0;
     bottom: 20px;
     display: flex;
     justify-content: center;
     align-items: center;
     right: 0;
     left: 0;
     margin: auto;
     display: none;
 }

 .wizard.wizard-circle>.actions>ul>li {
     width: 230px;
     text-align: center;
 }

 .wizard.wizard-circle>.actions>ul>li>a {
     background: #D85656;
     color: #fff;
     display: block;
     padding: 7px 12px;
     border-radius: 2px;
     border: 0;
     text-decoration: none;
     border-radius: 0;
 }

 .wizard.wizard-circle>.actions>ul>li>a:hover,
 .wizard.wizard-circle>.actions>ul>li>a:focus {
     background: #ca4949;
     border: 0;
     color: #fff;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a,
 .wizard.wizard-circle>.actions>ul>li>a[href="#previous"] {
     color: #fff;
     background: #797979;
     border: 0;
 }

 .wizard.wizard-circle>.actions>ul>li.disabled>a:hover,
 .wizard.wizard-circle>.actions>ul>li>a[href="#previous"]:hover {
     color: #fff;
     background: #525252;
     border: 0;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#finish"] {
     border: 0;
     color: #ffffff;
 }

 .wizard.wizard-circle>.actions>ul>li>a[href="#finish"]:hover {
     border: 0;
     color: #fff;
     background: #ca4949;
 }

 .step-from .form-cont .action {
     display: flex;
     justify-content: center;
     align-items: center;
     width: 100%;
 }

 .step-from .form-cont .action .btn {
     width: 230px;
     text-align: center;
     color: #fff;
     background: #797979;
     border-radius: 0;
 }

 .step-from .form-cont .action *+* {
     margin-left: .8rem;
 }

 .step-from .form-cont .action .btn-record {
     background: #ca4949;
     border-color: #ca4949;
     color: #fff;
 }

 .step-from .form-cont .action .btn-back {
     color: #fff;
     background: #797979;
     border: 0;
     padding: 7px 12px;
     width: 230px;
     border-radius: 0;
 }

 .step-from .form-cont .action+.action {
     margin-top: .5rem;
 }

 .btn-area {
     padding: 10px 0 0;
 }

 .btn.reser {
     border-radius: 0;
     margin: 0 auto;
     display: block;
     width: 250px;
     max-width: 100%;
     background: #ca4949;
 }

 .btn.cancle {
     color: #4B4B4B;
     border: 1px solid #4B4B4B;
     border-radius: 0;
     padding: 6px 16px;
     font-size: 14px;
 }

 .btn.cancle:hover,
 .btn.cancle:focus {
     text-decoration: none;
 }

 .btn.done {
     background: #EAEAEA;
     font-size: 14px;
     padding: 6px 24px;
     border-radius: 0;
 }

 .btn.btn-link.more {
     border: 1px solid #212529;
     color: #212529;
     border-radius: 0;
     padding: 6px 45px;
     margin: 0 2px;
     font-size: .9rem;
 }

 .cancle .btn.btn-link.more {
     border: 1px solid #a50000;
     color: #a50000;
     border-radius: 0;
     padding: 6px 45px;
     margin: 4px 2px;
     font-size: .9rem;
 }

 .cancle .btn.btn-link.more:hover {
     background: #a50000;
     color: #fff;
     border-radius: 0;
     padding: 6px 45px;
     margin: 4px 2px;
     font-size: .9rem;
 }

 @media (max-width: 991.98px) {
     .table-rwd td:before {
         content: attr(data-th) " ";
         display: inline-block;
         padding-bottom: 0rem;
         width: 100px;
     }

     .form .table.table-col td,
     .form .table.table-col th {
         text-align: left;
     }

     .table-rwd tr+tr {
         border-top: 0px solid;
     }

     .table td,
     .table th {
         padding: .75rem;
         vertical-align: top;
         border-top: 0px solid #dee2e6;
     }

     .table-rwd td,
     .table-rwd th {
         border-top: 1px solid #dee2e6;
     }

     .table.table-col tr>td:first-child {
         background: #EAEAEA;
     }

     .reser-title {
         font-size: 1.3rem;
     }
 }

 @media(max-width:767px) {
     .wizard.wizard-circle>.content>.body {
         padding: 30px 10px 120px;
     }

     .wizard.wizard-circle>.actions>ul>li+li {
         margin-left: 0;
     }

     .wizard>.actions>ul>li {
         margin: 0;
     }

     .wizard.wizard-circle>.actions>ul>li {
         margin-bottom: 5px;
     }

     .wizard.wizard-circle>.actions>ul>li {
         width: 250px;
         text-align: center;
     }

     .wizard.wizard-circle>.actions>ul>li {
         float: inherit;
     }

     .form .form-row .form-group {
         padding: 0;
     }

     .form .form-row {
         margin-left: 1px;
     }

     .sr-guid {
         margin-top: 0;
     }
 }

 @media(max-width:575px) {
     .wizard-circle>.actions {
         bottom: 10px;
     }

     .wizard-circle>.actions {
         width: 100%;
     }

     .wizard.wizard-circle h2.form-title {
         font-size: 1.7rem;
     }

     .form-if {
         display: block;
         font-size: 1rem;
         letter-spacing: 0;
         color: #6f6f6f;
     }

     .form-check {
         text-align: left;
     }

     .form .table.table-col td.cancle .btn {
         width: 100%;
     }

     .table-rwd td.cancle:before {
         content: attr(data-th) " ";
         display: inline-block;
         padding-bottom: 0rem;
         width: 0px;
     }
 }

 .login-from .form-if {
     color: #747474;
     font-size: .9rem;
 }

 @media(min-width:960px) {
     .login-from .form-cont {
         width: 900px;
         margin: 20px auto;
     }
 }

 .calendar-wrap {
     position: relative;
     margin-bottom: 40vh;
 }

 @media (min-width: 992px) {
     .calendar-wrap .container {
         max-width: 80vw;
     }
 }

 .calendar-header {
     width: 375px;
     padding: 0;
     text-align: right;
     line-height: 7rem;
 }

 @media(min-width:960px) {
     .calendar-wrap {
         padding-top: 2rem;
     }

     .calendar-header {
         overflow: auto;
     }
 }

 @media(max-width:768px) {
     .calendar-wrap {
         margin-top: 0;
     }
 }

 .table-calendar {}

 .table-calendar th,
 .table-calendar td {
     border: none;
 }

 .table-calendar thead tr>* {
     font-size: 2.5rem;
     font-family: 'Noto Serif TC', serif;
     border-bottom: none;
     position: relative;
     border: none;
 }

 .table-calendar thead tr>*::before {
     content: '';
     background: #333;
     display: block;
     position: absolute;
     bottom: 0;
     left: 0;
     width: 90%;
     height: .7rem;
 }

 #calendarForm .table-calendar td,
 #calendarForm .table-calendar th {
     border: none;
 }

 #calendarForm .table-calendar .event-cont {
     transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
 }

 #calendarForm .table-calendar .event-cont:hover {
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
     background: #fff;
 }

 #calendarForm .table-calendar .event-cont.disabled:hover {
     opacity: .8;
 }

 @media(min-width:960px) {
     .table-calendar.fixed thead {
         position: fixed;
         z-index: 1;
         display: table;
         top: 50px;
         width: calc(80vw - 1.6rem);
         left: calc(10vw + 7px);
         padding: 1rem 2rem 0;
         background: #f3f2f0;
     }

     .PROGRAMCALENDAR .table-calendar.fixed thead {
         top: 110px;
     }
 }

 @media(width:1440px) {
     .table-calendar.fixed thead {
         width: calc(80vw - 1.8rem);
         left: calc(10vw + 14px);
     }
 }

 @media(width:1366px) {
     .table-calendar.fixed thead {
         width: calc(80vw - 1.6rem);
         left: calc(10vw + 12px);
     }
 }

 @media(max-width:1260px) {
     .table-calendar.fixed thead {
         width: calc(80vw - 1.8rem);
         left: calc(10vw + 6px);
     }
 }

 @media(max-width:1200px) {
     .table-calendar.fixed thead {
         width: calc(85vw - 5.5rem);
     }
 }

 @media(width:1024px) {
     .table-calendar.fixed thead {
         width: calc(86vw - 5.7rem);
         left: calc(10vw + 15px);
     }
 }

 @media(max-width:959px) {
     .table-calendar.fixed thead {
         display: contents;
         position: relative;
         width: 100%;
         left: initial;
     }

     .table-calendar thead tr>*::before {
         content: '';
         background: #333;
         display: block;
         position: absolute;
         bottom: 0;
         left: 0;
         width: 100%;
         height: 1px;
     }

     .table-calendar thead tr>* {
         text-align: center;
     }
 }

 .table-calendar tbody td {
     position: relative;
     width: 14%;
     max-width: 14%;
     padding: 0 1.3rem 1.5rem 0;
     min-height: 10rem;
 }

 .table-calendar tbody td:not(.notCurrMonth)::before {
     content: '';
     background: #333;
     display: block;
     position: absolute;
     top: 0;
     left: 0;
     width: 90%;
     height: .7rem;
 }

 #calendarForm .table-calendar tbody tr:nth-of-type(2) td::before,
 .table-calendar tbody tr:first-of-type td::before {
     display: none;
 }

 .table-calendar tbody td.notCurrMonth::before {
     content: '';
     display: block;
     position: absolute;
     top: 0;
     left: 0;
     width: calc(100% - 0.5rem);
     height: 0;
     background: transparent;
     border-top: dotted 1px #b3b3b3;
 }

 .table-calendar tbody td:not(.notCurrMonth)::before {
     width: calc(100% - 0.5rem);
     height: 0;
     background: transparent;
     border-top: solid 5px #333;
 }

 .table-calendar.fixed thead tr>*::before {
     top: inherit;
     bottom: 0;
     height: .2rem;
 }

 .table-calendar.fixed thead tr>*::before,
 .table-calendar thead tr>*::before {
     background: transparent;
     bottom: 0;
     width: 100%;
     height: 4px;
     border-top: solid 2px #333;
     border-bottom: solid 1px #333;
 }

 .table-calendar.fixed thead tr>*:nth-child(6)::before,
 .table-calendar thead tr>*:nth-child(6)::before {
     background: #0D0;
 }

 .table-calendar.fixed thead tr>*:nth-child(7)::before,
 .table-calendar thead tr>*:nth-child(7)::before {
     background: #D20031;
 }

 @media(min-width:768px) {
     .table-calendar tbody td {
         min-height: 18rem;
     }
 }

 .table-calendar tbody td.selected {}

 .table-calendar tbody td .numberDate {
     font-size: 2rem;
     font-family: 'Noto Serif TC', serif;
     padding: 0;
     margin: 0 0 0.5rem 0;
     display: inline-block;
 }

 .table-calendar tbody td.today::after {
     border: #333 solid 1px;
     content: '';
     height: 100%;
     width: 100%;
     display: block;
     position: absolute;
     top: -3px;
     left: -4px;
     pointer-events: none;
     transition: 0.5s;
 }

 .table-calendar tbody td.today:hover::after {
     box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
 }

 .table-calendar tbody td.today .numberDate {
     display: inline-block;
 }

 .notCurrMonth span {
     color: #b3b3b3;
 }

 .table-calendar .event-cont {
     position: relative;
 }

 .table-calendar .event-cont+.event-cont {
     margin-top: 1rem;
 }

 .table-calendar .event-cont span {
     padding: 0 0 0 .5rem;
     display: block;
     line-height: 1.2rem;
 }

 .table-calendar .event-cont .event-title {
     margin-bottom: .5rem;
 }

 .table-calendar .event-cont .event-place {
     position: absolute;
     right: 0;
     bottom: 0;
 }

 .table-calendar .hasEvent {
     border-left: #444 solid 5px;
 }

 .table-calendar .type-guideRegular {
     border-color: #00BCD4;
 }

 .table-calendar .type-guideChild {
     border-color: #8BC34A;
 }

 .table-calendar .type-guideGroup {
     border-color: #EA2128;
 }

 .table-calendar .type-guideNight {
     border-color: #000000;
 }

 .table-calendar .type-guideTopic {
     border-color: #9C27B0;
 }

 .table-calendar .type-guideTheater {
     border-color: #3F51B5;
 }

 .table-calendar .type-guideAccessibility {
     border-color: #FEB044;
 }

 .table-calendar .type-guideChildPlay {
     border-color: #EA2027;
 }

 .table-calendar .type-guideTodayOff,
 .table-calendar .type-guideMondayoff {
     border: none;
 }

 .table-calendar .type-guideTodayOff span,
 .table-calendar .type-guideMondayoff span {
     padding: 0;
 }

 .table-calendar .type-maintain {
     border-color: #ccc;
     background: #fff;
 }

 .table-calendar .type-maintain span {
     padding: .5rem;
 }

 .table-calendar .event-cont .event-link {
     position: absolute;
     width: 100%;
     height: 100%;
     left: 0;
     top: 0;
 }

 .calendar-header [class*='btn-'] {
     cursor: pointer;
     display: inline-block;
     font-size: 1.5rem;
     color: #000;
     width: 50px;
     height: 50px;
     border-radius: 50%;
     border: #333 solid 2px;
     position: relative;
 }

 .calendar-header [class*='btn-']:hover {
     background: #333;
     color: #dee2e6;
 }

 .calendar-header [class*='btn-'] i {
     position: absolute;
     left: 0;
     right: 0;
     top: 0;
     bottom: 0;
     margin: auto;
     line-height: 45px;
     font-weight: normal;
 }

 @media(min-width:961px) {
     .calendar-header.fixed [class*='btn-'] {
         position: fixed;
         top: calc(50vh - 50px);
     }

     .calendar-header.fixed .btn-prevMonth {
         left: calc(65px + 2rem);
     }

     .calendar-header.fixed .btn-nextMonth {
         right: calc(65px + 2rem);
     }
 }

 .calendar-header .btn-prevMonth {
     letter-spacing: 18px;
 }

 .calendar-header .btn-nextMonth {
     margin-left: 1rem;
     letter-spacing: 14px;
 }

 .calendar-header .header-title {
     float: left;
     font-size: 3.5rem;
     font-family: 'Noto Serif TC', serif;
     line-height: 4.5rem;
 }

 @media(max-width:959px) {
     .calendar-header {
         width: 100%;
         height: 4rem;
         line-height: 4rem;
         position: relative;
         margin: 15px 0;
     }

     .calendar-header.fixed {
         margin: 0;
         width: calc(100% - 20px);
         position: fixed;
         z-index: 1;
         top: 65px;
         left: 10px;
         background: -moz-linear-gradient(top, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
         background: -webkit-linear-gradient(top, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
         background: linear-gradient(to bottom, #E6E6E6 0%, #F5F5F5 18%, #DBDBDB 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#E6E6E6', endColorstr='#F5F5F5', GradientType=0);
         box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125);
     }

     .calendar-header .header-title {
         width: 100%;
         text-align: center;
         font-size: 2rem;
         line-height: 3.5rem;
     }

     .calendar-header [class*='btn-'] {
         font-size: 2rem;
         position: absolute;
         top: 0;
         bottom: 0;
         margin: auto;
     }

     .calendar-header .btn-nextMonth {
         right: 20px;
     }

     .calendar-header .btn-prevMonth {
         left: 20px;
     }

     .table-calendar tbody td .numberDate {
         font-size: 1.5rem;
     }
 }

 .table-calendar .event-cont.disabled {
     opacity: .5;
 }

 .legend-slider {
     position: relative;
 }

 @media(min-width:768px) {
     .post-wrapper .section-wrap {
         padding-bottom: 10rem;
     }

     .legend-slider {
         width: calc(100% - 350px);
         float: right;
         margin-top: 30px;
     }

     .legend-slider .swiper-wrapper {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         text-align: center;
     }

     .legend-slider .swiper-slide {
         -ms-flex-preferred-size: 0;
         flex-basis: 0;
         -ms-flex-positive: 1;
         flex-grow: 1;
         text-align: center;
     }

     .legend-slider .swiper-button-next,
     .legend-slider .swiper-button-prev {
         display: none;
     }
 }

 .legend-item {
     position: relative;
     padding-left: 25px;
     text-align: left;
 }

 .legend-item::before {
     position: absolute;
     left: 0;
     content: '';
     display: inline-block;
     width: 12px;
     height: 100%;
     background: #000;
     margin-right: .2rem;
 }

 .legend-item.guideRegular::before {
     background: #00BCD4;
 }

 .legend-item.guideChild::before {
     background: #8BC34A;
 }

 .legend-item.guideGroup::before {
     background: #EA2128;
 }

 .legend-item.guideNight::before {
     background: #000000;
 }

 .legend-item.guideTopic::before {
     background: #9C27B0;
 }

 .legend-item.guideTheater::before {
     background: #3F51B5;
 }

 .legend-item.guideAccessibility::before {
     background: #FEB044;
 }

 .legend-item.guidePlant::before {
     background: #009688;
 }

 .legend-item.guideChildPlay::before {
     background: #EA2027;
 }

 .legend-wrap .legend-item {
     position: relative;
     padding-left: 20px;
     text-align: left;
     float: left;
     font-family: 'Noto Serif TC', serif;
 }

 #programForm .legend-wrap .legend-item {
     float: right;
 }

 .legend-wrap .legend-item+.legend-item {
     margin-left: 1rem;
 }

 .legend-item::before {
     position: absolute;
     left: 0;
     content: '';
     display: inline-block;
     width: 6px;
     height: 100%;
     background: #000;
     margin-right: .2rem;
 }

 .legend-item.Ntt::before {
     content: '';
     display: inline-block;
     background: url(../images/icon-4ntt.svg) no-repeat;
     width: 25px;
     height: 22px;
     background-size: cover;
     margin-right: 0.3rem;
     background-position-y: 99.5%;
 }

 .legend-item.eventNtt::before {
     background: #D20031;
 }

 .legend-item.eventOther::before {
     background: #82A7AD;
 }

 .table-calendar .type-eventNtt {
     border-color: #D20031;
 }

 .table-calendar .type-eventOther {
     border-color: #adadad;
 }

 @media(min-width:960px) {
     .legend-wrap .Ntt::before {
         background-position-y: 97.5%;
     }

     .legend-wrap {
         position: absolute;
         right: 2rem;
         top: 1.5rem;
         margin: 0;
         float: none;
     }

     #guide .legend-wrap {
         top: 3.5rem;
     }

     .btn-legend {
         display: none;
     }
 }

 @media(max-width:1855px) {
     .legend-wrap {
         right: 7.5rem;
     }
 }

 @media(max-width:1385px) {
     #calendarForm .legend-wrap {
         display: none;
     }
 }

 @media(max-width:1385px) and (min-width:960px) {
     #guide .legend-wrap {
         right: 0;
         width: 100%;
         display: flex;
         bottom: 50px;
         justify-content: center;
         height: fit-content;
         top: inherit;
         position: fixed;
         padding: 1rem 0;
         background: #f3f2f0;
         background: -moz-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: -webkit-linear-gradient(bottom, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         background: linear-gradient(to top, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=0);
     }
 }

 @media(max-width:768px) {
     .legend-item {
         padding: 1rem 0;
         color: #333;
         font-size: 1.2rem;
         font-weight: bold;
         font-family: 'Noto Serif TC', serif;
         text-decoration: none;
         transition: all 0.2s ease;
     }

     .legend-item::before {
         position: inherit;
         height: 30px;
         margin: 0 10px 0 40px;
     }

     .legend-wrap {
         margin-top: 0;
     }

     .legend-item.Ntt {
         padding: 0;
     }

     .legend-wrap .legend-item::before {
         position: inherit;
         height: 30px;
         margin: 0 10px;
     }

     .legend-wrap .legend-item {
         float: initial;
         padding: 1rem 0;
         color: #333;
         font-size: 1.2rem;
         font-weight: 500;
         font-family: 'Noto Serif TC', serif;
         text-align: center;
         display: -ms-flexbox;
         display: flex;
         -ms-flex-pack: center;
         justify-content: center;
         width: 100%;
     }
 }

 @media(min-width:768px) {
     .legend-item.Ntt {
         padding-left: 30px;
     }

     #programForm .legend-wrap {
         position: relative;
         right: auto;
         overflow: auto;
         margin: 0 auto !important;
         padding: 0 25px 1rem;
         text-align: right;
     }

     .legend-item.Ntt::before {
         background-position-y: 98.5%;
         height: 100% !important;
     }
 }

 @media(min-width:960px) and (max-width:1349px) {
     #programForm .legend-wrap {
         margin: 0px 0 40px !important;
     }
 }

 #legendCont {
     position: fixed;
     bottom: 50px;
     width: calc(100% - 20px);
     background: #f3f2f0;
     padding: 20px 0 80px;
     border: #9d9d9d solid 1px;
 }

 #legendCont .legend-wrap {
     border: none;
     margin-bottom: 20px;
     overflow: auto;
     padding-left: 10px;
 }

 #legendCont .legend-wrap .legend-item {
     padding: 0;
     width: 33%;
     float: left;
     text-align: left;
     display: block;
     font-size: 1rem;
 }

 #legendCont .legend-wrap .legend-item+.legend-item {
     margin: 0;
 }

 #legendCont .legend-wrap .legend-item::before {
     height: 13px;
 }

 @media(max-width:960px) and (min-width:768px) {
     #legendCont .legend-wrap {
         padding-left: 20px;
     }

     #legendCont .legend-wrap .legend-item {
         line-height: .8rem;
         padding: 10px 20px;
         width: 25%;
     }
 }

 .day-list .table-calendar {
     width: calc(100% - 20px);
     margin: auto;
 }

 .day-list .table-calendar .noEvent,
 .day-list .table-calendar thead {
     display: none;
 }

 .day-list .table-calendar th,
 .day-list .table-calendar td {
     border: none;
     display: list-item;
     width: 100%;
     max-width: 100%;
 }

 .day-list .table-calendar tbody td::before {
     display: none;
 }

 .day-list .table-calendar tbody td {
     height: initial;
     padding: 0 0 15px;
     min-height: auto;
     list-style: none;
 }

 .day-list .table-calendar tbody td.today .numberDate,
 .day-list tbody td .numberDate {
     display: block;
     font-size: 0;
     height: 3.5rem;
     background: #333;
     margin-bottom: 1rem;
     color: #fff;
 }

 .day-list tbody td .numberDate[data-date]::before {
     content: attr(data-date);
     float: left;
     font-size: 2rem;
     margin-left: .5rem;
 }

 .day-list tbody td .numberDate[data-today]::after {
     content: attr(data-today);
     float: left;
     font-size: 2rem;
     margin-left: .5rem;
 }

 .day-list .table-calendar .event-cont .event-title {
     font-size: 1.2rem;
     line-height: 25px;
 }

 @media(max-width:768px) {

     .day-list .table-calendar tbody td.today .numberDate,
     .day-list tbody td .numberDate {
         height: 2rem;
     }

     .day-list tbody td .numberDate[data-date]::before,
     .day-list tbody td .numberDate[data-today]::after {
         font-size: 1.2rem;
     }
 }

 #event-calendar .notCurrMonth span:not(.numberDate) {
     color: #212529;
 }

 @media (min-width: 960px) {
     #event-calendar .legend-wrap {
         top: 3rem;
     }
 }

 @media(max-width:959px) {
     #event-calendar .container {
         max-width: 100%;
         padding: 0;
     }
 }

 .calendar-wrap.mb {
     position: relative;
     margin: 0 0 20vh;
 }

 .calendar-wrap.mb .container {
     max-width: 100%;
     padding: 0;
 }

 .calendar-wrap.mb .legend-slider {
     width: 100%;
     float: initial;
     overflow: hidden;
     border-bottom: #B1B1B1 solid 1px;
     margin-bottom: 10px;
 }

 .calendar-wrap.mb .function-btn .btn {
     width: initial;
     position: absolute;
     margin: 0;
     right: 40px;
     top: 50px;
 }

 .calendar-wrap.mb .table-calendar thead tr td,
 .calendar-wrap.mb .table-calendar tbody tr td {
     text-align: center;
 }

 .calendar-wrap.mb .table-calendar thead tr td {
     margin: 0;
     padding: 0 0 .75rem 0;
 }

 .calendar-wrap.mb .table-calendar tbody td {
     padding: 0;
     position: relative;
 }

 .calendar-wrap.mb .table-calendar tbody td::before {
     width: 100%;
     height: 1px;
 }

 .calendar-wrap.mb .table-calendar tbody td.today .numberDate {
     padding: 0;
     border-radius: 50%;
     width: 35px;
     height: 35px;
     margin: 10px auto;
     line-height: 2rem;
 }

 .calendar-wrap.mb .table-calendar .event-cont *:not(.event-title) {
     display: none;
 }

 .calendar-wrap.mb .table-calendar .event-cont {
     border: none;
     width: 55%;
     margin: auto;
 }

 .calendar-wrap.mb .table-calendar .event-cont.disalbed {
     opacity: .2;
 }

 .calendar-wrap.mb .table-calendar .event-cont::before {
     content: "";
     position: absolute;
     width: 6px;
     height: 6px;
     background: transparent;
     left: -2px;
     top: 6px;
 }

 @media(max-width:959px) {

     .day-list .table-calendar tbody td.today .numberDate,
     .day-list tbody td .numberDate {
         color: transparent;
         height: 2rem;
     }

     .day-list tbody td .numberDate[data-date]::before,
     .day-list tbody td .numberDate[data-today]::after {
         color: #fff;
         font-size: 1.2rem;
     }
 }

 @media(max-width:640px) {
     .calendar-wrap.mb .table-calendar .event-cont {
         width: 82%;
     }

     .table-calendar tbody td .numberDate {
         line-height: 1.8rem;
         padding-left: 2px;
         margin: 5px;
         display: block;
     }
 }

 @media(max-width:500px) {
     .table-calendar thead tr>* {
         font-size: 1.1rem;
     }

     .calendar-wrap.mb .table-calendar tbody td.today .numberDate {
         line-height: 32px;
         font-size: 1rem;
         margin: 7px;
     }

     .table-calendar tbody td .numberDate {
         font-size: 1rem;
         line-height: 2rem;
     }

     .calendar-wrap.mb .table-calendar .event-cont::before {
         width: 100%;
         height: 18px;
     }
 }

 @media(max-width:475px) {
     .calendar-wrap.mb .table-calendar .event-cont {
         width: 100%;
     }
 }

 .legend-slider div[class*='swiper-button-'] {
     width: 70px;
     height: 100%;
     border: none;
     border-radius: 0;
     top: 0;
     margin-top: 0;
     line-height: 4rem;
     z-index: 1;
 }

 .legend-slider div[class*='swiper-button-']::before {
     font-weight: 300;
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     margin: auto;
 }

 .legend-slider .swiper-button-next {
     right: 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(right, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     background: -webkit-linear-gradient(right, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     background: linear-gradient(to left, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=1);
 }

 .legend-slider .swiper-button-next::before {
     right: -15px !important;
 }

 .legend-slider .swiper-button-prev {
     left: 0;
     background: #f3f2f0;
     background: -moz-linear-gradient(left, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     background: -webkit-linear-gradient(left, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     background: linear-gradient(to right, rgb(243, 242, 240) 0%, rgba(243, 242, 240, 0.9) 60%, rgba(243, 242, 240, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f2f000', endColorstr='#f3f2f0e6', GradientType=1);
 }

 .legend-slider .swiper-button-prev::before {
     left: -15px !important;
 }

 @media(min-width:960px) {

     .legend-slider .swiper-button-next,
     .legend-slider .swiper-button-prev {
         display: none;
     }

     .legend-slider.fixed {
         width: calc(100% - 130px);
         top: 50px;
     }
 }

 @media(max-width:768px) {
     .legend-slider .legend-item {
         padding: 1rem 0;
         color: #333;
         font-size: 1.2rem;
         font-weight: bold;
         font-family: 'Noto Serif TC', serif;
         text-align: center;
         width: 100%;
         text-align: center;
         display: -ms-flexbox;
         display: flex;
         -ms-flex-pack: center;
         justify-content: center;
         width: 100%;
     }
 }

 .calendar-wrap.mb .table-calendar .type-guideRegular::before {
     background: #00BCD4;
     border-bottom: #00BCD4 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guideChild::before {
     background: #8BC34A;
     border-bottom: #8BC34A solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guideGroup::before {
     background: #EA2128;
     border-bottom: #EA2128 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guideNight::before {
     background: #000000;
     border-bottom: #000000 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guideTopic::before {
     background: #9C27B0;
     border-bottom: #9C27B0 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guideAccessibility::before {
     background: #FEB044;
     border-bottom: #FEB044 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guidePlant::before {
     background: #009688;
     border-bottom: #009688 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .type-guideTheater::before {
     background: #3F51B5;
     border-bottom: #3F51B5 solid 1px;
 }

 .calendar-wrap.mb .table-calendar .event-cont.disalbed::before {
     opacity: .2;
 }

 .calendar-wrap.mb .table-calendar .event-cont+.event-cont {
     margin-top: 0.5rem;
 }

 .calendar-wrap.mb .table-calendar .event-cont:last-of-type {
     margin-bottom: 1rem;
 }

 .calendar-wrap.mb .table-calendar .event-cont .event-title {
     white-space: nowrap;
     overflow: hidden;
     width: 58px;
     display: block;
     margin: auto;
     color: transparent;
     padding: 0 0 0 4px;
 }

 .calendar-wrap.mb .table-calendar .event-title[data-title]::before {
     content: attr(data-title);
     float: left;
     font-size: 14px;
     color: #000;
 }

 .calendar-wrap.mb .table-calendar .type-guideTodayOff .event-title[data-title]::before {
     overflow: inherit;
     white-space: inherit;
 }

 .calendar-wrap .event-list {
     display: none;
 }

 .calendar-wrap.mb .event-list {
     display: block;
     position: absolute;
     left: 0;
     right: 0;
     top: 0;
     width: 100%;
     height: 100%;
     text-indent: -999em;
 }

 .calendar-wrap.mb .table-calendar .type-guideMondayoff .event-title,
 .calendar-wrap.mb .table-calendar .type-guideTodayOff .event-title {
     overflow: inherit;
     white-space: inherit;
     padding: 0;
     text-align: left;
 }

 .calendar-wrap .table-responsive {
     overflow-x: inherit;
     position: relative;
 }

 @media(min-width:960px) {
     .calendar-wrap .table-responsive .alert.nodata {
         position: absolute;
     }
 }

 .calendar-wrap .table-responsive .alert.nodata {
     width: 100%;
     height: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     background: rgba(243, 242, 240, 0.9);
     z-index: 1;
     position: absolute;
 }
@media(max-width:768px) {
      .calendar-wrap .table-responsive .alert.nodata {
        align-items: flex-start;
        padding-top: 150px;
      }
}

 @media(max-width:600px) {
     #event-calendar .container {
         max-width: 100%;
         padding: 0;
     }

     #event-calendar .event-cont {
         position: relative;
         margin: 10px 5px;
     }
 }

 @media(max-width:500px) {
     #event-calendar .container {
         padding: 0;
     }

     #event-calendar .calendar-container {
         margin: 0;
     }

     #event-calendar .legend-wrap .legend-item {
         margin-bottom: 0;
     }

     .calendar-wrap .calendar-header {
         width: 100%;
         line-height: 2.5rem;
     }

     .calendar-wrap .calendar-header.fixed {
         width: calc(100% - 20px);
     }

     .calendar-header [class*='btn-'] {
         width: 30px;
         height: 30px;
     }

     .calendar-wrap .calendar-header {
         height: 3rem;
     }

     .calendar-wrap .calendar-header .header-title {
         font-size: 1.4rem;
         line-height: 2.5rem;
         width: 100%;
     }

     .calendar-wrap .calendar-header [class*='btn-'] {
         font-size: 1rem;
         border-width: 1px;
     }

     .calendar-header [class*='btn-'] i {
         text-align: center;
         line-height: 34px;
         letter-spacing: 0;
     }

     .table-calendar thead tr>* {
         font-size: 1.6rem;
         padding: .5rem 0;
     }

     .calendar-wrap.mb .table-calendar {
         table-layout: fixed;
     }

     .table-calendar.mb tbody td .numberDate {
         font-size: 1.4rem;
     }

     .calendar-wrap.mb .table-calendar .event-title[data-title]::before {
         content: attr(data-title);
         float: left;
         letter-spacing: -1px;
         font-size: 13px;
         color: #000;
     }

     .calendar-wrap.mb .table-calendar .event-cont .event-title {
         width: 55px;
     }

     .calendar-wrap.mb .table-calendar .event-cont::before {
         width: 80%;
         height: 4px;
         top: auto;
         bottom: 0;
         background: transparent;
         margin: auto;
         left: 0;
         right: 0;
     }

     .calendar-wrap.mb .table-calendar .type-guideMondayoff .event-title,
     .calendar-wrap.mb .table-calendar .type-guideTodayOff .event-title {
         padding-left: 0;
     }

     .calendar-wrap.mb .table-calendar .type-guideMondayoff::before,
     .calendar-wrap.mb .table-calendar .type-guideTodayOff::before {
         display: none;
     }

     .calendar-wrap.mb .table-calendar .type-guideMondayoff .event-title[data-title]::before,
     .calendar-wrap.mb .table-calendar .type-guideTodayOff .event-title[data-title]::before {
         font-size: 13px;
         line-height: 1.2rem;
         width: 80%;
         position: absolute;
         top: 50%;
         left: 50%;
         transform: translate(-50%, -50%);
     }

     .calendar-wrap.mb .table-calendar .type-guideMondayoff .event-title[data-title]::before {
         font-size: 18px;
         line-height: 22px;
         width: 20px;
         top: 70px;
         height: 100px;
     }
 }

 .download-cont .download-item {
     clear: both;
 }

 .download-cont .download-item .title {
     font-size: 1.2rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     padding: .8rem 0;
 }

 .download-cont .download-item .title span {
     border-left: #444 solid 1px;
     margin-left: 1rem;
     padding-left: 1rem;
 }

 .download-list {
     overflow: auto;
 }

 .download-list li {
     display: block;
     margin-bottom: 10px;
 }

 .download-list li a {
     color: #3D3D3D;
     font-size: 1rem;
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
     text-decoration: none;
     display: block;
     border-radius: 7px;
     background: #EAEAEA;
     padding: .5rem 3rem .5rem 1rem;
     position: relative;
 }

 .download-list li a::after {
     content: "\f019";
     font-weight: 900;
     color: #989898;
     font-family: 'Font Awesome 5 Pro';
     position: absolute;
     right: 1rem;
 }

 .download-list li a:hover {
     background: #d4d4d4;
 }

 .download-list li a:hover::after {
     color: #333;
 }

 @media(min-width:768px) {
     .download-list li {
         width: 50%;
         float: left;
     }

     .download-list li:nth-of-type(even) a {
         margin-left: .5rem;
     }

     .download-list li:nth-of-type(odd) a {
         margin-right: .5rem;
     }
 }

 .resource-wrap .container {
     width: calc(100% - 100px);
     margin: 2.5rem auto;
     max-width: inherit;
 }

 .resource-wrap .resource-info>.title {
     font-size: 2rem;
     font-family: 'Noto Serif TC', serif;
     text-align: center;
     display: block;
 }

 .resource-wrap .img-slider .swiper-container {
     margin: 0 auto;
     height: 350px;
     width: 80%;
 }

 .resource-wrap .img-slider .swiper-button-prev {
     left: 0;
 }

 .resource-wrap .img-slider .swiper-button-next {
     right: 0;
 }

 .resource-wrap .btn-link {
     font-family: "Microsoft JhengHei", "LiHei Pro", sans-serif;
     border: #AFAFAF solid 1px;
     color: #393939;
     border-radius: 20px;
     padding: .3rem 2rem;
     text-decoration: none;
 }

 .resource-wrap .btn-link::after {
     margin-left: .5rem;
 }

 .resource-wrap .btn-link[aria-expanded="true"]::after {
     content: "\f077";
     font-family: 'Font Awesome 5 Pro';
 }

 .resource-wrap .btn-link[aria-expanded="false"]::after {
     content: "\f078";
     font-family: 'Font Awesome 5 Pro';
 }

 .resource-wrap .btn-link:hover {
     text-decoration: none;
 }

 .resource-wrap .btn-link.seatView {
     margin: 1rem auto;
     width: 300px;
     display: block;
     max-width: 100%;
 }

 .resource-wrap .btn-link.seatView i {
     margin-right: .5rem;
 }

 .resource-wrap .resource-description {
     height: 100%;
     position: relative;
     padding-top: 2rem;
 }

 .resource-wrap .nav-slider li:last-of-type {
     display: none;
 }

 @media(min-width:1280px) {
     .resource-wrap .resource-info {
         position: relative;
     }

     .resource-wrap .resource-info>.title {
         width: calc(60% - 35px);
         position: absolute;
         right: 0;
         text-align: left;
     }

     .resource-wrap .resource-item:last-of-type .resource-info>.title {
         position: relative;
         width: inherit;
     }

     .resource-wrap .btn-link.seatView {
         position: absolute;
         z-index: 1;
         right: 0;
         top: 10px;
         margin: initial;
         width: initial;
     }

     .resource-wrap .resource-description {
         padding-top: 4rem;
         margin-bottom: 2rem;
     }

     .resource-wrap .resource-item:last-of-type .resource-description {
         padding-top: 1rem;
     }

     .resource-wrap .resource-description .action {
         position: relative;
         bottom: 0;
         width: 100%;
     }
 }

 .resource-wrap .resource-description .action .btn-link:last-of-type {
     margin-right: 0;
 }

 .resource-wrap .resource-cont {
     margin: 2rem 0;
 }

 .resource-wrap .resource-cont .post-content .main-content {
     padding: 0;
     min-height: auto;
     margin-bottom: 1rem;
     width: 100%;
 }

 .resource-wrap .download-cont {
     margin: 2rem 0;
 }

 .resource-item {
     clear: both;
     margin-bottom: 40px;
 }

 .resource-item+.resource-item {
     padding-top: 2rem;
     border-top: #c7c7c7 solid 1px;
 }

 @media(min-width:768px) {
     .resource-wrap .resource-cont {
         margin: 0;
     }

     .resource-item+.resource-item {
         margin-top: 0;
     }

     .resource-wrap .resource-description .action .btn-link {
         margin-right: .8rem;
     }

     .resource-wrap .img-slider .img-fluid {
         height: 100%;
         max-width: fit-content;
     }
 }

 @media(min-width:1256px) and (max-width:1770px) {
     .resource-wrap .img-slider .swiper-container {
         height: 300px;
     }

     .resource-wrap .img-slider .img-fluid {
         height: auto;
         max-width: 100%;
     }
 }
 @media(max-width:1280px) {
     .functionbar-wrap div[class*='col-md-']:first-of-type .form-check{
         width: 33.333%;
     }
 }


 @media(max-width:1255px) {
     .resource-wrap div[class*='col-md-'] {
         -ms-flex: 0 0 100%;
         flex: 0 0 100%;
         max-width: 100%;
     }
 }


 


 @media(max-width:959px) {
     .resource-wrap .resource-description .action {
         text-align: center;
     }
 }

 @media(max-width:767px) {
     .resource-wrap .container {
         width: calc(100% - 30px);
         padding: 0;
     }

     .resource-item+.resource-item {
         padding-top: 6rem;
         margin: 0;
         border-top: none;
     }

     .resource-wrap .resource-info>.title {
         margin-bottom: 15px;
         padding-top: 2rem;
     }

     .resource-wrap .resource-item+.resource-item .resource-info>.title {
         border-top: #c7c7c7 solid 1px;
     }

     .resource-wrap .img-slider .swiper-slide figure {
         display: flex;
         justify-content: center;
         align-items: center;
         margin: 0;
     }

     .resource-wrap .btn-link {
         padding: .3rem 1rem;
     }

     .resource-wrap .resource-cont .post-content .main-content {
         margin-bottom: 0;
     }

     .resource-wrap .resource-description .action .btn-link {
         margin-bottom: 10px;
     }
 }

 @media(max-width:500px) {
     .resource-wrap .row {
         margin: 0;
     }

     .resource-wrap .img-slider .swiper-container {
         margin: 0 auto;
         height: 240px;
         width: 300px;
     }
 }

 @media(max-width:430px) {
     .resource-wrap .img-slider .swiper-container {
         height: 200px;
         width: 60vw;
     }
 }

 .rentlist-wrap {
     padding: 2rem 2em;
 }

 @media(min-width:768px) {
     .rentlist-wrap {
         padding: 2rem 5em;
     }
 }

 .rentlist-wrap .download-item .title {
     border-bottom: #C7C7C7 solid 1px;
     font-family: 'Noto Serif TC', serif;
     font-size: 1.5rem;
     margin-bottom: 1.2rem;
 }

 .overlay {
     height: 100%;
     width: 0;
     position: fixed;
     z-index: 1;
     top: 0;
     right: 0;
     background-color: rgb(0, 0, 0);
     background-color: rgba(0, 0, 0, 0.9);
     overflow-x: hidden;
     opacity: 0;
     transition: 0.5s;
 }

 .bg-gray.overlay {
     background: #F3F2F0;
 }

 .overlay.open {
     opacity: 1;
     width: 100%;
     z-index: 2;
 }

 .overlay-content {
     position: relative;
 }

 #notice.overlay {
     height: 100%;
     width: 100%;
     opacity: 0;
     z-index: -1;
     transition: 0.8s;
 }

 #notice.overlay.open {
     z-index: 2;
     opacity: 100%;
 }

 .overlay-content .wtbox.row>div[class*='col-md-']>* {
     width: auto;
 }

 .overlay .btn-close {
     padding: 8px;
     text-decoration: none;
     font-size: 36px;
     color: #818181;
     display: block;
     transition: 0.3s;
 }

 .overlay .btn-close {
     position: absolute;
     top: 80px;
     right: 20px;
     font-size: 45px;
     z-index: 1;
 }

 @media(min-width:960px) {
     .overlay {
         padding: 0;
     }

     .overlay .btn-close {
         top: 45px;
         right: 70px;
     }

     .overlay-content {
         top: 50%;
         left: 0;
         transform: translateY(-50%);
         width: calc(100% - 130px);
         margin: auto;
     }
 }

 @media(max-width:959px) {
     .overlay {
         width: 100%;
         height: 0;
     }

     .overlay.open {
         width: 100%;
         height: 100%;
     }

     .overlay .btn-close,
     .overlay .btn-close:hover {
         top: 65px;
         right: 15px;
         font-size: 30px;
         color: #818181;
     }

     #notice.overlay .overlay-content {
         position: absolute;
         top: 50%;
         left: 50%;
         transform: translate(-50%, -50%);
         width: 98vw;
     }
 }

 @media screen and (max-height: 450px) {
     .overlay a {
         font-size: 20px
     }

     .overlay .btn-close {
         font-size: 40px;
         top: 15px;
         right: 35px;
     }
 }

 #search.overlay {
     background: -moz-linear-gradient(top, rgba(4, 4, 4, 0.91) 0%, rgba(88, 88, 88, 0.93) 55%, rgb(0, 0, 0) 93%);
     background: -webkit-linear-gradient(top, rgba(4, 4, 4, 0.91) 0%, rgba(88, 88, 88, 0.93) 55%, rgb(0, 0, 0) 93%);
     background: linear-gradient(to bottom, rgba(4, 4, 4, 0.91) 0%, rgba(88, 88, 88, 0.93) 55%, rgb(0, 0, 0) 93%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4D4D4D', endColorstr='#303030', GradientType=0);
     -webkit-filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4D4D4D', endColorstr='#303030', GradientType=0);
 }

 #search .overlay-content {
     text-align: center;
     width: calc(100% - 130px);
     position: relative;
     top: 45%;
     left: 0;
     transform: translateY(-50%);
     margin: auto;
 }

 @media(min-width:960px) {
     #search .overlay-content {
         padding: 0 10rem;
     }
 }

 #search .overlay-content .title {
     font-family: 'Noto Serif TC', serif;
     color: #fff;
     font-size: 43px;
     letter-spacing: 4px;
     margin-bottom: 40px;
 }

 #search .overlay-content .form-control {
     color: #fff;
     display: block;
     margin: 0 auto;
     width: 66%;
     height: 44px;
     border: 1px solid #fff;
     background: transparent;
 }

 #search .overlay-content ::-webkit-input-placeholder {
     color: #fff;
     opacity: .8;
 }

 #search .overlay-content input::-moz-placeholder {
     color: #fff;
     opacity: .8;
 }

 #search .overlay-content input::-moz-placeholder {
     color: #fff;
     opacity: .8;
 }

 #search .overlay-content:-ms-input-placeholder {
     color: #fff;
     opacity: .8;
 }

 #notice .info-wrap {
     width: 80%;
     margin: auto;
 }

 #notice .info-head {
     background: #D20031;
     position: relative;
     display: block;
     width: 100%;
     height: 120px;
 }

 #notice .title {
     position: absolute;
     bottom: 30px;
     left: 30px;
     color: #fff;
     font-family: 'Noto Serif TC', serif;
     text-align: left;
     font-size: 1.4rem;
     line-height: 1.8rem;
 }

 #notice .title span {
     display: block;
     font-family: 'Noto Serif TC', serif;
     font-size: 1.3rem;
 }

 #notice .info-cont {
     background: #fff;
     position: relative;
     overflow: hidden;
     height: calc(58vh - 20px);
 }

 #notice .info-cont::before {
     content: '';
     background: #fff url(../images/bg-notice.png) no-repeat;
     background-size: 60%;
     position: absolute;
     display: block;
     width: 100%;
     height: 100%;
     bottom: -40%;
     left: 7%
 }

 @media(max-width:768px) {
     #notice .info-cont::before {
         display: none;
     }
 }

 #notice .info-cont .post-content {
     height: 100%;
     min-height: auto;
     background: transparent;
 }

 #notice .info-cont .post-content .main-content {
     position: relative;
     z-index: 1;
     background: transparent;
     text-align: left;
     width: 100%;
     height: 100%;
     overflow: auto;
     padding: 1rem 2rem;
     min-height: auto;
 }

 @media(max-width:320px) {
     #notice .info-cont {
         height: calc(52vh - 20px);
     }
 }

 #notice .info-deco {
     display: none;
 }

 @media(min-width:960px) {
     #notice .info-wrap {
         display: flex;
         justify-content: center;
         align-items: center;
     }

     #notice .info-wrap>div {
         float: left;
     }

     #notice .info-head {
         width: 25%;
         background: #D20031 url(../images/logo-intro.svg) no-repeat center 45%;
         background-size: 70%;
     }

     #notice .info-head {
         height: 355px;
     }

     #notice .info-cont {
         width: 80%;
         height: 560px;
         position: relative;
     }

     #notice .info-deco {
         display: block;
         position: relative;
         display: inline-block;
         color: inherit;
         text-decoration: none;
         padding: .3em 1em 0;
         margin: 0 0em 0 -0.1em;
         height: 46px;
         width: 44px;
         -moz-transform: rotate(-90deg);
         -webkit-transform: rotate(-90deg);
         -o-transform: rotate(-90deg);
         -ms-transform: rotate(-90deg);
         transform: rotate(-90deg);
     }

     #notice .info-deco::before {
         content: '';
         position: absolute;
         top: 0;
         right: 0;
         bottom: 0;
         left: 0;
         z-index: -1;
         border-bottom: none;
         background: #4D4D4D;
         transform: scale(13.2, 1.6) perspective(0.55em) rotateX(6deg);
         transform-origin: bottom;
     }
 }

 @media(max-width:768px) {
     #notice .info-head {
         height: 100px;
     }

     #notice .title {
         bottom: 20px;
     }
 }

 @media(max-width:959px) {
     #member.open {
         padding: 65px 0;
     }

     #member .wtbox {
         width: 90%;
         height: 88vh;
     }

     #member .overlay-content {
         position: relative;
         top: 55%;
         left: 0/10;
         transform: translateY(-50%);
         margin: auto;
         left: 5px;
     }

     #member.overlay .btn-close {
         top: 65px;
         right: 20px;
     }

     #member .form-if a {
         display: block;
     }
 }

 @media(max-height:736px) {
     #member .wtbox {
         height: 660px;
     }

     #member .overlay-content {
         top: 60%;
     }
 }

 @media(max-width:320px) {
     #member.open {
         padding: 0px 0 15px;
     }

     #member .wtbox {
         margin-top: 115px;
     }
 }

 .join-cont {
     background: url(../images/bg-join.jpg) no-repeat right bottom;
     background-size: cover;
     position: relative;
     padding: 40px 40px 90px;
 }

 .join-cont::before {
     content: '';
     background: #544E45;
     opacity: 0.8;
     position: absolute;
     display: block;
     width: 100%;
     height: 100%;
     left: 0;
     top: 0;
     z-index: 1;
 }

 .join-cont>* {
     position: relative;
     z-index: 2;
 }

 .join-cont .form-title {
     color: #fff;
 }

 .benefitList {
     margin: 40px 0;
     padding-left: 2rem;
 }

 .benefitList li {
     color: #fff;
     display: block;
     font-size: 1.2rem;
     letter-spacing: 1px;
 }

 .benefitList li::before {
     content: "\f00c";
     font-family: 'Font Awesome 5 Pro';
     color: #fff;
     margin-right: .5rem;
     position: absolute;
     margin-left: -2rem;
 }

 .wtbox.row>.join-cont {
     padding: 90px 40px 40px !important;
 }

 .join-cont .btn-back {
     position: absolute;
     left: 0;
     top: 20px;
     border-radius: 0 20px 20px 0;
     border-left: none;
     padding: .375rem 1rem .375rem .75rem;
 }

 .join-cont .btn-back::before {
     content: "\f053";
     font-family: 'Font Awesome 5 Pro';
     margin-right: .5rem;
 }

 .login-cont .btn-enter {
     position: absolute;
     right: 0;
     bottom: 20px;
     border-radius: 20px 0 0 20px;
     border-right: none;
     padding: .375rem .75rem .375rem 1rem;
 }

 .login-cont {
     padding: 40px 40px 90px;
 }

 .login-cont .btn-enter::after {
     content: "\f054";
     font-family: 'Font Awesome 5 Pro';
     margin-left: .5rem;
 }

 @media(min-width:768px) {

     .join-cont,
     .login-cont {
         padding: 0;
     }
 }

 @media(max-width:768px) {
     .login-cont {
         padding: 20px 15px 90px;
     }
 }

 @media(min-width:960px) {

     h1,
     h2,
     h3,
     h4,
     .footer-title,
     .cards-wrap .card-title a,
     .list-collapse .collapsebtn,
     .section-title,
     .hotslider-wrap .hot .swiper-slide .img-description .img-title,
     .hotslider-wrap .hot .swiper-slide .img-description a,
     .hotslider-wrap .hot .swiper-slide .btn-link,
     .newslider .card-title a,
     .main-title,
     .guide-con a h3,
     .list-collapse .reser-title,
     .introduction p,
     .nttplus .row div[class*='col-'] h3 a,
     .grid-wrap .row div[class*='col-'] h3 a,
     .timeline-wrap .monEvent-title,
     .results_list .results_content h3 a,
     .post-content .postcont-wrap .main-content section>.title,
     .post-content ul.list-info li p.title,
     .post-content ul.list-info li p.title a,
     .post-content .benefitList.notic li,
     .post-content .emphasis p,
     .post-content .emphasis a,
     .table-rwd td:before,
     .table-rwd.exceed td:before,
     .post-content .ac-date,
     .post-content .Activity .ac-title,
     .post-content .cube .ac-title,
     .post-content .saying p,
     .post-content .saying .writer,
     .c-title,
     .visual-wrap .section-title span,
     .build-intoduction .slide-title span,
     .reser-title,
     .table-rwd td.cancle:before,
     .table-calendar thead tr>*,
     .table-calendar tbody td .numberDate,
     .calendar-header .header-title,
     .resource-wrap .resource-info>.title,
     .rentlist-wrap .download-item .title,
     #search .overlay-content .title,
     #notice .title,
     #notice .title span {
         font-weight: 700;
     }
 }

 @font-face {
     font-family: "npacfont";
     src: url('../fonts/npacFont/npacfont.eot?4');
     src: url('../fonts/npacFont/npacfont.eot?#iefix') format('eot'), url('../fonts/npacFont/npacfont.woff2?4') format('woff2'), url('../fonts/npacFont/npacfont.woff?4') format('woff'), url('../fonts/npacFont/npacfont.ttf?4') format('truetype'), url('../fonts/npacFont/npacfont.svg?4#symbols') format('svg');
     font-weight: normal;
     font-style: normal;
 }

 @media(max-width:959px) {

     [class*=fa-]:before,
     .nttFont:before {
         display: inline-block;
         font-family: "npacfont","Font Awesome 5 Pro";
         font-style: normal;
         font-weight: normal;
         line-height: 1;
         -webkit-font-smoothing: antialiased;
         -moz-osx-font-smoothing: grayscale;
     }

     .nttFont-lg {
         font-size: 1.3333333333333333em;
         line-height: 0.75em;
         vertical-align: -15%;
     }

     .nttFont-2x {
         font-size: 2em;
     }

     .nttFont-3x {
         font-size: 3em;
     }

     .nttFont-4x {
         font-size: 4em;
     }

     .nttFont-5x {
         font-size: 5em;
     }

     .nttFont-fw {
         width: 1.2857142857142858em;
         text-align: center;
     }

     .fab.fa-facebook-f:before {
         content: "\EA01"
     }

     .fab.fa-facebook-messenger:before {
         content: "\EA02"
     }

     .fab.fa-facebook-square:before {
         content: "\EA03"
     }

     .fab.fa-facebook:before {
         content: "\EA04"
     }

     .fab.fa-google-plus:before {
         content: "\EA05"
     }

     .fab.fa-google:before {
         content: "\EA06"
     }

     .fab.fa-instagram-square:before {
         content: "\EA07"
     }

     .fab.fa-instagram:before {
         content: "\EA08"
     }

     .fab.fa-line:before {
         content: "\EA09"
     }

     .fab.fa-medium-m:before {
         content: "\EA0A"
     }

     .fab.fa-medium:before {
         content: "\EA0B"
     }

     .fab.fa-youtube-square:before {
         content: "\EA0C"
     }

     .fab.fa-youtube:before {
         content: "\EA0D"
     }

     .fal.fa-angle-down:before {
         content: "\EA0E"
     }

     .fal.fa-angle-left:before {
         content: "\EA0F"
     }

     .fal.fa-angle-right:before {
         content: "\EA10"
     }

     .fal.fa-angle-up:before {
         content: "\EA11"
     }

     .fal.fa-arrow-circle-down:before {
         content: "\EA12"
     }

     .fal.fa-arrow-circle-left:before {
         content: "\EA13"
     }

     .fal.fa-arrow-circle-right:before {
         content: "\EA14"
     }

     .fal.fa-arrow-circle-up:before {
         content: "\EA15"
     }

     .fal.fa-arrow-down:before {
         content: "\EA16"
     }

     .fal.fa-arrow-left:before {
         content: "\EA17"
     }

     .fal.fa-arrow-right:before {
         content: "\EA18"
     }

     .fal.fa-arrow-to-top:before {
         content: "\EA19"
     }

     .fal.fa-arrow-up:before {
         content: "\EA1A"
     }

     .fal.fa-bars:before {
         content: "\EA1B"
     }

     .fal.fa-bicycle:before {
         content: "\EA1C"
     }

     .fal.fa-book-open:before {
         content: "\EA1D"
     }

     .fal.fa-bus-alt:before {
         content: "\EA1E"
     }

     .fal.fa-bus:before {
         content: "\EA1F"
     }

     .fal.fa-calendar-alt:before {
         content: "\EA20"
     }

     .fal.fa-car-alt:before {
         content: "\EA21"
     }

     .fal.fa-check-circle:before {
         content: "\EA22"
     }

     .fal.fa-check:before {
         content: "\EA23"
     }

     .fal.fa-chevron-circle-down:before {
         content: "\EA24"
     }

     .fal.fa-chevron-circle-left:before {
         content: "\EA25"
     }

     .fal.fa-chevron-circle-right:before {
         content: "\EA26"
     }

     .fal.fa-chevron-circle-up:before {
         content: "\EA27"
     }

     .fal.fa-chevron-down:before {
         content: "\EA28"
     }

     .fal.fa-chevron-left:before {
         content: "\EA29"
     }

     .fal.fa-chevron-right:before {
         content: "\EA2A"
     }

     .fal.fa-chevron-up:before {
         content: "\EA2B"
     }

     .fal.fa-compass:before {
         content: "\EA2C"
     }

     .fal.fa-desktop:before {
         content: "\EA2D"
     }

     .fal.fa-download:before {
         content: "\EA2E"
     }

     .fal.fa-dungeon:before {
         content: "\EA2F"
     }

     .fal.fa-external-link-alt:before {
         content: "\EA30"
     }

     .fal.fa-external-link:before {
         content: "\EA31"
     }

     .fal.fa-home-alt:before {
         content: "\EA32"
     }

     .fal.fa-home-lg-alt:before {
         content: "\EA33"
     }

     .fal.fa-home-lg:before {
         content: "\EA34"
     }

     .fal.fa-home:before {
         content: "\EA35"
     }

     .fal.fa-horizontal-rule:before {
         content: "\EA36"
     }

     .fal.fa-images:before {
         content: "\EA37"
     }

     .fal.fa-info-circle:before {
         content: "\EA38"
     }

     .fal.fa-laptop:before {
         content: "\EA39"
     }

     .fal.fa-link:before {
         content: "\EA3A"
     }

     .fal.fa-loveseat:before {
         content: "\EA3B"
     }

     .fal.fa-map-marker-alt:before {
         content: "\EA3C"
     }

     .fal.fa-minus-circle:before {
         content: "\EA3D"
     }

     .fal.fa-minus:before {
         content: "\EA3E"
     }

     .fal.fa-mobile-alt:before {
         content: "\EA3F"
     }

     .fal.fa-plane-alt:before {
         content: "\EA40"
     }

     .fal.fa-plane:before {
         content: "\EA41"
     }

     .fal.fa-plus-circle:before {
         content: "\EA42"
     }

     .fal.fa-plus:before {
         content: "\EA43"
     }

     .fal.fa-search:before {
         content: "\EA44"
     }

     .fal.fa-file-search:before {
        content: "\f865"
    }

     .fal.fa-sort-up:before {
         content: "\EA45"
     }

     .fal.fa-subway:before {
         content: "\EA46"
     }

     .fal.fa-tag:before {
         content: "\EA47"
     }

     .fal.fa-tags:before {
         content: "\EA48"
     }

     .fal.fa-th-large:before {
         content: "\EA49"
     }

     .fal.fa-th-list:before {
         content: "\EA4A"
     }

     .fal.fa-th:before {
         content: "\EA4B"
     }

     .fal.fa-theater-masks:before {
         content: "\EA4C"
     }

     .fal.fa-times-circle:before {
         content: "\EA4D"
     }

     .fal.fa-times:before {
         content: "\EA4E"
     }

     .fal.fa-train:before {
         content: "\EA4F"
     }

     .far.fa-angle-left:before {
         content: "\EA50"
     }

     .far.fa-angle-right:before {
         content: "\EA51"
     }

     .far.fa-angle-up:before {
         content: "\EA52"
     }

     .far.fa-arrow-circle-down:before {
         content: "\EA53"
     }

     .far.fa-arrow-circle-left:before {
         content: "\EA54"
     }

     .far.fa-arrow-circle-right:before {
         content: "\EA55"
     }

     .far.fa-arrow-circle-up:before {
         content: "\EA56"
     }

     .far.fa-arrow-down:before {
         content: "\EA57"
     }

     .far.fa-arrow-left:before {
         content: "\EA58"
     }

     .far.fa-arrow-right:before {
         content: "\EA59"
     }

     .far.fa-arrow-to-top:before {
         content: "\EA5A"
     }

     .far.fa-arrow-up:before {
         content: "\EA5B"
     }

     .far.fa-bars:before {
         content: "\EA5C"
     }

     .far.fa-bicycle:before {
         content: "\EA5D"
     }

     .far.fa-book-open:before {
         content: "\EA5E"
     }

     .far.fa-bus-alt:before {
         content: "\EA5F"
     }

     .far.fa-bus:before {
         content: "\EA60"
     }

     .far.fa-calendar-alt:before {
         content: "\EA61"
     }

     .far.fa-car-alt:before {
         content: "\EA62"
     }

     .far.fa-check-circle:before {
         content: "\EA63"
     }

     .far.fa-check:before {
         content: "\EA64"
     }

     .far.fa-chevron-circle-down:before {
         content: "\EA65"
     }

     .far.fa-chevron-circle-left:before {
         content: "\EA66"
     }

     .far.fa-chevron-circle-right:before {
         content: "\EA67"
     }

     .far.fa-chevron-circle-up:before {
         content: "\EA68"
     }

     .far.fa-chevron-down:before {
         content: "\EA69"
     }

     .far.fa-chevron-left:before {
         content: "\EA6A"
     }

     .far.fa-chevron-right:before {
         content: "\EA6B"
     }

     .far.fa-chevron-up:before {
         content: "\EA6C"
     }

     .far.fa-compass:before {
         content: "\EA6D"
     }

     .far.fa-desktop:before {
         content: "\EA6E"
     }

     .far.fa-download:before {
         content: "\EA6F"
     }

     .far.fa-dungeon:before {
         content: "\EA70"
     }

     .far.fa-external-link-alt:before {
         content: "\EA71"
     }

     .far.fa-external-link:before {
         content: "\EA72"
     }

     .far.fa-home-alt:before {
         content: "\EA73"
     }

     .far.fa-home-lg-alt:before {
         content: "\EA74"
     }

     .far.fa-home-lg:before {
         content: "\EA75"
     }

     .far.fa-home:before {
         content: "\EA76"
     }

     .far.fa-horizontal-rule:before {
         content: "\EA77"
     }

     .far.fa-images:before {
         content: "\EA78"
     }

     .far.fa-info-circle:before {
         content: "\EA79"
     }

     .far.fa-laptop:before {
         content: "\EA7A"
     }

     .far.fa-link:before {
         content: "\EA7B"
     }

     .far.fa-loveseat:before {
         content: "\EA7C"
     }

     .far.fa-map-marker-alt:before {
         content: "\EA7D"
     }

     .far.fa-minus-circle:before {
         content: "\EA7E"
     }

     .far.fa-minus:before {
         content: "\EA7F"
     }

     .far.fa-mobile-alt:before {
         content: "\EA80"
     }

     .far.fa-plane-alt:before {
         content: "\EA81"
     }

     .far.fa-plane:before {
         content: "\EA82"
     }

     .far.fa-plus-circle:before {
         content: "\EA83"
     }

     .far.fa-plus:before {
         content: "\EA84"
     }

     .far.fa-search:before {
         content: "\EA85"
     }

     .far.fa-sort-up:before {
         content: "\EA86"
     }

     .far.fa-subway:before {
         content: "\EA87"
     }

     .far.fa-tag:before {
         content: "\EA88"
     }

     .far.fa-tags:before {
         content: "\EA89"
     }

     .far.fa-th-large:before {
         content: "\EA8A"
     }

     .far.fa-th-list:before {
         content: "\EA8B"
     }

     .far.fa-th:before {
         content: "\EA8C"
     }

     .far.fa-theater-masks:before {
         content: "\EA8D"
     }

     .far.fa-times-circle:before {
         content: "\EA8E"
     }

     .far.fa-times:before {
         content: "\EA8F"
     }

     .far.fa-train:before {
         content: "\EA90"
     }

     .fas.fa-angle-left:before {
         content: "\EA91"
     }

     .fas.fa-angle-right:before {
         content: "\EA92"
     }

     .fas.fa-angle-up:before {
         content: "\EA93"
     }

     .fas.fa-arrow-circle-down:before {
         content: "\EA94"
     }

     .fas.fa-arrow-circle-left:before {
         content: "\EA95"
     }

     .fas.fa-arrow-circle-right:before {
         content: "\EA96"
     }

     .fas.fa-arrow-circle-up:before {
         content: "\EA97"
     }

     .fas.fa-arrow-down:before {
         content: "\EA98"
     }

     .fas.fa-arrow-left:before {
         content: "\EA99"
     }

     .fas.fa-arrow-right:before {
         content: "\EA9A"
     }

     .fas.fa-arrow-to-top:before {
         content: "\EA9B"
     }

     .fas.fa-arrow-up:before {
         content: "\EA9C"
     }

     .fas.fa-bars:before {
         content: "\EA9D"
     }

     .fas.fa-bicycle:before {
         content: "\EA9E"
     }

     .fas.fa-book-open:before {
         content: "\EA9F"
     }

     .fas.fa-bus-alt:before {
         content: "\EAA0"
     }

     .fas.fa-bus:before {
         content: "\EAA1"
     }

     .fas.fa-calendar-alt:before {
         content: "\EAA2"
     }

     .fas.fa-car-alt:before {
         content: "\EAA3"
     }

     .fas.fa-check-circle:before {
         content: "\EAA4"
     }

     .fas.fa-check:before {
         content: "\EAA5"
     }

     .fas.fa-chevron-circle-down:before {
         content: "\EAA6"
     }

     .fas.fa-chevron-circle-left:before {
         content: "\EAA7"
     }

     .fas.fa-chevron-circle-right:before {
         content: "\EAA8"
     }

     .fas.fa-chevron-circle-up:before {
         content: "\EAA9"
     }

     .fas.fa-chevron-down:before {
         content: "\EAAA"
     }

     .fas.fa-chevron-left:before {
         content: "\EAAB"
     }

     .fas.fa-chevron-right:before {
         content: "\EAAC"
     }

     .fas.fa-chevron-up:before {
         content: "\EAAD"
     }

     .fas.fa-compass:before {
         content: "\EAAE"
     }

     .fas.fa-desktop:before {
         content: "\EAAF"
     }

     .fas.fa-download:before {
         content: "\EAB0"
     }

     .fas.fa-dungeon:before {
         content: "\EAB1"
     }

     .fas.fa-external-link-alt:before {
         content: "\EAB2"
     }

     .fas.fa-external-link:before {
         content: "\EAB3"
     }

     .fas.fa-home-alt:before {
         content: "\EAB4"
     }

     .fas.fa-home-lg-alt:before {
         content: "\EAB5"
     }

     .fas.fa-home-lg:before {
         content: "\EAB6"
     }

     .fas.fa-home:before {
         content: "\EAB7"
     }

     .fas.fa-horizontal-rule:before {
         content: "\EAB8"
     }

     .fas.fa-images:before {
         content: "\EAB9"
     }

     .fas.fa-info-circle:before {
         content: "\EABA"
     }

     .fas.fa-laptop:before {
         content: "\EABB"
     }

     .fas.fa-link:before {
         content: "\EABC"
     }

     .fas.fa-loveseat:before {
         content: "\EABD"
     }

     .fas.fa-map-marker-alt:before {
         content: "\EABE"
     }

     .fas.fa-minus-circle:before {
         content: "\EABF"
     }

     .fas.fa-minus:before {
         content: "\EAC0"
     }

     .fas.fa-mobile-alt:before {
         content: "\EAC1"
     }

     .fas.fa-plane-alt:before {
         content: "\EAC2"
     }

     .fas.fa-plane:before {
         content: "\EAC3"
     }

     .fas.fa-plus-circle:before {
         content: "\EAC4"
     }

     .fas.fa-plus:before {
         content: "\EAC5"
     }

     .fas.fa-search:before {
         content: "\EAC6"
     }

     .fas.fa-sort-up:before {
         content: "\EAC7"
     }

     .fas.fa-subway:before {
         content: "\EAC8"
     }

     .fas.fa-tag:before {
         content: "\EAC9"
     }

     .fas.fa-tags:before {
         content: "\EACA"
     }

     .fas.fa-th-large:before {
         content: "\EACB"
     }

     .fas.fa-th-list:before {
         content: "\EACC"
     }

     .fas.fa-th:before {
         content: "\EACD"
     }

     .fas.fa-theater-masks:before {
         content: "\EACE"
     }

     .fas.fa-times-circle:before {
         content: "\EACF"
     }

     .fas.fa-times:before {
         content: "\EAD0"
     }

     .fas.fa-train:before {
         content: "\EAD1"
     }

     .far.fa-arrow-right {
         content: "\EA59"
     }

     .nttFont.npac-calendar:before {
         content: "\EAD2"
     }

     .nttFont.npac-en:before {
         content: "\EAD3"
     }

     .nttFont.npac-jp:before {
         content: "\EAD4"
     }

     .nttFont.npac-logo:before {
         content: "\EAD5"
     }

     .nttFont.npac-member:before {
         content: "\EAD6"
     }

     .nttFont.npac-menu:before {
         content: "\EAD7"
     }

     .nttFont.npac-more:before {
         content: "\EAD8"
     }

     .nttFont.npac-search:before {
         content: "\EAD9"
     }

     .nttFont.npac-share:before {
         content: "\EADA"
     }

     .nttFont.npac-tw:before {
         content: "\EADB"
     }

     .join-cont .btn-back::before,
     #navCollapse .section-nav li.active a::after,
     .login-cont .btn-enter::after,
     .benefitList li::before,
     .resource-wrap .btn-link[aria-expanded="false"]::after,
     .resource-wrap .btn-link[aria-expanded="true"]::after,
     .download-list li a::after,
     .reser-title.collapse-title:after,
     .reser-title.collapse-title[aria-expanded="false"]:after,
     .illustrate span:before,
     .btn.icon::before,
     .post-content .downloadList li a::after,
     .post-content .link:after,
     .post-content ul.list-info li>a::after,
     .post-content blockquote span::before,
     .post-wrapper .btn-back::before,
     .list-collapse .card-header .reser-title[aria-expanded="false"]:before,
     .list-collapse .card-header .reser-title:before,
     .img-gallery .img-cover::before,
     #filterBox .main-filter .nav-item a[aria-expanded="false"]:before,
     #filterBox .main-filter .nav-item a[aria-expanded="true"]:before,
     .functionbar .bootstrap-select>.dropdown-toggle:after,
     .functionbar .filter .nav-item .nav-link.btn-callfilter::after,
     .functionbar .filter .nav-item .nav-link.btn-filtersearch::after,
     .functionbar .filter .nav-item .nav-link[aria-expanded="false"]::after,
     .functionbar .filter .nav-item .nav-link::after,
     .functionbar .filter .nav-item .nav-link.dropdown-toggle::after,
     .section-nav .nav-top .nav-link::before,
     .list-collapse .collapsebtn:before,
     .form-check-secondary input:checked~.form-check-label::after,
     div[class*='swiper-button-']::before,
     .footer-link::after,
     .main-menu .menu>ul>li>ul.normal-sub>li:not(.item-image) a::after,
     .menu-dropdown-icon:before {
         font-family: 'npacfont';
     }

     .menu-dropdown-icon:before {
         content: '\EA6B';
     }

     .join-cont .btn-back::before {
         content: '\EA6A';
     }

     .main-menu .menu>ul>li>ul.normal-sub>li:not(.item-image) a::after {
         content: '\EA59';
     }

     .footer-link::after {
         content: '\EA59';
     }

     .swiper-button-next::before {
         content: "\EA6B";
     }

     .swiper-button-prev::before {
         content: "\EA6A";
     }

     .form-check-secondary input:checked~.form-check-label::after {
         content: "\EA23";
     }

     .list-collapse .collapsebtn[aria-expanded="false"]:before {
         content: '\EA84';
     }

     .list-collapse .collapsebtn[aria-expanded="true"]:before {
         content: '\EA7F';
     }

     .section-nav .nav-top .nav-link::before {
         content: '\EA5A';
     }

     .functionbar .filter .nav-item .nav-link::after,
     .functionbar .filter .nav-item .nav-link.dropdown-toggle::after {
         content: "\EA6C";
     }

     .functionbar .filter .nav-item .nav-link[aria-expanded="false"]::after {
         content: "\EA69";
     }

     .functionbar .filter .nav-item .nav-link.btn-filtersearch::after {
         content: "\EA44";
     }

     .functionbar .filter .nav-item .nav-link.btn-callfilter::after {
         content: "\EA44";
     }

     .functionbar .bootstrap-select>.dropdown-toggle:after {
         content: "\EA69";
     }

     #filterBox .main-filter .nav-item a[aria-expanded="true"]:before {
         content: '\EA7F';
     }

     #filterBox .main-filter .nav-item a[aria-expanded="false"]:before {
         content: '\EA84';
     }

     .img-gallery .img-cover::before {
         content: '\EA78';
     }

     .list-collapse .card-header .reser-title:before {
         content: '\EA84';
     }

     .list-collapse .card-header .reser-title[aria-expanded="false"]:before {
         content: '\EA7D';
     }

     .post-wrapper .btn-back::before {
         content: "\EA6A";
     }

     .post-content blockquote span::before {
         content: "\EA77";
     }

     .post-content ul.list-info li>a::after {
         content: '\EA59';
     }

     .post-content .link:after {
         content: "\EA6B";
     }

     .post-content .downloadList li a::after {
         content: '\EAB0';
     }

     .icon.btn-web::before {
         content: '\EA7B';
     }

     .icon.btn-dm::before {
         content: '\EAB0';
     }

     .icon.btn-book::before {
         content: '\EA9F';
     }

     .illustrate span:before {
         content: '\EAC7';
     }

     .reser-title.collapse-title[aria-expanded="false"]:after {
         content: "\EA69";
     }

     .reser-title.collapse-title:after {
         content: "\EA6C";
     }

     .download-list li a::after {
         content: '\EAB0';
     }

     .resource-wrap .btn-link[aria-expanded="true"]::after {
         content: "\EA6C";
     }

     .resource-wrap .btn-link[aria-expanded="false"]::after {
         content: "\EA69";
     }

     .benefitList li::before {
         content: "\EA23";
     }

     .login-cont .btn-enter::after {
         content: "\EA6B";
     }

     #navCollapse .section-nav li.active a::after {
         content: "\EA17";
     }
 }

 @media screen\0 {
     .nttplus .img-cover {
         height: 235px;
         display: block;
     }

     .nttplus .container .row div[class*='col-'] {
         height: 300px;
     }

     .grid-wrap .img-cover {
         height: 235px;
         display: block;
     }

     .grid-wrap .container .row div[class*='col-'] {
         height: 300px;
     }

     .fal.fa-bars:before {
         display: inline-block;
         font-family: "npacfont";
         font-style: normal;
         font-weight: normal;
         line-height: 1;
         -webkit-font-smoothing: antialiased;
         -moz-osx-font-smoothing: grayscale;
     }

     .fal.fa-bars:before {
         content: "\EA1B"
     }
 }