@charset "UTF-8";
/* CSS Document */
@import url("reset.css");
/* CSS Document */
@import url("reset.css");
@import url(https://fonts.googleapis.com/earlyaccess/cwtexyen.css);
html {
  font-size: 16px;
}

html * {
  font-size: 1rem;
  font-weight: 500;
}

body, ul, li {
  margin: 0px;
  padding: 0px;
  font-family: Arial,"Arial Black","cwTeXYen", "微軟正黑體", "新細明體", "細明體";
  font-size: 16px;
  line-height: 25px;
  color: #555;
  letter-spacing: 1px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0);*/
}

body {
  background: url(../images/bg.png);
  background-position: top center;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

div, span {
  display: block;
  width: 100%;
}

button {
  display: none;
}

*:focus {
  outline: none;
}

/*解決滾動到區塊時出現框線問題*/
h3 {
  font-size: 3vw;
  font-weight: 800;
  color: #000;
  display: inline-block;
  width: auto;
  line-height: 1.25;
  margin: 2% auto;
  text-align: center;
}

@media (max-width: 992px) {
  h3 {
    font-size: 2vw;
  }
}

@media (max-width: 768px) {
  h3 {
    font-size: 6vw;
    padding: 1.5vw 3.5vw;
  }
}

h3.title_blue {
  background: url(../images/s02/titlebg_b.png) no-repeat;
  background-size: 100% 100%;
}

h3.title_white {
  background: url(../images/s02/titlebg_w.png) no-repeat;
  background-size: 100% 100%;
}

h4 {
  font-size: 1.4vw;
  line-height: 1.75;
  font-weight: 800;
  color: #000;
}

@media (max-width: 992px) {
  h4 {
    font-size: 1.75vw;
  }
}

@media (max-width: 768px) {
  h4 {
    font-size: 5vw;
    padding: 1.5vw 2.5vw;
  }
}

p {
  font-size: 1.25vw;
  line-height: 1.5;
  font-weight: 800;
  color: #000;
  letter-spacing: 2px;
  text-align: justify;
}

@media (max-width: 992px) {
  p {
    font-size: 1.5vw;
  }
}

@media (max-width: 768px) {
  p {
    font-size: 4vw;
  }
}

p span {
  font-size: 1.25vw;
  line-height: 1.5;
}

@media (max-width: 768px) {
  p span {
    font-size: 4vw;
  }
}

.btn_style {
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
}

.btn_style:hover {
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
}

.pc {
  display: block;
}

@media (max-width: 768px) {
  .pc {
    display: none;
  }
}

.mob {
  display: none;
}

@media (max-width: 768px) {
  .mob {
    display: block;
  }
}

/*============ 00.intro =======================*/
.intro_box {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: 100;
  background: url(../images/intro/intro02.gif) no-repeat center;
  background-size: cover;
  opacity: 1;
  -webkit-animation: intro 0.5s ease-in 6s forwards;
          animation: intro 0.5s ease-in 6s forwards;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

@media (max-width: 768px) {
  .intro_box {
    background: url(../images/intro/intro_m02.gif) no-repeat center;
    background-size: cover;
  }
}

.intro_box span {
  -webkit-animation: introbg 6s ease-in forwards;
          animation: introbg 6s ease-in forwards;
}

.intro_box span img {
  opacity: 1;
}

@-webkit-keyframes intro {
  0% {
    opacity: 1;
  }
  98% {
    opacity: 0;
    top: 0;
  }
  100% {
    opacity: 0;
    top: -100%;
  }
}

@keyframes intro {
  0% {
    opacity: 1;
  }
  98% {
    opacity: 0;
    top: 0;
  }
  100% {
    opacity: 0;
    top: -100%;
  }
}

@-webkit-keyframes introbg {
  0% {
    background: #000;
  }
  80% {
    background: #000;
  }
  90% {
    background: #1d7fb9;
  }
  100% {
    background: #1d7fb9;
  }
}

@keyframes introbg {
  0% {
    background: #000;
  }
  80% {
    background: #000;
  }
  90% {
    background: #1d7fb9;
  }
  100% {
    background: #1d7fb9;
  }
}

header {
  width: 90.4%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
}

@media (max-width: 768px) {
  header {
    width: 95%;
  }
}

header .logo_ci {
  width: 18.4%;
}

@media (max-width: 768px) {
  header .logo_ci {
    width: 35%;
  }
}

header nav {
  width: auto;
  position: absolute;
  right: 3%;
  top: 7%;
  z-index: 2;
}

@media (max-width: 767px) {
  header nav {
    display: none;
  }
}

header nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

header nav ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin: 5% 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}

header nav ul li a {
  text-decoration: none;
}

header nav ul li a span {
  display: inline-block;
  width: auto;
  font-size: 1vw;
  font-weight: 600;
  color: #000;
  background: #fff;
  border: 1px solid #000;
  border-radius: 50px;
  line-height: 1;
  padding: 0.5vw 1vw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  white-space: nowrap;
  position: relative;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

header nav ul li a span:hover {
  color: #fff;
  background: #e6231b;
}

header nav ul li a span::after {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: #000;
  border: 1px solid #000;
  border-radius: 50px;
  position: absolute;
  left: 0;
  top: 5px;
  z-index: -1;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}

header nav ul li a span:hover::after {
  top: 0;
}

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

/*---KV---*/
.kv_box {
  width: 90.5%;
  margin: 0 auto;
  position: relative;
}

@media (max-width: 768px) {
  .kv_box {
    width: 95%;
    margin: 8% auto 0;
  }
}

.kv_box h1 {
  width: 48%;
  position: absolute;
  left: 26%;
  top: -7.5%;
  z-index: 2;
}

@media (max-width: 768px) {
  .kv_box h1 {
    width: 85.6%;
    left: 7.2%;
    top: -7.5%;
  }
}

.kv_box .kv_airplane {
  width: 14.6%;
  position: absolute;
  left: 8.8%;
  top: 2%;
  z-index: 2;
  opacity: 0;
  -webkit-animation: airplane_in 1s ease-in-out 7.5s forwards;
          animation: airplane_in 1s ease-in-out 7.5s forwards;
}

.kv_box .kv_airplane img {
  -webkit-animation: airplane 1s ease-in-out infinite;
          animation: airplane 1s ease-in-out infinite;
}

@media (max-width: 768px) {
  .kv_box .kv_airplane {
    width: 16%;
    top: 12%;
  }
}

.map_box {
  width: 56.9%;
  position: absolute;
  left: 22.3%;
  top: 8.8%;
}

@media (max-width: 768px) {
  .map_box {
    width: 94.7%;
    left: 2.6%;
  }
}

.map_box .map_g {
  position: relative;
}

.map_box .map_g .city01 {
  width: 25%;
  position: absolute;
  left: 28.1%;
  top: 37%;
  z-index: 5;
}

.map_box .map_g .city_b {
  width: 11.9%;
  position: absolute;
  z-index: 2;
  -webkit-transform-origin: bottom center;
          transform-origin: bottom center;
  -webkit-transform: scale(0);
          transform: scale(0);
}

.map_box .map_g .city_s {
  width: 5.5%;
  position: absolute;
  z-index: 2;
  -webkit-transform-origin: bottom center;
          transform-origin: bottom center;
  -webkit-transform: scale(0);
          transform: scale(0);
}

.city01_name {
  left: 40.3%;
  top: 3%;
  -webkit-animation: city_zoom 0.75s ease-in-out 8s forwards;
          animation: city_zoom 0.75s ease-in-out 8s forwards;
}

.city02_name {
  left: 25.4%;
  top: 3.9%;
  -webkit-animation: city_zoom 0.75s ease-in-out 7.3s forwards;
          animation: city_zoom 0.75s ease-in-out 7.3s forwards;
}

.city03_name {
  left: 67.8%;
  top: 63%;
  -webkit-animation: city_zoom 0.75s ease-in-out 7.5s forwards;
          animation: city_zoom 0.75s ease-in-out 7.5s forwards;
}

.city04_name {
  left: 29.1%;
  top: 64.6%;
  -webkit-animation: city_zoom 0.75s ease-in-out 7.7s forwards;
          animation: city_zoom 0.75s ease-in-out 7.7s forwards;
}

.bear_box {
  width: 46.3%;
  position: absolute;
  left: 40%;
  top: 10%;
  z-index: 6;
}

.bear_box .bear_g {
  position: relative;
  -webkit-transform-origin: bottom center;
          transform-origin: bottom center;
  -webkit-animation: bear_g 2s ease-in-out infinite;
          animation: bear_g 2s ease-in-out infinite;
}

.bear_box .bear_g .bear_line {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transform-origin: center;
          transform-origin: center;
}

.bear_line01 {
  z-index: 3;
  -webkit-animation: bear_line_a .5s ease-in-out infinite;
          animation: bear_line_a .5s ease-in-out infinite;
}

.bear_line02 {
  z-index: 2;
  -webkit-animation: bear_line_a .5s ease-in-out .25s infinite;
          animation: bear_line_a .5s ease-in-out .25s infinite;
}

@-webkit-keyframes city_zoom {
  0% {
    -webkit-transform: scale(0.2);
            transform: scale(0.2);
  }
  25% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
  75% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  90% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  100% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
}

@keyframes city_zoom {
  0% {
    -webkit-transform: scale(0.2);
            transform: scale(0.2);
  }
  25% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
  75% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  90% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  100% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
}

@-webkit-keyframes airplane_in {
  0% {
    left: 0;
    opacity: 0;
  }
  100% {
    left: 8.8%;
    opacity: 1;
  }
}

@keyframes airplane_in {
  0% {
    left: 0;
    opacity: 0;
  }
  100% {
    left: 8.8%;
    opacity: 1;
  }
}

@media (max-width: 768px) {
  @-webkit-keyframes airplane_in {
    0% {
      left: 0;
      opacity: 0;
    }
    100% {
      left: 2%;
      opacity: 1;
    }
  }
  @keyframes airplane_in {
    0% {
      left: 0;
      opacity: 0;
    }
    100% {
      left: 2%;
      opacity: 1;
    }
  }
}

@-webkit-keyframes airplane {
  0% {
    margin-top: 2%;
  }
  50% {
    margin-top: 0.25%;
  }
  100% {
    margin-top: 2%;
  }
}

@keyframes airplane {
  0% {
    margin-top: 2%;
  }
  50% {
    margin-top: 0.25%;
  }
  100% {
    margin-top: 2%;
  }
}

@-webkit-keyframes bear_g {
  0% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  25% {
    -webkit-transform: scaleY(0.95);
            transform: scaleY(0.95);
  }
  50% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  75% {
    -webkit-transform: scaleY(0.95);
            transform: scaleY(0.95);
  }
  90% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  100% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
}

@keyframes bear_g {
  0% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  25% {
    -webkit-transform: scaleY(0.95);
            transform: scaleY(0.95);
  }
  50% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  75% {
    -webkit-transform: scaleY(0.95);
            transform: scaleY(0.95);
  }
  90% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  100% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
}

@-webkit-keyframes bear_line_a {
  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 bear_line_a {
  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);
  }
}

.kv_en01 {
  width: 18.4%;
  position: absolute;
  right: 8.6%;
  top: 19.6%;
  z-index: 2;
}

@media (max-width: 768px) {
  .kv_en01 {
    width: 27.2%;
    right: 5%;
    top: 11%;
  }
}

.kv_en02 {
  width: 25.8%;
  position: absolute;
  left: 17%;
  top: 68%;
  z-index: 2;
}

@media (max-width: 768px) {
  .kv_en02 {
    width: 37.3%;
    left: 31.3%;
    top: 62%;
  }
}

.kv_text {
  width: 55.8%;
  position: absolute;
  left: 22.3%;
  bottom: 7.7%;
  z-index: 2;
}

@media (max-width: 768px) {
  .kv_text {
    width: 83.9%;
    left: 8.05%;
    bottom: 7.7%;
  }
}

.wave {
  width: 100%;
  position: absolute;
  bottom: 0%;
  z-index: 2;
}

@media (max-width: 768px) {
  .wave {
    bottom: 5%;
  }
}

.wave01 {
  left: 0;
  -webkit-animation: wave01 2s ease-in-out infinite;
          animation: wave01 2s ease-in-out infinite;
}

@-webkit-keyframes wave01 {
  0% {
    left: 0;
  }
  50% {
    left: .5%;
  }
  100% {
    left: 0;
  }
}

@keyframes wave01 {
  0% {
    left: 0;
  }
  50% {
    left: .5%;
  }
  100% {
    left: 0;
  }
}

.wave02 {
  right: 0;
  -webkit-animation: wave02 2s ease-in-out infinite;
          animation: wave02 2s ease-in-out infinite;
}

@-webkit-keyframes wave02 {
  0% {
    right: 0;
  }
  50% {
    right: .5%;
  }
  100% {
    right: 0;
  }
}

@keyframes wave02 {
  0% {
    right: 0;
  }
  50% {
    right: .5%;
  }
  100% {
    right: 0;
  }
}

.btn_buy {
  display: block;
  width: 9.6%;
  position: fixed;
  right: 1%;
  bottom: 8%;
  z-index: 5;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-animation: btn_buy 1s ease-in-out infinite;
          animation: btn_buy 1s ease-in-out infinite;
}

@media (max-width: 768px) {
  .btn_buy {
    width: 15%;
    bottom: 10%;
  }
}

@-webkit-keyframes btn_buy {
  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 btn_buy {
  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);
  }
}

