@charset "UTF-8";

/* ========== Base / Global ========== */
.l-main--fullwidth img {
  width: 100%;
}

/* ---- Visual / Login ---- */
.p-2nd-anniv__main-visual {
  width: 1040px;
  margin: 0 auto;
}
.p-3rd-anniv__main-visual {
  width: 1040px;
  margin: 0 auto;
}
.p-3rd-anniv__login {
  width: 1040px;
  margin: 40px auto 50px;
}

/* ---- Link ---- */
.p-3rd-anniv__link {
  display: inline-flex;
  align-items: center;
  color: #E4002B;
  font-size: 14px;
  font-weight: 700;
}
.p-3rd-anniv__link::after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  margin-left: 4px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(-45deg);
  transition: border-color 0.65s ease;
}
.p-3rd-anniv__link:hover {
  text-decoration: underline;
}

/* ---- Recipe Loto BG ---- */
#recipe-loto .p-2nd-anniv__contain--blue {
  background: url("/kewpieid/2nd/assets/img/bg-recipe-loto-pc.jpg") no-repeat center center / cover;
}

/* ---- Stamp board ---- */
.p-3rd-anniv-contents-hdg {
  color: #E4002B;
  font-size: 32px;
  font-weight: bold;
  width: 960px;
  margin: 24px auto 0;
  line-height: 1;
}
.p-3rd-anniv-contents {
  width: 1040px;
  margin: 16px auto;
  border-radius: 8px;
  border: 4px solid #EF8EA0;
  padding: 24px 32px;
}
.p-3rd-anniv-contents-row {
  display: flex;
  justify-content: space-between;
  width: 1040px;
  margin: 0 auto;
}
.p-3rd-anniv-contents-row-itm {
  width: 500px;
}
.p-3rd-anniv-contents-h {
  margin: 16px auto;
  border-radius: 8px;
  border: 4px solid #EF8EA0;
  padding: 24px 32px;
  height: 365px;
}
.p-3rd-anniv-contents-h.r-green {
  border: 4px solid #8FB472;
}
.p-3rd-anniv-contents-hdg.r-green {
  color: #98B13B;
}
.p-3rd-anniv-contents-h-logo img {
  width: 190px !important;
  height: auto;
}

