@charset "UTF-8";

html {
  overflow-x: hidden;
}

body {
  font-family: '微軟正黑體', 'Malgun Gothic', Dotum, Tahoma, sans-serif;
  background-color: #ffffff;
  color: #fff;
  overflow-x: hidden;
  width: 100vw;
}

* {
  margin: 0px;
  padding: 0px;
}

img {
  max-width: 100%;
  height: auto;
}

#gotop {
  display: block;
  position: fixed;
  bottom: 30px;
  left: 30px;
  z-index: 999;
}

:focus {
  outline: none;
}

a:hover,
a:active,
a:focus {
  text-decoration: none;
  outline: none;
}

button:focus {
  outline: none;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style-type: none !important;
}


h2 {
  margin: 80px 0 30px;
  font-weight: 700;
}

.row {
  margin: 0;
}

.nav-link:hover, .nav-link:active, .nav-link:focus {
  color: #fff;
  background-color: unset;
  border-color: unset;
}

.nav {
  justify-content: center;
}

/* landscape------------------------------------------------------------------- */
.landscape {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: auto;
  background: #33313e;
  display: none;
  z-index: 9999;
}

.landscape span {
  position: absolute;
  right: 0;
  top: 50%;
  margin: 0;
  width: 100%;
  text-align: center;
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.landscape span>p {
  color: #ccc;
  margin: 0;
  font-size: 16px;
}

/* landscape-end-------------------------------------------------------------- */

/* sidebar */
.btnBox {
  position: fixed;
  left: 50px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 14;
}

.btnBox ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.btnBox ul>li {
  margin: 0 0 10px;
}

.btnBox ul>li>a {
  display: inline-block;
  width: 175px;
  height: 182px;
  background: url(../images/sidebtn-left.png) 0px 0px;
  text-indent: -9999px;
}

.btnBox ul>li:nth-child(1)>a {
  background-position: 175px 0;
}

.btnBox ul>li:nth-child(2)>a {
  background-position: 175px -189px;
}

.btnBox ul>li>a:hover {
  background: url(../images/sidebtn-left.png) 0px 0px;
}

.btnBox ul>li:nth-child(1)>a:hover, .btnBox ul>li:nth-child(1)>a.active {
  background-position: 0 0;
}

.btnBox ul>li:nth-child(2)>a:hover, .btnBox ul>li:nth-child(2)>a.active {
  background-position: 0 -189px;
}


.sideBtn {
  position: fixed;
  right: 50px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
}

.sideBtn ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.sideBtn ul>li {
  margin: 0 0 10px;
}

.sideBtn ul>li>a {
  display: inline-block;
  width: 202px;
  height: 53px;
  background: url(../images/sidebtn-right.png) 0px 0px;
  text-indent: -9999px;
}



.sideBtn ul>li:nth-child(1)>a {
  background-position: 0 0;
}

.sideBtn ul>li:nth-child(2)>a {
  background-position: 0 -60px;
}

.sideBtn ul>li:nth-child(3)>a {
  background-position: 0 -120px;
}

.sideBtn ul>li:nth-child(4)>a {
  background-position: 0 -180px;
}

.sideBtn ul>li:nth-child(5)>a {
  background-position: 0 -240px;
}

.sideBtn ul>li:nth-child(6)>a {
  background-position: 0 -299px;
}

.sideBtn ul>li>a:hover, .sideBtn ul>li>a.active {
  background: url(../images/sidebtn-right.png) 0px 0px;
}

.sideBtn ul>li:nth-child(1)>a:hover, .sideBtn ul>li:nth-child(1)>a.active {
  background-position: 202px 0;
}

.sideBtn ul>li:nth-child(2)>a:hover, .sideBtn ul>li:nth-child(2)>a.active {
  background-position: 202px -60px;
}

.sideBtn ul>li:nth-child(3)>a:hover, .sideBtn ul>li:nth-child(3)>a.active {
  background-position: 202px -120px;
}

.sideBtn ul>li:nth-child(4)>a:hover, .sideBtn ul>li:nth-child(4)>a.active {
  background-position: 202px -180px;
}

.sideBtn ul>li:nth-child(5)>a:hover, .sideBtn ul>li:nth-child(5)>a.active {
  background-position: 202px -240px;
}

.sideBtn ul>li:nth-child(6)>a:hover, .sideBtn ul>li:nth-child(6)>a.active {
  background-position: 202px -299px;
}

/* sidebar */

/* header */
.canvas {
  width: 100%;
  height: 100%;
  overflow: hidden;
  opacity: 0.5;
}

#header {
  background: url(../images/main-bg.png) no-repeat 50% 0;
  background-size: cover;
  /* background-attachment: fixed; */
  height: 100vh;
  position: relative;
  padding-top: 50px;
  overflow: hidden;
}

#header .contents {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  /* -webkit-transform: translateY(-40%); */
  -o-transform: translateY(-40%);
  /* transform: translateY(-40%); */
  z-index: 7;
  height: 100%;
}

#header .title {
  position: relative;
}

.titleBox {
  margin: 456px 0 0;
}

