@charset "utf-8";

#FontWrap {
  overflow: hidden;
  /* IE Bug Support */
  overflow-x: hidden;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.spOnly {
  display: none;
}

.ecm-wrap[data-layout=soy] {
  min-width: 1024px;
}
/* floaring(right) */
[data-module-name="ecm-floating"] ._shoplist {
  margin-bottom: -16px;
}
[data-module-name="ecm-floating"] ._guide {
  margin-bottom: -12px;
}

/* .awardTtl */
.awardTtl {
  padding-top: 112px;
  text-align: center;
  position: relative;
  z-index: 0;
}

.awardTtl._default {
  margin-bottom: 10px;
}
._02.awardTtl._default {
  margin-bottom: 35px;
}
.awardTtl._default:before {
  content: "";
  display: block;
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_pc/img/cmn/ttl_bg.png) center top no-repeat;
  width: 100vw;
  height: 230px;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}

.awardTtl h2 {
  font-size: 72px;
  font-weight: bold;
  color: #d0a349;
  line-height: 1.1;
  text-shadow: 0 2px 5px rgba(0, 3, 5, 0.5);
}
.awardTtl p {
  font-size: 14px;
  line-height: 1.29;
  color: #ffffff;
  margin: 5px 0 5px 0;
}

.awardTtlBottom {
  margin-top: 12px;
}
.awardTtlBottom img {
  vertical-align: bottom;
}

._01 .awardTtlBottom {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  bottom: -30px;
  margin-top: 0;
}

/* btn */
.btnFooter {
  text-align: center;
  position: relative;
}
.btnFooter a {
  display: block;
  width: 460px;
  height: 70px;
  line-height: 65px;
  font-size: 22px;
  font-weight: bold;
  color: #ffffff !important;
  text-decoration: none !important;
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_pc/img/cmn/footer_btn_bg.png) center top
    no-repeat;
  margin-left: auto;
  margin-right: auto;
}
.btnFooter a:hover {
  opacity: 0.9;
}

/* .cmnFooterCon._genre */
.genreCategoryList > ul {
  margin: -25px 0 0 -25px;
}
.genreCategoryList > ul > li {
  display: inline-block;
  vertical-align: top;
  width: 300px;
  margin: 45px 0 0 25px;
}

.genreCategoryHead {
  height: 170px;
  position: relative;
  text-align: center;
}
.genreCategoryHead:after {
  /*  content: '';
  display: block;
  background: url(https://event.rakuten.co.jp/soyshop/2018/_pc/img/cmn/genre/category_head_line.png?v=201901221046) left top no-repeat;
  width: 75px;
  height: 50px;
  position: absolute;
  top: 5px;
  right: 5px;*/
}
.list01 .genreCategoryHead {
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_cmn/img/genre/category_head_bg_01.jpg) left top
    no-repeat;
}
.list02 .genreCategoryHead {
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_cmn/img/genre/category_head_bg_02.jpg) left top
    no-repeat;
}
.list03 .genreCategoryHead {
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_cmn/img/genre/category_head_bg_03.jpg) left top
    no-repeat;
}
.list04 .genreCategoryHead {
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_cmn/img/genre/category_head_bg_04.jpg) left top
    no-repeat;
}
.list05 .genreCategoryHead {
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_cmn/img/genre/category_head_bg_05.jpg) left top
    no-repeat;
}
.list06 .genreCategoryHead {
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_cmn/img/genre/category_head_bg_06.jpg) left top
    no-repeat;
}
.genreCategoryIcon {
  position: absolute;
  width: 88px;
  height: 88px;
  top: -20px;
  left: 50%;
  margin-left: -44px;
}
.genreCategoryIcon img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

.genreCategoryTtl {
  font-size: 24px;
  color: #ffffff;
  text-shadow: 0px 3px 3px rgba(0, 0, 0, 0.5);
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 20px;
}

.genreList {
  position: relative;
  min-height: 306px;
  background-color: #efefef;
  padding: 11px 6px 13px 6px;
}
.genreCategoryBtn {
  width: 300px;
}
.genreCategoryBtn img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

.genreList p {
  font-size: 16px;
  line-height: 2.125;
  position: relative;
}
.genreList p:hover:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  opacity: 0.8;
  position: absolute;
  left: 0;
  top: 0;
}
.genreList p a {
  display: block;
  color: #666666 !important;
  text-decoration: none !important;
  position: relative;
}
.list01 .genreList p .dot {
  color: #dd6e7a;
}
.list02 .genreList p .dot {
  color: #cc8343;
}
.list03 .genreList p .dot {
  color: #629891;
}
.list04 .genreList p .dot {
  color: #a5406f;
}
.list05 .genreList p .dot {
  color: #655f9e;
}
.list06 .genreList p .dot {
  color: #476770;
}

.list05 .genreList p:last-child {
  letter-spacing: -.05em;
}

