body {
    margin: 0;
    padding:0;
    background: #262626;
  }
  
  ul {
    display: flex;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  ul li {
    list-style: none;
  }
  
  ul li a {
    width: 80px;
    height: 80px;
    background-color: #fff;
    text-align: center;
    line-height: 80px;
    font-size: 35px;
    margin: 0 10px;
    display: block;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    border: 3px solid #fff;
    z-index: 1;
  }
  
  ul li a .icon {
    position: relative;
    color: #262626;
    transition: .5s;
    z-index: 3;
  }
  
  ul li a:hover .icon {
    color: #fff;
    transform: rotateY(-1080deg);
  }
  
  ul li a:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f00;
    transition: .5s;
    z-index: 2;
  }
  
  ul li a:hover:before {
    bottom: 0;
  }
  
  ul li:nth-child(1) a:before{
    background: #3b5999;
  }
  
  ul li:nth-child(2) a:before{
    background: #ff9900;
  }
  
  ul li:nth-child(3) a:before {
    background: #a1aaac;
  }
  
  ul li:nth-child(4) a:before {
    background: #dd4b39;
  }