footer {
  position: relative;
}
footer .footer_arrow {
  max-width: 70px;
  width: 100%;
  position: absolute;
  top: -35px;
  left: 50%;
  -webkit-transform: translateX(-35px);
          transform: translateX(-35px);
  z-index: 20;
}
footer .footer_logo {
  max-width: 430px;
  width: 100%;
  margin: 0 auto 55px auto;
  position: relative;
  z-index: 20;
}
footer p {
  text-align: center;
  position: relative;
  z-index: 20;
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin-bottom: 50px;
}

.footer_wrap {
  width: 100%;
  overflow: hidden;
  min-height: 35vh;
  position: relative;
  z-index: 5;
  padding: 110px 0 0 0;
}
.footer_wrap .edge {
  margin-top: 0;
  background-color: #b40a14;
}

@media (min-width: 1px) and (max-width: 767px) {
  footer .footer_arrow {
    max-width: 35px;
    top: -15px;
    -webkit-transform: translateX(-18px);
            transform: translateX(-18px);
  }
  footer .footer_logo {
    max-width: 245px;
    margin: 0 auto 25px auto;
  }
  footer p {
    font-size: 9px;
    letter-spacing: 0.03em;
    margin-bottom: 20px;
  }
  .footer_wrap {
    width: 100%;
    overflow: hidden;
    min-height: 25vh;
    position: relative;
    z-index: 5;
    padding: 40px 0 0 0;
  }
  .footer_wrap .edge {
    margin-top: 0;
    background-color: #b40a14;
  }
}