* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

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

a {
  display: block;
  text-decoration: none;
}

ul {
  list-style: none;
}

img {
  width: 100%;
  border: 0;
}

article, main, nav, section {
  display: block;
}

body {
  margin: 0;
  background-color: #08011b;
  /*...................................背景色,1260把這行刪掉*/
}

.layout--main {
  position: relative;
  z-index: 0;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}

.layout--main.icon_Home {
  z-index: auto;
}

/* 主視覺 */

/* ======================================== */

.logo a, .sp__visual a {
  display: block;
  width: 100%;
  height: 100%;
  /* 測試用 */
  /*border: 1px solid #f00;*/
}

.logo {
  position: absolute;
  z-index: 1;
  /* 調整logo位置 */
  top: 1%;
  left: 1%;
  width: 25%;
  max-width: 200px;
}

/* 設定背景 */

.sp__main {
  background: url(bg.jpg) center 0 no-repeat;
  /*..............背景底圖,1260把這行刪掉*/
}

/* 設定前景 */

.sp__visual {
  position: relative;
  z-index: 0;
  width: 100%;
}

.visual__anchor, .visual__main, .visual__nav {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.visual__anchor {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.visual__main a, .visual__nav a {
  flex-grow: 1;
}

/* 主視覺 */

.visual__main {
  height: 100%;
}

.visual__main a:nth-child(1) {
  flex-grow: 0;
  width: 100%;
}

/* 自適應banner組 */

/* ======================================== */

.banner__title {
  height: 65px;
  background: center top no-repeat;
}

.banner__wrap {
  display: flex;
  flex-wrap: wrap;
}

.banner__item {
  transition: all 0.3s;
}

.banner__item img {
  width: 100%;
}

/* ...............................................................table */

.bn-w1m1 .bank__box, .top-table__wrap .bank__box, .department__box, .bn-w1m1 .bank__no, .bn-w1m1 .department__no {
  width: 98%;
  display: block;
  margin: auto;
  background-color: #fff;
  padding: 2%;
  border-radius: 10px;
  margin-bottom: 8px;
}

.top-table__wrap .bank__box {
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.2);
  margin-top: 2%;
}

.top-table__wrap p {
  color: #ba1c4a;
  font: bold 2em "微軟正黑體";
  text-align: center;
}

.bn-w1m1 .bank__box li, .top-table__wrap .bank__box li, .department__box li, .department__box li a {
  font: 500 1.2em/1.2 "微軟正黑體";
  text-align: center;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  border: 1px solid #919191;
  color: #333333;
  border-top: 0;
  border-right: 0;
}

.top-table__wrap .bank__box li {
  border-color: #ba1c4a;
}

.top-table__wrap .bank__box li:first-child div {
  background-color: #ba1c4a;
  color: #FFFFFF;
  font: 600 1.5em/1.2 "微軟正黑體";
  text-align: center;
}

.bn-w1m1 li div:nth-child(3), .bn-w1m1 li div:nth-child(4) {
  color: #cb0000;
}

.bn-w1m1 .department__box li div:nth-child(3), .bn-w1m1 li div:nth-child(4) {
  color: #5b5b5b;
}

.bn-w1m1 li:first-child div:nth-child(3), .bn-w1m1 li:first-child div:nth-child(4) {
  color: #FFFFFF;
}

.top-table__wrap li div {
  flex: 0 1 50%;
  padding: 0.5%;
  border-right: 1px solid #ba1c4a;
  font: 600 1.3em "微軟正黑體";
  word-break: break-all;
}

.top-table__wrap li div span {
  color: #ba1c4a;
}

.top-table__wrap .bank__box li:first-child div:first-child {
  border-right: 1px solid #e19db1;
}

.top-table__wrap li div:first-child {
  font-size: 1.8em;
  border-top: 1px solid #ba1c4a;
}

.form {
  margin: 10px auto;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.form select {
  font: 600 1.2em/1.5 "微軟正黑體";
  border: 0;
  border-radius: 5px;
  margin: 3px 1%;
  padding: 8px;
}

.form--bank select {
  width: 31.33%;
  flex: 0 1 31.33%;
  color: #ba1c4a;
}

.department__wrap {
  display: none;
}

.form--department select {
  width: 100%;
  flex: 0 1 100%;
  color: #5b26d2;
  text-align: center;
  /* for firefox only */
  text-align-last: center;
  /* for Chrome only */
}

.bn-w1m1 .department__box li:first-child {
  background-color: #5b26d2;
  color: #FFFFFF;
}

.bn-w1m1 .bank__box li:first-child {
  background-color: #5c5c5c;
  color: #FFFFFF;
}

.bn-w1m1 .bank__box li:first-child div:last-child {
  text-align: center;
}

.bn-w1m1 .bank__box li:last-child {
  border-bottom: 1px solid #919191;
}

.bn-w1m1 .department__box ul {
  height: 200px;
  overflow-y: scroll;
}

.bn-w1m1 li div {
  display: flex;
  flex: 1 0 20%;
  padding: 0.5%;
  border-right: 1px solid #919191;
  min-width: 50px;
  word-break: break-all;
  align-items: center;
  justify-content: center;
}

.bn-w1m1 li div a {
  display: inline-block;
  background-color: #ba1c4a;
  color: #FFFFFF;
  padding: 3px 5%;
  border-radius: 50px;
  margin-left: 5px;
  font-weight: 600;
}

.bn-w1m1 .department__box li div {
  flex: 1 0 30%;
}

.bn-w1m1 li div:last-child {
  position: relative;
  flex-wrap: wrap;
}

.bn-w1m1 li div:last-child a {
  position: relative;
  right: 0;
  bottom: 0;
}

.tip, .tips {
  color: #fff002;
  font: normal 1.5em/1.5 "微軟正黑體";
  text-align: center;
  margin: 10px auto;
  width: 90%;
}

.tip a {
  color: #fff002;
  margin-right: 5px;
  text-decoration: underline;
  font-size: 2em;
}

.tips {
  color: #FFFFFF;
}

.path img {
  width: auto;
  margin: auto;
  display: block;
}

.gotop {
  width: 50px;
  height: 50px;
  cursor: pointer;
}

.result div {
  background-color: #76122f;
  width: 98%;
  border-radius: 10px;
  margin: 0 auto 8px;
  padding: 0.5% 1%;
}

.result p, .result ul li {
  font: bold 22px/1.8 "微軟正黑體";
  color: #FFFFFF;
  text-align: center;
}

.result hr {
  border: 0;
  border-bottom: 1px dashed #f6769e;
  width: 97%;
  margin: auto;
}

.result ul {
  text-align: center;
}

.result ul li {
  display: inline-block;
  margin: 0 10px;
}

.result span {
  color: #f2d934;
}

.result a {
  width: 16%;
  padding: 5px;
  border-radius: 999em;
  text-align: center;
  margin: 10px auto;
  background: linear-gradient(to bottom, #FFFFFF 10%, #ffd29c 100%);
  border: 1px solid #ffa6b6;
  font: bold 26px "微軟正黑體";
  color: #ba1c4a;
  box-shadow: 5px 4px 3px #630f27;
}

.result a:active, .result a:hover {
  filter: brightness(1.05);
}

.bn-w1m1 .bank__no {
  width: 100%;
  background-color: #f2d0db;
  padding: 5%;
  text-align: center;
  color: #ba1c4a;
  font: bold 26px "微軟正黑體";
  border-radius: 10px;
  margin: 0;
}

.bn-w1m1 .department__no {
  width: 100%;
  background-color: rgba(91, 38, 210, 0.3);
  padding: 5%;
  text-align: center;
  color: #5b26d2;
  font: bold 26px "微軟正黑體";
  border-radius: 10px;
  margin: 0;
}

.btn--clean {
  cursor: pointer;
}

@media screen and (max-width: 1024px) {
  .bn-w1m1 .bank__box, .top-table__wrap .bank__box, .result div {
    width: 95%;
  }
  .bn-w1m1 .bank__box li {
    font-size: 1em;
  }
  .login a {
    position: unset;
  }
  .top-table__wrap p, .result p {
    font: bold 1.3em/2 "微軟正黑體";
  }
  .top-table__wrap li div {
    font-size: 1em;
    padding: 1.5%;
    line-height: 1.2;
  }
  .top-table__wrap .bank__box li:first-child div {
    font-size: 1em;
  }
  .top-table__wrap li div:first-child {
    font-size: 1.3em;
  }
  .top-table__wrap li div:nth-child(2) {
    text-align: left;
  }
  .result ul {
    width: 100%;
    margin: 2% auto;
  }
  .result ul li {
    display: block;
    font: bold 1.4em/1.5 "微軟正黑體";
    text-align: left;
  }
  .result a {
    width: 50%;
    font-size: 1.4em;
  }
  .bn-w1m1 .bank__no, .bn-w1m1 .department__no {
    font: bold 1.4em/1.2 "微軟正黑體";
    text-align: center;
  }
  .bn-w1m1 li div a {
    padding: 3px;
    margin: 0;
    display: block;
    width: 65%;
    margin: auto;
  }
  .tip, .tips {
    font-size: 0.95em;
  }
  .path img {
    width: 100%;
  }
}

@media screen and (max-width: 420px) {
  .form {
    width: 95%;
  }
  .form select {
    width: 100%;
    flex: 0 1 100%;
    margin: 3px 1%;
    padding: 5px;
  }
  .bn-w1m1 li div a {
    padding: 3px;
    width: 90%;
  }
  .department__box li, .department__box li a, .department__box li a div {
    display: block;
    position: relative;
    z-index: 0;
    text-align: left;
  }
  .department__box li {
    border: 1px solid #5b5b5b;
    margin-bottom: 1%;
  }
  .department__box li:first-child {
    display: none;
  }
  .department__box li a {
    font-size: 1.05em;
  }
  .department__box li a:after {
    content: "❯";
    position: absolute;
    z-index: 1;
    top: 49%;
    right: 0;
    width: 1em;
    color: #5b26d2;
  }
  .department__box li a div:first-child {
    color: #fff;
    background-color: #5b26d2;
    font-weight: bold;
    text-align: center;
  }
}

.result {
  display: none;
}

.hide-show {
  animation: 0.3s hide-show both;
}

@keyframes hide-show {
  from {
    background: rgba(100, 100, 100, .5);
    filter: contrast(50%);
    opacity: 0;
  }
  to {
    filter: contrast(100%);
    opacity: 1;
  }
}

.note article {
  background-color: #ba1c4a;
  font: normal 1em/1.5 '微軟正黑體', Arial;
  color: #FFFFFF;
  padding-bottom: 3%;
}

.note h2 {
  font-size: 1em;
  line-height: 2;
  margin: 5px 0 5px 3%;
}

.note p {
  line-height: 1.5;
  padding: 0 5%;
  margin: 0;
}

.note ol, .note ul {
  padding: 0;
  margin: auto;
  margin: 0 5% 0 10%;
  list-style: decimal;
}

.note ul {
  list-style: disc;
}

.note table {
  color: #5b5b5b;
  border: 1px solid #c0c0c0;
  border-right: 0;
  border-bottom: 0;
  width: 90%;
  margin: 1% 0 2% 4.5%;
  background-color: #FFFFFF;
  font-size: 0.9em;
}

.note table td {
  border-right: 1px solid #c0c0c0;
  border-bottom: 1px solid #c0c0c0;
  padding: 5px;
  text-align: center;
}

.note table tr:first-child td, .note ol table tr:first-child td {
  text-align: center;
  background-color: #949494;
  color: #f9f9f9;
}

.note ol table {
  margin: 0;
  width: 107%;
  margin: 2% 0 2% -7%;
}

.note ol table td {
  text-align: left;
}

.note ol table tr:first-child td {
  white-space: nowrap;
}

.go-top {
  position: fixed;
  z-index: 999;
  right: 10px;
  bottom: 90px;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  padding: 10px 12px;
  color: #ffffff;
  background: rgba(0, 0, 0, 0.5);
  border: none;
  opacity: 0;
  transition: opacity 0.4s linear;
  border-radius: 100px;
  cursor: pointer;
  display: none;
}

.go-top.is-visible {
  display: block;
  opacity: 1;
}

.go-top:focus, .go-top i:focus {
  outline: 0;
}

/* fix umall "position:fixed" not working */

.main, .side {
  -ms-transform: none;
  transform: none;
}