* {
  box-sizing: border-box;
}
body {
  width: 100%;
  height: 100vh;
  background-color: #f8f7fc;
  font-family: 'Plus Jakarta Sans', sans-serif;
}
body main {
  display: flex;
  justify-content: center;
  align-items: center;
  width: inherit;
  height: inherit;
}
body main .btn-area {
  position: relative;
  width: calc(210px + 2px);
  height: calc(60px + 2px);
}
body main .btn-area:hover .main-btn {
  opacity: 0.25;
}
body main .btn-area .main-btn {
  width: inherit;
  height: inherit;
  opacity: 0.15;
  transition: 250ms;
}
body main .btn-area .main-btn rect {
  width: 210px;
  height: 60px;
  transition: 250ms;
}
body main .btn-area .progress-area, body main .btn-area .complete-area {
  position: absolute;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  color: #1578ff;
  user-select: none;
  opacity: 1;
}
body main .btn-area .progress-area .area-left, body main .btn-area .complete-area .area-left {
  display: flex;
}
body main .btn-area .progress-area .area-left svg, body main .btn-area .complete-area .area-left svg {
  margin-right: 1rem;
  opacity: 0;
}
body main .btn-area .progress-area .area-left span, body main .btn-area .complete-area .area-left span {
  width: 50px;
  text-align: right;
}
body main .btn-area .progress-area .area-right, body main .btn-area .complete-area .area-right {
  position: relative;
  display: flex;
  align-items: center;
  height: 20px;
  margin-right: -1rem;
  padding-left: 1rem;
  border-left: 1px solid #1578ff 44;
  overflow: hidden;
  cursor: pointer;
}
body main .btn-area .progress-area .area-right:hover, body main .btn-area .complete-area .area-right:hover {
  height: 40px;
  transition: 250ms height;
}
body main .btn-area .progress-area .area-right:hover svg, body main .btn-area .complete-area .area-right:hover svg {
  opacity: 1;
}
body main .btn-area .progress-area .area-right svg, body main .btn-area .complete-area .area-right svg {
  opacity: 0.5;
  transition: 250ms;
}
body main .btn-area .progress-area .area-right .btn-play, body main .btn-area .complete-area .area-right .btn-play {
  position: absolute;
  transform: translateY(40px);
}
body main .btn-area .complete-area {
  justify-content: space-around;
  display: none;
}
body main .btn-area .complete-area svg {
  width: 40px;
  height: 20px;
  margin-right: 1rem;
  padding-right: 1rem;
  border-right: 1px solid #fff 6;
}
body main .btn-area .complete-area svg path {
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 6px;
  opacity: 0;
}
body main .btn-area .complete-area span {
  color: #fff;
  padding-bottom: 1px;
  opacity: 0;
}
body main .btn-area .frame-btn {
  position: absolute;
  top: 0;
  left: 0;
  width: inherit;
  height: inherit;
}
body main .btn-area .frame-btn rect {
  width: 210px;
  height: 60px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body .instagram-link {
  position: absolute;
  right: 50px;
  bottom: 50px;
}
body .instagram-link i {
  color: #1578ff;
  transition: 150ms;
  font-size: 2rem;
  opacity: 0.5;
}
body .instagram-link i:hover {
  opacity: 1;
}
