.campaign .campaign__box .campaign-contents .campaign__body .campaign__credit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 12px;
  line-height: 1;
}
.campaign .campaign__box .campaign-contents .campaign__body .campaign__credit-logo--main {
  height: 30px;
  width: auto;
  mix-blend-mode: multiply; 
}
.campaign .campaign__box .campaign-contents .campaign__body .campaign__credit-logo--sub {
  height: 22px;
  width: auto;
}
.campaign .campaign__box .campaign-contents .campaign__body .campaign__credit-by {
  font-size: 12px;
  color: #777;
  letter-spacing: 0.02em;
}

@media screen and (min-width:769px) {
  .campaign .campaign__box .campaign-contents {
    height: auto;
    min-height: 283px;
  }
}

@media screen and (max-width:540px) {
  .campaign .campaign__box .campaign-contents .campaign__body .campaign__credit { order: 4; width: 100%; margin-top: 8px; gap: 8px; }
  .campaign .campaign__box .campaign-contents .campaign__body .campaign__credit-logo--main { height: 24px; }
  .campaign .campaign__box .campaign-contents .campaign__body .campaign__credit-logo--sub { height: 18px; }
  .campaign .campaign__box .campaign-contents .campaign__body .campaign__credit-by { font-size: 11px; }
}

.oneapp .oneapp__content .oneapp__body .stats .stats__row .stat {
  flex: 0 0 auto;
  width: auto;
  min-width: 234px;
  height: auto;
  padding: 24px 44px 28px;
  gap: 8px;
}
.oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__label {
  font-size: 29px;
  line-height: 1.2;
}
.oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__value {
  align-items: baseline;
  gap: 2px;
}
.oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__value span.stat__num {
  font-size: 70px;
}
.oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__value span.stat__unit {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-size: 30px;
  line-height: 1;
}
@media screen and (max-width:540px) {
  .oneapp .oneapp__content .oneapp__body .stats .stats__row .stat {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
    padding: 14px 26px 16px;
    gap: 5px;
  }
  .oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__label { font-size: 18px; }
  .oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__value span.stat__num { font-size: 43px; }
  .oneapp .oneapp__content .oneapp__body .stats .stats__row .stat .stat__value span.stat__unit { font-size: 18px; }
}

.oneapp .oneapp__content .oneapp__foot .marker span:first-child {
  width: auto;
}
@media screen and (max-width:540px) {
  .oneapp .oneapp__content .oneapp__foot .marker span:first-child {
    width: auto;
  }
}

@media screen and (min-width:1025px) {
  .campaign .campaign__box .campaign-contents .campaign__body .campaign__title {
    font-size: 49px;
  }
}

@media screen and (min-width:769px) and (max-width:1024px) {
  .campaign .campaign__box .campaign-contents .campaign__body .campaign__title {
    font-size: clamp(30px, calc((100vw - 490px) / 11), 49px);
  }
}

.campaign .campaign__box .member-offer .member-offer__after {
  display: inline-flex;
  align-items: flex-end;
  white-space: nowrap;
  line-height: 1;
}
.campaign .campaign__box .member-offer .member-offer__after .yen__num {
  line-height: 1;
}
.campaign .campaign__box .member-offer .member-offer__after .yen {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 0.9em;       
  margin-left: 4px;
  line-height: 1;
}
.campaign .campaign__box .member-offer .member-offer__after .yen__tax {
  font-size: 0.3em;    
  font-weight: normal;
  letter-spacing: 0;
  line-height: 1;
}
.campaign .campaign__box .member-offer .member-offer__after .yen__unit {
  font-size: 0.6em;
  line-height: 1;
}

#campaign {
  scroll-margin-top: 92px;
}
@media screen and (max-width:540px) {
  #campaign {
    scroll-margin-top: 72px;
  }
}

