/* Works on Firefox */
@import url("../../css/fonts.scss");
* {
  scrollbar-width: thin;
  scrollbar-color: #333 black; }

/* Works on Chrome, Edge, and Safari */
*::-webkit-scrollbar {
  width: 8px; }

*::-webkit-scrollbar-track {
  background: black; }

*::-webkit-scrollbar-thumb {
  background-color: #333;
  border-radius: 15px; }

html {
  padding: 0 !important; }

body {
  font-family: 'Titillium Web', 'Noto Sans TC', Arial, sans-serif;
  font-size: 16px;
  width: 100%;
  overflow-x: hidden !important;
  background-color: #F8F9E6;
  color: #333 !important;
  background-image: url("../images/bg-body.svg");
  background-size: 50% auto;
  background-position: right bottom;
  background-attachment: fixed;
  background-repeat: no-repeat; }
  @media (min-width: 769px) {
    body {
      font-size: 18px; } }
  body p, body ul, body li {
    font-size: 1rem;
    line-height: 1.7rem; }
  body a {
    text-decoration: none;
    transition: all 0.2s ease-in; }
  body mark, body .mark {
    color: #F8BA1A !important;
    padding: 0;
    font-weight: bold;
    background-color: transparent !important; }
  body .container-xxl {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
    margin-right: auto;
    margin-left: auto; }
  @media (min-width: 1400px) {
    body .container-xxl {
      max-width: 1320px; } }
  @media (min-width: 1680px) {
    body .container-xxl {
      max-width: 1500px; } }
  body .btn-none {
    border: 0;
    background-color: transparent;
    color: white;
    font-size: 1.5rem !important;
    padding: 0 !important; }
    body .btn-none:hover i {
      transform: none !important; }
  body .btn {
    border-radius: 40px !important;
    padding: 0.7rem 2.4rem;
    font-size: 1rem;
    border: 0;
    display: inline-flex;
    align-items: center;
    letter-spacing: 0.1rem;
    transition: all 0.3s linear; }
    body .btn img, body .btn i {
      transition: all 0.2s linear; }
    body .btn .btn-icon {
      width: 20px;
      height: auto;
      margin-right: 35px; }
    body .btn:hover img, body .btn:hover i {
      transform: translateX(8px); }
  body .bg-light {
    background-color: #F8F9E6 !important; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: #0093A9;
  color: white;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  border-radius: 50%;
  z-index: 9;
  transition: all 0.3s linear; }
  @media (min-width: 769px) {
    .slick-prev,
    .slick-next {
      height: 55px;
      width: 55px; } }
  .slick-prev:before,
  .slick-next:before {
    opacity: 0.5;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s linear; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    color: transparent;
    background: white;
    opacity: 1; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1;
      color: #0093A9; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.5; }

.slick-prev {
  left: 15px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: 25px; }
  @media (min-width: 769px) {
    .slick-prev {
      left: 25px; } }
  .slick-prev:before {
    position: absolute;
    width: 60%;
    height: auto;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    content: "\F284";
    font-family: "bootstrap-icons";
    z-index: 9; }

.slick-next {
  right: 15px; }
  [dir="rtl"] .slick-next {
    left: 0;
    right: auto; }
  @media (min-width: 769px) {
    .slick-next {
      right: 25px; } }
  .slick-next:before {
    position: absolute;
    width: 60%;
    height: auto;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    content: "\F285";
    font-family: "bootstrap-icons";
    z-index: 9; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: 0;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 15px;
      width: 15px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        width: 10px;
        height: 10px;
        font-size: 1em;
        line-height: 20px;
        text-align: center;
        color: white;
        background-color: #cdcdcd;
        border: 1px solid #cdcdcd;
        border-radius: 50%;
        opacity: 1; }
    .slick-dots li.slick-active button:before {
      color: white;
      background-color: white;
      border: 1px solid #0093A9;
      opacity: 1; }
