猫くるくるヒーローイメージ

CSSのアニメーションを利用して、3つの訴求に適したヒーローイメージを再現。
アニメーションを利用することで、静的なFVよりも想いを伝えやすく、目を引き付けるヒーローイメージに。

HTML

<div class="mv mv4">  
  <div class="mv4__txtBlk">
    <p class="mv4__txt"><span>FREEDOM</span><span>WEALTH</span><span>HEALTH</span></p>
  </div>
  <div class="mv4__imgBlk">
    <img src="/animation/wp-content/uploads/2026/02/cat01.png" alt="">
    <img src="/animation/wp-content/uploads/2026/02/cat02.png" alt="">
    <img src="/animation/wp-content/uploads/2026/02/cat03.png" alt="">
  </div>
</div>

CSS

.mv4 {
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 7%;
  background-color: #75ACF4;
  position: relative;
  background-image: linear-gradient(rgba(255, 255, 255, 0.3) 1px, transparent 1px), linear-gradient(to right, rgba(255, 255, 255, 0.3) 1px, transparent 1px);
  background-size: 24px 24px;
  background-position: top 0 left calc(50% + 17px);
  animation: mv4bg 9s forwards linear;
}
@keyframes mv4bg {
  0% {
    background-color: #75ACF4;
  }
  32.3% {
    background-color: #75ACF4;
  }
  33.3% {
    background-color: #F47575;
  }
  65.6% {
    background-color: #F47575;
  }
  66.6% {
    background-color: #8AE582;
  }
  95% {
    background-color: #8AE582;
  }
  100% {
    background-color: #75ACF4;
  }
}
@media screen and (max-width: 960px) {
  .mv4 {
    flex-direction: column;
    row-gap: 80px;
  }
}
.mv4__txtBlk {
  margin-top: -15%;
}
.mv4__txt {
  font-size: 5vw;
  line-height: 1.4;
  flex-shrink: 0;
  color: #fff;
  font-weight: bold;
}
@media screen and (max-width: 960px) {
  .mv4__txt {
    font-size: 10vw;
    text-align: center;
  }
}
.mv4__txt span {
  display: block;
  opacity: 0;
  transform: rotateX(500deg);
  animation: mv4txt 9s forwards ease;
}
.mv4__txt span:nth-of-type(2) {
  animation-delay: 3s;
}
.mv4__txt span:nth-of-type(3) {
  animation-delay: 6s;
}
@keyframes mv4txt {
  0% {
    opacity: 0;
    transform: rotateX(500deg);
  }
  5% {
    opacity: 1;
    transform: rotateX(0);
  }
  100% {
    opacity: 1;
    transform: rotateX(0);
  }
}
.mv4__imgBlk {
  position: relative;
  width: 20vw;
  aspect-ratio: 0.8;
}
@media screen and (max-width: 960px) {
  .mv4__imgBlk {
    width: 28vw;
  }
}
.mv4__imgBlk img {
  position: absolute;
  top: -40%;
  left: 0;
  vertical-align: bottom;
  width: 100%;
  opacity: 0;
  animation: mv4cat 9s infinite linear,mv4cat2 9s forwards ease;
}
.mv4__imgBlk img:nth-of-type(2) {
  top: 40%;
  left: 55%;
  animation-delay: 3s;
}
.mv4__imgBlk img:nth-of-type(3) {
  top: 40%;
  left: -55%;
  animation-delay: 6s;
}
@keyframes mv4cat {
  0% {
    top: -40%;
    left: 0;
  }
  15% {
    top: -40%;
    left: 0;
  }
  33.3% {
    top: 40%;
    left: 55%;
  }
  48.3% {
    top: 40%;
    left: 55%;
  }
  66.6% {
    top: 40%;
    left: -55%;
  }
  81.6% {
    top: 40%;
    left: -55%;
  }
  100% {
    top: -40%;
    left: 0;
  }
}
@keyframes mv4cat2 {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}

FREEDOMWEALTHHEALTH

みんなにもシェアしてあげて!

この記事を書いた人

WEBサイトで使える“動くUI”を、コピペで実装可能にし、どこでも誰でも使えるコードに特化して発信しているフロントエンドエンジニア。
中学生で初めてコードに出会い初めてコーディングを知る。
その後、WEB制作会社のフロントエンドエンジニアとしてキャリアをスタートし、フリーランスを経て、現在はWEB制作会社の代表取締役。
コーディングによって人生を創り上げてきたからこそ、コードを通して誰かの役に立てたらという想いで、これまでの知識と経験を総動員したコードを公開中。

コメント

コメントする