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

picture {
  display: block;
}

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

/*Base*/
.llw {
  max-width: 640px;
  width: 100%;
  background: #fff;
  margin: 0 auto;
  overflow: hidden;
}

.llw img {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

.overlayArea {
  position: relative;
}


.cta01__btn--01 {
  text-align: center;
  width: 94%;
  bottom: 7.04%;
  left: 1%;
  opacity: 1;
  transition: 0.3s all;
}

.cta01__btn--01:hover {
  opacity: 0.8;
}







/*Base*/

.foot_bottom_llw {
  background-color: #fff;
  font-size: 19px;
  color: #333333;
  text-align: center;
  height: 100% !important;
  line-height: 1.6rem;
  padding: 2.6% 0 3%;
  letter-spacing: 0.1rem;
}

@media screen and (max-width: 640px) {
  .foot_bottom_llw {
    font-size: 2.96875vw;
    height: 6.875vw;
  }
}

.foot_bottom_llw p {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
}

/*Base*/
.llw {
  max-width: 640px;
  width: 100%;
  background: #fff;
  margin: 0 auto;
  overflow: hidden;
}

.llw img {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

.fv-btn-frame {
  position: absolute;
  top: 75%;
  left: 0%;
  height: 49%;
  width: 100%;
  animation: 1.4s ponpon ease-in-out infinite;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.point-btn-frame {
  position: absolute;
  top: 39%;
  left: 0%;
  height: 49%;
  width: 100%;
  animation: 1.4s ponpon ease-in-out infinite;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

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

iframe {
  max-width: 100%;
}

a {
  text-decoration: none;
  color: inherit;
}

a {
  text-decoration: none;
  color: inherit !important;
}

.overlayItem.cta01__btn--01:hover {
  opacity: 0.8;
}













/*スライダー003*/
.slider,
.slider>div {
  background-position: center;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  overflow: hidden;
  -moz-transition: transform 0.4s;
  -o-transition: transform 0.4s;
  -webkit-transition: transform 0.4s;
  transition: transform 0.4s;
}

.slider>div {
  position: absolute;
}

.slider>i {
  position: absolute;
  top: 44%;
  text-shadow: 0 10px 2px #223422;
  transition: 0.3s;
  width: 0px;
  margin: 10px 26px;
  cursor: pointer;
  line-height: 0;
  box-sizing: content-box;
  border-radius: 3px;
  z-index: 4;
}

.right::before,
.right::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  width: 35px;
  height: 4px;
  border-radius: 9999px;
  background-color: #554a45;
  transform-origin: calc(100% - 2px) 50%;
}

.left::before,
.left::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
  width: 35px;
  height: 4px;
  border-radius: 9999px;
  background-color: #554a45;
  transform-origin: 2px 50%;
}

.slider>i::before {
  transform: rotate(45deg);
}

.slider>i::after {
  transform: rotate(-45deg);
}

.slider>.left {
  left: 0px;
}

.slider>.right {
  right: 0px;
}

.slider:hover>.left {
  left: 0;
}

.slider:hover>.right {
  right: 0;
}

.slider>i:hover {
  transform: translateX(-2px);
}

.slider>i.right:hover {
  transform: translateX(2px);
}

.slider>i.right:active,
.slider>i.left:active {
  transform: translateY(1px);
}

.slider:hover>div {
  transform: scale(1.01);
}

/* -------------------------------------- */



@media screen and (max-width: 640px) {

  .slider,
  .slider>div {
    background-position: center;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    -moz-transition: transform 0.4s;
    -o-transition: transform 0.4s;
    -webkit-transition: transform 0.4s;
    transition: transform 0.4s;
  }

  .slider>i {
    position: absolute;
    top: 35%;
    text-shadow: 0 10px 2px #223422;
    transition: 0.3s;
    width: 0px;
    margin: 10px 10px;
    cursor: pointer;
    line-height: 0;
    box-sizing: content-box;
    border-radius: 3px;
    z-index: 4;
  }
}

@media screen and (max-width: 600px) {
  .slider>i {
    position: absolute;
    top: 44%;
    text-shadow: 0 10px 2px #223422;
    transition: 0.3s;
    width: 0px;
    margin: 10px 20px;
    cursor: pointer;
    line-height: 0;
    box-sizing: content-box;
    border-radius: 3px;
    z-index: 4;
  }

  .left::before,
  .left::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    left: 0;
    width: 30px;
    height: 4px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: 2px 50%;
  }

  .right::before,
  .right::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    width: 30px;
    height: 4px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: calc(100% - 2px) 50%;
  }
}

@media screen and (max-width: 430px) {

  .slider,
  .slider>div {
    background-position: center;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    -moz-transition: transform 0.4s;
    -o-transition: transform 0.4s;
    -webkit-transition: transform 0.4s;
    transition: transform 0.4s;
  }

  #ns-slider1 {
    height: 110px;
    min-width: 60%;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
  }

  .slider>i {
    position: absolute;
    top: 43%;
    text-shadow: 0 10px 2px #223422;
    transition: 0.3s;
    width: 0px;
    margin: 10px 12px;
    cursor: pointer;
    line-height: 0;
    box-sizing: content-box;
    border-radius: 3px;
    z-index: 4;
  }

  .left::before,
  .left::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    left: 0;
    width: 23px;
    height: 3px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: 1px 50%;
  }

  .right::before,
  .right::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    width: 23px;
    height: 3px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: calc(100% - 1px) 50%;
  }
}




@media screen and (max-width: 375px) {

  .slider,
  .slider>div {
    background-position: center;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    -moz-transition: transform 0.4s;
    -o-transition: transform 0.4s;
    -webkit-transition: transform 0.4s;
    transition: transform 0.4s;
  }

  #ns-slider1 {
    height: 110px;
    min-width: 60%;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
  }

  .slider>i {
    position: absolute;
    top: 43%;
    text-shadow: 0 10px 2px #223422;
    transition: 0.3s;
    width: 0px;
    margin: 10px 12px;
    cursor: pointer;
    line-height: 0;
    box-sizing: content-box;
    border-radius: 3px;
    z-index: 4;
  }

  .left::before,
  .left::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    left: 0;
    width: 22px;
    height: 3px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: 1px 50%;
  }

  .right::before,
  .right::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    width: 23px;
    height: 3px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: calc(100% - 1px) 50%;
  }
}

@media screen and (max-width: 320px) {

  .slider,
  .slider>div {
    background-position: center;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    -moz-transition: transform 0.4s;
    -o-transition: transform 0.4s;
    -webkit-transition: transform 0.4s;
    transition: transform 0.4s;
  }

  #ns-slider1 {
    height: 164px;
    min-width: 60%;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
  }

  .slider>i {
    position: absolute;
    top: 43%;
    text-shadow: 0 10px 2px #223422;
    transition: 0.3s;
    width: 0px;
    margin: 10px 12px;
    cursor: pointer;
    line-height: 0;
    box-sizing: content-box;
    border-radius: 3px;
    z-index: 4;
  }

  .right::before,
  .right::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    width: 17px;
    height: 2px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: calc(100% - 1px) 50%;
  }

  .left::before,
  .left::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    left: 0;
    width: 17px;
    height: 2px;
    border-radius: 9999px;
    background-color: #554a45;
    transform-origin: 1px 50%;
  }
}


.offer-frame {
  position: absolute;
  top: 25%;
  left: 0%;
  height: 61%;
  width: 100%;
  animation: 1.4s ponpon ease-in-out infinite;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}