@media only screen and (max-width: 768px) {
  .c-mv {
    background-image: url("../img/img-main_sp.jpg");
  }
}
@media print, screen and (min-width: 769px) {
  .c-mv {
    background-image: url("../img/img-main.jpg");
  }
}

@media only screen and (max-width: 768px) {
  .p-lifter {
    margin-bottom: 16vw;
    padding-inline: 8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-lifter {
    margin: 0 auto min(120px, 8.5714285714vw);
    width: min(990px, 70.7142857143vw);
  }
}

.p-lead {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-lead {
    font-size: 3.7333333333vw;
    line-height: 1.785;
    margin-bottom: 6.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-lead {
    font-size: min(15px, 1.0714285714vw);
    line-height: 1.8;
    margin-bottom: min(35px, 2.5vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-button {
    margin-bottom: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-button {
    display: flex;
    justify-content: center;
    margin-bottom: min(80px, 5.7142857143vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-flow {
    margin-bottom: 14.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-flow {
    margin-bottom: min(80px, 5.7142857143vw);
  }
}

@media print, screen and (min-width: 769px) {
  .p-flow-items {
    display: -ms-grid;
    display: grid;
    gap: min(25px, 1.7857142857vw) min(12px, 0.8571428571vw);
    -ms-grid-columns: 1fr min(12px, 0.8571428571vw) 1fr min(12px, 0.8571428571vw) 1fr min(12px, 0.8571428571vw) 1fr;
    grid-template-columns: repeat(4, 1fr);
  }
}

@media only screen and (max-width: 768px) {
  .p-flow-item + .p-flow-item {
    margin-top: min(58px, 4.1428571429vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-flow-image {
    margin-bottom: 4.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-flow-image {
    margin-bottom: min(15px, 1.0714285714vw);
  }
}
.p-flow-image img {
  height: auto;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .c-ttl03 {
    margin-bottom: 3.2vw;
  }
}
@media print, screen and (min-width: 769px) {
  .c-ttl03 {
    margin-bottom: min(14px, 1vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-flow-text {
    font-size: 3.7333333333vw;
    padding-inline: 2.9333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-flow-text {
    font-size: min(15px, 1.0714285714vw);
    padding-inline: min(20px, 1.4285714286vw);
  }
}