section {
  position: relative;
}

/*---01---*/
.time_w {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.time_box {
  width: 54.8%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 5% auto;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

@media (max-width: 768px) {
  .time_box {
    width: 92%;
  }
}

.time_box .time_bear {
  width: 32%;
}

@media (max-width: 768px) {
  .time_box .time_bear {
    width: 41.5%;
  }
}

.time_box .time_date {
  width: 76.5%;
  margin: -2% auto 5%;
}

@media (max-width: 768px) {
  .time_box .time_date {
    width: 100%;
  }
}

.time_box .time_table {
  width: 100%;
}

.time_box .ps_text {
  text-align: center;
  font-size: 1vw;
  font-weight: 600;
  color: #172547;
  margin: 2% auto;
}

@media (max-width: 768px) {
  .time_box .ps_text {
    font-size: 3vw;
  }
}

.time_circle {
  width: 19.2%;
}

.circle_L {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.circle_R {
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg);
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

/*---02---*/
.fb_w {
  width: 90.5%;
  position: relative;
  background: url(../images/s02/radius_bg.jpg) repeat top center;
  border-radius: 1000px 1000px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .fb_w {
    margin: 5% auto 20vw;
  }
}

.fb_info {
  width: 46.5%;
  position: relative;
  margin: 10% auto 0%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

@media (max-width: 768px) {
  .fb_info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 92%;
    margin: -5% auto 0;
  }
}

.fb_info img.s02_bear01 {
  width: 45.1%;
  position: absolute;
  right: -40%;
  top: -20%;
  z-index: 2;
}

@media (max-width: 768px) {
  .fb_info img.s02_bear01 {
    width: 60%;
    position: relative;
    right: 0;
    top: 0;
  }
}

.fb_date {
  width: 20vw;
  display: inline-block;
  font-size: 1.25vw;
  font-weight: 600;
  color: #fff;
  padding: 0.5vw 1vw;
  margin: 1vw auto;
  border: 2px solid #fff;
  border-radius: 100px;
  text-align: center;
}

@media (max-width: 768px) {
  .fb_date {
    width: 60vw;
    font-size: 3.8vw;
  }
}

.fb_events {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 58.6%;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .fb_events {
    width: 95%;
    margin: 5% auto;
  }
}

.fb_events .s02_bear02 {
  width: 41.3%;
}

@media (max-width: 768px) {
  .fb_events .s02_bear02 {
    display: none;
  }
}

.fb_events .event_gift {
  width: 31.3%;
  z-index: 2;
}

@media (max-width: 768px) {
  .fb_events .event_gift {
    width: 45%;
  }
}

.fb_events .btn_fb {
  width: 31.3%;
  margin-left: -5%;
  z-index: 3;
}

@media (max-width: 768px) {
  .fb_events .btn_fb {
    width: 45%;
  }
}

.events_rules_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 5% auto -2vw;
}

.events_rules_box h2 {
  width: 12.6%;
  margin-bottom: -0.75vw;
  z-index: 2;
}

@media (max-width: 768px) {
  .events_rules_box h2 {
    width: 32.4%;
  }
}

.events_rules_box .events_rules_list {
  width: auto;
  position: relative;
  border: 2px solid #4daddd;
  border-radius: 200px;
  background: #fff;
  padding: 1vw 3vw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media (max-width: 768px) {
  .events_rules_box .events_rules_list {
    padding: 2vw 12vw;
    margin-bottom: -10vw;
  }
}

.events_rules_box .events_rules_list ul {
  list-style-type: none;
}

@media (max-width: 768px) {
  .events_rules_box .events_rules_list ul {
    padding-left: 5vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.events_rules_box .events_rules_list ul li {
  list-style-type: decimal;
  font-size: 1.25vw;
  font-weight: 600;
  color: #1d7fb9;
}

@media (max-width: 768px) {
  .events_rules_box .events_rules_list ul li {
    font-size: 4vw;
  }
}

.events_rules_box .events_rules_list ul li p {
  color: #1d7fb9;
}

.events_rules_box .events_rules_list ul li p a {
  font-size: 1.25vw;
  line-height: 1.5;
  font-weight: 600;
  color: #1d7fb9;
  text-decoration: underline;
}

.events_rules_box .events_rules_list ul li p a:hover {
  color: #e6231b;
}

@media (max-width: 768px) {
  .events_rules_box .events_rules_list ul li p a {
    font-size: 4vw;
  }
}

/*---03---*/
.box_w {
  width: 90.5%;
  position: relative;
  margin: 0 auto;
}

#s03 {
  position: relative;
  margin-top: 5vw;
}

#s03 h2 {
  width: 86.9%;
  position: relative;
  margin: 0 auto;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 768px) {
  #s03 h2 {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
  }
}

#s03 h2 .view_title_pic {
  width: 58.7%;
}

@media (max-width: 768px) {
  #s03 h2 .view_title_pic {
    width: 100%;
  }
}

