*,
*::before,
*::after {
  box-sizing: border-box
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #444;
  text-align: left;
  background-color: #fff
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important
}

hr {
  box-sizing: content-box;
  margin: 1rem 0;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, .1);
  height: 0;
  overflow: visible
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: .5rem;
  font-weight: 500;
  line-height: 1.2
}

h1 {
  font-size: 2.5rem
}

h2 {
  font-size: 2rem
}

h3 {
  font-size: 1.75rem
}

h4 {
  font-size: 1.5rem
}

h5 {
  font-size: 1.25rem
}

h6 {
  font-size: 1rem
}

p {
  margin-top: 0;
  margin-bottom: 1rem
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0
}

b,
strong {
  font-weight: bolder
}

small,
.small {
  font-size: 80%;
  font-weight: 400
}

a {
  color: #444;
  text-decoration: none;
  background-color: transparent
}

a:hover {
  color: #555
}

a:not([href]),
a:not([href]):hover {
  color: inherit;
  text-decoration: none
}

pre,
code {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em
}

pre {
  display: block;
  margin: 0 0 1rem;
  overflow: auto;
  font-size: 87.5%;
  color: #212529
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word
}

a>code {
  color: inherit
}

figure {
  margin: 0 0 1rem
}

img {
  vertical-align: middle;
  border-style: none
}

.img-fluid {
  max-width: 100%;
  height: auto
}

svg {
  overflow: hidden;
  vertical-align: middle
}

table {
  border-collapse: collapse
}

caption {
  padding: .75rem 0;
  color: #6c757d;
  text-align: left;
  caption-side: bottom
}

th {
  text-align: inherit
}

label {
  display: inline-block;
  margin-bottom: .5rem
}

button {
  border-radius: 0
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit
}

button,
input {
  overflow: visible
}

button,
select {
  text-transform: none
}

select {
  word-wrap: normal
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0
}

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
}

[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
}

[hidden] {
  display: none !important
}

.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-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto
}

@media(min-width:1200px) {
  .container.container-xl {
    max-width: 1430px
  }
}

.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-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.col-sm-1,
.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-10,
.col-sm-11,
.col-sm-12,
.col-sm,
.col-sm-auto,
.col-md-1,
.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-10,
.col-md-11,
.col-md-12,
.col-md,
.col-md-auto,
.col-lg-1,
.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-10,
.col-lg-11,
.col-lg-12,
.col-lg,
.col-lg-auto,
.col-xl-1,
.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-10,
.col-xl-11,
.col-xl-12,
.col-xl,
.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%
}

@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-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%
  }

  .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%
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529
}

.table th,
.table td {
  padding: .75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6
}

.table tbody+tbody {
  border-top: 2px solid #dee2e6
}

.table-bordered {
  border: 1px solid #dee2e6
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px
}

.table-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: auto;
  padding: .375rem .75rem;
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  transition: border-color .15s ease-in-out
}

@media(prefers-reduced-motion:reduce) {
  .form-control {
    transition: none
  }
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0
}

.form-control::-webkit-input-placeholder,
.form-control::-moz-placeholder,
.form-control::placeholder {
  color: #6c757d;
  opacity: 1
}

.form-control:disabled,
.form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1
}

select.form-control[size],
select.form-control[multiple] {
  height: auto
}

textarea.form-control {
  height: auto
}

.form-group {
  margin-bottom: 1rem
}

.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
}

.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>.form-control,
.input-group>.form-control-plaintext,
.input-group>.custom-select,
.input-group>.custom-file {
  position: relative;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 0;
  margin-bottom: 0
}

.input-group>.form-control+.form-control,
.input-group>.form-control+.custom-select,
.input-group>.form-control+.custom-file,
.input-group>.form-control-plaintext+.form-control,
.input-group>.form-control-plaintext+.custom-select,
.input-group>.form-control-plaintext+.custom-file,
.input-group>.custom-select+.form-control,
.input-group>.custom-select+.custom-select,
.input-group>.custom-select+.custom-file,
.input-group>.custom-file+.form-control,
.input-group>.custom-file+.custom-select,
.input-group>.custom-file+.custom-file {
  margin-left: -1px
}

