<div class="page-wrapper">
      <div class="card">
        <div class="card-packaging bg-img-base" style="background-image: url(https://media2.giphy.com/media/oQDXk8N4MSoY8/giphy.gif?cid=790b76115cd8c35a3354493973d4ea65&rid=giphy.gif)">
          <div class="card-center">
            <a class="close bg-img-base" href="#" style="background-image: url(https://cdn3.iconfinder.com/data/icons/pyconic-icons-1-2/512/close-circle-512.png)"></a>
          </div>
          <div class="card--first">
            <div class="card-wrapper bg-img-base front" style="background-image: url(https://media1.giphy.com/media/FrfvK9FJUynFC/giphy.gif?cid=790b76115cd8c25f434d444955e4a1a0&rid=giphy.gif)">
              <a class="open" href="#">
                <div class="open-tail"></div>
                <div class="open-main"><span class="open-title">Open</span></div>
              </a>
            </div>
            <div class="card-wrapper bg-img-base back" style="background-image: url(http://mochimochiland.com/images/knittinggnome600.gif)">
            </div>
          </div>
          <div class="card--third">
            <div class="card-wrapper bg-img-base front" style="background-image: url(https://media2.giphy.com/media/eCxL0w1RAh9iE/giphy.gif?cid=790b76115cd8c2f874725a6b730f98a1&rid=giphy.gif)"></div>
            <div class="card-wrapper bg-img-base back" style="background-image: url(https://media1.giphy.com/media/1dJtV4AEBrAAkohZIc/giphy.gif?cid=790b76115cd8c3e34a6136346bc8be32&rid=giphy.gif)"></div>
          </div>
        </div>
      </div>
    </div>

* {
  margin: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.bg-img-base {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.page-wrapper {
  background: linear-gradient(120deg, #d83c3c, #d6d64c, #105810);
  padding-top: 100px;
  min-height: 100vh;
}

.card-center {
  position: relative;
  min-height: 500px;
}

.card-packaging {
  width: 30%;
  display: block;
  margin: 0 auto;
  position: relative;
  min-height: 500px;
  box-shadow: 0 0 6px 2px #926c6c;
}

.card .open {
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -7px;
  transition: .3s;
  border-bottom: 1px solid white;
  border-top: 1px solid white;
}

.card .open:hover {
  right: -10px;
  transition: .3s;
}

.card .open-tail {
  position: relative;
  height: 36px;
  width: 30px;
  float: left;
}

.card .open-tail:before {
  content: '';
  display: block;
  border-top: 18px solid #d24242;
  border-left: 30px solid transparent;
  position: absolute;
  left: 0;
  top: 0;
}

.card .open-tail:after {
  content: '';
  display: block;
  position: absolute;
  top: 18px;
  left: 0;
  border-top: 18px solid transparent;
  border-right: 30px solid #d24242;
}

.card .open-main {
  display: inline-block;
  line-height: 36px;
  background: #d24242;
  padding: 0 3px 0 0;
}

.card .open-title {
  display: inline-block;
  line-height: 30px;
  border-top: 1px dashed white;
  border-bottom: 1px dashed white;
  padding: 0 15px;
  color: white;
  text-transform: uppercase;
  font-weight: 700;
}

.card--first,
.card--third {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transform-origin: left;
  transition: all .9s;
  transform-style: preserve-3d;
  z-index: 2;
  box-shadow: 2px 0 6px 2px #926c6c;
}

.card--first {
  transition-delay: .4s;
}

.card--third {
  z-index: 1;
  transform-origin: right;
  transition: all .9s;
  box-shadow: -2px 0 6px 2px #926c6c;
}

.card-packaging.is-open .card--first {
  transform: rotateY(180deg);
  transition: all .9s;
}

.card-packaging.is-open .card--third {
  transform: rotateY(180deg);
  transition: all .9s;
  transition-delay: .4s;
}

.card-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  padding: 15px 25px;
}

.card-wrapper.back {
  transform: rotateY(180deg);
}

.close {
  width: 30px;
  height: 30px;
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 10px;
}
document.addEventListener('DOMContentLoaded', function() {
  document.getElementsByClassName('open')[0].addEventListener('click', function () {
    document.getElementsByClassName('card-packaging')[0].classList.add('is-open')
  })

  document.getElementsByClassName('close')[0].addEventListener('click', function () {
    document.getElementsByClassName('card-packaging')[0].classList.remove('is-open')
  })
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.