.page-campaign {
  color: #000;
}
.page-campaign .p-mv {
  display: flex;
}
.page-campaign .p-period {
  text-align: center;
  font-family: var(--refa-font-mincho);
}
.page-campaign .p-period__bg {
  background-color: #f8f5ef;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__bg {
    padding: 80px 0;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__bg {
    padding: 15.3846153846vw 0;
  }
}
.page-campaign .p-period__title {
  line-height: 1;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__title {
    font-weight: 700;
    font-size: 34px;
    margin-bottom: 42px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__title {
    font-weight: 600;
    font-size: 5.1282051282vw;
    margin-bottom: 8.2051282051vw;
  }
}
.page-campaign .p-period__main {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main {
    border-top: 5px solid #c89f6c;
    border-bottom: 5px solid #c89f6c;
    width: 635px;
    padding: 16px 0 16px 8px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main {
    border-top: 0.7692307692vw solid #c89f6c;
    border-bottom: 0.7692307692vw solid #c89f6c;
    width: 84.6153846154vw;
    padding: 3.0769230769vw 0 3.0769230769vw 1.5384615385vw;
    margin-bottom: 6.1538461538vw;
  }
}
.page-campaign .p-period__main::before, .page-campaign .p-period__main::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  background-color: #c89f6c;
  left: 0;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main::before, .page-campaign .p-period__main::after {
    height: 2px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main::before, .page-campaign .p-period__main::after {
    height: 0.2564102564vw;
  }
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main::before {
    top: -9px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main::before {
    top: -1.2820512821vw;
  }
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main::after {
    bottom: -9px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main::after {
    bottom: -1.2820512821vw;
  }
}
.page-campaign .p-period__main-txt {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main-txt {
    font-weight: 500;
    font-size: 54px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main-txt {
    font-weight: 600;
    font-size: 6.9230769231vw;
  }
}
.page-campaign .p-period__main-txt small {
  font-size: 75%;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main-txt small {
    margin-left: -10px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main-txt small {
    margin-left: -1.2820512821vw;
  }
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__main img {
    width: 50px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__main img {
    width: 6.6666666667vw;
    margin-right: 3.5897435897vw;
  }
}
.page-campaign .p-period__txt {
  line-height: 1.65;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-period__txt {
    font-weight: 500;
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-period__txt {
    font-weight: 600;
    font-size: 4.358974359vw;
  }
}
.page-campaign .p-message {
  font-family: var(--refa-font-mincho);
  color: #c89f6c;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-message {
    padding: 140px 0;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-message {
    padding: 17.9487179487vw 0;
  }
}
.page-campaign .p-message__inner {
  display: flex;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-message__inner {
    align-items: center;
    justify-content: center;
    column-gap: min(94px, 7.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-message__inner {
    flex-direction: column;
    row-gap: 10.2564102564vw;
    padding-left: 15.3846153846vw;
  }
}
.page-campaign .p-message__title {
  font-weight: 700;
  letter-spacing: -0.03em;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-message__title {
    line-height: 1.445;
    font-size: min(89.6px, 7vw);
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-message__title {
    line-height: 1.63;
    font-size: 11.0256410256vw;
    margin-left: -1.5384615385vw;
  }
}
.page-campaign .p-message__text {
  line-height: 2.763;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-message__text {
    font-size: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-message__text {
    font-size: 4.358974359vw;
  }
}
.page-campaign .p-present {
  font-family: var(--refa-font-mincho);
}
.page-campaign .p-present__wrap {
  display: flex;
  flex-wrap: wrap;
}
.page-campaign .p-present__img {
  display: flex;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__img {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__img {
    width: 100%;
  }
}
.page-campaign .p-present__img img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__img.img01 {
    order: 0;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__img.img02 {
    order: 3;
  }
}
.page-campaign .p-present__text01 {
  width: 100%;
  background-color: #f8f5ef;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01 {
    padding: 100px 0 140px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01 {
    order: 1;
    padding: 13.8461538462vw 0 25.641025641vw;
  }
}
.page-campaign .p-present__text01-title {
  text-align: center;
  color: #c89f6c;
  line-height: 1.43;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-title {
    font-weight: 700;
    font-size: 45px;
    margin-bottom: 48px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-title {
    font-weight: 600;
    font-size: 7.0769230769vw;
    margin-bottom: 3.0769230769vw;
  }
}
.page-campaign .p-present__text01-wrap {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-wrap {
    justify-content: center;
    column-gap: min(75px, 5.859375vw);
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-wrap {
    flex-direction: column;
    row-gap: 7.6923076923vw;
  }
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-img {
    width: min(374px, 29.21875vw);
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-img {
    width: 56.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-text .txt {
    font-weight: 700;
    line-height: 1.6;
    font-size: min(35px, 2.734375vw);
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-text .txt {
    text-align: center;
    font-weight: 600;
    line-height: 1.8;
    font-size: 4.358974359vw;
  }
}
.page-campaign .p-present__text01-text .txt02 {
  line-height: 1.65;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-text .txt02 {
    font-weight: 500;
    font-size: 26px;
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-text .txt02 {
    text-align: center;
    font-weight: 600;
    font-size: 3.8461538462vw;
    margin-top: 5.1282051282vw;
  }
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-text .notes {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-text .notes {
    margin: 7.6923076923vw auto 0;
  }
}
.page-campaign .p-present__text01-text .notes li {
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text01-text .notes li {
    line-height: 2;
    font-size: 11px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text01-text .notes li {
    line-height: 1.8;
    font-size: 2.5641025641vw;
  }
}
.page-campaign .p-present__text02 {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text02 {
    text-align: center;
    padding: 100px 0;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text02 {
    order: 2;
    padding: 35.8974358974vw 10.2564102564vw 23.0769230769vw;
  }
}
.page-campaign .p-present__text02-title {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text02-title {
    font-weight: 700;
    font-size: 38px;
    margin-bottom: 48px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text02-title {
    font-weight: 600;
    font-size: 4.8717948718vw;
    margin-bottom: 9.2307692308vw;
  }
}
.page-campaign .p-present__text02-txt {
  line-height: 2.14;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text02-txt {
    font-size: 19px;
    margin-bottom: 42px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text02-txt {
    font-weight: 600;
    font-size: 3.0769230769vw;
    margin-bottom: 9.2307692308vw;
  }
}
.page-campaign .p-present__text02-term {
  line-height: 1.93359375;
}
@media screen and (min-width: 768px) {
  .page-campaign .p-present__text02-term {
    font-weight: 700;
    font-size: 25.6px;
  }
}
@media screen and (max-width: 767px) {
  .page-campaign .p-present__text02-term {
    font-weight: 600;
    font-size: 4.8717948718vw;
  }
}