@charset "UTF-8";
/* ----------------------------------------
   ■ floormap.css
---------------------------------------- */
body.subCtg #mainContents {
  padding: 0;
}
body.subCtg #mainContents > section {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  justify-content: center;
  -ms-justify-content: center;
  -webkit-justify-content: center;
  position: relative;
  min-height: calc(100vh - 95px - 110px - 125px);
  padding: 8.5vw 0 0;
}
body.subCtg #mainContents > section article {
  position: relative;
}

#mapWrapper {
  position: relative;
  width: 665px;
  height: 625px;
  margin: 0 auto;
}

.mapSet ul li {
  visibility: hidden;
}
.mapSet ul li.on {
  visibility: visible;
}
.mapSet img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.mapSet .cov {
  position: relative;
}

#map1 {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 85.338345864661654%;
  height: 56.8%;
  opacity: 0.0;
}
#map1 .cov {
  z-index: 10;
}
#map1 .picts .walk1 {
  position: absolute;
  left: 53%;
  top: 58%;
  width: 2.46697%;
  opacity: 0.0;
}
#map1 .picts .friends1 {
  position: absolute;
  left: 20%;
  top: 62%;
  width: 8.45815%;
  opacity: 0.0;
}
#map1 .picts .panda1 {
  position: absolute;
  left: 30%;
  top: 67%;
  width: 5.28634%;
  height: 11%;
  background: url("../img/floormap/pict_panda_01.png") no-repeat left top/100% auto;
  opacity: 0.0;
}

#map2 {
  position: absolute;
  right: 0;
  top: 0;
  width: 85.338345864661654%;
  height: 56.8%;
  z-index: 1;
  opacity: 0.0;
}
#map2 .cov {
  z-index: 11;
}
#map2 .picts .tableSet1 {
  position: absolute;
  left: 57%;
  top: 68%;
  width: 11.27753%;
  opacity: 0.0;
}
#map2 .picts .tableSet2 {
  position: absolute;
  left: 65%;
  top: 57%;
  width: 11.27753%;
  opacity: 0.0;
}
#map2 .picts .walk2 {
  position: absolute;
  left: 27%;
  top: 59%;
  width: 2.46697%;
  opacity: 0.0;
}
#map2 .picts .family1 {
  position: absolute;
  left: 58%;
  top: 58%;
  width: 5.63877%;
  opacity: 0.0;
}
#map2 .picts .panda2 {
  position: absolute;
  left: 62%;
  top: 26%;
  width: 5.28634%;
  height: 11%;
  background: url("../img/floormap/pict_panda_01.png") no-repeat left top/100% auto;
  opacity: 0.0;
}

#stairs {
  position: absolute;
  left: 52%;
  top: -58%;
  width: 42.290748898678414%;
  opacity: 0.0;
}

#guidePanda {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  justify-content: center;
  -ms-justify-content: center;
  -webkit-justify-content: center;
  position: absolute;
  left: calc(50% - 92.5px - 290px);
  top: 0;
  width: 185px;
  height: 185px;
  background: url("../img/floormap/bg_guide_panda.png") no-repeat left top/100% auto;
}
#guidePanda p {
  margin: 20px 0 5px;
  line-height: 1.1;
  font-size: 1.5rem;
}
#guidePanda .img {
  position: relative;
  left: 5px;
  width: 54.05405%;
  height: 40%;
  max-width: 100px;
  background: url("../img/floormap/img_guide_panda_01.png") no-repeat center top/100% auto;
}
#guidePanda .img > div {
  width: 100%;
  height: 100%;
  background: url("../img/floormap/img_guide_panda_02.png") no-repeat center top/100% auto;
  animation: pandaSwing 3s 0s ease-in-out infinite;
}

#mapWrapper.start #map1 {
  transform: translateX(-100px);
  animation: slideInFloor 1s 0.5s ease forwards;
}
#mapWrapper.start #map1 .picts .walk1 {
  animation: fadeIn 1s 3.2s ease forwards;
}
#mapWrapper.start #map1 .picts .friends1 {
  animation: fadeIn 1s 3.5s ease forwards;
}
#mapWrapper.start #map1 .picts .panda1 {
  animation: panda1 45s 3.8s linear infinite, pandaWalk 1s 0s linear infinite;
}
#mapWrapper.start #map2 {
  transform: translateX(-100px);
  animation: slideInFloor 1s 1.0s ease forwards;
}
#mapWrapper.start #map2 .picts .tableSet1 {
  animation: fadeIn 1s 2s ease forwards;
}
#mapWrapper.start #map2 .picts .tableSet2 {
  animation: fadeIn 1s 2.3s ease forwards;
}
#mapWrapper.start #map2 .picts .walk2 {
  animation: fadeIn 1s 2.6s ease forwards;
}
#mapWrapper.start #map2 .picts .family1 {
  animation: fadeIn 1s 2.9s ease forwards;
}
#mapWrapper.start #map2 .picts .panda2 {
  animation: panda2 45s 3.8s linear infinite, pandaWalk 1s 0s linear infinite;
}
#mapWrapper.start #stairs {
  transform: translate(-38px, 70px);
  animation: slideInStairs 0.75s 1.5s ease forwards;
}

