@charset "UTF-8";
h1,
h2,
h3,
h4 {
  margin: 0;
}

.center {
  text-align: center;
}

@media screen and (min-width: 769px ) {
  .pc_center {
    text-align: center;
  }
}

@media screen and (max-width: 768px ) {
  .sp_center {
    text-align: center;
  }
}

.txt-small {
  font-size: var(--size_txt_s);
  margin: 0 auto;
}
.txt-caption {
  font-size: var(--size_caption);
}
.txt__color--orange {
  color: #E7481C;
  font-weight: bold;
}
.txt__color--yellow {
  color: #f5ff04;
}
.txt__color--red {
  color: #cf3632;
}
.txt__bold {
  font-weight: bold;
}

.bg__white {
  background-color: #fff;
  z-index: 2;
}
.bg__gray {
  background-color: #f6f7f8;
  z-index: 2;
}
.bg__mid-gray {
  background-color: #EAECEF;
  z-index: 2;
}

button:hover {
  filter: brightness(1.1);
}

iframe {
  width: 100%;
  aspect-ratio: 16/9;
}

.share-btn {
  display: flex;
  align-items: center;
  margin: 0 1rem;
  border-radius: var(--radius_max);
  padding: 0.75rem 1rem;
  text-decoration: none;
  box-shadow: var(--shadow_light);
  width: 13rem;
}
.share-btn:hover {
  filter: brightness(1.1);
  box-shadow: var(--shadow_dark);
}
.share-btn img {
  width: 2.5rem;
  margin-right: 1rem;
}
.share-btn__x {
  background-color: #000;
  color: #fff;
}
.share-btn__fb {
  background-color: #fff;
  color: #0966ff;
}

* {
  transition: all 0.3s;
}
* a:hover {
  filter: brightness(1.1);
}
* p {
  margin: 0;
}
* .center {
  text-align: center;
}