.input-group>.form-control:focus,
.input-group>.custom-select:focus,
.input-group>.custom-file .custom-file-input:focus~.custom-file-label {
  z-index: 3
}

.input-group>.custom-file .custom-file-input:focus {
  z-index: 4
}

.input-group>.form-control:not(:last-child),
.input-group>.custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0
}

.input-group>.form-control:not(:first-child),
.input-group>.custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0
}

.input-group-prepend,
.input-group-append {
  display: -ms-flexbox;
  display: flex
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3
}

.input-group-prepend .btn+.btn,
.input-group-prepend .btn+.input-group-text,
.input-group-prepend .input-group-text+.input-group-text,
.input-group-prepend .input-group-text+.btn,
.input-group-append .btn+.btn,
.input-group-append .btn+.input-group-text,
.input-group-append .input-group-text+.input-group-text,
.input-group-append .input-group-text+.btn {
  margin-left: -1px
}

.input-group-prepend {
  margin-right: -1px
}

.input-group-append {
  margin-left: -1px
}

.input-group-text {
  display: -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="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0
}

.input-group>.input-group-prepend>.btn,
.input-group>.input-group-prepend>.input-group-text,
.input-group>.input-group-append:not(:last-child)>.btn,
.input-group>.input-group-append:not(:last-child)>.input-group-text,
.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),
.input-group>.input-group-append:last-child>.input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0
}

.input-group>.input-group-append>.btn,
.input-group>.input-group-append>.input-group-text,
.input-group>.input-group-prepend:not(:first-child)>.btn,
.input-group>.input-group-prepend:not(:first-child)>.input-group-text,
.input-group>.input-group-prepend:first-child>.btn:not(:first-child),
.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0
}

.feedback-result {
  padding: .5rem;
  color: #dd0804;
  text-align: center
}

.was-validated:valid~.valid-feedback,
.is-valid~.valid-feedback {
  display: block
}

.was-validated:invalid~.invalid-feedback,
.was-validated:invalid~.invalid-tooltip,
.is-invalid~.invalid-feedback,
.is-invalid~.invalid-tooltip {
  display: block
}


.was-validated .form-control:invalid,
.form-control.is-invalid {
  border-color: #f5543f;
  padding-right: calc(1.5em + .75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(.375em + .1875rem) center;
  background-size: calc(.75em + .375rem) calc(.75em + .375rem)
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
  border-color: #f5543f
}

.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)
}

.was-validated .form-check-input:invalid~.form-check-label,
.form-check-input.is-invalid~.form-check-label {
  color: #f5543f
}

.was-validated .form-check-input:invalid~.invalid-feedback,
.was-validated .form-check-input:invalid~.invalid-tooltip,
.form-check-input.is-invalid~.invalid-feedback,
.form-check-input.is-invalid~.invalid-tooltip {
  display: block
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #444;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  -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: .875rem;
  line-height: 1.5;
  border-radius: .25rem
}

.btn:hover {
  color: #333;
  text-decoration: none
}

.btn:focus,
.btn.focus {
  outline: 0
}

.btn.disabled,
.btn:disabled {
  opacity: .65
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none
}

.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,
.dropup,
.dropright {
  position: relative
}

.dropdown-toggle {
  white-space: nowrap
}

.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: 0;
  margin: 0;
  font-size: .875rem;
  color: #444;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  box-shadow: 0 6px 12px rgba(0, 0, 0, .175)
}

.dropdown-menu-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: 0
}

.dropright .dropdown-toggle::after {
  float: right;
  display: inline-block;
  margin-left: .255em;
  margin-top: .5em;
  margin-right: -12px;
  content: "";
  vertical-align: 0;
  border-top: .3em solid transparent;
  border-right: 0;
  border-bottom: .3em solid transparent;
  border-left: .3em solid;
  color: #777
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0
}

.dropdown-menu[x-placement^="top"],
.dropdown-menu[x-placement^="right"],
.dropdown-menu[x-placement^="bottom"],
.dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: .5rem 1.25rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0
}

