/* Welcome to Compass.
* In this file you should write your main styles. (or centralize your imports)
* Import this file using the following HTML or equivalent:
* <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css" /> */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

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

*:focus {
  outline: none;
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a {
  text-decoration: none;
}

html {
  width: 100%;
  height: 100%;
}

body {
  overflow-x: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

main {
  position: relative;
  width: 100%;
}

img {
  width: 100%;
}

/* ==|====================
layout/_footer
======================= */
#footer {
  position: relative;
}
#footer .link {
  position: absolute;
  top: 24%;
  width: 18%;
  height: 28%;
}
#footer .link.link-1 {
  left: 8%;
}
#footer .link.link-2 {
  left: 29%;
}
#footer .link.link-3 {
  left: 49%;
}
#footer .link.link-4 {
  left: 72%;
}
@media screen and (min-width: 768px) {
  #footer .link {
    top: 46%;
    width: 9%;
    height: 24%;
  }
  #footer .link.link-1 {
    left: 29%;
  }
  #footer .link.link-2 {
    left: 39%;
  }
  #footer .link.link-3 {
    left: 50%;
  }
  #footer .link.link-4 {
    left: 61%;
  }
}

/* ==|====================
   pages/index
   ======================= */
.main section {
  position: relative;
}
.main .scene-bg__mobile {
  display: block;
}
.main .scene-bg__desktop {
  display: none;
}
.main .section-bg {
  opacity: 0;
}
.main .header {
  position: relative;
  width: 100%;
}
.main .logo {
  position: absolute;
  top: 10%;
  left: 29%;
  width: 9%;
  height: 55%;
}
.main .menu {
  position: absolute;
  top: 0.5%;
  right: 2%;
  width: 14%;
  height: 2%;
  z-index: 1;
}
.main .logo-link {
  position: absolute;
  top: 10%;
  left: 5%;
  width: 29%;
  height: 70%;
}
.main .menu-link {
  position: absolute;
  top: 10%;
  left: 86%;
  width: 10%;
  height: 70%;
}
.main .menu-wrap .nav {
  position: absolute;
  top: 21%;
  width: 5%;
  height: 40%;
}
.main .menu-wrap .nav-1 {
  left: 42%;
}
.main .menu-wrap .nav-2 {
  left: 50%;
}
.main .menu-wrap .nav-3 {
  left: 58%;
}
.main .menu-wrap .nav-4 {
  left: 66%;
}
@media screen and (min-width: 768px) {
  .main .scene-bg__mobile {
    display: none;
  }
  .main .scene-bg__desktop {
    display: block;
  }
}

.kv-modal-close {
  position: absolute;
  top: 3%;
  right: 0;
  width: 50px;
  height: 50px;
}

.jquery-modal {
  z-index: 3;
}

