@charset "UTF-8";
footer {
  background-image: url(../images/img/footer-bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 5%;
}
@media (max-width: 991px) {
  footer {
    background-image: url(../images/img/footer-bg-m.jpg);
    padding-bottom: 80px;
    margin-top: 2rem;
  }
}
footer .topBox {
  padding: 5% 10%;
  letter-spacing: 1px;
  font-size: calc(0.45rem + 0.6vw);
}
@media (max-width: 991px) {
  footer .topBox {
    padding: 3rem 0 0 0;
    font-size: calc(0.7rem + 0.9vw);
  }
}
footer .topBox h2 {
  font-family: "Noto Serif TC", serif;
  font-weight: 700;
  letter-spacing: 2px;
  font-size: calc(0.8rem + 0.9vw);
  color: #00769e;
  display: inline-block;
}
@media (max-width: 991px) {
  footer .topBox h2 {
    font-size: calc(1.3rem + 0.9vw);
  }
}
footer .topBox h2::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #00769e;
  position: absolute;
  top: 50%;
  left: 105%;
  transform: translateY(-50%);
}
@media (max-width: 991px) {
  footer .topBox h2::after {
    width: 70px;
  }
}
@media (max-width: 991px) {
  footer .topBox h2::before {
    content: "";
    width: 70px;
    height: 1px;
    background: #00769e;
    position: absolute;
    top: 50%;
    right: 105%;
    transform: translateY(-50%);
  }
}
footer .topBox .btnBox .logo {
  width: 35%;
  margin: 0 auto 5% auto;
  display: block;
}
@media (max-width: 991px) {
  footer .topBox .btnBox .logo {
    width: 250px;
    margin-bottom: 2rem;
  }
}
footer .topBox .btnBox .btn {
  display: block;
  padding: 16px 0;
}
@media (max-width: 991px) {
  footer .topBox .btnBox .btn {
    padding: 12px 0;
    font-size: calc(0.6rem + 0.9vw);
  }
}
footer .topBox .btnBox .btn svg {
  width: 22px;
  margin-right: 5px;
  margin-bottom: 3px;
}
@media (max-width: 991px) {
  footer .topBox .btnBox .btn svg {
    width: 18px;
  }
}
footer .topBox .btnBox .btn-white {
  background: #fff;
  display: block;
  padding: 16px 0;
  text-align: center;
}
@media (max-width: 991px) {
  footer .topBox .btnBox .btn-white {
    padding: 12px 0;
  }
}
footer .topBox .btnBox a {
  color: #fff;
}
footer .topBox .infoList {
  margin-top: 3%;
}
@media (max-width: 991px) {
  footer .topBox .infoList {
    margin-top: 10%;
  }
}
footer .topBox .infoList ul.CaseInfo {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 1.2;
  margin-top: 7%;
}
@media (max-width: 991px) {
  footer .topBox .infoList ul.CaseInfo {
    line-height: 1;
    margin-top: 0;
    margin-bottom: 1rem;
  }
}
footer .topBox .infoList ul.CaseInfo li {
  width: 100%;
  display: block;
  padding: 10px 0;
  color: #fff;
}
@media (max-width: 991px) {
  footer .topBox .infoList ul.CaseInfo li {
    padding: 7px 0;
  }
}
footer .topBox .infoList ul.CaseInfo li span::after {
  content: "｜";
}
footer .topBox .formBox {
  margin-top: 5%;
}
@media (max-width: 991px) {
  footer .topBox .formBox {
    margin-top: 10%;
  }
}
footer .topBox .formBox h2 {
  margin-bottom: 2rem;
}
footer .topBox .formBox h2::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #00769e;
  position: absolute;
  top: 50%;
  right: 105%;
  transform: translateY(-50%);
}
@media (max-width: 991px) {
  footer .topBox .formBox h2::before {
    width: 70px;
  }
}
footer .topBox .formBox p, footer .topBox .formBox span, footer .topBox .formBox .form-check-label {
  color: #fff;
}

.form-control {
  border-radius: 0;
  background-color: #fff;
  font-size: 1rem;
  padding: 10px 12px;
}
@media (max-width: 991px) {
  .form-control {
    padding: 7px 12px;
    font-size: calc(0.7rem + 0.9vw);
  }
}
.form-control:focus {
  color: #212529;
  background-color: #fff;
  border-color: transparent;
  outline: 0;
  box-shadow: 0 0 10px 3px rgba(0, 119, 159, 0.5568627451);
}

::-moz-placeholder {
  color: #212529 !important;
}

::placeholder {
  color: #212529 !important;
}/*# sourceMappingURL=footer.css.map */