.dropdown-item:hover,
.dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa
}

.dropdown-item.active,
.dropdown-item:active {
  text-decoration: none;
  background-color: #f5f5f5
}

.dropdown-item.disabled,
.dropdown-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent
}

.dropdown-menu.show {
  display: block
}

.dropdown-toggle::after {
  margin-left: .5rem;
  font-family: cmsfont;
  content: ""
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none
}

.nav-link {
  display: block;
  padding: .5rem 1rem
}

.nav-link:hover,
.nav-link:focus {
  text-decoration: none
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6
}

.nav-tabs .nav-item {
  margin-bottom: -1px
}

.nav-tabs .nav-link {
  border: 1px solid transparent
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0
}

.nav-pills .nav-link {
  border-radius: .25rem
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
  color: #fff;
  background-color: #333
}

.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center
}

.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center
}

.tab-content>.tab-pane {
  display: none
}

.tab-content>.active {
  display: block
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem
}

.navbar .nav-link {
  cursor: pointer
}

.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between
}

.navbar-brand {
  display: inline-block;
  padding: 15px 0;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap
}

.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0
}

.navbar-nav .dropdown-menu {
  position: static
}

.navbar-text {
  display: inline-block;
  padding-top: .5rem;
  padding-bottom: .5rem
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center
}

.navbar-toggler {
  padding: .5rem .75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: .25rem;
  cursor: pointer
}

.navbar-toggler:hover,
.navbar-toggler:focus {
  text-decoration: none
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background: no-repeat center center;
  background-size: 100% 100%
}

@media(max-width:767.98px) {

  .navbar-expand-md>.container,
  .navbar-expand-md>.container-fluid,
  .navbar-expand-md>.container-sm,
  .navbar-expand-md>.container-md,
  .navbar-expand-md>.container-lg,
  .navbar-expand-md>.container-xl {
    padding-right: 0;
    padding-left: 0
  }
}

@media(min-width:768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start
  }

  .navbar-expand-md .navbar-nav {
    flex-direction: row
  }

  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute
  }

  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem
  }

  .navbar-expand-md>.container,
  .navbar-expand-md>.container-fluid,
  .navbar-expand-md>.container-sm,
  .navbar-expand-md>.container-md,
  .navbar-expand-md>.container-lg,
  .navbar-expand-md>.container-xl {
    flex-wrap: nowrap
  }

  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto
  }

  .navbar-expand-md .navbar-toggler {
    display: none
  }
}

@media(max-width:991.98px) {

  .navbar-expand-lg>.container,
  .navbar-expand-lg>.container-fluid,
  .navbar-expand-lg>.container-sm,
  .navbar-expand-lg>.container-md,
  .navbar-expand-lg>.container-lg,
  .navbar-expand-lg>.container-xl {
    padding-right: 0;
    padding-left: 0
  }
}

@media(min-width:992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start
  }

  .navbar-expand-lg .navbar-nav {
    flex-direction: row
  }

  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute
  }

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem
  }

  .navbar-expand-lg>.container,
  .navbar-expand-lg>.container-fluid,
  .navbar-expand-lg>.container-sm,
  .navbar-expand-lg>.container-md,
  .navbar-expand-lg>.container-lg,
  .navbar-expand-lg>.container-xl {
    flex-wrap: nowrap
  }

  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto
  }

  .navbar-expand-lg .navbar-toggler {
    display: none
  }
}

@media(max-width:1199.98px) {

  .navbar-expand-xl>.container,
  .navbar-expand-xl>.container-fluid,
  .navbar-expand-xl>.container-sm,
  .navbar-expand-xl>.container-md,
  .navbar-expand-xl>.container-lg,
  .navbar-expand-xl>.container-xl {
    padding-right: 0;
    padding-left: 0
  }
}

@media(min-width:1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start
  }

  .navbar-expand-xl .navbar-nav {
    flex-direction: row
  }

  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute
  }

  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem
  }

  .navbar-expand-xl>.container,
  .navbar-expand-xl>.container-fluid,
  .navbar-expand-xl>.container-sm,
  .navbar-expand-xl>.container-md,
  .navbar-expand-xl>.container-lg,
  .navbar-expand-xl>.container-xl {
    flex-wrap: nowrap
  }

  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto
  }

  .navbar-expand-xl .navbar-toggler {
    display: none
  }
}

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start
}