@media screen and (min-width:769px) and (max-width:783px) { body { zoom: 0.7599; } }
@media screen and (min-width:784px) and (max-width:798px) { body { zoom: 0.7747; } }
@media screen and (min-width:799px) and (max-width:813px) { body { zoom: 0.7895; } }
@media screen and (min-width:814px) and (max-width:828px) { body { zoom: 0.8043; } }
@media screen and (min-width:829px) and (max-width:843px) { body { zoom: 0.8192; } }
@media screen and (min-width:844px) and (max-width:858px) { body { zoom: 0.834; } }
@media screen and (min-width:859px) and (max-width:873px) { body { zoom: 0.8488; } }
@media screen and (min-width:874px) and (max-width:888px) { body { zoom: 0.8636; } }
@media screen and (min-width:889px) and (max-width:903px) { body { zoom: 0.8785; } }
@media screen and (min-width:904px) and (max-width:918px) { body { zoom: 0.8933; } }
@media screen and (min-width:919px) and (max-width:933px) { body { zoom: 0.9081; } }
@media screen and (min-width:934px) and (max-width:948px) { body { zoom: 0.9229; } }
@media screen and (min-width:949px) and (max-width:963px) { body { zoom: 0.9377; } }
@media screen and (min-width:964px) and (max-width:978px) { body { zoom: 0.9526; } }
@media screen and (min-width:979px) and (max-width:993px) { body { zoom: 0.9674; } }
@media screen and (min-width:994px) and (max-width:1008px) { body { zoom: 0.9822; } }
@media screen and (min-width:1009px) and (max-width:1011px) { body { zoom: 0.997; } }

/* 2026-10-31 iPad 横向き等（1025〜1439px）: トップの見出しと右の画像が重なるため、1440px の配置のまま .kv を縮小する */
@media screen and (min-width:1025px) and (max-width:1039px) { .kv { zoom: 0.7118; } }
@media screen and (min-width:1040px) and (max-width:1054px) { .kv { zoom: 0.7222; } }
@media screen and (min-width:1055px) and (max-width:1069px) { .kv { zoom: 0.7326; } }
@media screen and (min-width:1070px) and (max-width:1084px) { .kv { zoom: 0.7431; } }
@media screen and (min-width:1085px) and (max-width:1099px) { .kv { zoom: 0.7535; } }
@media screen and (min-width:1100px) and (max-width:1114px) { .kv { zoom: 0.7639; } }
@media screen and (min-width:1115px) and (max-width:1129px) { .kv { zoom: 0.7743; } }
@media screen and (min-width:1130px) and (max-width:1144px) { .kv { zoom: 0.7847; } }
@media screen and (min-width:1145px) and (max-width:1159px) { .kv { zoom: 0.7951; } }
@media screen and (min-width:1160px) and (max-width:1174px) { .kv { zoom: 0.8056; } }
@media screen and (min-width:1175px) and (max-width:1189px) { .kv { zoom: 0.8160; } }
@media screen and (min-width:1190px) and (max-width:1204px) { .kv { zoom: 0.8264; } }
@media screen and (min-width:1205px) and (max-width:1219px) { .kv { zoom: 0.8368; } }
@media screen and (min-width:1220px) and (max-width:1234px) { .kv { zoom: 0.8472; } }
@media screen and (min-width:1235px) and (max-width:1249px) { .kv { zoom: 0.8576; } }
@media screen and (min-width:1250px) and (max-width:1264px) { .kv { zoom: 0.8681; } }
@media screen and (min-width:1265px) and (max-width:1279px) { .kv { zoom: 0.8785; } }
@media screen and (min-width:1280px) and (max-width:1294px) { .kv { zoom: 0.8889; } }
@media screen and (min-width:1295px) and (max-width:1309px) { .kv { zoom: 0.8993; } }
@media screen and (min-width:1310px) and (max-width:1324px) { .kv { zoom: 0.9097; } }
@media screen and (min-width:1325px) and (max-width:1339px) { .kv { zoom: 0.9201; } }
@media screen and (min-width:1340px) and (max-width:1354px) { .kv { zoom: 0.9306; } }
@media screen and (min-width:1355px) and (max-width:1369px) { .kv { zoom: 0.9410; } }
@media screen and (min-width:1370px) and (max-width:1384px) { .kv { zoom: 0.9514; } }
@media screen and (min-width:1385px) and (max-width:1399px) { .kv { zoom: 0.9618; } }
@media screen and (min-width:1400px) and (max-width:1414px) { .kv { zoom: 0.9722; } }
@media screen and (min-width:1415px) and (max-width:1429px) { .kv { zoom: 0.9826; } }
@media screen and (min-width:1430px) and (max-width:1439px) { .kv { zoom: 0.9931; } }