#s03 h2 p {
  width: 41.3%;
  font-size: 1.5vw;
  line-height: 1.5;
  color: #172547;
}

@media (max-width: 768px) {
  #s03 h2 p {
    width: 95%;
    font-size: 4vw;
  }
}

#s03 .view_box {
  position: relative;
  margin: -2vw auto 5vw;
  z-index: 2;
}

@media (max-width: 768px) {
  #s03 .view_box {
    margin: 2vw auto 5vw;
  }
}

.view_g {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.view_g .view_bear {
  position: absolute;
  bottom: 0;
  z-index: 3;
}

@media (max-width: 768px) {
  .view_g .view_bear {
    position: relative;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin: -10vw 0;
  }
}

.view_g .view_info_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 27vw;
  height: 27vw;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  right: 5%;
  bottom: 0;
  z-index: 2;
}

@media (max-width: 768px) {
  .view_g .view_info_box {
    position: relative;
    width: 85vw;
    height: 85vw;
    right: 0;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.view_g .view_info_box .view_info {
  position: relative;
}

.view_g .view_info_box h3 {
  margin: 0;
}

.view_g .view_info_box h4 {
  color: #000;
}

.view_g .view_info_box .view_title {
  width: 77%;
}

.view_g .view_info_box p {
  width: 65%;
  font-size: 1vw;
  line-height: 1.75;
  color: #000;
  line-height: 2;
}

@media (max-width: 768px) {
  .view_g .view_info_box p {
    font-size: 4vw;
    line-height: 1.5;
  }
}

.view_g img {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.view01_bear {
  width: 17.5%;
  left: 5%;
}

@media (max-width: 768px) {
  .view01_bear {
    width: 48%;
    left: 0;
  }
}

.view02_bear, .view03_bear, .view04_bear, .view05_bear {
  width: 29.9%;
  left: 0%;
}

@media (max-width: 768px) {
  .view02_bear, .view03_bear, .view04_bear, .view05_bear {
    width: 75%;
    left: 0;
  }
}

/*---s04---*/
.traffic_w {
  width: 90.5%;
  position: relative;
  background: url(../images/s02/radius_bg.jpg) repeat top center;
  border-radius: 1000px 1000px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
}

.traffic_w h2 {
  width: 67.5%;
  margin-top: 5vw;
}

@media (max-width: 768px) {
  .traffic_w h2 {
    width: 90%;
    margin-top: 10vw;
  }
}

.traffic_w .map_box {
  width: 95%;
  margin: 5% auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  left: 0;
  top: 0;
}

.traffic_w .map_box .map_marked {
  width: 13.8%;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

@media (max-width: 768px) {
  .traffic_w .map_box .map_marked {
    width: 41.2%;
    -ms-flex-item-align: start;
        align-self: flex-start;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.traffic_w .map_box .map {
  width: 30.5%;
  margin: 2% 5% 2% 0;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

@media (max-width: 768px) {
  .traffic_w .map_box .map {
    width: 90%;
    margin: 2% auto;
  }
}

.traffic_w .map_box .map_info {
  width: 100%;
  position: absolute;
  z-index: 2;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

@media (max-width: 768px) {
  .traffic_w .map_box .map_info {
    display: none;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.traffic_w .map_box .map_info_m {
  display: none;
  width: 95%;
  position: relative;
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

@media (max-width: 768px) {
  .traffic_w .map_box .map_info_m {
    display: block;
    position: relative;
    z-index: 2;
  }
}

.traffic_info_m {
  position: relative;
}

.copyright {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1vw;
  line-height: 2;
  color: #030000;
  text-align: right;
  padding: 0.5% 5%;
  width: 90%;
}

@media (max-width: 768px) {
  .copyright {
    text-align: center;
  }
}

/*--------------------------------------*/
.overlay {
  width: 100%;
  background: rgba(104, 201, 242, 0.9);
}

.overlay nav {
  top: 2.5vh;
  height: 90vh;
}

.overlay nav ul {
  width: 35%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 767px) {
  .overlay nav ul {
    width: 90%;
  }
}

.overlay nav ul li {
  width: 100%;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 2;
  color: #030000;
  border: 2px solid #030000;
  border-radius: 50px;
  background: #fff;
  text-align: center;
  padding: 5px 10px;
  position: relative;
}

.overlay nav ul li span {
  width: 100%;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.8;
  color: #383838;
  text-align: center;
}

.overlay nav ul li:hover {
  background: #e6231b;
}

.overlay nav ul li:hover span {
  color: #fff;
}

.overlay .overlay-close {
  top: 0;
}

button.menu_m {
  display: none;
  position: fixed;
  top: 0.5%;
  right: 0.5%;
  border: none;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  padding: 0;
  background-color: transparent;
  text-indent: -9999px;
  cursor: pointer;
  z-index: 990;
  outline: 0;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

@media (max-width: 767px) {
  button.menu_m {
    display: block;
    width: 50px;
    height: auto;
  }
}

.overlay .overlay-close {
  max-width: 58px;
  max-height: 58px;
}
/*# sourceMappingURL=style.css.map */