.list { margin-left: -10px; margin-right: -10px; display: flex; flex-wrap: wrap; } .col { flex: 0 0 33.3333%; padding-left: 10px; padding-right: 10px; } .card { width: 100%; height: 100%; .card-wrapper { display: block; text-decoration: none; } .card-thumbnail { padding-top: 52.34375%; position: relative; overflow: hidden; img { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; } } .card-contents { margin-top: 20px; } .card-title { font-size: 18px; line-height: 1.4; font-weight: 700; } .card-description { font-size: 14px; margin-top: 10px; line-height: 1.5; color: #3e3b3f; } .card-date { display: block; font-size: 14px; margin-top: 10px; line-height: 1.5; color: #9a9a9a; font-weight: 700; position: relative; padding-left: 26px; &::before { content: ”; width: 20px; height: 20px; position: absolute; top: 0; left: 0; background-image: url(‘../img/icon-date.svg’); background-position: center center; background-repeat: no-repeat; background-size: contain; } } .card-author { margin-top: 10px; padding-top: 10px; border-top: 1px solid #f5f5f5; display: flex; flex-wrap: wrap; align-items: center; } .card-author-img { flex: 0 0 48px; } .card-author-name { font-size: 12px; color: #3e3b3f; padding-left: 8px; } }