@charset "UTF-8";
/*------------------------------------*\
  必要CSS檔
\*------------------------------------*/
/*------------------------------------*\
  color
\*------------------------------------*/
/*------------------------------------*\
  使用顏色設定_主要
\*------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;700&family=Lexend:wght@300;600&display=swap");
.loginArea-text h1::after, .login__btn.login--log {
  background: linear-gradient(to right, #d1ba81 0%, #997427 100%);
}

/*------------------------------------*\
  使用顏色設定_文字及背景顏色
\*------------------------------------*/
/*------------------------------------*\
  使用顏色設定_按鈕顏色
\*------------------------------------*/
/*------------------------------------*\
  使用顏色設定_chip顏色
\*------------------------------------*/
/*------------------------------------*\
  font face
\*------------------------------------*/
/* Roboto - 400 700 */
/* noto-sans-tc -  300 400 500 700 */
/*------------------------------------*\
  reset
\*------------------------------------*/
body, div, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, select, textarea, label, p, blockquote, th, td, iframe, button, a, header, footer {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
  font: inherit;
  color: inherit;
}

body {
  font: 16px/150% "Helvetica Neue", "Noto Sans TC", Helvetica, "微軟正黑體", sans-serif;
  font-weight: 400;
  letter-spacing: 0.2px;
  background: #fff;
}

html {
  /*safari內網頁的字體不會無緣無故變大*/
  -webkit-text-size-adjust: 100%;
  /*safari內網頁滑動起來不會卡卡的*/
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  color: inherit;
  background: none;
  outline: none;
  cursor: pointer;
}

table {
  width: auto;
  border-collapse: collapse;
  border-spacing: 0;
}

input, button, textarea, select, optgroup, option {
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  outline: none;
}

img {
  /*防止chrome將圖片縮放時平滑化處理*/
  image-rendering: -webkit-optimize-contrast;
}

.page {
  background: #fff;
}

/*------------------------------------*\
  font-family
\*------------------------------------*/
.font-eng, .announceArea_list .btn {
  font-family: "Lexend", "Helvetica Neue", Helvetica, "微軟正黑體", sans-serif;
}

/*------------------------------------*\
  _common.scss
  基礎全站變數
\*------------------------------------*/
/*------------------------------------*\
  base extend
\*------------------------------------*/
.btn-share:nth-last-child(1), .btn:nth-last-child(1) {
  margin: 0;
}

.announceArea_list li:nth-last-child(1) {
  border: none;
}

/*------------------------------------*\
  RWD尺寸標準
\*------------------------------------*/
/*------------------------------------*\
  頁面寬度
\*------------------------------------*/
/*------------------------------------*\
  大小網
\*------------------------------------*/
.web {
  display: block;
}

.mobile {
  display: none;
}

@media screen and (max-width: 767px) {
  .web {
    display: none;
  }
  .mobile {
    display: block;
  }
}
/*------------------------------*\
  _inner.scss
  內頁樣式
\*------------------------------*/
/*------------------------------------*\
  間距
\*------------------------------------*/
.mb-0 {
  margin-bottom: 0;
}

.mb-1px {
  margin-bottom: 1px;
}

.mb-0-5 {
  margin-bottom: 5px;
}

.mb-1 {
  margin-bottom: 10px;
}

.mb-1-5 {
  margin-bottom: 15px;
}

.mb-2 {
  margin-bottom: 20px;
}

.mb-2-5 {
  margin-bottom: 25px;
}

.mb-3 {
  margin-bottom: 30px;
}

.mb-4 {
  margin-bottom: 40px;
}

.mr-0-5 {
  margin-right: 5px;
}

.mr-1 {
  margin-right: 10px;
}

.mr-1-5 {
  margin-right: 15px;
}

.mr-2 {
  margin-right: 20px;
}

.mr-3 {
  margin-right: 30px;
}

.p-1-5 {
  padding: 15px;
}

