a.button {
  display: inline-block;
  position: relative;
  padding: 12px 90px 12px 25px;
  border-radius: 20px;
  background: #0062ba;
  transition: all .3s;
}

a.button::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 7%;
  z-index: 999;
  width: 25px;
  height: 25px;
  border: 1px solid #fff;
  border-radius: 50%;
  transform: translateY(-50%);
  transition: 0.36s cubic-bezier(0.68, 0.54, 0.14, 0.96);
}

a.button span {
  font-size: 14px;
  color: #fff;
}

a.button::after {
  content: "";
  position: absolute;
  right: 14%;
  top: 50%;
  z-index: 999;
  height: 1px;
  width: 50px;
  background: rgba(255, 255, 255, 0.5);
  transform: translateY(-50%);
  transition: all .3s;
}

a.button:hover {
  padding-right: 110px;
}

a.button:hover::after {
  width: 70px;
}
