@charset "utf-8";

/*
 common
======================================================= */
html{
  overflow: auto;
}
body{
  position: relative;
  overflow-x: hidden;
  min-width: 960px;
}
/*
kanban
======================================================= */
.rewardHeader{
  padding-bottom: 16px;
}
.kanban{
  position: relative;
}
.kanban::before{
  content: "";
  position: absolute;
  width: 1920px;
  height: 348px;
  background: url(https://r.r10s.jp/evt/event/fashion/swimwear/2025/_pc/img/top/bg_kanban.png) no-repeat;
  transform: translateX(-50%);
  margin-left: 50%;
}
.kanban_text{
  position: absolute;
}
.kanban_text{
  width: 470px;
  transform: translateX(-50%);
  margin-left: 50%;
  font-size: 16px;
  padding: 13px 16px;
  bottom: 30px;
  text-align: center;
  line-height: 1.7;
  color: #685f00;
  box-sizing: border-box;
}
.kanbanWrap ._top span{
  height: 350px;
}

/*
kanban
======================================================= */
/*
RJSFadeBanner
----------------------------------------*/
.kanbanWrap{
  width:100%;
  max-width:1920px;
  height:348px;
  overflow:hidden;
  margin:0 auto;
  position:relative;
}
.riHdr001_950._top {
  color: #34221a;
  position: relative;
  text-align: left;
  z-index: 1;
  height:348px;
  width: 950px;
  margin: auto;
}
.riHdr001_950._top .animationWrap {
  position: relative;
  height: 350px;
  width:1920px;
  margin-left:-485px;
  overflow: hidden;
}

.riHdr001_950._top .covered{
  position:absolute;
  top:0;
  width:950px;
  height:348px;
  z-index:2;
  padding: 0 485px;
  margin: 0 -485px;
}

.riHdr001_950._top #RJSFadeBanner>span {
  display: block;
  position: relative;
  height: 350px;
  width:1920px;
  overflow: hidden;
}