/* ---- Stamps ---- */
.stamp-list {
  display: flex;
  justify-content: space-between;
  padding-bottom: 52px;
  border-bottom: dashed 4px #EF8EA0;
  margin-left: 32px;
  margin-right: 32px;
}
.stamp-list.is-logout {
  padding-bottom: 28px;
}
.stamp-list-itm {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.stamp-list-itm-obj {
  border: dashed #E9BE8E 2px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 17px;
  color: #E57A00;
  line-height: 1.3;
  width: 120px;
  height: 120px;
  text-align: center;
  position: relative;
}
.stamp-list-itm-txt {
  font-weight: 700;
}
.r-timeattack .stamp-list-itm-obj,
.r-pairmatching .stamp-list-itm-obj {
  font-size: 15px;
}
.stamp-list-itm-img {
  display: block;
  position: absolute;
  bottom: -10px;
  height: 40px;
  width: 100%;
  object-fit: contain;
}
.stamp-list-itm-link {
  font-size: 14px;
  color: #000;
  text-align: center;
  margin-top: 12px;
  opacity: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 117px;
}
.stamp-list-itm-link::after {
  content: "";
  display: inline-block;
  margin-left: 6px;
  width: 9px;
  height: 13px;
  background: no-repeat center/100% 100% url('data:image/svg+xml;utf8,\
          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 13">\
          <path d="M1.5 1.66992L7.5 6.91992L1.5 11.6699" fill="none" stroke="%2354C3F1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

/* earned badge */
.stamp-list-itm.is-earned::after {
  position: absolute;
  top: 0;
  left: -8px;
  content: "";
  display: inline-block;
  width: 41px;
  height: 41px;
  background: no-repeat center/100% 100% url('data:image/svg+xml;utf8,\
          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 41">\
          <path d="M40.5 20.1699C40.5 21.8584 38.0311 23.1997 37.6149 24.7568C37.1842 26.3679 38.6389 28.7614 37.8229 30.1721C36.995 31.603 34.1872 31.5346 33.0258 32.6958C31.8645 33.8569 31.9331 36.6649 30.5022 37.4928C29.0915 38.309 26.698 36.8543 25.0869 37.2848C23.5298 37.701 22.1884 40.1699 20.5 40.1699C18.8116 40.1699 17.4702 37.701 15.9131 37.2848C14.302 36.8541 11.9085 38.3088 10.4978 37.4928C9.06695 36.6649 9.13529 33.8571 7.97416 32.6958C6.81278 31.5344 4.00505 31.603 3.17713 30.1721C2.36088 28.7614 3.81558 26.3679 3.38508 24.7568C2.96893 23.1995 0.5 21.8581 0.5 20.1699C0.5 18.4817 2.96893 17.1401 3.38508 15.583C3.81582 13.9719 2.36112 11.5784 3.17713 10.1677C4.00505 8.73687 6.81278 8.80521 7.97416 7.64408C9.13553 6.48295 9.06695 3.67497 10.4978 2.84705C11.9085 2.0308 14.302 3.4855 15.9131 3.055C17.4702 2.63885 18.8116 0.169922 20.5 0.169922C22.1884 0.169922 23.5298 2.63885 25.0869 3.055C26.698 3.48574 29.0915 2.03104 30.5022 2.84705C31.9331 3.67497 31.8647 6.4827 33.0258 7.64408C34.1872 8.80546 36.995 8.73687 37.8229 10.1677C38.6391 11.5784 37.1844 13.9719 37.6149 15.583C38.0311 17.1401 40.5 18.4815 40.5 20.1699Z" fill="%2354C3F1"/>\
          <path d="M17.5407 27.4913L10.6289 20.4555L13.3668 17.7657L17.802 22.2801L27.7762 13.979L30.2317 16.929L17.5407 27.4913Z" fill="white"/>\
          </svg>');
}

/* stamp color variations */
.stamp-list-itm.r-thanks .stamp-list-itm-obj {
  color: #E57A00;
  border-color: #E9BE8E;
}
.stamp-list-itm.r-recipeloto .stamp-list-itm-obj {
  color: #E57C7C;
  border-color: #E9B4B4;
}
.stamp-list-itm.r-timeattack .stamp-list-itm-obj {
  color: #2E9AC7;
  border-color: #8DC3D9;
}
.stamp-list-itm.r-pairmatching .stamp-list-itm-obj {
  color: #6FA235;
  border-color: #ADC791;
}
.stamp-list-itm.r-mystock .stamp-list-itm-obj {
  color: #9C89C3;
  border-color: #C4BBD7;
}
.stamp-list-itm.r-stamp .stamp-list-itm-obj {
  color: #D84C4C;
  border-color: #E29C9C;
}

/* earned color variations */
.stamp-list-itm.is-earned .stamp-list-itm-obj {
  color: #fff;
  border-style: solid;
}
.stamp-list-itm.is-earned.r-thanks .stamp-list-itm-obj {
  background: #E57A00;
  border-color: #E57A00;
}
.stamp-list-itm.is-earned.r-recipeloto .stamp-list-itm-obj {
  background: #E57C7C;
  border-color: #E57C7C;
}
.stamp-list-itm.is-earned.r-timeattack .stamp-list-itm-obj {
  background: #2E9AC7;
  border-color: #2E9AC7;
}
.stamp-list-itm.is-earned.r-pairmatching .stamp-list-itm-obj {
  background: #6FA235;
  border-color: #6FA235;
}
.stamp-list-itm.is-earned.r-mystock .stamp-list-itm-obj {
  background: #9C89C3;
  border-color: #9C89C3;
}
.stamp-list-itm.is-earned.r-stamp .stamp-list-itm-obj {
  background: #D84C4C;
  border-color: #D84C4C;
}
 
.stamp-list.is-logout .stamp-list-itm .stamp-list-itm-obj {
  border-style: solid !important;
  border-color: #FDF9FA !important;
  background-color: #FDF9FA !important;
}
.complete-cp-info-txt-link {
  color: #E4002B;
  text-decoration: underline;
}
.stamp-list .stamp-list-itm.r-notstart .stamp-list-itm-obj {
  background-color: #aaa !important;
  border: solid 2px #aaa !important;
  color: #fff !important;
}
.stamp-list .stamp-list-itm.r-notstart .stamp-list-itm-link {
  opacity: 0 !important;
  pointer-events: none;
}


/* ---- Buttons / wallpaper ---- */
.p-3rd-anniv__btn--sm {
  position: relative;
  z-index: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 32px;
  padding: 0 20px;
  border: 1px solid #E4002B;
  border-radius: 100px;
  background-color: #fff;
  color: #E4002B;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  user-select: none;
}
.p-3rd-anniv__btn--sm::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 16px;
  width: 4px;
  height: 4px;
  z-index: 1;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: translate(0, -50%) rotate(-45deg);
}
[disabled].p-3rd-anniv__btn--sm {
  border-color: #aaa;
  background-color: #aaa;
  color: #fff;
  font-weight: normal;
  pointer-events: none;
}
[disabled].p-3rd-anniv__btn--sm::after {
  display: none;
}

.p-3rd-anniv__wallpaper__list {
  margin-top: 8px;
  display: flex;
  justify-content: center;
  gap: 30px;
}
.p-3rd-anniv__wallpaper__list__itm {
  width: 220px;
}
.p-3rd-anniv__wallpaper__list__ttl {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}
.p-3rd-anniv__wallpaper__list__itm:nth-child(2) .p-3rd-anniv__wallpaper__list__ttl {
  color: #98B13B;
}
.p-3rd-anniv__wallpaper__list__itm:nth-child(1) .p-3rd-anniv__wallpaper__list__ttl {
  color: #54C3F1;
}
.p-3rd-anniv__wallpaper__list__img {
  width: 125px;
  margin: 0 auto;
}

/* ---- Contents list ---- */
.p-3rd-anniv-contents-list {
  display: flex;
  justify-content: space-between;
  gap: 22px 0;
  flex-wrap: wrap;
  margin-top: 24px;
}
.p-3rd-anniv-contents-list-itm {
  width: 470px;
  border-radius: 10.526px;
  background: rgba(229, 122, 0, 0.10);
  padding: 24px 24px 13px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.p-3rd-anniv-contents-list-itm .c-sec__btn {
  margin-top: 16px;
}
.p-3rd-anniv-contents-list-itm-hdg {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  position: relative;
}
.p-3rd-anniv-contents-list-itm-hdg::after {
  content: "";
  display: block;
  width: 184px;
  height: 1px;
  border-top: dashed 2px #E9BE8E;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto 10px;
}
.p-3rd-anniv-contents-list-itm-block {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: auto;
}
.p-3rd-anniv-contents-list-itm-pic {
  flex-shrink: 0;
  width: 20%;
}
.p-3rd-anniv-contents-list-itm-txt {
  font-size: 14px;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .p-3rd-anniv-contents-list {
    flex-direction: column;
    gap: 8.533333333vw 0;
    margin: 8.533333333vw auto 0;
    width: 96%;
  }
  .p-3rd-anniv-contents-list-itm {
    width: 100%;
    border-radius: 2.0624vw;
    padding: 5.333333333vw 2vw 4.266666667vw;
  }
  .p-3rd-anniv-contents-list-itm .c-sec__btn {
    margin-top: 0;
  }
  .p-3rd-anniv-contents-list-itm-hdg {
    font-size: 5.6vw;
  }
  .p-3rd-anniv-contents-list-itm-hdg::after {
    width: 36vw;
    margin: 0 auto 4.266666667vw;
  }
  .p-3rd-anniv-contents-list-itm-block {
    display: flex;
    justify-content: space-between;
    gap: 4.8vw;
  }
  .p-3rd-anniv-contents-list-itm-block.r-col {
    flex-direction: column;
    gap: 4.266666667vw;
  }
  .p-3rd-anniv-contents-list-itm-block.r-col .p-3rd-anniv-contents-list-itm-pic {
    text-align: center;
    width: 100%;
  }
  .p-3rd-anniv-contents-list-itm-pic {
    flex-shrink: 0;
    width: 20%;
  }
  .p-3rd-anniv-contents-list-itm-txt {
    font-size: 14px;
    line-height: 1.6;
  }
  .p-3rd-anniv-contents-list-itm .c-btn-list {
    width: 80%;
    margin-top: 0;
  }
  .p-3rd-anniv-contents-row {
    flex-direction: column;
    gap: 8vw;
    width: 96vw;
    margin: 0 auto;
  }
  .p-3rd-anniv-contents-row-itm{width:100%;}
  .p-3rd-anniv-contents-h{margin:4.266666667vw auto;border-radius:1.536vw;border:0.768vw solid #EF8EA0;padding:5.866666667vw 4.266666667vw;height:auto;}
  .p-3rd-anniv-contents-h.r-green{border:0.768vw solid #8FB472;}
  .p-3rd-anniv-contents-h-logo img{width:35.73333333vw!important;}
  .p-3rd-anniv-contents-list-itm-txt{font-size:3.733333333vw;}
  .p-3rd-anniv-contents-list-itm-block{display:flex;justify-content:space-between;gap:4.8vw;}
  .p-3rd-anniv-contents-list-itm-pic{flex-shrink:0;width:20%;}
}

/* color variations */
.p-3rd-anniv-contents-list-itm.r-thanks { background: rgba(229, 122, 0, 0.10); }
.p-3rd-anniv-contents-list-itm.r-recipeloto { background: rgba(229, 124, 124, 0.10); }
.p-3rd-anniv-contents-list-itm.r-timeattack { background: rgba(46, 154, 199, 0.10); }
.p-3rd-anniv-contents-list-itm.r-pairmatching { background: rgba(111, 162, 53, 0.10); }
.p-3rd-anniv-contents-list-itm.r-mystock { background: rgba(156, 137, 195, 0.10); }
.p-3rd-anniv-contents-list-itm.r-stamp { background: rgba(216, 76, 76, 0.10); }

.p-3rd-anniv-contents-list-itm.r-thanks .p-3rd-anniv-contents-list-itm-hdg { color: #E57A00; }
.p-3rd-anniv-contents-list-itm.r-recipeloto .p-3rd-anniv-contents-list-itm-hdg { color: #E57C7C; }
.p-3rd-anniv-contents-list-itm.r-timeattack .p-3rd-anniv-contents-list-itm-hdg { color: #2E9AC7; }
.p-3rd-anniv-contents-list-itm.r-pairmatching .p-3rd-anniv-contents-list-itm-hdg { color: #6FA235; }
.p-3rd-anniv-contents-list-itm.r-mystock .p-3rd-anniv-contents-list-itm-hdg { color: #9C89C3; }
.p-3rd-anniv-contents-list-itm.r-stamp .p-3rd-anniv-contents-list-itm-hdg { color: #D84C4C; }

.p-3rd-anniv-contents-list-itm.r-thanks .p-3rd-anniv-contents-list-itm-hdg::after { border-color: #E9BE8E; }
.p-3rd-anniv-contents-list-itm.r-recipeloto .p-3rd-anniv-contents-list-itm-hdg::after { border-color: #E9B4B4; }
.p-3rd-anniv-contents-list-itm.r-timeattack .p-3rd-anniv-contents-list-itm-hdg::after { border-color: #8DC3D9; }
.p-3rd-anniv-contents-list-itm.r-pairmatching .p-3rd-anniv-contents-list-itm-hdg::after { border-color: #ADC791; }
.p-3rd-anniv-contents-list-itm.r-mystock .p-3rd-anniv-contents-list-itm-hdg::after { border-color: #C4BBD7; }
.p-3rd-anniv-contents-list-itm.r-stamp .p-3rd-anniv-contents-list-itm-hdg::after { border-color: #E29C9C; }

/* ---- Misc ---- */
.r-noarrow .c-btn-list__itm__link::before { content: none; }
.c-btn-list__itm__link.disabled {
  background: #aaa;
  color: #fff;
  box-shadow: 0 0 0 1px #aaa;
  pointer-events: none;
}

/* ========== Navigation ========== */
@media screen and (min-width: 769px), print {
  .p-3rd-anniv__nav { display: none; }

  /* button hover on desktop */
  .p-3rd-anniv__btn--sm {
    transition: background-color 0.65s ease, color 0.65s ease;
  }
  .p-3rd-anniv__btn--sm::after {
    transition: border-color 0.65s ease;
  }
  .p-3rd-anniv__btn--sm:hover {
    background-color: #E4002B;
    color: #fff;
  }
}

/* ========== Social Buttons ========== */
@media screen and (min-width: 751px) {
  .c-social-btn {
    min-width: 1024px;
    width: 100%;
    padding: 32px 0;
    background: #fff;
  }
  .c-social-btn__list {
    width: 1024px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    text-align: left;
  }
  .c-social-btn__itm {
    display: inline-block;
    width: 45px;
    margin: 0 5px;
  }
  .c-social-btn__itm img {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  .c-social-btn {
    width: 100%;
    padding: 8vw 0;
    background: #fff;
  }
  .c-social-btn__list {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
  }
  .c-social-btn__itm {
    display: inline-block;
    width: 12vw;
    margin: 0 1.2vw;
  }
  .c-social-btn__itm img {
    width: 100%;
  }
}

/* ========== ≤ 768px (SP) ========== */
@media screen and (max-width: 768px) {
  /* Visual / Login */
  .p-3rd-anniv__main-visual { width: 100vw; position: relative; }
  .p-3rd-anniv__login { width: 86vw; margin: 17.06667vw auto 6.4vw; }
  .p-3rd-anniv__link { font-size: 3.73333vw; }

  /* SP Nav */
  #menu-sp {
    position: absolute;
    width: 22.93333vw;
    height: 22.93333vw;
    background: url("/kewpieid/3rd/assets/img/icon-sp-menu.png") no-repeat center center/contain;
    left: 3.2vw;
    bottom: -13.33333vw;
    z-index: 1000;
  }
  #menu-sp.active { display: none; }

  .p-2nd-anniv__nav {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100vh;
    background-color: rgb(0 0 0 / 0.4);
    transition: opacity 0.3s ease;
    opacity: 0; visibility: hidden;
    z-index: 9999;
  }
  .p-2nd-anniv__nav.active { opacity: 1; visibility: visible; }

  .p-2nd-anniv__nav__contain {
    width: 94vw;
    height: auto;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 3px 6px rgb(0 0 0 / 0.16);
    position: fixed;
    left: 50%; top: 60%;
    transform: translate(-50%, -50%);
  }
  .p-2nd-anniv__nav__layout { position: relative; }
  .p-2nd-anniv__nav__list { padding: 2.66667vw 6.4vw; }
  .p-2nd-anniv__nav__itm__link {
    height: 16vw;
    font-size: 4.53333vw;
    font-weight: 700;
    border-bottom: 1px solid #C6C6C6;
    display: flex;
    align-items: center;
    position: relative;
  }
  .p-2nd-anniv__nav__itm:last-child .p-2nd-anniv__nav__itm__link { border-bottom: none; }
  .p-2nd-anniv__nav__itm__link.cat01 { color: #E4002B; }
  .p-2nd-anniv__nav__itm__link.cat02 { color: #54C3F1; }
  .p-2nd-anniv__nav__itm__link.cat03 { color: #98B13B; }
  .p-2nd-anniv__nav__itm__link::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%; right: 0;
    width: 1.06667vw; height: 1.06667vw;
    z-index: 1;
    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    transform: translate(0, -50%) rotate(45deg);
  }
  .p-2nd-anniv__nav.active #menu-sp-close {
    position: absolute;
    width: 22.93333vw;
    height: 22.93333vw;
    background: url("/kewpieid/2nd/assets/img/icon-sp-menu_close.png") no-repeat center center/contain;
    top: -16vw; left: 0;
  }

  /* Recipe Loto BG (SP) */
  #recipe-loto .p-2nd-anniv__contain--blue {
    background: url("/kewpieid/2nd/assets/img/bg-recipe-loto.jpg") no-repeat center center / cover;
  }

  /* Stamp board (SP sizes) */
  .p-3rd-anniv-contents-hdg {
    font-size: 5.866666667vw;
    width: 87.2vw;
    margin: 6.4vw auto 0;
  }
  .p-3rd-anniv-contents {
    width: 96vw;
    margin: 2.266666667vw auto;
    border-radius: 1.066666667vw;
    border: 1px solid #EF8EA0;
    padding: 6.4vw 0;
  }
  .stamp-list {
    flex-wrap: wrap;
    padding-bottom: 11vw;
    border-bottom: dashed 0.8vw #EF8EA0;
    gap: 10.933333333vw 0;
    margin-left: 6.4vw;
    margin-right: 6.4vw;
  }
  .stamp-list.is-logout {
    gap: 6.933333333vw 0;
    padding-bottom: 8vw;
  }
  .stamp-list-itm-obj {
    border: dashed #E9BE8E 0.533333333vw;
    font-size: 3.365866667vw;
    width: 23.16506667vw;
    height: 23.16506667vw;
  }
  .r-timeattack .stamp-list-itm-obj,
  .r-pairmatching .stamp-list-itm-obj {
    font-size: 2.969866667vw;
  }
  .stamp-list-itm-img {
    bottom: -2.666666667vw;
    height: 9.6vw;
  }
  .stamp-list-itm-link {
    font-size: 2.772vw;
    margin-top: 3.2vw;
    padding-top: 22vw;
  }
  .stamp-list-itm-link::after {
    margin-left: 1.6vw;
    width: 1.188vw;
    height: 2.078933333vw;
  }
  .stamp-list-itm.is-earned::after {
    top: -1.808vw;
    left: -2.610666667vw;
    width: 9.281066667vw;
    height: 9.281066667vw;
  }
  .stamp-list-itm.is-earned.r-pairmatching .stamp-list-itm-obj {
    padding-bottom: 1.9vw;
  }
  .stamp-list-itm.r-pairmatching .stamp-list-itm-obj {
    padding-bottom: 3vw;
  }

  /* Complete info (SP) */
  .complete-cp-info {
    margin: 4.245066667vw 4vw 0;
  }
  .complete-cp-info-hdg {
    font-size: 4.245066667vw;
    position: absolute;
    left: 0; right: 0;
    top: -7vw;
  }
  .complete-cp-info-hdg.r-small--sp { font-size: 3.545066667vw; }
  .complete-cp-info-hdg.r-small--sp::before { margin-right: 0; width: 3.5vw;transform: rotate(45deg) translateX(-2vw); }
  .complete-cp-info-hdg.r-small--sp::after  { margin-left: 0;  width: 3.5vw;transform: rotate(-45deg) translateX(2vw); }
  .complete-cp-info-hdg::before,
  .complete-cp-info-hdg::after {
    width: 4.933333333vw;
    height: 0.533333333vw;
  }
  .complete-cp-info-hdg {
    font-size: 4.8vw !important;
  }
  .complete-cp-info-hdg.r-small--sp {
    font-size: 3.545066667vw !important;
  }
  .complete-cp-info-hdg::before { transform: rotate(45deg); }
  .complete-cp-info-hdg::after  { transform: rotate(-45deg); }
  .complete-cp-info-txt {
    font-size: 4.266666667vw;
    text-align: left;
    line-height: 1.5;
  }
  .complete-cp-info-inner {
    gap: 1rem !important;
    position: relative;
    margin-top: 13.33333333vw;
  }
  .complete-cp-info-itm-pic {
    width: 25.133333vw;
    flex-shrink: 0;
  }

  /* Button & wallpaper (SP) */
  .p-3rd-anniv__btn--sm {
    width: 58.66667vw;
    height: 8.53333vw;
    font-size: 3.2vw;
  }
  .p-3rd-anniv__wallpaper__list {
    margin-top: 4vw;
    justify-content: space-between;
    gap: normal;
  }
  .p-3rd-anniv__wallpaper__list__itm { width: 37.33333vw; }
  .p-3rd-anniv__wallpaper__list__ttl { font-size: 4.8vw; }
  .p-3rd-anniv__wallpaper__list__img { width: 32vw; margin: 0 auto; }
  .p-3rd-anniv__wallpaper__list .p-3rd-anniv__btn--sm { width: 100%; }
  .complete-cp-info-note {
    font-size: 3.2vw !important;
  }
}

/* ========== ≤ 768px (SP) – Complete Info (non-overridden base) ========== */
.complete-cp-info { margin-top: 24px; display: none; }
.complete-cp-info-hdg {
  text-align: center;
  color: #E4002B;
  font-size: 24px;
  font-weight: bold;
  margin-top: 0;
}
.complete-cp-info-hdg::before,
.complete-cp-info-hdg::after {
  content: "";
  width: 28px;
  height: 2px;
  display: inline-block;
  background: #E4002B;
  border-radius: 1px;
}
.complete-cp-info-hdg::before {
  transform: rotate(45deg) translateY(-8px);
  margin-right: 0.5em;
}
.complete-cp-info-hdg::after {
  transform: rotate(-45deg) translateY(-8px);
  margin-left: 0.5em;
}
.complete-cp-info-txt {
  font-size: 17px;
  color: #000;
  font-weight: bold;
  text-align: center;
}
.complete-cp-info-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
}
.complete-cp-info-itm-pic img {
  width: 100%;
  height: auto;
}
.complete-cp-info-note-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.8rem;
}
.complete-cp-info-note {
  font-size: 1rem;
  line-height: 1.7;
}