.navbar-expand>.container,
.navbar-expand>.container-fluid,
.navbar-expand>.container-sm,
.navbar-expand>.container-md,
.navbar-expand>.container-lg,
.navbar-expand>.container-xl {
  padding-right: 0;
  padding-left: 0
}

.navbar-expand .navbar-nav {
  flex-direction: row
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: .5rem;
  padding-left: .5rem
}

.navbar-expand>.container,
.navbar-expand>.container-fluid,
.navbar-expand>.container-sm,
.navbar-expand>.container-md,
.navbar-expand>.container-lg,
.navbar-expand>.container-xl {
  flex-wrap: nowrap
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto
}

.navbar-expand .navbar-toggler {
  display: none
}

.navbar .dropdown.pc:hover>.dropdown-menu,
.navbar .dropup.pc:hover>.dropdown-menu,
.navbar .dropright.pc:hover>.dropdown-menu {
  display: block
}

.breadcrumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-self: center;
  padding: 0;
  margin-bottom: 0;
  list-style: none
}

.breadcrumb-item+.breadcrumb-item {
  padding-left: 6px
}

.breadcrumb-item+.breadcrumb-item::before {
  display: inline-block;
  padding-right: 6px;
  color: #6c757d;
  content: "/";
  text-decoration: none
}

.breadcrumb-item.active {
  color: #6c757d
}

.pagination {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  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: #444;
  background-color: #fff;
  border: 1px solid #dee2e6;
  transition: color .15s ease, background-color .15s ease, border-color .15s ease
}

.page-link:hover {
  z-index: 2;
  color: #333;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6
}

.page-link:focus {
  z-index: 3;
  outline: 0
}

.page-link:focus-visible {
  z-index: 3;
  outline: 2px solid #333;
  outline-offset: 2px
}

.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: 3;
  color: #fff;
  background-color: #333;
  border-color: #333
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #dee2e6
}

.clearfix::after {
  display: block;
  clear: both;
  content: ""
}

.d-none {
  display: none !important
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden
}

.embed-responsive::before {
  display: block;
  content: ""
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0
}

.embed-responsive-21by9::before {
  padding-top: 42.857143%
}

.embed-responsive-16by9::before {
  padding-top: 56%
}

.embed-responsive-4by3::before {
  padding-top: 75%
}

.embed-responsive-1by1::before {
  padding-top: 100%
}

.social {
  line-height: 1;
  display: -ms-inline-flexbox;
  display: inline-flex
}

.social>span,
.social>a {
  display: block;
  cursor: pointer;
  transition: background-color .3s ease;
  padding: .5rem;
  margin: 0 6px 0 0;
  color: #fff !important;
  border-radius: 50%
}

.social>span::before,
.social>a::before {
  display: block;
  font-family: "CmsFont", sans-serif;
  font-size: 1rem;
  width: 1rem;
  text-align: center
}

.social.sm>span,
.social.sm>a {
  margin: 0 5px 0 0
}

.social.sm>span::before,
.social.sm>a::before {
  font-size: .875rem;
  width: .875rem
}

.social.lg>span,
.social.lg>a {
  margin: 0 8px 0 0
}

.social.lg>span::before,
.social.lg>a::before {
  font-size: 1.25rem;
  width: 1.25rem
}

.social>span:last-child,
.social>a:last-child {
  margin-right: 0
}

.social.no-padding>span,
.social.no-padding>a {
  padding: 0 !important
}

.social.transparent>span,
.social.transparent>span:hover,
.social.transparent>a,
.social.transparent>a:hover {
  background: transparent !important
}

.social.square>span,
.social.square>a {
  border-radius: 0
}

.social.gray>span,
.social.gray>a {
  color: #ccc !important
}

.social-facebook {
  background: #3b5998 !important
}

.social-facebook:hover {
  background: #627aad !important
}