@media all and (max-width: 767px) {
  .m-mr-0 {
    margin-right: 0;
  }
  .m-mr-0 {
    margin-right: 0;
  }
  .m-mb-1 {
    margin-bottom: 10px;
  }
  .m-pl-2-5 {
    padding-left: 25px;
  }
}
/*------------------------------------*\
  font-size
\*------------------------------------*/
.fs-s {
  font-size: 0.875rem;
}

.fs-ms {
  font-size: 0.9375rem;
}

.fs-m {
  font-size: 1rem;
}

.fs-l {
  font-size: 1.125rem;
}

.fs-xl {
  font-size: 1.25rem;
}

.fs-xxl {
  font-size: 1.5rem;
}

@media all and (max-width: 767px) {
  .fs-l {
    font-size: 1rem;
  }
  .fs-xl {
    font-size: 1.125rem;
  }
  .m-fs-m {
    font-size: 1rem;
  }
}
.lh-s {
  line-height: 1.25rem;
}

.lh-m {
  line-height: 1.5rem;
}

.lh-l {
  line-height: 30px;
}

.fw-light {
  font-weight: 300;
}

.fw-normal {
  font-weight: 400;
}

.fw-mid {
  font-weight: 500;
}

.fw-bold {
  font-weight: 700;
}

.tL {
  text-align: left;
}

.tR {
  text-align: right;
}

.tC {
  text-align: center;
}

.v-m {
  vertical-align: middle;
}

/*------------------------------------*\
  天地
\*------------------------------------*/
/*------------------------------------*\
  login box
  改為獨立iframe
\*------------------------------------*/
/*------------------------------------*\
  login box
\*------------------------------------*/
/*------------------------------------*\
  兆豐e網通登入部分 改為獨立iframe
\*------------------------------------*/
.login {
  padding-top: 5px;
}

.login-inner {
  padding: 20px 20px 15px;
  background: #f3f3f3;
}

.login__title {
  margin-bottom: 20px;
  font-size: 25px;
  font-weight: 700;
}

.login__link {
  margin-bottom: 12px;
  color: #343030;
}
.login__link a {
  padding: 0 10px;
}

.login__notice {
  font-size: 14px;
  color: #785919;
}

