.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

[data-wow-delay="0.9s"] {
  animation-delay: 0.9s !important;
}

[data-wow-delay="0.6s"] {
  animation-delay: 0.6s !important;
}

[data-wow-delay="0.1s"] {
  animation-delay: 0.1s !important;
}

@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

.fadeIn { animation-name: fadeIn; }

@keyframes fadeInUp {
  0% { opacity: 0; transform: translateY(20px); }
  100% { opacity: 1; transform: translateY(0); }
}

.fadeInUp { animation-name: fadeInUp; }


@keyframes fadeIndown {
  0% { opacity: 0; transform: translateY(-20px); }
  100% { opacity: 1; transform: translateY(0); }
}

.fadeIndown { animation-name: fadeIndown; }

@-webkit-keyframes slideInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}



/* 点滅アニメーション */
@keyframes fadeBlink1 {
  0% {
    opacity: 1; /* 完全に表示 */
  }
  25% {
    opacity: 0.5; /* 半透明 */
  }
  50% {
    opacity: 0; /* 完全に透明 */
  }
  75% {
    opacity: 0.5; /* 半透明 */
  }
  100% {
    opacity: 1; /* 完全に表示 */
  }
}

@keyframes fadeBlink2 {
  0% {
    opacity: 0; /* 最初は透明 */
  }
  25% {
    opacity: 0.5; /* 半透明 */
  }
  50% {
    opacity: 1; /* 完全に表示 */
  }
  75% {
    opacity: 0.5; /* 半透明 */
  }
  100% {
    opacity: 0; /* 最後は透明 */
  }
}


@keyframes rotateShape1 {
  0% {
    transform: rotate(-80deg) scale(.7); /* 初期位置 */
  }
  100% {
    transform: rotate(0deg) scale(1); 
  }
}

@keyframes rotateShape2 {
  0% {
    transform: rotate(80deg) scale(.7);
  }
  100% {
    transform: rotate(0deg) scale(1); 
  }
}

@keyframes rotateShape3 {
  0% {
    transform: rotate(180deg) scale(.5); /* 初期位置 */
  }
  100% {
    transform: rotate(0deg) scale(1); 
  }
}


@keyframes smoothScale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1.1);
  }
}

@keyframes smoothScale2 { 
  0% {
    transform: scale(0.5);
    opacity: 0;
  }
  60% {
    transform: scale(1.2);
    opacity: 1;
  }
  100% {
    transform: scale(1.1);
  }
}

@keyframes smoothScale3 {
  0% {
    transform: scale(0.8);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}


/*文字アニメーション*/
.char-ani {
  display: inline-block;
  opacity: 0;
  transform: translateY(10px);
  animation: fadeUp 0.5s ease-out forwards;
}

/* アニメーションの中身 */
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}