<div class="container">
  <div class="top-left"></div>
  <div class="top-right"></div>
  <div class="bottom-left"></div>
  <div class="bottom-right"></div>
</div>

<!-- This is not part of Pen -->
<a class="me" href="https://codepen.io/uzcho_/pens/popular/?grid_type=list" target="_blank" style="color:#fff"></a>
body{background:#000}
div{display:block;position:absolute}

.container{
  width:200px;
  height:200px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%)
  }

.container div{
  width:100px;
  height:100px;
  top:50px;
  left:50px
  }

.top-left{animation:tl 7.5s ease infinite}
.top-right{animation:tr 7.5s ease infinite}
.bottom-left{animation:bl 7.5s ease infinite}
.bottom-right{animation:br 7.5s ease infinite}

.container div:before,
.container div:after
  {display:block;position:absolute;content:""}

.container div:before{width:50px;height:50px}

.top-left:before{
  background:#fbbc05;
  top:0;
  left:0;
  border-radius:100% 0 0 0
  }

.top-right:before{
  background:#ea4335;
  top:0;
  right:0;
  border-radius:0 100% 0 0
  }

.bottom-left:before{
  background:#34a853;
  bottom:0;
  left:0;
  border-radius:0 0 0 100%
  }

.bottom-right:before{
  background:#4285f4;
  bottom:0;
  right:0;
  border-radius:0 0 100% 0
  }

.container div:after{
  background:#000;
  width:25px;
  height:25px;
  z-index:1
  }

.top-left:after
  {top:25px;left:25px;border-radius:100% 0 0 0}

.top-right:after
  {top:25px;right:25px;border-radius:0 100% 0 0}

.bottom-left:after
  {bottom:25px;left:25px;border-radius:0 0 0 100%}

.bottom-right:after
  {bottom:25px;right:25px;border-radius:0 0 100% 0}

@keyframes tl{
  0%,96%,100%{transform:rotate(0deg)}
  12%{transform:rotate(-45deg)}
  24%{transform:rotate(-90deg)}
  36%{transform:rotate(-135deg)}
  48%{left:50px;transform:rotate(-180deg)}
  60%{left:125px;opacity:1;transform:rotate(-135deg)}
  61%,95%{opacity:0}
  }

@keyframes tr{
  0%{transform:rotate(0deg)}
  12%{transform:rotate(-45deg)}
  24%{transform:rotate(-90deg)}
  36%{transform:rotate(-135deg)}
  48%{transform:rotate(-180deg)}
  60%{transform:rotate(-225deg)}
  72%{transform:rotate(-270deg)}
  84%{transform:rotate(-315deg)}
  96%,100%{transform:rotate(-360deg)}
  }

@keyframes bl{
  0%,100%{transform:rotate(0deg)}
  12%{transform:rotate(-45deg)}
  24%{left:50px;transform:rotate(-90deg)}
  36%{left:125px;opacity:1;transform:rotate(-45deg)}
  37%,83%{opacity:0}
  84%{left:-25px;opacity:1;transform:rotate(-45deg)}
  96%{left:50px;transform:rotate(0deg)}
  }

@keyframes br{
  0%,96%,100%{transform:rotate(0deg)}
  12%{left:125px;opacity:1;transform:rotate(45deg)}
  13%,59%{opacity:0}
  60%{left:-25px;opacity:1;transform:rotate(45deg)}
  72%{left:50px;transform:rotate(90deg)}
  84%{transform:rotate(45deg)}
  }

External CSS

  1. https://codepen.io/uzcho_/pen/RmOWmw.css

External JavaScript

This Pen doesn't use any external JavaScript resources.