<div class="landing">
</div>

<div class="button_container">
  <span class="top"></span>
  <span class="middle"></span>
  <span class="bottom"></span>
</div>

<div class="menu">
  <a href="#"><span></span></a>
  <a href="#"><span></span></a>
  <a href="#"><span></span></a>
  <a href="#"><span></span></a>
</div>
body {
  padding: 0;
  margin: 0;
}

.landing {
  width: 100vw;
  height: 100vh;
  background-image: url('https://res.cloudinary.com/tempest/image/upload/c_limit,cs_srgb,dpr_1.0,q_80,w_10000/MTM2NDU2MTg4MTgyMTQ0NjA3.jpg');
  background-size: cover;
}

.button_container {
  width: 50px;
  height: 32px;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  cursor: pointer;
  z-index: 1;
}

.button_container span {
  position: absolute;
  height: 3px;
  width: 100%;
  background: #333;
  transition: all .35s ease;
}

.middle {
  top: 15px;
}

.bottom {
  top: 30px;
}

.button_container.active .top {
  transform: translateY(15px) translateX(0px) rotate(405deg);
  background: #2f0f26;
}

.button_container.active .middle {
  opacity: 0;
}

.button_container.active .bottom {
  transform: translateY(-15px) translateX(0px) rotate(495deg);
  background: #2f0f26;
}

.menu {
  opacity: 0;
  width: 0px;
  height: 0px;
  border-radius: 50%;
  background: #E8E8E8;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  position: fixed;
  transition: all .5s ease;
}

.menu.open {
  opacity: 1;
  width: 300px;
  height: 300px;
}

a {
  color: #2f0f26;
  text-align: center;
  text-decoration: none;
  font-family: fontawesome;
  font-size: 30px;
  transition: all .5s ease;
}

a:nth-of-type(1):before {
  content: '\f0d5';
}

a:nth-of-type(2):before {
  content: '\f113';
}

a:nth-of-type(3):before {
  content: '\f17d';
}

a:nth-of-type(4):before {
  content: '\f1cb';
}
a:nth-of-type(1) {
  position: fixed;
  top: 20%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

a:nth-of-type(2) {
  position: fixed;
  top: 80%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

a:nth-of-type(3) {
  position: fixed;
  top: 50%;
  left: 20%;
  transform: translateX(-50%) translateY(-50%);
}

a:nth-of-type(4) {
  position: fixed;
  top: 50%;
  left: 80%;
  transform: translateX(-50%) translateY(-50%);
}
window.onload=function() {
  $('.button_container').click(function(){
    $('.button_container').toggleClass('active');
    $('.menu').toggleClass('open');
  });
};

External CSS

  1. //maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min

External JavaScript

  1. //cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js
  2. //cdnjs.cloudflare.com/ajax/libs/wow/0.1.12/wow.min.js