@charset "UTF-8";
/*フェードイン*/
.ef_fadeUp{
  opacity: 0;
  transform: translate(0, 30px);
  transition-duration:1000ms;
}
.ef_fadeUp-r{
  opacity: 0;
  transform: translate(30px, 0);
  transition-duration:1000ms;
}
.ef_fadeUp-l{
  opacity: 0;
  transform: translate(-30px, 0);
  transition-duration:1000ms;
}
.ef_fadeUp.no_slide{
  transform: translate(0, 0);
}
.ef_fadeUp-on{
  opacity: 1;
  transform: translate(0, 0);
}
/*ポップアップ*/
.ef_popUp {
  transform: translate(0, 20px) scale(0.9);
  transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  opacity: 0;
}
.ef_popUp-on {
  transform: translate(0, 0) scale(1);
  opacity: 1 !important;
}
/*
.fadein-bound-absCenter {
  position:absolute;
  top:calc(50% - 5vh);left:50%;
  transform: translate(-50%, -48%) scale(0.8);
  transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  opacity: 0;
}
.fadein-bound-absCenter.is-visible {
  transform: translate(-50%,-50%) scale(1);
  opacity: 1 !important;
}
*/
.no-wait-on{
    /*ef_fadeUp-onをすぐに実行*/
}
@media screen and (max-width:768px){
	.ef_fadeUp{
	  transform: translate(0, 5vw);
	}
    .ef_fadeUp_mb{
      opacity: 0;
      transform: translate(0, 5vw);
      transition: all 1000ms;
    }
    .ef_fadeUp-r_mb{
      opacity: 0;
      transform: translate(5vw, 0);
      transition: all 1000ms;
    }
	.ef_fadeUp-on{
      opacity: 1;
	  transform: translate(0, 0);
	}
}


/*ふわふわ*/
.fuwafuwa {
  animation: fuwafuwa 3s infinite ease-in-out .8s alternate;
  transition: 1.5s ease-in-out;
}
 
@keyframes fuwafuwa {
  0% {
    transform:translate(0, 0) rotate(-7deg);
  }
  50% {
    transform:translate(0, -7px) rotate(0deg);
  }
  100% {
    transform:translate(0, 0) rotate(7deg);
  }
}



.ef_delay-0{transition-delay:0ms;}
.ef_delay-1{transition-delay:100ms;}
.ef_delay-2{transition-delay:200ms;}
.ef_delay-3{transition-delay:300ms;}
.ef_delay-4{transition-delay:400ms;}
.ef_delay-5{transition-delay:500ms;}
.ef_delay-6{transition-delay:600ms;}
.ef_delay-7{transition-delay:700ms;}
.ef_delay-8{transition-delay:800ms;}
.ef_delay-9{transition-delay:900ms;}
.ef_delay-10{transition-delay:1000ms;}

.anime_delay-0{animation-delay:0ms;}
.anime_delay-1{animation-delay:100ms;}
.anime_delay-2{animation-delay:200ms;}
.anime_delay-3{animation-delay:300ms;}
.anime_delay-4{animation-delay:400ms;}
.anime_delay-5{animation-delay:500ms;}
.anime_delay-6{animation-delay:600ms;}
.anime_delay-7{animation-delay:700ms;}
.anime_delay-8{animation-delay:800ms;}
.anime_delay-9{animation-delay:900ms;}
.anime_delay-10{animation-delay:1000ms;}



/*loading*/
.loading {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: #fff;/*#333333;*/
}

.loading.hide {
  opacity: 0;
  pointer-events: none;
  transition: opacity 500ms;
}

.circle {
  display: block;
  position: relative;
  top: calc( 50% - 20px );
  width: 40px;
  height: 40px;
  margin: 0 auto;
  border: 3px solid #eee;/*#444444*/
  border-top: 3px solid #5ae1e5;
  border-radius: 50px;
  animation: loading 700ms linear 0ms infinite normal both;
}

@keyframes loading {
  0% { transform: rotate( 0deg ); }
  100% { transform: rotate( 360deg ); }
}

/*２段階表示*/
.ef_stepTx{
  position: relative;
  overflow: hidden;
}
.ef_stepTx:after {
  content: '';
  position: absolute;
  opacity: 1;
  left: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  background-color: #000;
  transform: translate3d(-101%, 0, 0);
}
.ef_stepTx.show:after {
  transition-property: transform, opacity;
  transition-duration: 0.5s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(0, 0, 0);
}
.ef_stepTx.done:after {
  transition-property: transform;
  transition-duration: 0.5s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(103%, 0, 0);
}
.ef_stepTx.motion-inner {
  display: inline-block;
  opacity: 0;
}
.done.ef_stepTx.motion-inner {
  opacity: 1;
}