.social-facebook::before {
  content: ""
}

.social-googleplus {
  background: #dc4e41 !important
}

.social-googleplus:hover {
  background: #e37167 !important
}

.social-googleplus::before {
  content: ""
}

.social-linkedin {
  background: #0077b5 !important
}

.social-linkedin:hover {
  background: #3392c4 !important
}

.social-linkedin::before {
  content: ""
}

.social-twitter {
  background: #55acee !important
}

.social-twitter:hover {
  background: #77bdf1 !important
}

.social-twitter::before {
  content: ""
}

.social-skype {
  background: #00aff0 !important
}

.social-skype:hover {
  background: #33bff3 !important
}

.social-skype::before {
  content: ""
}

.social-youtube {
  background: #cd201f !important
}

.social-youtube:hover {
  background: #d74d4c !important
}

.social-youtube::before {
  content: ""
}

.social-pinterest {
  background: #bd081c !important
}

.social-pinterest:hover {
  background: #e37167 !important
}

.social-pinterest::before {
  content: ""
}

.social-instagram {
  background: #ef8640 !important
}

.social-instagram:hover {
  background: #de5b44 !important
}

.social-instagram::before {
  content: ""
}

.social-email {
  background: #000 !important
}

.social-email:hover {
  background: #333 !important
}

.social-email::before {
  content: ""
}

.social-weibo {
  background: #eb192d !important
}

.social-weibo:hover {
  background: #ee4051 !important
}

.social-weibo::before {
  content: ""
}

.social-qq {
  background: #5294d0 !important
}

.social-qq:hover {
  background: #55acee !important
}

.social-qq::before {
  content: ""
}

.social-weixin {
  background: #36a63a !important
}

.social-weixin:hover {
  background: #0ccd1c !important
}

.social-weixin::before {
  content: ""
}

.side-share {
  position: fixed;
  right: 2px;
  bottom: 30px;
  z-index: 99999;
  line-height: 1
}

@media(max-width:768px) {
  .side-share {
    display: none
  }
}

.side-share ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  background: #fff
}

.side-share>ul>li {
  display: block;
  position: relative;
  background: #b4bdc2;
  padding: 10px 8px;
  margin-bottom: 1px;
  cursor: pointer;
  color: #fff;
  transition: background-color .3s ease
}

.side-share>ul>li span {
  display: block;
  font-size: .75rem;
  text-align: center
}

.side-share>ul>li span::before {
  font-family: "CmsFont", sans-serif;
  position: relative;
  display: block;
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 6px
}

.side-share>ul>li:hover {
  background: #9eabb1
}

.side-share>ul>li:last-child {
  margin-bottom: 0
}

.side-share>ul>li>a {
  display: block;
  position: relative;
  text-decoration: none;
  color: #fff
}

.side-share>ul>li>div {
  display: none;
  position: absolute;
  z-index: 99998;
  top: 0;
  bottom: 0;
  right: 64px;
  font-size: .875rem;
  width: auto;
  padding: 8px 12px;
  text-align: center;
  transition: all .8s ease
}

.side-share>ul>li:hover>div {
  display: block
}

.side-share .qq {
  background: #6da9de
}

.side-share .qq:hover {
  background: #488bc7
}

.side-share .qq span::before {
  content: ""
}

.side-share .phone {
  background: #fbb01f
}

.side-share .phone:hover {
  background: #ff811b
}

.side-share .phone span::before {
  content: ""
}

.side-share .phone>div {
  font-size: 1.25rem;
  line-height: 1.3;
  padding-top: 1.125rem;
  font-weight: 500;
  min-width: 180px;
  background: #ff811b
}

.side-share .weixin {
  background: #78c340
}

.side-share .weixin:hover {
  background: #58a81c
}

.side-share .weixin span::before {
  content: ""
}

.side-share .weixin>div {
  padding: 0;
  bottom: auto;
  border: 1px solid #f2f2f2
}

.side-share .weibo {
  background: #e6162d
}

.side-share .weibo:hover {
  background: #cd1426
}

.side-share .weibo span::before {
  content: ""
}

