<div class="wrapper">
  <svg viewBox="0 0 50 50" class="spinner">
    <circle cx="25" cy="25" r="23" fill="none" class="circle"/>
  </svg>
</div>
.spinner {
  width: 50px;
  height: 50px;
  animation: rotate 1400ms linear 0s infinite; /* 追加 */
}

/* 追加 */
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* ここまで追加 */

.circle {
  stroke: #0bd;
  stroke-width: 4;
  stroke-dasharray: 115 115;
}

.wrapper {
  display: grid;
  place-content: center;
  height: 100vh;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.