.menu-modal {
  position: absolute;
  width: 300px;
  max-width: 730px;
  padding-top: 144%;
  right: 0;
  top: 0;
  background-image: url(../img/mobile/0-2list.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-color: transparent;
  display: none;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.modal-body {
  position: absolute;
  top: 23.5%;
  right: 0;
  width: 100%;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.modal-link {
  margin-bottom: 3.5%;
  width: 100%;
  height: 6.5%;
  color: #fff;
  font-size: 24px;
  letter-spacing: 1px;
  text-align: center;
  display: block;
}

.modal-close {
  position: absolute;
  color: #fff;
  top: 3%;
  right: 16%;
  width: 20%;
  height: 12%;
}

.go-share {
  position: fixed;
  top: 50%;
  right: 0;
  width: 80px;
  z-index: 2;
}

.go-bottom {
  position: fixed;
  top: 69%;
  right: 0;
  width: 80px;
  z-index: 2;
}

@media screen and (max-width: 376px) {
  .modal-body {
    top: 25%;
  }
}
@media screen and (min-width: 768px) {
  .kv-modal-close {
    top: 3%;
    right: 3%;
    width: 50px;
    height: 50px;
  }
  .menu-modal {
    width: 407px;
    height: 825px;
  }
  .modal-close {
    top: 30px;
    right: 30px;
    width: 79px;
    height: 85px;
  }
  .modal-body {
    margin-top: 160px;
    width: initial;
  }
  .modal-link {
    margin-bottom: 32px;
  }
  .go-share {
    top: 480px;
    width: 120px;
  }
  .go-bottom {
    top: 650px;
    width: 120px;
  }
}
.kv {
  overflow-x: hidden;
}
.kv .section-logo {
  position: absolute;
  top: 36%;
  left: 8%;
  width: 85%;
  -webkit-animation: move 2s ease-out forwards alternate infinite;
          animation: move 2s ease-out forwards alternate infinite;
}
.kv .car {
  position: absolute;
  top: 51%;
  left: 9%;
  width: 70%;
  -webkit-animation: RightIn 1.5s linear;
          animation: RightIn 1.5s linear;
}
.kv .car .wheel {
  position: absolute;
  width: 12%;
}
.kv .car .wheel.wheel-1 {
  top: 78%;
  left: 75%;
  -webkit-animation: wheelsRotation 1s infinite linear;
          animation: wheelsRotation 1s infinite linear;
}
.kv .car .wheel.wheel-2 {
  top: 83%;
  left: 10.5%;
  -webkit-animation: wheelsRotation 1.15s infinite linear;
          animation: wheelsRotation 1.15s infinite linear;
}
.kv .kv-item {
  position: absolute;
  top: 73%;
  width: 14%;
  height: 21%;
}
.kv .kv-item .animation-blink {
  position: absolute;
  width: 25%;
  -webkit-animation: blink-animation 1s steps(5, start) infinite;
          animation: blink-animation 1s steps(5, start) infinite;
}
.kv .kv-item.item-1 {
  left: 26%;
}
.kv .kv-item.item-1 .animation-blink {
  top: 76%;
  left: -12%;
}
.kv .kv-item.item-2 {
  left: 43%;
}
.kv .kv-item.item-2 .animation-blink {
  top: 100%;
  left: 78%;
}
.kv .kv-item.item-3 {
  left: 60%;
}
.kv .kv-item.item-3 .animation-blink {
  top: -8%;
  left: 95%;
}
@media screen and (min-width: 768px) {
  .kv .car {
    top: 25%;
    left: 9%;
    width: 43%;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes move {
  0% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
  50% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}
@keyframes move {
  0% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
  50% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}
@-webkit-keyframes wheelsRotation {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes wheelsRotation {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes RightIn {
  0% {
    -webkit-transform: translateX(-300px);
            transform: translateX(-300px);
  }
  85% {
    -webkit-transform: translateX(10px);
            transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes RightIn {
  0% {
    -webkit-transform: translateX(-300px);
            transform: translateX(-300px);
  }
  85% {
    -webkit-transform: translateX(10px);
            transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.middle .kv-item {
  position: absolute;
  width: 33%;
  height: 41%;
}
.middle .kv-item .animation-blink {
  position: absolute;
  width: 25%;
  -webkit-animation: blink-animation 1s steps(5, start) infinite;
          animation: blink-animation 1s steps(5, start) infinite;
}
.middle .kv-item.item-1 {
  top: 2%;
  left: 18%;
}
.middle .kv-item.item-1 .animation-blink {
  top: 85%;
  left: -27%;
}
.middle .kv-item.item-2 {
  top: 17%;
  left: 56%;
}
.middle .kv-item.item-2 .animation-blink {
  top: 115%;
  left: 65%;
}
.middle .kv-item.item-3 {
  top: 54%;
  left: 17%;
}
.middle .kv-item.item-3 .animation-blink {
  top: -8%;
  left: 102%;
}

@-webkit-keyframes blink-animation {
  to {
    visibility: hidden;
  }
}

@keyframes blink-animation {
  to {
    visibility: hidden;
  }
}
.land {
  position: relative;
}
.land .land-anchor {
  position: absolute;
  width: 7%;
  -webkit-animation: move 0.5s linear forwards alternate infinite;
          animation: move 0.5s linear forwards alternate infinite;
}
.land .anchor-hsinchu {
  top: 17.5%;
  left: 42.5%;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.land .anchor-taichung {
  top: 31%;
  left: 44%;
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}
.land .anchor-kaohsiung {
  top: 62.25%;
  left: 34.25%;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.land .anchor-hualien {
  top: 31.25%;
  left: 60.75%;
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}
.land .overlay {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.85);
  display: none;
}
@media screen and (min-width: 768px) {
  .land .anchor-hsinchu {
    top: 19%;
    left: 46%;
  }
  .land .anchor-taichung {
    top: 33%;
    left: 47.5%;
  }
  .land .anchor-kaohsiung {
    top: 65.5%;
    left: 38.25%;
  }
  .land .anchor-hualien {
    top: 33.25%;
    left: 62.75%;
  }
}

.anchor-city {
  position: absolute;
  width: 40%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: none;
}
.anchor-city.anchor-car-hsinchu {
  top: 15%;
  left: 34.75%;
}
.anchor-city.anchor-car-taichung {
  top: 31%;
  left: 35%;
}
.anchor-city.anchor-car-kaohsiung {
  top: 54%;
  left: 34%;
  width: 28%;
}
.anchor-city.anchor-car-hualien {
  top: 30%;
  left: 61%;
  width: 60%;
}
.anchor-city.anchor-car-hualien .anchor-go {
  position: absolute;
  top: 12%;
  left: 26%;
  width: 20%;
}
.anchor-city .anchor-car {
  width: 50%;
}
.anchor-city .anchor-go {
  width: 30%;
  -webkit-animation: scaleOut 0.75s linear forwards alternate infinite;
          animation: scaleOut 0.75s linear forwards alternate infinite;
}
@-webkit-keyframes scaleOut {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes scaleOut {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.city-modal {
  padding: 0;
  position: relative;
  width: 320px;
  height: 750px;
  max-width: 800px;
  background-size: contain;
  background-color: transparent;
  background-repeat: no-repeat;
  display: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.city-modal .city-modal-close {
  position: absolute;
  top: 2%;
  right: 1%;
  width: 10%;
  height: 7%;
}
.city-modal .city-modal-link {
  position: absolute;
  width: 14%;
  height: 3%;
}
.city-modal.city-1 .city-more, .city-modal.city-3 .city-more {
  top: 87%;
  left: 30%;
}
.city-modal.city-1 .city-shop, .city-modal.city-3 .city-shop {
  top: 87%;
  left: 50%;
}
.city-modal.city-1 .city-scan, .city-modal.city-3 .city-scan {
  top: 91%;
  left: 40%;
}
.city-modal.city-2 .city-more, .city-modal.city-4 .city-more {
  top: 87%;
  left: 30%;
}
.city-modal.city-2 .city-shop, .city-modal.city-4 .city-shop {
  top: 87%;
  left: 51%;
}
.city-modal.city-2 .city-scan, .city-modal.city-4 .city-scan {
  top: 91%;
  left: 40%;
}
.city-modal.city-1 {
  background-image: url(../img/mobile/02-2-3.png);
}
.city-modal.city-2 {
  background-image: url(../img/mobile/02-3-3.png);
}
.city-modal.city-3 {
  background-image: url(../img/mobile/02-4-3.png);
}
.city-modal.city-4 {
  background-image: url(../img/mobile/02-5-3.png);
}
@media screen and (min-width: 768px) {
  .city-modal {
    width: 600px;
    height: 940px;
  }
  .city-modal .city-modal-close {
    top: 5%;
  }
  .city-modal.city-1 {
    background-image: url(../img/desktop/pc02-2-3.png);
  }
  .city-modal.city-2 {
    background-image: url(../img/desktop/pc02-3-3.png);
  }
  .city-modal.city-3 {
    background-image: url(../img/desktop/pc02-4-3.png);
  }
  .city-modal.city-4 {
    background-image: url(../img/desktop/pc02-5-3.png);
  }
  .city-modal.city-1 .city-more, .city-modal.city-3 .city-more {
    top: 83%;
    left: 50%;
  }
  .city-modal.city-1 .city-shop, .city-modal.city-3 .city-shop {
    top: 83%;
    left: 67%;
  }
  .city-modal.city-1 .city-scan, .city-modal.city-3 .city-scan {
    top: 87%;
    left: 58%;
  }
  .city-modal.city-2 .city-more, .city-modal.city-4 .city-more {
    top: 86%;
    left: 47%;
  }
  .city-modal.city-2 .city-shop, .city-modal.city-4 .city-shop {
    top: 86%;
    left: 63%;
  }
  .city-modal.city-2 .city-scan, .city-modal.city-4 .city-scan {
    top: 90%;
    left: 55%;
  }
}

.good-modal {
  padding: 0;
  position: relative;
  width: 320px;
  height: 560px;
  max-width: 800px;
  background-image: url(../img/mobile/01-pp1.png);
  background-size: contain;
  background-color: transparent;
  background-repeat: no-repeat;
  display: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.good-modal .good-modal-link {
  position: absolute;
  width: 20%;
  height: 4%;
}
.good-modal .good-more-1 {
  top: 46%;
  left: 44%;
}
.good-modal .good-shop-1 {
  top: 46%;
  left: 67%;
}
.good-modal .good-more-2 {
  top: 86%;
  left: 44%;
}
.good-modal .good-shop-2 {
  top: 86%;
  left: 67%;
}
@media screen and (min-width: 768px) {
  .good-modal {
    width: 600px;
    height: 800px;
    background-image: url(../img/desktop/pc01-pp1.png);
  }
  .good-modal .good-modal-link {
    width: 14%;
    height: 4%;
  }
  .good-modal .good-more-1 {
    top: 47%;
    left: 43%;
  }
  .good-modal .good-shop-1 {
    top: 47%;
    left: 58%;
  }
  .good-modal .good-more-2 {
    top: 85%;
    left: 43%;
  }
  .good-modal .good-shop-2 {
    top: 85%;
    left: 58%;
  }
}

.trip-modal {
  padding: 0;
  position: relative;
  width: 320px;
  height: 820px;
  max-width: 800px;
  background-size: contain;
  background-color: transparent;
  background-repeat: no-repeat;
  display: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-image: url(../img/mobile/01-pp2.png);
}
.trip-modal .trip-modal-link {
  position: absolute;
  left: 39%;
  width: 16%;
  height: 3%;
}
.trip-modal .trip-more-1 {
  top: 19%;
}
.trip-modal .trip-more-2 {
  top: 46%;
}
.trip-modal .trip-more-3 {
  top: 74%;
}
@media screen and (min-width: 768px) {
  .trip-modal {
    width: 600px;
    height: 1390px;
    background-image: url(../img/desktop/pc01-pp2.png);
  }
}

.paternity-modal {
  padding: 0;
  position: relative;
  width: 320px;
  height: 480px;
  max-width: 800px;
  background-size: contain;
  background-color: transparent;
  background-repeat: no-repeat;
  display: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-image: url(../img/mobile/01-pp3.png);
}
.paternity-modal .paternity-modal-link {
  position: absolute;
  width: 15%;
  height: 4%;
}
.paternity-modal .paternity-more-1 {
  top: 67%;
  left: 14%;
}
.paternity-modal .paternity-more-2 {
  top: 67%;
  left: 41%;
}
.paternity-modal .paternity-more-3 {
  top: 75%;
  left: 68%;
}
@media screen and (min-width: 768px) {
  .paternity-modal {
    width: 600px;
    height: 750px;
    background-image: url(../img/desktop/pc01-pp3.png);
  }
}