<h1>Let's hover!!</h1>
<div class="container">
  
  <div class="card card1">
    <figure>
      <img class="card__image" src="https://liginc.co.jp/wp-content/uploads/2017/10/150691334095133300_52.png" alt="パソコン">
      <figcaption class="card__body">
        <h2 class="card__title">Lorem Ipsum</h2>
        <p class="card__text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
        <time class="card__date" datetime="2011-12-03">2011.12.03</time>
      </figcaption>
    </figure>
  </div>
  
</div>
$color: #4cc48e;
$font-main: 'Hammersmith One', sans-serif;
$font-sub: 'Open Sans';

* {
  box-sizing: border-box;
}
body {
  font-family: $font-sub;
  background: #b7b7b7;
}
h1 {
  font-family: 'Hammersmith One','Helvetica Neue','Helvetica','Arial',YuGothic,'Yu Gothic',sans-serif;
  text-align: center;
  font-size: 2rem;
  margin-top: 20px;
}
.container {
  max-width: 1150px;
  margin: 20px auto;
  display: flex;
  flex-wrap: wrap;
}
.card {
  margin: auto;
  width: 350px;
  cursor: pointer;
  background-color: #fff;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1), 0 8px 20px rgba(0, 0, 0, 0.1);
  &:nth-child(2n) {
    margin: 0 30px;
  }
}

.card__body {
  padding: 20px;
}
.card__title {
  font-size: 1.7rem;
  line-height: 1.5;
  font-family: $font-main;
}
.card__text {
  line-height: 1.3;
  margin-bottom: 8px;
}
.card__image {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-bottom: 1px solid gray;
}
.card__date {
  color: gray;
  font-size: 0.8rem;
}

/* card hover animation 1 */
.card1 {
  overflow: hidden;
  position: relative;
  transition: all 0.5s;
  .card__title {
    color: #ef899a;
  }
  &::before {
    content: '';
    display: block;
    width: 100%;
    height: 200px;
    position: absolute;
    background-color: #ef899ac9;
    transform: translateY(-200px);
    transition: all 0.5s;
  }
  // READ MORE テキスト
  &::after {
    content: 'READ MORE';
    opacity: 0;
    font-family: $font-main;
    display: block;
    position: absolute;
    top: 100px;
    width: 100%;
    text-align: center;
    font-size: 1.3rem;
    transition: all 0.5s;
  }
  &:hover {
    &::before {
      transform: translateY(0);
    }
    &::after {
      opacity: 1;
    }
  }
}
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.