/*------------------------------------*/
.login__btn {
  display: block;
  line-height: 40px;
  font-size: 20px;
  border-radius: 5px;
}
.login__btn.login--log {
  transition: background 0.2s;
  color: #fff;
  background: linear-gradient(to right, #d1ba81 0%, #997427 51%, #997427 100%);
  background-size: 200% auto;
}
.login__btn.login--log:hover {
  background-size: 200% auto;
  background-position: right center;
}

.login--log.type1 {
  margin-bottom: 14px;
}

.login--entry span,
.login--log.type2 span {
  padding-left: 30px;
}

.login--log.type2 {
  position: relative;
}
.login--log.type2::after {
  content: "";
  display: block;
}
.login--log.type2 span {
  background: url(../images/frame/login-btn-1.png) left center no-repeat;
  background-size: 22px;
}

.login--entry {
  margin-bottom: 20px;
  border: solid 1px;
}
.login--entry.icon1 span {
  background: url(../images/frame/login-btn-3.png) left center no-repeat;
  background-size: 22px;
}
.login--entry.icon2 span {
  background: url(../images/frame/login-btn-4.png) left center no-repeat;
  background-size: 22px;
}

/*------------------------------------*/
.login-form {
  text-align: center;
  color: #223034;
}
.login-form input {
  display: block;
  width: 100%;
  height: 40px;
  padding: 0 10px 0 40px;
  background-color: #fff;
  border-radius: 5px;
}
.login-form ::placeholder {
  color: #95999a;
  opacity: 1;
}
.login-form :-ms-input-placeholder {
  color: #95999a;
}
.login-form ::-ms-input-placeholder {
  color: #95999a;
}

.login__inputId {
  margin-bottom: 20px;
}
.login__inputId input {
  background-image: url(../images/frame/login-input-1.png);
}

.login__inputPd {
  position: relative;
  margin-bottom: 20px;
}
.login__inputPd input {
  padding-right: 50px;
  background-image: url(../images/frame/login-input-2.png);
}
.login__inputPd input::-ms-reveal,
.login__inputPd input::-ms-clear {
  display: none;
}
.login__inputPd .inputPd__btn {
  position: absolute;
  top: 0;
  right: 5px;
  width: 40px;
  height: 40px;
  background: url(../images/frame/login-input-pw-hide.svg) center center no-repeat;
  background-size: 24px auto;
}
.login__inputPd .inputPd__btn.show {
  background: url(../images/frame/login-input-pw-show.svg) center center no-repeat;
  background-size: 24px auto;
}

/*驗證碼*/
.login__verify {
  margin-bottom: 20px;
}
.login__verify.inputbox {
  display: flex;
  justify-content: center;
}
.login__verify.inputbox input {
  padding-left: 40px;
  flex: 1 1 50%;
  margin-right: 10px;
  margin-bottom: 0;
}
.login__verify.inputbox .box-verify {
  display: flex;
}
@media all and (max-width: 1000px) {
  .login__verify.inputbox {
    display: block;
  }
  .login__verify.inputbox input {
    margin-bottom: 10px;
  }
}
.login__verify input {
  background-image: url(../images/frame/login-input-3.png);
  margin-bottom: 10px;
}
.login__verify .box-verify {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.login__verify .box-verify img.img-verify {
  width: 112px;
  height: 40px;
}
.login__verify .box-verify a {
  display: inline-block;
  text-align: center;
  line-height: 1.2em;
  font-weight: 700;
  color: #a70057;
  border-bottom: solid 1px;
  margin-left: 10px;
}

.login__inputId input,
.login__inputPd input,
.login__verify input {
  background-position: left 10px center;
  background-size: auto 20px;
  background-repeat: no-repeat;
}

.login-switch {
  display: flex;
  justify-content: space-between;
}
.login-switch a {
  display: block;
  flex: 1 1 auto;
  line-height: 42px;
  text-align: center;
  font-weight: 700;
  color: rgba(34, 48, 52, 0.8);
  border: solid 1px #f5f5f5;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.login-switch a:nth-child(1) {
  margin-right: 8px;
}
.login-switch a.on {
  color: rgba(34, 48, 52, 0.9);
  background: #f5f5f5;
}

/*------------------------------------*\
  popup
\*------------------------------------*/
/*------------------------------------*\
  天地框架及popup
\*------------------------------------*/
.wrapper {
  color: #fff;
  background: url(../images/signature/signature-bg.jpg) center bottom;
  background-size: cover;
}
.pagesize {
  margin: 0 auto;
  max-width: 1040px;
  padding: 0 20px;
}
@media all and (max-width: 1000px) {
  .pagesize {
    padding: 0 15px;
  }
}

/*------------------------------------*\
  header
\*------------------------------------*/
header .pagesize {
  height: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media all and (max-width: 540px) {
  header .pagesize {
    height: 100px;
    padding-top: 10px;
    flex-direction: column;
    justify-content: center;
  }
}

.header-logo {
  flex: 0 0 auto;
  display: block;
  width: 130px;
  height: 42px;
  background: url(../images/signature/logo.png) left center no-repeat;
  background-size: auto 100%;
}

.header-link {
  list-style: none;
  display: flex;
  justify-content: flex-end;
  padding: 14px 0 15px;
  line-height: 1.1em;
}
.header-link li {
  border-right: solid 1px;
}
.header-link li:nth-last-child(1) {
  border: none;
}
.header-link li:nth-last-child(1) a {
  padding-right: 0;
}
.header-link a {
  display: block;
  padding: 0 15px;
}
@media all and (max-width: 540px) {
  .header-link a {
    padding: 0 6px;
  }
}

/*------------------------------------*\
  popup
\*------------------------------------*/
.popup {
  display: none;
}

.openPopup .popup {
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow-y: auto;
  width: 100%;
  height: 100%;
  padding: 140px 20px 40px;
  background: rgba(0, 0, 0, 0.6);
  z-index: 2000;
}
@media all and (max-width: 767px) {
  .openPopup .popup {
    padding: 90px 15px 20px;
  }
}

.openPopup .wrapper {
  position: fixed;
  width: 100%;
}

.popup-area {
  flex: 0 0 auto;
  position: relative;
  z-index: 2001;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  background: #fff;
}
.popup-area.w-m {
  max-width: 500px;
}

.popup-close {
  position: absolute;
  z-index: 10;
  top: 20px;
  right: 24px;
  width: 32px;
  height: 32px;
  background: url(../images/frame/header-close.svg) center center no-repeat;
  background-size: 75%;
}
@media all and (max-width: 767px) {
  .popup-close {
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
  }
}

.popup-banner a {
  display: block;
}
.popup-banner img {
  display: block;
  width: 100%;
}

.popup-title {
  position: relative;
  padding: 18px 60px;
  text-align: center;
  background: #fffaee;
}
.popup-title h2 {
  font-size: 24px;
  line-height: 36px;
  font-weight: 700;
  color: #a70057;
}

.popup-inner .inner-pd {
  padding: 40px;
}
@media all and (max-width: 767px) {
  .popup-inner .inner-pd {
    padding: 20px 15px;
  }
}

/*------------------------------------*\
  公告
\*------------------------------------*/
.popup .announceArea {
  position: relative;
  padding: 16px 24px 16px 136px;
}
.popup .announceArea.notitle {
  padding-left: 24px;
}
@media all and (max-width: 767px) {
  .popup .announceArea.notitle {
    padding-left: 0;
  }
}
.popup .announceArea .announceArea_title {
  min-height: 138px;
}
.popup .announceArea .announceArea_list {
  flex: 1 1 auto;
}
@media all and (max-width: 767px) {
  .popup .announceArea {
    padding: 0;
  }
  .popup .announceArea .announceArea_title {
    position: static;
    display: block;
    width: 100%;
    padding: 4px;
    text-align: center;
    font-size: 18px;
    line-height: 24px;
    min-height: auto;
  }
  .popup .announceArea .announceArea_title span {
    display: inline;
  }
  .popup .announceArea .announceArea_list {
    padding: 10px 15px;
  }
}

/*------------------------------------*\
  需要的部分樣式 放置於parts/
\*------------------------------------*/
/*------------------------------------*\
  按鈕顏色
\*------------------------------------*/
.btn-primary {
  color: #fff;
  background: #bfa051;
}
.btn-primary:hover {
  background: #b49442;
}

.btn-gradient, .announceArea_title .btn, .loginArea-text .btn {
  color: #fff;
  background: linear-gradient(to right, #d1ba81 0%, #997427 51%, #997427 100%);
}
.btn-gradient:hover, .announceArea_title .btn:hover, .loginArea-text .btn:hover {
  background: linear-gradient(to right, #d1ba81 0%, #997427 51%, #997427 100%);
}

.btn-primary-dark {
  color: #fff;
  background: #af9b6a;
}
.btn-primary-dark:hover {
  background: #a69059;
}

.btn-secondary {
  color: #fff;
  background: #a70057;
}
.btn-secondary:hover {
  background: #8e004a;
}

.btn-secondary.btn-line {
  color: #a70057;
  background: transparent;
}
.btn-secondary.btn-line:hover {
  background: rgba(167, 0, 87, 0.05);
}

.btn-tertiary {
  color: #fff;
  background: #27373b;
}
.btn-tertiary:hover {
  background: #1d292c;
}

.btn-cancel {
  color: #878585;
  background: #e9e9e9;
}
.btn-cancel:hover {
  background: gainsboro;
}

.btn-link {
  color: #fff;
  background: #38bcd4;
}
.btn-link:hover {
  background: #2bafc7;
}

.btn-download {
  color: #fff;
  background: #fa877d;
}
.btn-download:hover {
  background: #f97064;
}

.btn-search {
  color: #fff;
  background: #48a4c2;
}
.btn-search:hover {
  background: #3c97b4;
}

.btn-map {
  color: #fff;
  background: #f0ad44;
}
.btn-map:hover {
  background: #eea32c;
}

.btn-form {
  color: #fff;
  background: #f0ad44;
}
.btn-form:hover {
  background: #eea32c;
}

.btn-line {
  border: solid 1px;
}

.btn-gradient, .announceArea_title .btn, .loginArea-text .btn {
  background-size: 200% auto;
}
.btn-gradient:hover, .announceArea_title .btn:hover, .loginArea-text .btn:hover {
  background-size: 200% auto;
  background-position: right center;
}

/*------------------------------------*\
  btn
\*------------------------------------*/
.btn {
  transition: background 0.2s;
  display: inline-block;
  margin-right: 10px;
  text-align: center;
  line-height: 30px;
  border-radius: 8px;
}

/*------------------------------------*\
  按鈕尺寸
  height 50 40 36 30
\*------------------------------------*/
.btn-h-m, .announceArea_title .btn {
  min-width: 75px;
  height: 36px;
  padding: 3px 8px;
}

.btn-h-l, .loginArea-text .btn {
  height: 40px;
  padding: 5px 8px;
}

.btn-h-xl {
  height: 50px;
  padding: 10px 8px;
  font-size: 20px;
  font-weight: 700;
}

.btn-w-s {
  min-width: 100px;
  padding-left: 5px;
  padding-right: 5px;
}

.btn-w-ms {
  min-width: 120px;
  padding-left: 5px;
  padding-right: 5px;
}

.btn-w-m {
  min-width: 140px;
  padding-left: 15px;
  padding-right: 15px;
}

.btn-w-check {
  min-width: 150px;
  margin-right: 30px;
  padding-left: 18px;
  padding-right: 18px;
}
.btn-w-check.check-l {
  min-width: 180px;
  padding-left: 8px;
  padding-right: 8px;
}
@media all and (max-width: 767px) {
  .btn-w-check {
    width: 100%;
    margin: 0 0 10px;
  }
}

.btn-icon {
  padding-left: 1.25em;
}

.btn-icon.icon-share {
  background: url(../images/inner/btn-icon-share.svg) left center no-repeat;
  background-size: auto 1em;
}

.btn-icon.icon-search {
  background: url(../images/inner/btn-icon-search.svg) left center no-repeat;
  background-size: auto 1em;
}

.btn-icon.icon-search-2 {
  background: url(../images/inner/btn-icon-search-2.svg) left center no-repeat;
  background-size: auto 1em;
}

.btn-icon.icon-map {
  background: url(../images/inner/btn-icon-map.svg) left center no-repeat;
  background-size: auto 1em;
}

/*------------------------------------*\
  btn-share
\*------------------------------------*/
.btn-share {
  width: 42px;
  height: 42px;
  margin-right: 12px;
  border-radius: 5px;
}

.btn-share.share-mail {
  background: url(../images/inner/btn-share-mail.jpg);
  background-size: 100%;
}

.btn-share.share-line {
  background: url(../images/inner/btn-share-line.jpg);
  background-size: 100%;
}

.btn-share.share-fb {
  background: url(../images/inner/btn-share-fb.jpg);
  background-size: 100%;
}

.btn-share.share-msg {
  background: url(../images/inner/btn-share-msg.jpg);
  background-size: 100%;
}

/*------------------------------------*\
  btn box
\*------------------------------------*/
.btn-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.btn-box.tL {
  justify-content: flex-start;
}
.btn-box.tR {
  justify-content: flex-end;
}
.btn-box.d-block {
  display: block;
}
.btn-box.d-block .btn {
  display: block;
  margin-right: 0;
}

/*------------------------------------*\
  此頁樣式
\*------------------------------------*/
/*------------------------------------*\
  index頁
\*------------------------------------*/
.container {
  min-height: calc(100vh - 80px);
  display: flex;
  flex-direction: column;
}
@media all and (max-width: 540px) {
  .container {
    min-height: calc(100vh - 100px);
  }
}

.loginArea {
  flex: 1 1 auto;
}

.announceArea {
  flex: 0 0 auto;
}

/*------------------------------------*\
  btn
\*------------------------------------*/
.btn,
.login__btn {
  width: 100%;
  max-width: 150px;
  border-radius: 20px;
}

/*------------------------------------*\
  loginArea
\*------------------------------------*/
.loginArea {
  display: flex;
  align-items: center;
  padding: 25px 0;
}
.loginArea .pagesize {
  flex: 1 1 auto;
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 540px) {
  .loginArea .pagesize {
    flex-direction: column-reverse;
  }
}
@media all and (max-width: 540px) {
  .loginArea {
    align-items: flex-start;
    padding-top: 0;
  }
}

.loginArea-text {
  flex: 1 1 auto;
  max-width: 560px;
  margin-right: 50px;
}
@media all and (max-width: 540px) {
  .loginArea-text {
    margin: 0 0 25px;
    text-align: center;
  }
}
.loginArea-text h1,
.loginArea-text .desc {
  margin-bottom: 20px;
  font-weight: 700;
  text-shadow: 3px 3px 10px rgba(0, 0, 0, 0.3);
}
.loginArea-text h1 {
  position: relative;
  margin-bottom: 25px;
  padding-top: 30px;
  font-size: 52px;
  line-height: 1.1em;
}
.loginArea-text h1::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 95px;
  height: 8px;
}
@media all and (max-width: 540px) {
  .loginArea-text h1::after {
    left: calc(50% - 43px);
  }
}
@media all and (max-width: 540px) {
  .loginArea-text h1 {
    display: none;
    /*
    margin-bottom: 20px;
    padding-top: 25px;
    font-size: 40px;*/
  }
}
.loginArea-text .desc {
  font-size: 22px;
  line-height: 36px;
}
@media all and (max-width: 540px) {
  .loginArea-text .desc {
    font-size: 18px;
    line-height: 1.5em;
  }
}
.loginArea-text .btn {
  font-size: 20px;
  font-weight: 700;
}

.login {
  min-width: 296px;
}
@media all and (max-width: 540px) {
  .login {
    min-width: 0;
    margin-bottom: 20px;
  }
}
.login .login-inner {
  background: rgba(255, 255, 255, 0.8);
}
.login__title {
  font-size: 35px;
  line-height: 1.2em;
}
.login__btn {
  margin-left: auto;
  margin-right: auto;
  font-weight: 700;
}

/*------------------------------------*\
  公告
\*------------------------------------*/
.announceArea {
  padding: 12px 0;
  background: rgba(0, 0, 0, 0.5);
}
.announceArea .pagesize {
  display: flex;
  align-items: center;
}
@media all and (max-width: 540px) {
  .announceArea .pagesize {
    display: block;
  }
}

.announceArea_title {
  flex: 0 0 auto;
  margin-right: 30px;
}
@media all and (max-width: 540px) {
  .announceArea_title {
    margin: 0 0 15px;
    text-align: center;
  }
}
.announceArea_title h2 {
  margin-bottom: 12px;
  font-size: 28px;
  font-weight: 700;
  color: #cdb57b;
}
.announceArea_title .btn {
  font-weight: 700;
}

.announceArea_list {
  flex: 0 1 auto;
  max-width: calc(100% - 145px);
}
@media all and (max-width: 540px) {
  .announceArea_list {
    max-width: 100%;
  }
}
.announceArea_list ul {
  list-style: none;
}
.announceArea_list li {
  position: relative;
  padding: 8px 0 8px 24px;
  border-bottom: dotted 2px #978865;
}
.announceArea_list li::after {
  content: "";
  display: block;
  position: absolute;
  top: 16px;
  left: 10px;
  width: 5px;
  height: 5px;
  border-radius: 3px;
  background: #cfb77e;
}
.announceArea_list a {
  display: flex;
}
.announceArea_list .text {
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-right: 10px;
}
.announceArea_list .btn {
  flex: 0 0 65px;
  width: 65px;
  font-size: 14px;
  line-height: 24px;
  background-color: #9c782c;
  border-radius: 5px;
}
.announceArea_list .btn:hover {
  background-color: #886926;
}/*# sourceMappingURL=login.css.map */