/*reset*/
html, body {
  height: 100%;
  margin: 0;
}

picture {
  display: block;
}

p {
  margin: 0;
}

/*base*/
html {
  -webkit-overflow-scrolling: touch;
}

/*Base*/
.llw {
  max-width: 750px;
  width: 100%;
  background: #fff;
  margin: 0 auto;
  overflow: hidden;
}
.llw input {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  /* border: 1px solid transparent; */
  transition: border 0.2s ease-out;
}
.llw input::-webkit-search-decoration {
  display: none;
}
.llw input:focus {
  outline-offset: -2px;
}
.llw input[type=image] {
  -webkit-appearance: none;
}
.llw img {
  vertical-align: top;
  width: 100%;
  height: auto;
}

.offer_img {
  left: 3.3%;
  top: 73.2%;
  width: 37%;
}

.offer_btn {
  left: 0%;
  right: 0;
  margin: 0 auto;
  top: 67%;
  width: 88%;
}

.ct02_01_img {
  top: 25%;
  left: 0;
  right: 0;
  margin: auto;
  width: 80%;
}

.ct02_02_img {
  top: 23.7%;
  left: -3%;
  width: 53%;
}

.ct02_03_img {
  top: 19%;
  right: 0;
  width: 36%;
}

.ct02_04_img {
  top: -2.5%;
  left: 3%;
  width: 35%;
}

.ct02_05_img {
  top: 46%;
  right: 0;
  width: 32.6%;
}

.ct03_01_img {
  top: 37.8%;
  left: 0;
  width: 55%;
}

.ct03_02_img {
  top: 62.6%;
  right: 0;
  width: 55%;
}

.ct03_03_img {
  top: 81.8%;
  left: 0;
  width: 55%;
}

.ct03_04_img {
  top: 35.5%;
  left: 0;
  right: 0;
  margin: auto;
}

.ct03_05_img {
  top: 19.1%;
  left: 0;
  right: 0;
  margin: auto;
  width: 82.8%;
}

.ct03_06_img {
  top: 1%;
  left: -2.3%;
}

.ct03_07_img {
  top: 5.7%;
  left: 0;
  right: 0;
  margin: auto;
  width: 41%;
}

.ct03_08_img {
  top: 28%;
  left: 1.3%;
  width: 37%;
}

.ct04_01_img {
  top: 1%;
  left: 0;
  right: 0;
  margin: auto;
  width: 73%;
}

.ct04_02_img {
  top: 13%;
  left: 0;
  right: 0;
  margin: auto;
  width: 48%;
}

.ct04_03_img {
  top: 2%;
  left: 0;
  right: 0;
  margin: auto;
  width: 93%;
}

.ct05_01_img{
  top: 79%;
  left: 0;
  right: 0;
  margin: auto;
  width: 89%;
}

.ct05_02_img{
  top: 85.2%;
  left: 0;
  right: 0;
  margin: auto;
  width: 89%;
}

.catch_copy .catch {
  /* transition: 1s; */
  /* transform: translateY(20px); */
  display: block;
  opacity: 0;
}

.catch_copy .catch:first-child {
  animation: fadeInAnime 1s forwards 0.3s;
}
.catch_copy .catch:nth-child(2) {
  animation: fadeInAnime 1s forwards 1s;
}

.fadeIn{
  animation-name:fadeInAnime;
  animation-duration:3s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeInAnime{
    from {
      opacity: 0;
    }
  
    to {
      opacity: 1;
    }
  }

.fadeInBound{
  animation: blinkTwice var(--blink-dur, 1.2s) ease-in-out 1 both;
  }
  
  @keyframes blinkTwice {
  /* 可視 → 消灯 → 可視 → 消灯 → 可視 */
  0%, 30%, 60%, 100% { opacity: 1; }
  20%, 50%          { opacity: 0; }
}

.fadeInTrigger{
  opacity: 0;
}

.fadeInBoundTrigger{
  opacity: 1;
}

.reflection {
  display: block;
  overflow: hidden;
  position: absolute;
  left: 0%;
  right: 0;
  margin: 0 auto;
  pointer-events: none;
}

.reflection02 {
  top: 68.3%;
  margin-left: 5%;
  margin-right: 5%;
  height: 230px
}

@media screen and (max-width: 750px) {
  .reflection02 {
    height: 31vw;
  }
}

.reflection02::before{
  position: absolute;
  content: "";
  display: inline-block;
  top: -180px;
  width: 30px;
  height: 100%;
  background-color: #fff;
  animation: reflection 2.5s ease-in-out infinite;
}

@keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  70% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.4;
  }
  71% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 0.8;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.floatingContainer {
  position: fixed;
  max-width: 750px;
  width: 100%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  opacity: 0;
  transition: 0.3s all;
  z-index: 100;
  pointer-events: none;
}
.floatingContainer.js-floating {
  opacity: 1;
  pointer-events: auto;
}
.floating__item--01 {
  display: block;
  width: 90%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.under {
  position: relative;
  z-index: 20;
}
.overlayArea {
  position: relative;
}
.overlayItem {
  position: absolute;
}

/* CSS Document *//*# sourceMappingURL=base.css.map */