.logo {
  position: relative;
  left: 0rem;
  top: 1rem;
  z-index: 1;
}

.logo img {
  position: absolute;
  left: 10%;
  top: 4%;
}

/* s1 */
#s1 {
  background: url(../images/s1-bg.png) no-repeat center center;
  height: 800px;
  width: 100vw;
}

.picGroup {
  width: 56%;
  margin-top: 90px !important;
}

#s1 .char {
  z-index: -1;
}

.char {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.char-l, .char-r {
  position: absolute;
  z-index: 0;
  bottom: -88px;
}

.char-l {
  left: 55px;
}

.char-r {
  right: 55px;
}

/* s2 */
#s2 {
  background: url(../images/s2-bg.png) no-repeat center center;
  height: 800px;
  width: 100vw;
}

.picGroup02 {
  margin: 3rem auto;
}

/* s3 */
#s3 {
  background: url(../images/s3-bg.png) no-repeat center center;
  height: 958px;
  width: 100vw;
}

/* s4 */
#s4 {
  background: url(../images/s4-bg.png) no-repeat center center;
  height: 800px;
  width: 100vw;
}

#s4 .char-l {
  bottom: -10px;
}

/* s5 */
#s5 {
  background: url(../images/s5-bg.png) no-repeat center 0;
  height: 980px;
  width: 100%;
  position: relative;
}

.charWrap {
  position: relative;
  z-index: 1;
  text-align: center;
  margin-top: 50px;
}

#s5 .char-l {
  left: -10px;
}

#s5 .char-r {
  right: -40px;
}

#s5 .char-l, #s5 .char-r {
  position: absolute;
  z-index: 0;
  bottom: 0px;
}


/* 頁籤 */
.nav-pills>li+li {
  margin-left: 0;
}

.nav-pills>li>a {
  background: url(../images/s5-btn.png) no-repeat 0 center;
  display: inline-block;
  width: 250px;
  height: 60px;
  text-indent: -9999px;
  margin: 0 20px;
}

.nav-pills>li:first-child a {
  background-position: -5px -5px;
}

.nav-pills>li:nth-child(2) a {
  background-position: -305px -5px;
}

.nav-pills>li:last-child a {
  background-position: -605px -5px;
}

.nav-pills>li:first-child a:hover, .nav-pills>li:first-child a.active {
  background-position: -5px -74px;
}

.nav-pills>li:nth-child(2) a:hover, .nav-pills>li:nth-child(2) a.active {
  background-position: -305px -74px;
}

.nav-pills>li:last-child a:hover, .nav-pills>li:last-child a.active {
  background-position: -605px -74px;
}

/* 除了包含.contents的.tab-content之外 */
.tab-content:not(.contents) {
  margin: 85px 0 0;
}

/* 頁籤 */




@media (max-width: 1024px) {
  .canvas {
    display: none;
  }

  .nav-pills .tab {
    margin-top: 10px;
  }

  .picGroup {
    width: 90%;
  }

  .char {
    display: none;
  }

  #s1, #s2, #s3, #s4, #s5 {
    height: auto;
    padding-bottom: 96px;
    background-size: cover;
  }

  #header {
    background-position: 72% 0;
  }

  .picGroup {
    margin-top: 38px !important;
  }

  .picGroup .col-12 {
    margin: 7px 0;
  }

  nav-pills .tab {
    margin-top: 10px;
  }
}

@media (max-width: 768px) {

  .titleBox {
    margin: 631px 0 0;
  }

  .nav_center {
    display: block;
  }

  .logoBox {
    width: 2.5rem;
    margin: 0 auto;
  }

}


@media (max-width: 480px) {
  .btnBox {
    position: absolute;
    left: 2%;
    top: 48%;
  }

  .btnBox ul>li {
    margin: 0 0 10px;
  }

  .btnBox ul>li>a {
    width: 111px;
    height: 120px;
    background: url(../images/sidebtn-left-s.png) 0px 0px;
    background-repeat: no-repeat;
  }

  .btnBox ul>li:nth-child(1)>a {
    background-position: 0px 0px;
  }

  .btnBox ul>li:nth-child(2)>a, .btnBox ul>li:nth-child(2)>a:hover {
    background-position: 0px -137px;
  }

  .btnBox ul>li>a:hover {
    background: url(../images/sidebtn-left-s.png) 0px 0px;
  }

  #header .title {
    position: relative;
    height: 100vh;
  }

  .titleBox {
    position: absolute;
    bottom: 6rem;
    margin: 0;
  }

  #header {
    background-position: 27% 0;
  }

  .sideBtn {
    display: none;
  }

  .nav {
    justify-content: space-around;
  }

  .sideBtn {
    right: 15px;
    top: 65px;
  }

  .sideBtn ul>li>a {
    width: 60px;
    height: 60px;
    line-height: 60px;
    font-size: 14px;
  }
}

/* orientation: landscape and max-device-width: 850px */
@media only screen and (orientation: landscape) and (max-device-width: 850px) {
  .landscape {
    display: block
  }

  .sideBtn {
    display: none;
  }
}

/* media-end------------------------------------------------------------------ */