body {
  overflow-x: hidden;
}
body main {
  overflow: hidden;
  position: relative;
  padding: 3rem 0 0rem;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  background-size: contain;
  background-color: #D8F6E3;
  background-image: repeating-linear-gradient(0deg, #D4F4E1 0px 6px, transparent 6px 16px), repeating-linear-gradient(90deg, #D4F4E1 0px 6px, transparent 6px 16px);
  background-attachment: fixed;
}
body main section {
  margin: auto;
  max-width: calc(var(--width_max_pc_m) - 2rem);
}
body main .leap_year__kv__item a {
  text-decoration: none;
}
body main .leap_year__kv__item a img {
  margin: 0 0.5rem;
  filter: drop-shadow(0px 2px 5px rgba(0, 0, 0, 0.2));
}
body main .leap_year__kv__item a img:hover {
  filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, 0.3));
}
@media screen and (max-width: 768px ) {
  body main .leap_year__kv__item {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  body main .leap_year__kv__item a {
    width: 100%;
  }
  body main .leap_year__kv__item a img {
    width: 50%;
  }
  body main .leap_year__kv__item a:not(.item_vs) {
    width: 33%;
  }
  body main .leap_year__kv__item a:not(.item_vs) img {
    width: 90%;
  }
}
body main .leap_year__kv__sns {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px ) {
  body main .leap_year__kv__sns {
    flex-direction: column;
  }
}
body main .leap_year__kv__sns .share-btn {
  padding: 1.5rem 1rem;
  width: 30rem;
  justify-content: center;
  font-size: var(--size_txt_xl);
}
@media screen and (max-width: 768px ) {
  body main .leap_year__kv__sns .share-btn {
    margin: 0 auto 1rem;
  }
}
body main .leap_year__kv__sns.sns_compact .share-btn {
  width: 14rem;
  padding: 0.75rem 0.5rem 0.75rem 0;
  font-size: var(--size_txt_m);
}
body main .leap_year__kv .countdown {
  max-width: calc(var(--width_max_pc_m) - 2rem);
  margin: auto;
}
body main .leap_year__kv .countdown__box {
  padding: 1rem !important;
  display: flex;
  justify-content: center;
  font-size: var(--size_txt_l);
  margin-bottom: 0.5rem;
}
body main .leap_year__kv .countdown__box::before {
  content: "スタートまであと";
  margin-right: 0.5rem;
}
body main .leap_year__kv .countdown__box__date {
  color: #e8481c;
  font-weight: bold;
}
body main .leap_year__undercontents {
  background-color: #fff;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  max-width: unset;
  padding: 4rem 0 0;
}
body main .content-box {
  padding: 6rem 0 0rem;
  border-radius: var(--radius_l);
  flex-direction: column;
  margin-bottom: 3rem;
  box-shadow: var(--shadow_mid);
}
@media screen and (max-width: 768px ) {
  body main .content-box {
    width: 95vw;
  }
}
body main .kv_sns_wrap {
  position: relative;
}
@media screen and (max-width: 768px ) {
  body main .kv_sns_wrap .leap_year__kv__sns {
    display: flex;
    flex-direction: row;
  }
}
@media screen and (min-width: 769px ) {
  body main .kv_sns_wrap .leap_year__kv__sns {
    position: absolute;
    top: 5.5rem;
    right: 0;
    color: #fff;
    font-weight: bold;
    padding: 0;
    text-align: center;
    margin: 0 1rem 0 0;
    display: flex;
  }
  body main .kv_sns_wrap .leap_year__kv__sns.sns_compact .share-btn {
    width: 10rem;
    margin: 0.25rem 0.5rem;
    padding: 0.5rem;
    font-size: var(--size_txt_xs);
  }
  body main .kv_sns_wrap .leap_year__kv__sns.sns_compact .share-btn img {
    width: 2.25rem;
    margin-right: 0.5rem;
  }
}
body main .leap_year__headcontents__inner {
  padding: 2rem 0 3rem;
}
body main .leap_year__headcontents__p-index {
  position: relative;
  display: flex;
  justify-content: center;
  padding: 2rem 0;
}
body main .leap_year__headcontents__p-index-limit {
  position: absolute;
  top: 1.5rem;
  width: 20rem;
  background-color: #f4213a;
  color: #fff;
  font-weight: bold;
  padding: 1rem 2.5rem 1.25rem;
  text-align: center;
  margin-bottom: 1rem;
  display: block;
}
body main .leap_year__headcontents__p-index-limit::before {
  position: absolute;
  top: 0rem;
  left: 100%;
  width: 0px;
  height: 0px;
  border: none;
  border-bottom: 2.5rem solid #840010;
  border-right: 2.5rem solid transparent;
  content: "";
}
body main .leap_year__headcontents__p-index-limittxt {
  font-size: var(--size_txt_xl);
}
body main .leap_year__headcontents__p-index-limittxt::before {
  content: "本日";
  color: #f4213a;
  background-color: #fff;
  border-radius: var(--radius_l);
  padding: 0.5rem 1rem;
  margin: 0 1rem 0 0;
}
body main .leap_year__headcontents__p-box {
  box-shadow: var(--shadow_mid);
}
body main .leap_year__headcontents__p-box__p-name img {
  max-width: 100%;
}
body main .leap_year__headcontents__p-box__cart {
  position: relative;
  width: 100%;
}
body main .leap_year__headcontents__p-box__cart #countdown {
  bottom: 5rem;
  width: 20rem;
  display: block;
  right: 30.25rem;
  margin: -2.5rem auto 3rem;
  text-align: center;
  color: #e8481c;
  font-weight: bold;
  font-size: var(--size_txt_l);
  text-decoration: underline;
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__p-box__cart #countdown {
    right: 0;
    left: 0;
    bottom: 2rem;
  }
}
body main .leap_year__headcontents__p-box__cart #cart_xs .free-arrow {
  margin-top: 6rem;
}
body main .leap_year__headcontents__p-box__cart #cart_xs .free-arrow::before {
  content: "＼ 先着10,000名限定 ／";
  border: unset;
  width: 100%;
  top: -3rem;
  font-weight: bold;
}
body main .leap_year__headcontents__p-box__cart #cart_xs .free-arrow::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #bb0000 transparent transparent transparent;
  border-width: 12.99px 7.5px 0px 7.5px;
  position: absolute;
  top: -5rem;
  right: 0;
  left: 0;
  margin: 0 auto;
}
body main .leap_year__headcontents__p-box__p-feature {
  padding: 3rem 0 1rem;
  border-radius: 0 0 var(--radius_l) var(--radius_l);
  max-width: unset !important;
  margin: 0 !important;
}
body main .leap_year__headcontents__p-box__p-feature ul {
  padding: 1.5rem 0rem 1.5rem 3rem;
  margin: 1rem 0;
}
body main .leap_year__headcontents__p-box [id*=cart_] {
  width: 100%;
}
body main .leap_year__headcontents__coupon {
  box-shadow: var(--shadow_mid);
}
body main .leap_year__headcontents__coupon h2 {
  font-size: 3rem;
}
body main .leap_year__headcontents__coupon__step-box {
  position: relative;
}
body main .leap_year__headcontents__coupon__step-box h3 {
  display: flex;
  flex-direction: column;
  margin: 1rem 0;
}
body main .leap_year__headcontents__coupon__step-box:nth-of-type(1)::after, body main .leap_year__headcontents__coupon__step-box:nth-of-type(2)::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 14px solid #e8481c;
  border-right: 0;
  position: absolute;
  right: -0.5rem;
  top: 8rem;
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__coupon__step-box:nth-of-type(1)::after, body main .leap_year__headcontents__coupon__step-box:nth-of-type(2)::after {
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 14px solid #e8481c;
    border-bottom: 0;
    bottom: 1rem;
    left: 0;
    right: 0;
    top: unset;
    margin: auto;
  }
}
body main .leap_year__headcontents__point {
  box-shadow: var(--shadow_mid);
  padding: 3rem 0 0;
  border-radius: var(--radius_l);
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__point {
    width: 95vw;
  }
}
body main .leap_year__headcontents__point h2 {
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__point h2 {
    line-height: 2.5rem;
    margin-bottom: 2rem;
  }
}
body main .leap_year__headcontents__point--img {
  display: flex;
  justify-content: center;
}
body main .leap_year__headcontents__point--img_left {
  display: block;
  height: 10rem;
  width: 10rem;
  background-size: contain;
  margin-right: 1rem;
  box-shadow: var(--shadow_light);
}
body main .leap_year__headcontents__point--img_right {
  height: 10rem;
}
body main .leap_year__headcontents__next__product {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__next__product {
    justify-content: center;
  }
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__next__product {
    flex-wrap: wrap;
  }
  body main .leap_year__headcontents__next__product a {
    width: 33%;
  }
}
@media screen and (min-width: 769px ) {
  body main .leap_year__headcontents__next__product .img_fukidashi {
    width: 28rem;
  }
}
body main .leap_year__headcontents__next__product .present_end {
  position: relative;
  order: 2 !important;
  pointer-events: none;
}
body main .leap_year__headcontents__next__product .present_end img {
  filter: brightness(60%) !important;
  display: block !important;
  margin: auto !important;
}
body main .leap_year__headcontents__next__product .present_end.p-link {
  width: 20%;
}
body main .leap_year__headcontents__next__product .present_end::after {
  content: "終了しました";
  position: absolute;
  top: 9rem;
  left: 0rem;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 3;
  background-color: #f4213a;
  padding: 0.5rem 0;
  color: #fff;
  width: 11rem;
  text-align: center;
  transform: rotate(-15deg);
  font-size: var(--size_txt_xs);
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__next__product .present_end::after {
    width: 9rem;
    padding: 0.25rem 0;
    top: 6rem;
    left: -0.5rem;
  }
}
body main .leap_year__headcontents__next__product .p-link {
  display: block;
  width: 33%;
  margin: 0 0.5rem;
  text-align: center;
}
body main .leap_year__headcontents__next__product .p-link img {
  filter: drop-shadow(0px 2px 5px rgba(0, 0, 0, 0.2));
  width: 95%;
}
@media screen and (max-width: 768px ) {
  body main .leap_year__headcontents__cart__img {
    padding-bottom: 0;
  }
}
body main .leap_year__headcontents__cart__price > * {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 1.5rem;
}
body main .leap_year__headcontents__cart__price .wording_media {
  font-weight: bold;
}
body main .leap_year__headcontents__cart__price .free-arrow {
  position: relative;
  margin-top: 3rem;
}
body main .leap_year__headcontents__cart__price .free-arrow::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #bb0000 transparent transparent transparent;
  border-width: 12.99px 7.5px 0px 7.5px;
  position: absolute;
  top: -2rem;
  right: 0;
  left: 0;
  margin: 0 auto;
}
body main .leap_year__headcontents__cart__price .free-arrow img {
  width: 100%;
}
body main [class*=day_] {
  padding: 3rem 0 1rem !important;
}

.sn_btn--success {
  display: none;
}

.is_not_login .sn_btn--success {
  display: inline-block;
}

.is_battery--sold_out ~ form .cart_item__button {
  background-color: var(--color_ui_disable);
  color: #585858;
  border: transparent;
  box-shadow: none;
  pointer-events: none;
}
.is_battery--sold_out ~ form .cart_item__button::before {
  background-image: none;
  width: 0;
  height: 0;
}
.is_battery--sold_out ~ form .cart_item__button::after {
  content: "完売しました";
}