.p-btn-wrapper {
  width: 30rem;
  margin: 7rem auto 0;
}
@media screen and (max-width: 767px) {
  .p-btn-wrapper {
    width: 80vw;
    margin-top: 13.3333333333vw;
  }
}
.m-btn {
  font-size: 1.9rem;
  line-height: 1.2105263158;
  letter-spacing: 0.08em;
  font-weight: 700;
  color: #e41f35;
  text-decoration: none !important;
  padding: 2.3rem;
  border: 1px solid #e41f35;
  width: 100%;
  display: inline-block;
  text-align: center;
  background-color: #fff;
}

@media (any-hover: hover) {
  .m-btn {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .m-btn:hover {
    opacity: 0.7;
  }
}

@media screen and (max-width: 767px) {
  .m-btn {
    font-size: 5.0666666667vw;
    padding: 6.4vw 2.6666666667vw;
  }
}
.m-btn-arrow {
  position: relative;
  letter-spacing: normal;
}

@media screen and (max-width: 767px) {
  .m-btn-arrow {
    width: calc(100% - 5.3333333333vw);
  }
}

@media (any-hover: hover) {
  .m-btn-arrow:hover::after {
    right: -0.5rem;
  }
}

.m-btn-arrow::after {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../../assets/images/common/btn_arrow.svg) no-repeat center center;
  width: 4rem;
  height: 1rem;
  -webkit-transform: translate(50%, -80%);
  transform: translate(50%, -80%);
}

@media screen and (max-width: 767px) {
  .m-btn-arrow::after {
    width: 10.6666666667vw;
    height: 2.6666666667vw;
  }
}