/* .awardBtnList */
.awardBtnList > ul {
  margin: -25px 0 0 -25px;
}
.awardBtnList > ul > li {
  display: inline-block;
  vertical-align: top;
  width: 300px;
  height: 201px;
  margin: 25px 0 0 25px;
  text-align: center;
}
.awardBtnList > ul > li a {
  display: block;
  height: 100%;
  position: relative;
  text-decoration: none !important;
  background-image: url(https://r.r10s.jp/evt/event/soyshop/2025/_pc/img/cmn/service/award_btn_bg.png);
  background-position: center top;
  background-repeat: no-repeat;
}

.awardBtnList > ul > li a:hover {
  opacity: 0.9;
}
.awardBtnList .awardBtnTtl {
  padding: 64px 8px 0;
  color: #272727;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.1;
}
.awardBtnList._related .awardBtnTtl {
  padding: 64px 8px 0;
}
.awardBtnTtl .eng {
  font-size: 14px;
  color: #ebc66a;
  display: block;
  margin-bottom: 18px;
  display: none;
}
._related .awardBtnTtl .eng {
  margin-bottom: 12px;
}
.awardBtnDesc {
  margin-top: 14px;
  font-size: 14px;
  padding: 0 15px;
  line-height: 1.29;
  color: #666666;
}
._related .awardBtnDesc {
  margin-top: 8px;
}

/* cmnFooterCon bg */
.cmnFooterCon {
  position: relative;
}
.cmnFooterCon._genre {
  padding: 120px 0 120px;
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_pc/img/cmn/genre/genre_bg.png) center bottom
    no-repeat;
  background-color: #1a1a1a;
}
.cmnFooterCon._service {
  padding: 30px 0 10px;
}
.cmnFooterCon._special {
  padding: 110px 0 120px;
}
.cmnFooterCon._related {
  padding: 0 0 95px;
}
.cmnFooterBg {
  position: relative;
  width: 100%;
  height: 100%;
  background: url(https://r.r10s.jp/evt/event/soyshop/2025/_pc/img/cmn/cmn_footer_bg.jpg) center bottom
    no-repeat;
  background-color: #1a1a1a;
}

/*
 #ashiatoItemsDisplay
--------------------------------- */
#ashiatoItemsDisplay{
  width: 960px;
  overflow:hidden;
}

/*
 animate
--------------------------------- */
.animate {
  position: relative;
  z-index: -1;
  width: 100px;
  height: 400px;
  margin: 0 auto;
  margin-top: -400px;
}
.animate__target{
  width: 1px;
  height: 1px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
}

/* animation */
@keyframes confetti-anim-1 {
	0% {
		top: -10%;
		transform: translateX(0)  rotateX(0) rotateY(0);
	}
  90%{
    opacity: 1;
  }
  95%{
    opacity: 0;
  }
	100% {
    opacity: 0;
		top: 100%;
		transform: translateX(50vw) rotateX(180deg) rotateY(360deg);
	}
}

@keyframes confetti-anim-2 {
	0% {
		top: -10%;
		transform: translateX(0) rotateX(0) rotateY(0);
	}
  90%{
    opacity: 1;
  }
  95%{
    opacity: 0;
  }
	100% {
    opacity: 0;
		top: 100%;
		transform: translateX(-50vw) rotateX(180deg) rotateY(360deg);
	}
}

@keyframes confetti-anim-3 {
	0% {
		top: -10%;
		transform: translateX(0)  rotateX(0) rotateY(0);
	}
  30%{
		transform: translateX(20vw) rotateX(180deg) rotateY(360deg);
  }
  60%{
		transform: translateX(30vw) rotateX(360deg) rotateY(720deg);
  }
  90%{
    opacity: 1;
  }
  95%{
    opacity: 0;
  }
	100% {
    opacity: 0;
		top: 100%;
		transform: translateX(50vw) rotateX(540deg) rotateY(1080deg);
	}
}

@keyframes confetti-anim-4 {
	0% {
		top: -10%;
		transform: translateX(0)  rotateX(0) rotateY(0);
	}
  30%{
		transform: translateX(-20vw) rotateX(180deg) rotateY(360deg);
  }
  60%{
		transform: translateX(-30vw) rotateX(360deg) rotateY(720deg);
  }
  90%{
    opacity: 1;
  }
  95%{
    opacity: 0;
  }
	100% {
    opacity: 0;
		top: 100%;
		transform: translateX(-50vw) rotateX(540deg) rotateY(1080deg);
	}
}

@-webkit-keyframes fadeInUp {
  0% {
      opacity: 0;
      -webkit-transform: translate3d(0,50%,0);
      transform: translate3d(0,50%,0);
  }
  to {
      opacity: 1;
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
  }
  }
  @keyframes fadeInUp {
  0% {
      opacity: 0;
      -webkit-transform: translate3d(0,50%,0);
      transform: translate3d(0,50%,0);
  }
  to {
      opacity: 1;
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
  }
}