:root{
  --corp-color-red:#C32D29;
  --corp-color-gold:#ab8f2e;
}
.lucky25{
  overflow-x: hidden;
}
.lucky25 img{
  display: block;
}
.content-inner{
  width: 100%;
  max-width: 1030px;
  margin: 0 auto;
  padding: 0 15px;
}
.sp_only{
  display: none;
}
.text-link{
  text-decoration: underline;
}
.text-red{
  color: #d4272b;
}

.mv{
  width: 100%;
  background-color: #cf443a;
  border-bottom: 5px solid #a67823;
}
.mv-inner{
  width: 100%;
  max-width: 1000px;
  margin:0 auto;
}
.campagin-about{
  padding: 30px 0 0;
  background-image: url(/img/usr/event/lucky25/bg_campagin_pc.png);
  background-repeat: repeat;
  background-position: top center;
  background-size: auto;
}
.campagin-lead{
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}
.campagin-lead__content{
  padding: 20px;
  background-color: #fefae5;
}
.campaign-lead__card{
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 2px solid #a67823;
}
.campaign-card__company{
  color: var(--corp-color-gold);
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
.campagin-card__title{
  margin-top: 1em;
}
.campagin-card__summary{
  margin-top: 1em;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  line-height: 1.68;
}
.campagin-benefit{
  margin-top: 30px;
  padding: 30px 15px 0;
  background-color: #e7d796;
}
.campagin-benefit__title{
  width: 800px;
  height: 112px;
  margin: 0 auto;
  padding: 0;
  border: none;
}
.campagin-benefit__sub{
  display: flex;
  justify-content: center;
  gap: 4px;
}
.campagin-benefit__sub span{
  padding: 0 0.25em;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  background-color: var(--corp-color-red);
}
.campagin-benefit__main{
  width: 400px;
  margin: 1em auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.campagin-benefit__main-catch{
  position: absolute;
  left: -112px;
}
.campagin-benefit__main-text{
  width: 100%;
  padding: 0.25em;
  font-size: 24px;
  font-weight: 900;
  text-align: center;
  background-color: #fff;
}
.campagin-benefit__main-text span{
  font-size: 29px;
}
.campagin-period{
  width: 100vw;
  margin: 70px calc(50% - 50vw) 0;
  padding: 50px 15px 40px;
  background-color: #fefae5;
}
.campagin-period__title{
  font-size: 22px;
  font-weight: 700;
  text-align: center;
}
.campagine-period__text{
  font-size: 22px;
  font-weight: 700;
  text-align: center;
}
.campagine-period__text span{
  border-bottom: 2px solid var(--corp-color-red);
}
.fukubukuro-set{
  padding: 30px 0;
  background-color:#cf443a;
  position: relative;

}
.fukubukuro-set::after{
  content: "";
  width: 1591px;
  height: 1633px;
  display: block;
  background-image: url(/img/usr/event/lucky25/bg_select_pc.png);
  background-position: top center;
  background-repeat: repeat-y;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%)
}
.fukubukuro-set__wrap{
  padding: 30px 40px 40px;
  background-color: #e7d796;
  position: relative;
  z-index: 1;

}
.fukubukuro-set__title{
  margin: 0;
  padding: 0;
  text-align: center;
  border: none;
}
.fukubukuro-set__title span{
  padding: 0 40px;
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
  border-bottom: 2px solid #000;
}
.tab-content{
  margin-top: 20px;
  position: relative;
  z-index: 1;
}
.buttons{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 122px;
}
.tab-content .button{
  padding: 0.5em 1em;
  font-size: 16px;
  font-weight: 700;
  background-color: #fff;
  border-radius: 25px;
  border: 2px solid var(--corp-color-red);
  cursor: pointer;
}
.tab-content .button[aria-selected="true"]{
  color: #fff;
  background-color: var(--corp-color-red);
}
.tab-panel__content{
  margin-top: 20px;
  padding: 20px 55px 25px;
  background-color: #fdfaeb;
}
.fukubukuro-set__product{
  display: flex;
  gap: 0 40px;
}
.fukubukuro-set__product.center{
  justify-content: center;
}
.fukubukuro-set__item{
  width: calc((100% - 80px) / 3);
}
.fukubukuro-set__card{
  height: 100%;
  display: flex;
  flex-direction: column;
}
.set-card__image{
  border: 1px solid #ccc;
}
.set-card__image img{
  width: 100%;
  max-width: unset;
}
.set-card__detail{
  margin-top: 1em;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: space-between;
}
.set-card__product-name{
  min-height: calc(1.6em * 4);
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  background-color: unset;
}
.set-card__detail_bottom{
  margin-top: 1em;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.set-card__price{
  font-size: 25px;
  font-weight: 700;
}
.set-card__price small{
  font-size: 14px;
}
.set-card__btn-wrap{
  margin-top: auto;
}
.set-card_add-cart{
  width: 200px;
  height: 40px;
  margin: 1em auto 0;
  display: block;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  line-height: 37px;
  background-color: var(--corp-color-red);
  border-radius: 20px;
  border: 2px solid var(--corp-color-red);
  position: relative;
}
.set-card_add-cart::after{
  content: "＞";
  font-size: 14px;
  font-weight: 700;
  position: absolute;
  right: 1em;
}
.set-card__more-btn{
  width: 200px;
  height: 40px;
  margin: 1em auto 0;
  display: block;
  color: var(--corp-color-gold);
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  line-height: 37px;
  background-color: #fff;
  border-radius: 20px;
  border: 2px solid var(--corp-color-gold);
  position: relative;
}
.set-card__more-btn::after{
  content: "＞";
  font-size: 14px;
  font-weight: 700;
  position: absolute;
  right: 1em;
}
.fukubukuro-set__wrap + .fukubukuro-set__wrap{
  margin-top: 2em;
}
.fukubukuro-type{
  padding: 30px 0 80px;
  background-color: #e7d796;
  position: relative;
  overflow-y: hidden;
}
.fukubukuro-type::after{
  content: "";
  width: 100%;
  height: 3000px;
  display: block;
  background-image: url(/img/usr/event/lucky25/bg_itemlists_pc.png);
  background-size: 100% 100%;
  background-position: top center;
  position: absolute;
  top: 0;
  mix-blend-mode: hard-light;
}
.fukubukuro-type__title{
  margin: 0;
  padding: 0;
  border: none;
  text-align: center;
}
.fukubukuro-type__title img{
  display: inline;
}
.fukubukuro-type__wrap{
  margin-top: 80px;
  padding: 60px 50px 40px;
  background-color: #fff;
  position: relative;
  z-index: 1;
}
.fukubukuro-type__wrap + .fukubukuro-type__wrap{
  margin-top: 140px;
}
.fukubukuro-type__content-title{
  margin: 0;
  padding: 0 0 0 2em;
  background-color: unset;
  position: absolute;
  top: -50px;
}
.fukubukuro-type__content-title span{
  padding: 30px 50px;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  position: relative;
}
.fukubukuro-type__content-title span:before{
  content: "";
  width: 77px;
  height: 55px;
  display: block;
  background-size: 100% 100%;
  position: absolute;
  top: -18px;
  left: -38px;
  z-index: 1;
}
.fukubukuro-type__content-title.standard span{
  background-color: #705282;
}
.fukubukuro-type__content-title.standard span:before{
  background-image: url(/img/usr/event/lucky25/icon_standard-no.png);
}
.fukubukuro-type__content-title.luxe span{
  background-color: #ab8f2e;
}
.fukubukuro-type__content-title.luxe span:before{
  background-image: url(/img/usr/event/lucky25/icon_luxe-no.png);
}
.fukubukuro-type__content-title span:after{
  content: "";
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  background-color: transparent;
  border: 2px solid #fff;
  display: block;
  position: absolute;
  top: 2px;
  left: 2px;
}
.fukuvukuro-type__lead{
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}
.fukubukuro-type__content{
  margin-top: 30px;
}
.fukubukuro-type__lists{
  display: flex;
  gap: 0 30px;
}
.fukubukuro-type__item{
  width: calc((100% - 70px) / 2);
  height: auto;
  display: flex;
  flex-direction: column;
}
.fukubukuro-type__rank{
  text-align: center;
}
.fukubukuro-type__rank img{
  width: auto;
  height: 97px;
  display: inline;
}
.fukubukuro-type__card {
  margin-top: 0.5em;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.type-card__image{
  border:1px solid #ccc;
}
.type-card__detail{
  margin-top: 2em;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.type-card__detai-top{
  min-height: 190px;
  display: flex;
  flex-direction: column;
}
.type-card__name{
  min-height: calc(1.81em * 4);
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.81;
  background-color: unset;
}
.type-card__price{
  color: #a67823;
  font-size: 35px;
  font-weight: 700;
}
.type-card__note{
  margin-top: -0.5em;
  font-size: 14px;
  text-align: right;
}
.type-card__price small{
  font-size: 16px;
}
.type-card__detail-bottom{
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.type-card__detail-title{
  padding: 0.2em;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  background-color: #e7d796;
}
.type-card__product{
  margin-top: 1em;
}
.type-card__product-name{
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-weight: 700;
  border: none;
}
.type-card__product-item{
  padding-left: 1.25em;
  font-size: 14px;
  font-weight: 700;
  position: relative;
}
.type-card__product-item:before{
  content: "●";
  font-size: 14px;
  font-weight: 700;
  position: absolute;
  left: 0;
}
.accordion{
  margin-top: 30px;
}
.type-card__button .set-card_add-cart,
.type-card__button .set-card__more-btn{
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.campagin-summary__title{
  margin: 0;
  padding: 0.25em 0;
  border: none;
  text-align: center;
  background-color: var(--corp-color-red);
}
.campagin-summary__title span{
  padding: 0 1em;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  position: relative;
}
.campagin-summary__title span:before,
.campagin-summary__title span:after{
  content: "";
  width: 2px;
  height: 34px;
  display: block;
  background-color: #fff;
  position: absolute;
  top: 0;
}
.campagin-summary__title span:before{
  left: 0;
  transform: rotate(-33deg);
}
.campagin-summary__title span:after{
  right: 0;
  transform: rotate(33deg);
}
.summary-area{
  margin-top: 25px;
}
.summary-list {
  display: flex;
  flex-wrap: wrap;
  width: 1030px;
  margin: auto;
  border-bottom: 1px solid #ddd;
}
.summary-list:first-of-type {
  border-top: 1px solid #ddd;
}
.summary-list dt {
  width: 20%;
  padding: 18px 20px;
  background: #f7f5f6;
  text-align: center;
  font-size: 15px;
  color: #222;
}
.summary-list dd {
  width: 80%;
  padding: 18px 20px;
  font-size: 15px;
  line-height: 2;
  color: #222;
}
.summary-list-bullet li {
  list-style: disc;
  margin: 0 0 10px 18px;
}
.summary-list-bullet li::marker {
  font-size: 10px;
}
.summary-list-bullet li:last-child {
  margin-bottom: 0;
}
#all-product{
  margin-top: 100px;
}
.anchor-btn-wrap{
  margin-top: 30px;
  display: flex;
  justify-content: center;
}
.anchor-btn{
  width: 200px;
  height: 50px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 30px;
  background-color: var(--corp-color-red);
  border: 2px solid var(--corp-color-red);
  position: relative;
  transition: 0.3s background-color ease;
}
.anchor-btn:after{
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  display: block;
  transform: rotate(135deg);
  position: absolute;
  top:30%;
  right: 1em;
}
.anchor-btn:hover{
  background-color: #fff;
}
@media screen and (max-width:768px){
  .sp_only{
    display: block;
  }
  .content-inner{
    padding: 0 30px;
  }
  .campagin-about{
    padding: 0 0 30px;
    background: none;
    background-color: #e7d796;
  }
  .campagin-lead{
    padding: 30px;
    background-image: url(/img/usr/event/lucky25/bg_campagin_pc.png);
    background-repeat: repeat;
    background-position: top center;
    background-size: auto;
  }
  .campagin-lead__content{
    padding: 8px;
  }
  .campagin-benefit__detail{
    margin-top: 2em;
  }
  .campagin-benefit__title{
    width: 100%;
    height: auto;
  }
  .campagin-benefit{
    margin-top: 0;
  }
  .campagin-benefit__main{
    width: 100%;
    margin-top: -30px;
    margin-left: 0;
    margin-right: 0;
    justify-content: flex-end;
  }
  .campagin-benefit__sub{
    justify-content: center;
    transform: translateX(20%);
  }
  .campagin-benefit__main-catch{
    width: 152px;
    left: 0;
    flex-shrink: 0;
    position: relative;
  }
  .campagin-benefit__main-catch img{
    width: 100%;
    height: auto;
  }
  .campagin-benefit__main-text{
    padding: 0 0.5em;
    font-size: 22px;
  }
  .campagin-benefit__main-text span{
    font-size: 28px;
  }
  .campagin-period{
    padding: 25px 10px;
  }
  .campagine-period__text{
    letter-spacing: -0.05em;
    line-height: 1.54;
  }
  .fukubukuro-set::after{
    width: 100%;
    height: 1517px;
    background-image: url(/img/usr/event/lucky25/bg_select_sp.png);
    background-size: 100%;
  }
  .fukubukuro-set__wrap{
    padding: 30px 15px 40px;
    z-index: 1;
  }
  .buttons{
    gap: 4px;
  }
  .tab-content .button{
    padding: 0.25em 0.2em;
    font-size: 14px;
  }
  .tab-panel__content{
    padding: 20px 10px 25px;
  }
  .fukubukuro-set__product{
    flex-wrap: wrap;
    gap: 10px 4px;
  }
  .fukubukuro-set__item{
    width: calc((100% - 4px) / 2);
  }
  .set-card__price{
    font-size: 14px;
  }
  .set-card__price small{
    font-size: 10px;
  }
  .set-card_add-cart{
    width: 100%;
    font-size: 13px;
  }
  .set-card__more-btn{
    width: 100%;
    margin-top: 1em;
    font-size: 13px;
  }
  .set-card_add-cart::after,
  .set-card__more-btn::after{
    font-size: 11px;
    right: 0.5em;
  }
  .fukubukuro-type::after{
    width: 100%;
    height: 7072px;
    background-image: url(/img/usr/event/lucky25/bg_itemlists_sp.png);
    background-size: unset;
  }
  .fukubukuro-type__title{
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    position: relative;
    z-index: 1;
  }
  .fukubukuro-type__title img{
    width: 100%;
    height: auto;
  }
  .fukubukuro-type__content-title{
    padding: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  .fukubukuro-type__content-title span{
    width: 180px;
    padding: 30px 20px;
    font-size: 18px;
    text-align: center;
  }
  .fukubukuro-type__wrap{
    padding: 60px 10px 40px;
  }
  .fukubukuro-type__lists{
    flex-direction: column;
    gap: 40px 0;
  }
  .fukubukuro-type__item{
    width: 100%;
  }
  .summary-list .summary-date-caption {
    color: #DF1010;
    line-height: 1.8;
  }
  .summary-area {
    margin: 30px 0 0 0;
    padding: 0;
    background: #fff;
  }
  .summary-area_inner {
    padding: calc(30 * (100vw / 780)) calc(25 * (100vw / 780));
    background: #fff;
  }
  .summary-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: auto;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
  .summary-list:first-of-type {
    border-top: 1px solid #ddd;
  }
  .summary-list dt {
    width: 100%;
    padding: calc(25 * (100vw / 780)) calc(20 * (100vw / 780));
    background: #f7f5f6;
    text-align: center;
    font-size: calc(32 * (100vw / 780));
    color: #222;
  }
  .summary-list dd {
    width: 100%;
    padding: calc(18 * (100vw / 780)) calc(20 * (100vw / 780));
    font-size: calc(32 * (100vw / 780));
    line-height: 2;
    color: #222;
  }
  .summary-list dd span {
    vertical-align: middle;
  }
  .summary-list-bullet li {
    list-style: disc;
    margin: 0 0 calc(10 * (100vw / 780)) calc(30 * (100vw / 780));
  }
  .summary-list-bullet li::marker {
    font-size: calc(10 * (100vw / 780));
  }
  .summary-list-bullet li:last-child {
    margin-bottom: 0;
  }
  .type-card__detail-title{
    padding: 0.6em 0.2em;
    position: relative;
  }
  .type-card__detail-title::before{
    content: "";
    width: 16px;
    height: 2px;
    display: block;
    background-color: #333;
    position: absolute;
    top: 50%;
    right: 0.5em;
  }
  .type-card__detail-title::after{
    content: "";
    width: 16px;
    height: 2px;
    display: block;
    background-color: #333;
    position: absolute;
    top: 50%;
    right: 0.5em;
    transform: rotate(90deg);
    transition: 0.3s transform ease;
  }
  .js-accordion.is-active .type-card__detail-title::after{
    transform: rotate(0);
  }
  .accordion-content{
    height: 0;
    visibility: hidden;
  }
  .accordion-content.is-open{
    height: auto;
    visibility: visible;
  }
  .fukubukuro-type__content-title.luxe span:before{
    width: 62px;
    height: 44px;
  }
  .block-event-page--goods{
    margin-top: 50px;
  }
  .set-card__product-name{
    min-height: calc(1.6em * 6);
  }
  .set-card__note{
    font-size: 11px;
  }
}