.side-share .store {
  background: #5294d0
}

.side-share .store:hover {
  background: #3392c4
}

.side-share .store span::before {
  content: ""
}

.side-share .mail span::before {
  content: ""
}

.side-share .top {
  display: none
}

.side-share>ul>li.top {
  background: #666;
  opacity: 0
}

.side-share>ul>li:hover.top {
  background: #444
}

.banner {
  position: relative;
  color: #fff;
  background: center/cover no-repeat
}

.banner .overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, .6);
  z-index: 1
}

.banner>img,
.swiper-slide>img {
  display: block;
  width: 100%;
  height: auto
}

.swiper-slide-child {
  min-height: 150px;
  background-size: cover;
  background-position: center
}

.banner a {
  color: #fff
}

.banner-text,
.banner-content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  color: #f2f2f2
}

.swiper-slide h1,
.swiper-slide h2,
.swiper-slide h3,
.swiper-slide h4,
.swiper-slide h5,
.swiper-slide h6 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.25
}

.banner-text p,
.banner-content p {
  max-width: 90%;
  margin: 0 auto
}

@media(max-width:576px) {

  .swiper-slide h1,
  .swiper-slide h2,
  .swiper-slide h3,
  .swiper-slide h4,
  .swiper-slide h5,
  .swiper-slide h6 {
    font-size: 1.25rem
  }

  .banner-text p,
  .banner-content p {
    max-width: 100%;
    font-size: .875rem
  }
}

.banner-nav {
  position: relative;
  z-index: 2;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 100px 0;
  text-align: center
}

.banner-nav .breadcrumb::before {
  content: "" !important
}

.banner-nav .breadcrumb .active {
  color: #fff
}

.banner-nav .title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 15px
}

.banner-nav .title::after {
  content: "";
  display: block;
  width: 70px;
  height: 2px;
  background: #fb7f1d;
  margin: 4px auto 0
}

@media(max-width:768px) {
  .banner-nav {
    padding: 50px 0
  }

  .banner-nav .title {
    font-size: 1.75rem
  }
}

.menu-collapse {
  margin-bottom: 15px;
  overflow: hidden
}

.menu-collapse .collapse-title {
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.menu-collapse .collapse-title h5 {
  margin: 0
}

.menu-collapse .collapse-title .navbar-toggler {
  padding: .25rem .75rem;
  font-size: 1rem
}

.menu-collapse ul {
  list-style-type: none;
  padding: 0;
  margin: 0
}

.menu-collapse ul li {
  position: relative
}

.menu-collapse .menu-link {
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 12px 16px
}

.menu-collapse>ul>li:last-child .menu-link {
  border-bottom-width: 0
}

.menu-collapse .drop {
  position: absolute;
  text-align: center;
  font-style: normal;
  cursor: pointer;
  width: 30px;
  height: 30px;
  line-height: 30px;
  right: 0;
  top: 7px
}

.menu-collapse .drop:after {
  font-family: cmsfont;
  content: "";
  color: #aaa
}

.menu-collapse .drop.collapsed:after {
  font-family: cmsfont;
  content: ""
}

.menu-horizontal-wrapper {
  margin-bottom: 1.5rem
}

.menu-horizontal {
  display: -ms-flexbox;
  display: flex;
  list-style-type: none;
  justify-content: center;
  padding: 0;
  margin-bottom: 0
}

.menu-horizontal .nav-item {
  display: flex;
  display: -ms-flexbox
}

.menu-horizontal .nav-item:first-child {
  margin-left: 0
}

.menu-horizontal .nav-item:last-child {
  margin-right: 0
}

.menu-horizontal .nav-link {
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center
}

.menu-horizontal-child {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  margin-bottom: 0
}

.menu-horizontal-child .nav-link {
  display: flex;
  display: -ms-flexbox;
  padding: 1rem .875rem;
  height: 100%;
  justify-content: center;
  align-items: center
}

.menu-horizontal-child .nav-link.active {
  color: #e20001
}

@media(max-width:768px) {
  .menu-horizontal .nav-link {
    flex-grow: 1;
    border-radius: 0
  }
}