@keyframes slideInFloor {
  0% {
    transform: translateX(-100px);
    opacity: 0.0;
  }
  100% {
    transform: translateX(0px);
    opacity: 1.0;
  }
}
@keyframes slideInStairs {
  0% {
    transform: translate(-38px, 70px);
    opacity: 0.0;
  }
  100% {
    transform: translate(0, 0);
    opacity: 1.0;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0.0;
  }
  100% {
    opacity: 1.0;
  }
}
@keyframes panda1 {
  0% {
    left: 30%;
    top: 67%;
    opacity: 0.0;
  }
  4.4% {
    left: 30%;
    top: 67%;
    opacity: 1.0;
  }
  11% {
    left: 47%;
    top: 47%;
  }
  15.4% {
    left: 56%;
    top: 55%;
  }
  17.6% {
    left: 56%;
    top: 55%;
  }
  20% {
    left: 60%;
    top: 43%;
  }
  22.2% {
    left: 60%;
    top: 43%;
  }
  28.6% {
    left: 42%;
    top: 44%;
  }
  30.8% {
    left: 42%;
    top: 44%;
  }
  35.2% {
    left: 52%;
    top: 35%;
  }
  44% {
    left: 76%;
    top: -30%;
  }
  77% {
    left: 76%;
    top: -30%;
  }
  85.8% {
    left: 52%;
    top: 35%;
  }
  94.5% {
    left: 30%;
    top: 67%;
    opacity: 1.0;
  }
  96.7% {
    left: 30%;
    top: 67%;
    opacity: 0.0;
  }
  100% {
    left: 30%;
    top: 67%;
    opacity: 0.0;
  }
}
@keyframes panda2 {
  0% {
    left: 58%;
    top: 26%;
    opacity: 0.0;
  }
  44% {
    left: 58%;
    top: 26%;
    opacity: 0.0;
  }
  45.1% {
    left: 58%;
    top: 26%;
    opacity: 1.0;
  }
  52.8% {
    left: 47%;
    top: 39%;
  }
  55% {
    left: 47%;
    top: 39%;
  }
  59.4% {
    left: 44%;
    top: 62%;
  }
  61.6% {
    left: 44%;
    top: 62%;
  }
  68.2% {
    left: 62%;
    top: 42%;
  }
  70.4% {
    left: 62%;
    top: 42%;
  }
  75.9% {
    left: 58%;
    top: 26%;
    opacity: 1.0;
  }
  77% {
    left: 58%;
    top: 26%;
    opacity: 0.0;
  }
  100% {
    left: 58%;
    top: 26%;
    opacity: 0.0;
  }
}
@keyframes pandaWalk {
  0% {
    background-image: url("../img/floormap/pict_panda_01.png");
  }
  100% {
    background-image: url("../img/floormap/pict_panda_02.png");
  }
}
@keyframes pandaSwing {
  0% {
    transform: rotate(-10deg);
  }
  50% {
    transform: rotate(20deg);
  }
  100% {
    transform: rotate(-10deg);
  }
}
/* @media : SP
---------------------------------------- */
@media screen and (max-width: 768px) {
  body.subCtg #mainContents > section {
    min-height: calc(100vh - 170px);
    padding-top: 20vw;
  }

  #guidePanda {
    left: 10px;
    width: 150px;
    height: 150px;
  }
  #guidePanda p {
    margin: 20px 0 5px;
    font-size: 1.953125vw;
  }
  #guidePanda .img {
    width: 39.46%;
  }
}
@media screen and (max-width: 665px) {
  #mapWrapper {
    width: 95vw;
    height: 89.285714285714288vw;
  }

  #guidePanda {
    top: -20px;
  }
}
@media screen and (max-width: 500px) {
  #guidePanda {
    top: -40px;
  }
}
@media screen and (max-width: 480px) {
  body.subCtg #mainContents > section {
    padding-top: 25vw;
  }

  #guidePanda {
    top: 0px;
    width: 100px;
    height: 100px;
  }
  #guidePanda p {
    font-size: 1rem;
  }
}
@media screen and (max-width: 400px) {
  #guidePanda {
    top: -20px;
  }
}