.riHdr001_950._top #RJSFadeBanner .sign {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  letter-spacing:-.5em;
}
.riHdr001_950._top #RJSFadeBanner .sign img{
  transform-origin: center center;
  animation-duration: 5s;
  animation-delay: 0s;
  animation-fill-mode: both;
}
.mv-photo-wrap {
  display: flex;
}
.mv-photo-wrap .photo-left,
.mv-photo-wrap .photo-right {
  display: flex;
}
.mv-photo-wrap .photo-left {
  flex-direction: column-reverse;
}
.mv-photo-wrap .photo-right {
  flex-direction: column;
}
.mv-photo-wrap.action .photo-left span {
  animation: photoSlideDown 8s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite;
}
.mv-photo-wrap.action .photo-right span {
  animation: photoSlideUp 8s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite;
}
.btn-jacket {
  right: 7.4%;
  bottom: -22%;
  width: 12.5%;
  z-index: 6;
}
.btn-jacket:hover {
  animation: pulse .5s both;
}
.riHdr001_950._top .inner{
  position:relative;
}
.riHdr001_950._top .mainTtl{
  width:950px;
  height:0;
  padding-top:350px;
  overflow:hidden;
  margin:0 auto;
  background:url(https://r.r10s.jp/evt/event/fashion/swimwear/2025/_pc/img/top/title_0901.png) no-repeat;
}
.riHdr001_950._top .mainLead{}

/* animation */
@keyframes swing {
  4% {
    transform: rotate(15deg)
  }
  8% {
    transform: rotate(-10deg)
  }
  12% {
    transform: rotate(5deg)
  }
  16% {
    transform: rotate(-5deg)
  }
  20% {
    transform: rotate(0deg)
  }
  to {
    transform: rotate(0deg)
  }
}
 @keyframes zoomIn {
from {
transform: scale(1,1);
   }
to {
transform: scale(1.1,1.1);
  }
}
@keyframes photoSlideUp {
	0% {
		transform: translateY(-300%);
	}
	30% {
		transform: translateY(-300%);
	}
	35% {
		transform: translateY(-200%);
	}
	65% {
		transform: translateY(-200%);
  }
  70% {
		transform: translateY(-100%);
  }
  95% {
		transform: translateY(-100%);
	}
  100% {
		transform: translateY(0);
  }
}

@keyframes photoSlideDown {
	0% {
		transform: translateY(0);
	}
	30% {
		transform: translateY(0);
	}
	35% {
		transform: translateY(-100%);
	}
	65% {
		transform: translateY(-100%);
  }
  70% {
		transform: translateY(-200%);
  }
  95% {
		transform: translateY(-200%);
	}
  100% {
		transform: translateY(-300%);
  }
}
/*
index
======================================================= */
.index{
  padding-top: 80px;
  padding-bottom: 100px;
}
.index_h2{
  font-size: 34px;
  text-align: center;
  color: #8b8974;
  font-weight: bold;
  margin-bottom: 21px;
}
/* index01 */
.index01 .index_box{
  gap: 0 24px;
  border-top: solid 2px #999;
  border-bottom: solid 2px #999;
}
.index01 .index_box .index_list{
  border-bottom:solid 1px #ccc;
}
.index01 .index_list .index_list__link{
  position: relative;
  display: flex;
  align-items: center;
  height: 65px;
  color: #333;
}
._top .index01 ul li:nth-child(2n+1):nth-last-child(-n+2),
._top .index01 ul li:nth-child(2n+1):nth-last-child(-n+2) ~ li{
  border-bottom: none;
}
._udr .index01 ul li:nth-child(3n+1):nth-last-child(-n+3),
._udr .index01 ul li:nth-child(3n+1):nth-last-child(-n+3) ~ li{
  border-bottom: none;
}
.index01 .index_list .index_list__link::before{
  content: "";
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 9px;
  margin: auto;
  width: 10px;
  height: 10px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  border-right: 1px solid #8b8974;
  border-top: 1px solid #8b8974;
}
.index01 .index_list__text{
  font-size: 20px;
  margin-left: 10px;
  line-height: 1;
}
.index01 .index_list__text:hover{
  text-decoration: underline;
  cursor: pointer;
}
    
/*
navi
======================================================= */
.gender_link{
  padding-bottom: 100px;
}
.gender_link_box{
  gap: 24px;
}
.gender_link .gender_link_img{
  box-shadow: 0px 3px 8px 0px rgba(49, 45, 43, 0.2);
  border-radius: 6px;
}
.gender_link_img a{
  display: block;
}
.gender_link_img a:hover{
  opacity: .8;
}
.gender_link .gender_link_img:nth-of-type(3n){
  margin-right: 0!important;
}
/*
main_section
======================================================= */
.main_section{
  position: relative;
  padding-bottom: 96px;
}
.main_section._bg01::before{
  content: "";
  background-color: #dceaf6;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -1;
}
.main_section._bg02::before{
  content: "";
  background-color: #fefdee;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -1;
}
.title_caption{
  font-size: 14px;
  width: 795px;
  margin: 0 auto;
  line-height: 1.55;
  color: #666;
  margin: 0 auto 52px;
  text-align: center;
}
.title_caption li{
  position: relative;
}
/*
sub_section
======================================================= */
.sub_section{
  padding-bottom: 80px;
}
.sub_section:last-of-type{
  padding-bottom: 0;
}
.alcol_area .ecm-ranking-alcor{
  padding: 10px;
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 4px;
}

.adplats_area .ecm-ad{
  padding: 10px;
  background-color: #fff;
  border-radius: 4px;
}
.search_area.main_section::before{
  content: "";
  background-color: #fefdee;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -1;
}
/*
title
======================================================= */
/* title01 */
.title01{
  background: url(https://r.r10s.jp/evt/event/fashion/swimwear/2024/_pc/img/udr/h2_bg01.png) top center/100% auto no-repeat;
  background-size: 100%;
  width: 1920px;
  height: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 43px;
  transform: translateX(-50%);
  margin-left: 50%;
}
.title01._short{
  background: url(https://r.r10s.jp/evt/event/fashion/swimwear/2024/_pc/img/udr/h2_bg02.png) top center/100% auto no-repeat;
  background-size: 100%;
  width: 1920px;
  height: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 43px;
}
.title01 .head_text{
  position: relative;
  text-align: center;
  color: #8b8974;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: -20px;
}
/* .title01 .head_text::after{
  content: "";
  display: block;
  position: absolute;
  bottom: -38px;
  left: 0;
  right: 0;
  width: 207px;
  height: 20px;
  background-image: url("https://r.r10s.jp/evt/event/fashion/swimwear/2023/_cmn/img/0516/h2_dec01.png");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: bottom 0 left 0;
  transform: translateX(-50%);
  margin-left: 50%;
} */
/* title02 */
.title02{
  font-size: 30px;    padding-bottom: 30px;
  font-weight: bold;
  text-align: center;
  color: #8b8974;
  line-height: 1;
  padding-bottom: 40px;
}
/* title03 */
.title03{
  background: url(https://r.r10s.jp/evt/event/fashion/swimwear/2024/_pc/img/udr/h2_bg03.png) top center/100% auto no-repeat;
  background-size: 100%;
  width: 1920px;
  height: 210px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 4px;
  transform: translateX(-50%);
  margin-left: 50%;
  background-color: #dceaf6;
}
.title03 .title_headline{
  position: relative;
  text-align: center;
  color: #8b8974;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: -65px;
}
._udr .title03{
  background-color: #fff;
}
/* title04 */
.title04{
  font-size: 30px;
  color: #8b8974;
  font-weight: bold;
  text-align: center;
  margin-bottom: 24px;
}
/* title05 */
.title05{
  position: relative;
  text-align: center;
  margin-bottom: 29px;
}
.title05 .title_01_text{
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0 21px;
  font-size: 30px;
  color: #685f00;
}
.title05 .title_01_text::before,
.title05 .title_01_text::after{
  position: absolute;
  content: "";
  background-color: #685f00;
  bottom: 6px;
  width: 4px;
  height: 28px;
}
.title05 .title_01_text::before{
  right: 0;
  transform: rotate(28deg);
}
.title05 .title_01_text::after{
  left: 0;
  transform: rotate(-28deg);
}

.ttl_note{
  font-size: 14px;
  color: #666;
  margin: -25px 0 40px;
  text-align: center;
}
/*
button
======================================================= */
.button01{
  position: relative;
  font-size: 18px;
  color: #fff;
  font-weight: bold;
  width: 300px;
  height: 60px;
  background-color: #8b8974;
  border-radius: 30px;
  box-sizing: border-box;
  margin: 14px auto 0;
  padding: 0;
}
.button01 .rex-icon{
  position: absolute;
  right: 24px;
}
.button01:hover{
  opacity: .8;
}
.button01:hover p{
  text-decoration: none;
}
.button01 .ecm-ranking-alcor-view-more-text:hover{
  text-decoration: none;
}
/* button02 */
.button02{
  margin: 40px auto 0;
}
.button02 .buttonLink{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 60px;
  margin: 0 auto;
  border-radius: 35px;
  background: #8b8974;
  color: #fff;
  font-size: 16px;
  text-align: center;
  line-height: 1;
  box-sizing: border-box;
  font-weight: bold;
}
.button02 .buttonLink:hover{
  text-decoration: none;
  opacity: .8;
}
.button02 a.buttonLink::before{
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 24px;
  width: 10px;
  height: 10px;
  margin: auto;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  transform: rotate(45deg);
}
.shoplist .button02{
  margin: 20px auto 0;
}
.shoplist .button02 a.buttonLink::before{
  content: none;
}
/*
category
======================================================= */
/* gender_section */
.gender_section .img_area{
  border-radius: 3px;
  overflow: hidden;
}
.gender_section .text_area{
  font-size: 18px;
  text-align: center;
  color: #333;
  padding-top: 12px;
}
.gender_section .category_box{
  gap: 25px;
}
.gender_section .category_box a:hover{
  text-decoration: none;
  opacity: .8;
}
/*
button
======================================================= */
.button01{
  position: relative;
  font-size: 18px;
  color: #fff;
  font-weight: bold;
  width: 300px;
  height: 60px;
  background-color: #8b8974;
  border-radius: 30px;
  box-sizing: border-box;
  margin: 20px auto 0;
  padding: 0;
  display: block;
}
.button01 .rex-icon{
  position: absolute;
  right: 4.375vw;
}
.button01 .modalOpenShopList{
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.shoplist .button01{
  height: 16.25vw;
}

.ranking_area .alcol_area .button01{
  display: flex;
  justify-content: center;
}
.ranking_area .alcol_area .ecm-view-more-button .ecm-icon-chevron-down{
  color: #fff;
  position: absolute;
  right: 25px;
}
.ranking_area .alcol_area .ecm-view-more-button[aria-hidden=true]{
  display: none;
}
/* button02 */
.button02{
  margin: 37px auto 0;
}
.button02 .buttonLink{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 60px;
  margin: 0 auto;
  border-radius: 30px;
  background: #8b8974;
  color: #fff;
  font-size: 18px;
  text-align: center;
  line-height: 1;
  box-sizing: border-box;
  font-weight: bold;
}
.button02 a.buttonLink::before{
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 32px;
  width: 10px;
  height: 10px;
  margin: auto;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  transform: rotate(45deg);
}
.shoplist .button02{
  margin: 20px auto 0;
}
.shoplist .button02 a.buttonLink::before{
  content: none;
}
/*
ranking_area
======================================================= */
.ranking_area .button01{
  margin-top: 40px;
}
/* rankingNote01 */
.rankingNote01{
  font-size: 14px;
  line-height: 1.1;
  color: #717171;
  width: 838px;
  margin: 0 auto;
  margin-top: 37px;
}
.rankingNote01 li{
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 5px;
}
.ranking .itemRankingAlcor{
  background-color: #fff;
  padding: 50px 20px 0;
  border-radius: 5px;
}
/*
search_area
======================================================= */
.search_area{
  padding-bottom: 96px;
}
/* searchForm */
.searchForm[data-layout="search"]{
  width: 660px;
  margin: 0 auto;
  padding: 44px 86px 48px;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0px 3px 8px 0px rgba(0,0,0,.2);
  box-sizing: border-box;
}
.searchForm[data-layout="search"] .searchForm__form{padding: 0;}
.form__title{
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  color: #8b8974;
  margin-bottom: 16px;
}
.form__gender{
  display: flex;
  flex-wrap:wrap;
  margin-bottom: 37px;
}
.form__gender input[type="radio"]+label:hover{
  background-color: #8b8974;
  color: #fff;
}
.form__gender input[type="radio"]+label{
  width: calc((100% - 40px) / 3);
  height: 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 20px;
  border-radius: 3px;
  font-size: 18px;
  font-weight: bold;
  border: solid 1px #2f2a26;
  background-color: #fff;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  color: #8b8974;
}
.form__gender input[type="radio"]{display: none;}
.form__gender input[type="radio"]:checked+label {
  color: #fff;
  font-weight: bold;
}
.form__gender input#women_tab[type="radio"]:checked+label{
  background: #8b8974;
  border-color:#8b8974;
}
.form__gender input#men_tab[type="radio"]:checked+label{
  background: #8b8974;
  border-color:#8b8974;
}
.form__gender input#kids_tab[type="radio"]:checked+label{
  background: #8b8974;
  border-color:#8b8974;
}
.form__price{
  display: flex;
  flex-wrap: nowrap;
  position: relative;
  justify-content: space-between;
  align-items: center;
  margin-bottom: calc((22/320)*100vw);
}
.form__price input {
  width: 41.8%;
  height: calc((40/320)*100vw);
  padding-left: 5vw;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: 0.3125vw solid #505050;
  border-radius: 20px;
  font-size: 18px;
  box-sizing: border-box;
}
.form__price > span {
  display: inline-block;
  font-size: 20px;
}
.form__price > .en{
  font-weight: bold;
  padding-top: 20px;
}
.form__free{margin-bottom: 40px;}
.form__free .searchForm__textInput{
  width: 100%;
  height: calc((44/320)*100vw);
  background-color: #fff;
  text-align: left;
  text-align: -webkit-left;
  cursor: pointer;
  border: 0.3125vw solid #505050;
  border-radius: 20px;
  font-size: 18px;
  text-indent: 0;
  padding: 0 20px;
  box-sizing: border-box;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  line-height: 1.5;
}
.form__button{
  display: flex;
  flex-wrap:wrap;
  margin: 0 auto;
}
.form__button button:hover{
  opacity: .8;
  cursor: pointer;
}
.form__button > button{
  box-sizing: border-box;
  width: 233px;
  height: 56px;
  margin-right: 22px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: solid 1px #8b8974;
  font-size: 18px;
  font-weight: bold;
  border-radius: 28px;
}
.form__button > button[type="reset"]{
  background-color: #fff;
  color: #8b8974;
}
.form__button > button[type="submit"]{
  background-color: #8b8974;
  color: #fff;
  margin-right: 0!important;
}
.search_area .inputWrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
}
.search_area .formWrap .inputWrap > li.checked_disNone {
  display: none;
}
.search_area .formWrap .inputWrap._color_area input[type="checkbox"] + label {
  display: inline-block;
  box-sizing: border-box;
}
.search_area .formWrap input:checked + label {
  position: relative;
}
.search_area .formWrap input:checked + label::after{
  content: "";
  left: 28%;
  top: 30%;
  position: absolute;
  width: 20px;
  height: 20px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.search_area .formWrap ._white input:checked + label::after{
  border-right: 2px solid #999;
  border-top: 2px solid #999;
}
.search_area .searchForm__select,
.search_area .searchForm__textInput{
  width: 100%;
  height: 56px;
  background-color: #fff;
  text-align: left;
  text-align: -webkit-left;
  cursor: pointer;
  border: 1px solid #2f2a26;
  font-size: 18px;
  padding: 0 20px!important;
  border-radius: 3px;
  appearance: none;
  color: #333;
}
.search_area .searchForm__selectContainer::before{
  content: '';
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 16px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 7px 0 7px;
  border-color: #8b8974 transparent transparent transparent;
  padding: 0;
  pointer-events: none;
  z-index: 1;
}
.searchMoney_tilde{
  display: inline-block;
  font-size: 19px;
  margin-right: 3%;
  margin-left: 3%;
  margin-top: 12px;
}
.minPriceInput,
.maxPriceInput{
  width: 45% !important;
  position: relative;
}
.serchCategory,
.serchBrand{
  margin-bottom: 20px;
  position: relative;
}


/* floating_navi */
.navi_logo:hover{
  opacity: .8;
}
.floating_navi .floatingNavi__menuList .ecm-floating-navi-item:hover{
  background: #685f00;
}
.floating_navi .ecm-floating-navi{
  height: 70px;
  background-color: #8b8974;
}
.floating_navi .floatingNavi__menuList{
  width: 630px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.floating_navi .floatingNavi__menuList .ecm-floating-navi-item{
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 0 80px;
}
.floating_navi .floatingNavi__menuList .ecm-floating-navi-item::before{
  content: "";
  position: absolute;
  width: 1px;
  height: 20px;
  background-color: #fff;
  left: 0;
}
.floating_navi .floatingNavi__menuList .ecm-floating-navi-item:first-of-type:before{
  content: none;
}
.navi_logo{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 329px;
  padding: 0 80px;
  background: #685f00;
}

.sns_arae{
  padding: 80px 0;
}
.sns_arae a:hover{
  text-decoration: none;
}
.sns_arae .rakuten_fashion__snslink a:hover{
  opacity: .8;
}
.bnr_area{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
}
.bnr_area .img_area{
  width: 276px;
}
.bnr_area .img_area a:hover{
  opacity: .8;
}


/* floating_bnr_area */
.floating_bnr_area[data-module-name=ecm-floating][data-static=false]{
  top: auto;
  right: 32px;
  bottom: 80px;
}
.floating_bnr_area .bnr01{
  width: 168px;
  box-shadow: 0px 3px 8px 0px rgba(0,0,0,.2);
}
.floating_bnr_area .bnr01:hover{
  opacity: .8;
  cursor: pointer;
}
.floating_bnr_area .bnr01 a:hover{
  opacity: .8;
}
.floating_bnr_area .close_btn{
  padding: 0;
  width: 26px;
  height: 26px;
  background: #fff;
  border: none;
  border-radius: 50%;
  position: absolute;
  right: -10px;
  top: -15px;
  box-shadow: 0px 3px 8px 0px rgba(0,0,0,.3);
}


/*
coupon_area
======================================================= */
.coupon_area{
  padding-top: 43px;
}
/* coupon01 */
.coupon01{
  margin: 0 auto 34px;
}
.coupon01 .coupon_box{
  justify-content: center;
}
.coupon01 .noTransitionCoupon__title{
  color: #685f00;
}
.coupon01 .coupon_list{
  width: 305px;
}
.coupon01 .coupon_list_text{
  border-color: #685f00;
  background-color: #685f00;
  color: #fff;
  padding: 12px 0;
}
.coupon01 .coupon_list_title{
  color: #333;
  margin-bottom: 8px;
}
.coupon01 .coupon_list_discount em{
  font-size: 40px;
}
.coupon01 .coupon_list_filled{
  color: #fff;
}
.coupon01 .noTransitionCoupon__annotation{
  color: #333;
  font-size: 14px;
}
.coupon01 .coupon_list_body::before {
  background-image: radial-gradient(circle at center left, transparent 0, transparent 10px, #685f00 11px),
    radial-gradient(circle at center right, transparent 0, transparent 10px, #685f00 11px);
}
.coupon01 .coupon_list_link {
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  padding: 8px 0 0;
}
.coupon01 .coupon_list_link::before {
  background-image: radial-gradient(circle at center left, transparent 0, transparent 11px, #ffffff 12px),
      radial-gradient(circle at center right, transparent 0, transparent 11px, #ffffff 12px);
  height: 98%;
}
.coupon01 .coupon_list_discount{
  color: #685f00;
  font-size: 20px;
  margin-bottom: 4px;
}
.coupon01 .coupon_list_note{
  font-size: 12px;
  margin-top: 6px;
}

/* periodWrap01 */
.periodWrap01{
  display: block;
  color: #333;
}
.periodWrap01 .periodTxt{
  text-align: center;
  font-size: 18px;
  letter-spacing: -0.1px;
}
.periodWrap01 .periodTxt:first-of-type{
  margin-bottom: 4px;
}
.periodWrap01 .periodTxt:last-of-type{
  margin-bottom: 15px;
}
.periodWrap01 .periodTxt ._blod{
  font-weight: bold;
}
.periodWrap01 .campaignLink{
  position: relative;
  width: calc((100% - 8px)/2);
  margin-right: 8px;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.1;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.periodWrap01 .campaignLink a{
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #333;
  position: relative;
  text-decoration: none;
}
.periodWrap01 .campaignLink a:hover{
  text-decoration: underline;
}
.periodWrap01 .campaignLink::before{
  content: "";
  width: 1px;
  height: 100%;
  background-color: #c6c6c6;
  position: absolute;
  right: 0;
}
.periodWrap01 .campaignLink:last-of-type::before{
  content: none;
}
.periodWrap01 .campaignLink{
  margin-right: 0;
}
.periodWrap01 .campaignLink span{
  position: relative;
}
.periodWrap01 .couponNote_Info{
  font-size: 14px;
  padding-bottom: 19px;
  color: #666;
  text-align: center;
  line-height: 1.5;
}
.periodWrap01 .couponNote_Info li{
  padding-left: 1em;
  text-indent: -1em;
}
.periodWrap01 .campaignLinkList{
  padding: 0;
  display: flex;
  justify-content: center;
  width: 405px;
  margin: 0 auto;
}

/*
rule
======================================================= */
.rule{
  padding: 80px 0;
  position: relative;
  background-color: #f7f7f7;
}
.rule::before{
  content: "";
  background-color: #f7f7f7;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -1;
}

.cntOther .bigBnrWrap > li > a:hover{
  opacity: .8;
}


/* floating_rigth_area */
.floating_rigth_area .ecm-floating-nav-pill{
  width: 250px;
  font-size: 14px;
  background: #fff;
  color: #685f00;
  border-radius: 0;
  border-bottom: 1px solid #685f00;
  margin-top: 0!important;
}
.floating_rigth_area .ecm-floating-nav-pill:first-of-type{
  border-top: 1px solid #685f00;
}
.floating_rigth_area .ecm-floating-nav-pill:hover,
.floating_rigth_area .ecm-floating-nav-pill[data-in-viewport=true]{
  background-color: #685f00;
  color: #fff;
  font-weight: bold;
}


/*
0602
======================================================= */
/* entry_area */
.entry_area{
  padding-top: 49px;
}
.entry_ttl{
  width: 353px;
  margin: 0 auto 31px;
}
.entry_area .rcEntryButton,
.modal_entry_area .rcEntryButton{
  margin: 0 0 21px;
}
.entry_area [layout='pc'] .rcEntryButton-button,
.modal_entry_area .rcEntryButton-button{
  width: 476px;
  height: 69px;
}
.entry_area [layout='pc'] .rcEntryButton-button:hover,
.modal_entry_area .rcEntryButton-button:hover{
  opacity: .8;
}
.rcEntryButton-status--entered .rcEntryButton-button,
.rcEntryButton-status--before .rcEntryButton-button,
.rcEntryButton-status--closed .rcEntryButton-button{
  height: 69px!important;
}
.modal_entry_area .periodTxt ._box{
  display: flex;
  justify-content: center;
}

/* ad_area */
.ad_area + .ad_area{
  margin-top: 24px;
}
.ad_area .ecm-ad{
  background-color: #fff;
  padding: 10px;
  border-radius: 4px;
}

/* modal_box */
.modal_box .ecm-modal-content-wrapper{
  max-width: 960px;
  width: 960px;
}
.modal_box .ecm-modal-content{
  border-radius: 5px;
  padding: 32px 0 0;
}
.modal_box .ecm-modal-close{
  top: 56px;
  right: 10px;
  z-index: 2;
}
.modal_box .ecm-reward-header{
  margin-bottom: 35px;
  margin-left: 24px;
}
.modal_box .ecm-modal-scroller{
  border-radius: 5px;
}
.modal_rule{
  margin-top: 30px;
  padding: 40px 30px;
  background-color: #f7f7f7;
  border-radius: 0 0 5px 5px;
}

/* kanban_modal_btn */
.kanban_modal_btn{
  font-size: 20px;
  color: #fff;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  position: relative;
  font-weight: bold;
}
.kanban_modal_btn:hover{
  opacity: .8;
  cursor: pointer;
}
.kanban_modal_btn p{
  position: relative;
}
.kanban_modal_btn p::before{
  position: absolute;
  content: "";
  width: 23px;
  height: 20px;
  background: url(https://r.r10s.jp/evt/event/fashion/swimwear/2025/_cmn/img/0602/dec_img.png);
  background-size: 100%;
  right: -48px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.kanban_modal_btn ._bold{
  font-weight: bold;
  font-size: 24px;
  color: #fffcd1;
}
.kanban_modal_btn._women{
  background-color: #dc7965;
}
.kanban_modal_btn._men{
  background-color: #7699b6;
}
.kanban_modal_btn._kids{
  background-color: #839b69;
}


/* shoprecomend */
.shoprecomend .title02{
  padding-top: 40px;
}


/*
0718
======================================================= */
.coupon_ttl{
  width: 509px;
  margin: 0 auto 32px;
}
.coupon_item_wrap{
  width: 634px;
  margin: 0 auto 32px;
}
.coupon_body{}
.coupon_body::before{
  background-image: 
    radial-gradient(circle at center left, transparent 0, transparent 10px, #685f00 11px),
    radial-gradient(circle at center right, transparent 0, transparent 10px, #685f00 11px);
}
.coupon_link {
  padding-top: 10px;
}
.coupon_link::before{
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background-image: 
    radial-gradient(circle at center left, transparent 0, transparent 11px, #ffffff 12px),
    radial-gradient(circle at center right, transparent 0, transparent 11px, #ffffff 12px);
}
.coupon_discount{
  color: #005dbc;
}
.coupon_discount > em{}
.coupon_title{
  margin-bottom: 10px;
  color: #666;
  font-weight: bold;
}
.coupon_text{
  padding: 10px 0;
  color: #ffffff;
  border: none;
}
.coupon_text .coupon_text_icon{
  color: #ffffff;
}
.coupon_note{
  color: #666;
}

/* カラー*/
.coupon_body::before{
  background-image: 
    radial-gradient(circle at center left, transparent 0, transparent 10px, #685f00 11px),
    radial-gradient(circle at center right, transparent 0, transparent 10px, #685f00 11px);
}
.coupon_discount{
  color: #685f00;
}
.coupon_text{
  background-color: #685f00;
}
.modal_shop_ttl{
  font-size: 34px;
  text-align: center;
  color: #8b8974;
  font-weight: bold;
  margin-bottom: 21px;
}
.modal_shop{
  padding: 60px 32px 0;
}
.modal_shop_ttl{
  font-size: 34px;
  text-align: center;
  color: #8b8974;
  font-weight: bold;
  margin-bottom: 21px;
}
.modal_shop_list{
  padding: 32px;
  border: 1px solid #dddddd;
  border-radius: 4px;
}
.modal_shop_list li a{
  cursor: pointer;
  display: inline-block;
  font-size: 13px;
  color: #333;
}
.modal_shop_list li a i{
  display: none;
}
.modal_rule{
  margin-top: 52px;
}







