@charset "utf-8";

/*
 common
======================================================= */
html{
  overflow: auto;
}
body{
  position: relative;
  overflow-x: hidden;
  min-width: 960px;
}
/*
 stamp_card
======================================================= */
.stamp_wrap{
  margin: 0 auto 100px; 
}
.stamp_title{
  margin-bottom: 28px;
  font-size: 36px;
  color: #3f9cc3;
  font-weight: bold;
  text-align: center;
}
.stamp_subText{
  width: 600px;
  margin: 20px auto;
}
.stamp_subText li{
  font-size: 12px;
  padding-left: 1em;
  text-indent: -1em;
}

/*
main_section
======================================================= */
.main_section{
  padding: 90px 0;
  position: relative;
}
.main_section:nth-of-type(even)::before{
  content: "";
  background-color: #ecfde1;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -2;
}
.main_section:nth-of-type(odd)::before{
  content: "";
  background-color: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -2;
}

.main_section.award_bnr::before{
  background-color: #ffffff;
}

.main_section.recommend02,
.main_section.foodprize{
  padding-bottom: 68px;
}
.recommend01{
  padding-bottom: 64px;
}
.recommend01 .ad_bg02{
  position: relative;
  padding: 60px 0;
}
.recommend01 .ad_bg02::before{
  content: "";
  background-color: #ecfde1;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -1;
}
/*
sub_section
======================================================= */
/* sub_section01 */
.sub_section01{
  padding-bottom: 60px;
}
#category01.sub_section01,
#category02.sub_section01,
#category03.sub_section01,
#category04.sub_section01{
  padding-bottom: 43px;
}
.sub_section01:last-of-type{
  padding-bottom: 0!important;
}
/*
entry
======================================================= */
/* periodWrap01 */
.entry .periodWrap01{
  padding: 23px 0 80px;
  font-size: 18px;
}
.entry .periodWrap01 .periodTxt{
  margin-bottom: 8px;
  letter-spacing: 0;
}
.entry .periodWrap01 .periodTxt:last-of-type{
  margin-bottom: 39px;
}
.entry .periodWrap01 .campaignLink{
  margin-bottom: 0!important;
  font-size: 14px;
  line-height: 1.2!important;
  margin-right: 0!important;
}
.entry .periodWrap01 .campaignLink:first-child{
  border-right: 2px solid #cccccc;
  padding-right: 30px;
}
.entry .periodWrap01 .campaignLink::after{
  bottom: 8px;
  width: 6px;
  height: 6px;
  right: 35px;
  border-right: 1px solid #333;
  border-top: 1px solid #333;
}

.entry .periodWrap01 .campaignLink a{
  width: 100%;
}

.entry .couponNote{
  margin-top:44px ;
}
.entry .couponNote_Info{
  padding-bottom: 32px;
  text-align: center;
}
.entry .periodWrap01 .couponNote_Info li{
  font-size: 12px;
}
.entry .couponNote_Info a{display: inline-block;}
.entry .couponNote_Info a:hover{opacity:.8;}
.entry .periodWrap01 .list_mark{
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  line-height: 1.8;
}
.periodTxt_red{
  display: inline-block;
}
/* periodWrap01 */
.entry .periodWrap01{
  display: block;
  color: #333;
}
.entry .periodWrap01 .periodTxt{
  text-align: center;
}
.entry .periodTxt_title{
  display: block;
  font-weight: bold;
}
.entry .periodTxt_red{
  color: #bf0000;
  font-size: 20px;
}
.entry .campaignLinkList{
  padding: 0;
  width: 420px;
  margin: 0 auto;
  justify-content: center;
}
.entry .periodWrap01 .campaignLink{
  position: relative;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* .entry .periodWrap01 .campaignLink::after{
  content: "";
  position: absolute;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.entry .periodWrap01 .campaignLink._ic_right::after{
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  bottom: 6px;
} */
.entry .periodWrap01 .campaignLink:nth-of-type(2n){
  margin-right: 0!important;
}
.entry .periodWrap01 .campaignLink a{
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* color: #404040!important; */
  position: relative;
  text-decoration: underline;
}
.entry .periodWrap01 .couponNote_Info li{
  position: relative;
}
.entry .periodWrap01 .list_mark{
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
}

.modalBox,
.modal_box {
  width: 428px;
  margin: 0 auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modalBox .present._02 .img_area{
  margin: 0 auto;
  margin-bottom: 30px;
  padding: 40px 30px!important;
  background-color: #fff;
  border-radius: 16px;
}
.modal_Button{
  display: block;
  width: 278px;
  height: auto;
  border: none;
  border-radius: 29px;
  background: #3f9cc3;
  color:#ffffff!important;
  box-shadow: none;
  z-index: 0;
  margin-top: 46px;
  height: 56px;
}

.modal_Button._shop{
  display: block;
  width: 480px;
  height: auto;
  border: none;
  border-radius: 36px;
  background: #3f9cc3;
  color:#ffffff!important;
  box-shadow: none;
  z-index: 0;
  margin-top: 30px;
  height: 72px;
}

.evaluation {
  padding: 14.5px 0;
  text-align: center;
  border-radius: 29px;
}

.modal_Button._shop .evaluation {
  padding: 22.5px 0;
  text-align: center;
  border-radius: 36px;
  font-size: 18px;
}
.evaluation .rex-icon:before{
  vertical-align: middle;
}
.modal_Button:hover{
  opacity: .8;
}

/*
h2
======================================================= */
/* title01 */
.title01{
  padding-bottom: 42px;
}
.title01 ._text{
  position: relative;
  font-weight: bold;
  color: #333333;
  text-align: center;
  font-size: 36px;
  line-height: 1.7;
  padding-bottom: 30px;
}
.title01 ._text::after {
  position: absolute;
  transform: translateX(-50%);
  content: "";
  background-color: #3f9cc3;
  width: 60px;
  height: 4px;
  bottom: 0;
  left: 50%;
}
.title01 ._subText {
  text-align: center;
  font-size: 14px;
  margin-top: 35px;
  margin-bottom: 20px;
}
.shopList .title01 ._subText{
  margin: 70px 0 25px;
  font-size: 18px;
}
.title01 ._sub{
  font-size: 24px;
  color: #6f493c;
  display: block;
  text-align: center;
  font-weight: bold;
}
.title_sub{
  margin: -10px auto 75px;
  text-align: center;
  display: block;
  font-size: 16px;
}
/* title02 */
.title02{
  text-align: center;
}
.title02 ._text{
  position: relative;
  display: inline-block;
  color: #3f9cc3;
  font-weight: bold;
  margin-bottom: 35px;
  padding: 0px 50px;
  font-size: 30px;
}
.title02 ._text::before,
.title02 ._text::after{
  position: absolute;
  content: "";
  margin: auto;
  top: 0;
  bottom: 0;
  width: 12px;
  height: 30px;
  border-right: 2px solid #3f9cc3;
  border-top: 2px solid #3f9cc3;
  border-bottom: 2px solid #3f9cc3;
}
.title02 ._text::before{
  right: 0;
}
.title02 ._text::after{
  left: 0;
  -webkit-transform: rotate( 180deg );
  transform: rotate( 180deg );
}
/*
h3
======================================================= */
/* title_02 */
.title_02{
  position: relative;
  text-align: center;
}
.title_02_text{
  position: relative;
  display: inline-block;
  color: #e60f3e;
  font-weight: bold;
}
.title_02_text::before,
.title_02_text::after{
  position: absolute;
  content: "";
  background-color: #e60f3e;
}
.title_02_text::before{
  right: 0;
  transform: rotate(22deg);
}
.title_02_text::after{
  left: 0;
  transform: rotate(-22deg);
}
.main_section__lead{
  font-size:12px;
  text-align: center;
  margin-bottom: 52px;
}

/*
kanban
======================================================= */
.kanban{
  position: relative;
}
/*
navi
======================================================= */
/* floating */
.rn-floatingNavi__menuContainer{
  height: 72px;
}
.rn-floatingNavi__menu{
  height: 72px;
  border-bottom: none;
  background-color: #fff;
}
.rn-floatingNavi__menuList{
  width: 960px;
  justify-content: center;
}
.rn-floatingNavi__menuItem{
  width: 100%;
  flex:0 1 auto;
}
a.rn-floatingNavi__menuLink{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 14px;
  padding: 0;
  text-align: center;
}
a.rn-floatingNavi__menuLink > span{
  /* margin-bottom: 10px; */
  line-height: 1.25;
}
.rn-floatingNavi__menuItem.-active{
  background-color: #3f9cc3;
  font-weight: normal;
}
.rn-floatingNavi__menuItem:hover{
  background-color: #3f9cc3;
  font-weight: normal;
}

.rn-floatingNavi__menuItem.-active .rn-floatingNavi__menuLink,
.rn-floatingNavi__menuItem:hover .rn-floatingNavi__menuLink{
  color:#ffffff;
}


.rn-floatingNavi__menuItem a::after {
  border-right: 1px solid #333;
  border-top: 1px solid #333;
}
.rn-floatingNavi__menuItem.-active .rn-floatingNavi__menuLink::after,
.rn-floatingNavi__menuItem:hover .rn-floatingNavi__menuLink::after{
  border-color:#ffffff;
}
.rn-floatingNavi__menuItem a::after{
  bottom:8px;
  width: 8px;
  height: 8px;
  left: 50%;
  margin-left: -4px;
  display: none;
}
.rn-floatingNavi a.rn-floatingNavi__menuLink:hover{
  font-weight: normal;
}
.rn-floatingNavi__menuItem.-active:after{
  width: 1px;
  left: auto;
  border-bottom: none;
}
.rn-floatingNavi__menuItem a::after{
  content: "";
  position: absolute;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.rn-floatingNavi__menuItem{
  position: relative;
}
.rn-floatingNavi__menuItem::after{
  content: "";
  position: absolute;
  background-color: #3f9cc3;
  width: 1px;
  height: 44px;
  right: -1px!important;
  left: auto;
  top: 15px;
  z-index: 5;
}

.rn-floatingNavi__menuItem:last-child::after{
  right: 0!important;
}
.rn-floatingNavi__menuItem:first-child::before{
  content: "";
  position: absolute;
  background-color: #3f9cc3;
  width: 1px;
  height: 44px;
  left: 0;
  top: 15px;
  z-index: 1;
}
.rn-floatingNavi__menuItem.-active::after,
.rn-floatingNavi__menuItem:hover::after{
  background-color: #3f9cc3;
}
.rn-floatingNavi__menuItem.-active::after,
.rn-floatingNavi__menuItem:hover::after{
  background-color: transparent;

}

/* .index06 */
.index06{
  width: 620px;
  margin: 0 auto;
}
.index06 .anchorNav__menuList{
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  width: 100%;
}
.index06 .anchorNav__menuItem{
  width: calc((100% - 24px)/4 - 0.01px);
  margin-bottom: 0;
  margin-right: 8px;
}
.index06 .anchorNav__menuItem:nth-of-type(4n){
  margin-right: 0;
}
.index06 a.anchorNav__menuLink{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  height: 64px;
  border-radius: 3px;
  padding: 0 0 10px;
  background: #3f9cc3;
  color: #ffffff;
  font-size: 15px;
  letter-spacing: -0.02em;
  text-align: center;
  line-height: 1.2;
  box-sizing: border-box;
}
.index06 a.anchorNav__menuLink .rex-icon{
  display: inline-block;
  position: absolute;
  height: 12px;
  bottom: 5px;
  right: 0;
  left: 0;
  margin: auto;
  font-size: 12px;
  color: #ffffff;
}
.index06 .anchorNav__menuItem a:hover{
  opacity: .8;
}
/*
shop
======================================================= */
.shop_list:last-child{
  padding-bottom: 0;
}
.shopList .riDotList .riIcnBullet{
  top: 2px;
}
/*
keyword
======================================================= */
/* search01 */
.search01 .rc-searchForm__textInput{
  background: #fff;
}
.search01 .rc-searchForm__button{
  background: #f46b89;
}
.search01 .rc-searchForm__inputContainer input::placeholder {
  color: #a3a3a3;
}
.search01 .rc-searchForm__button:hover{opacity:.8;}
/* keyword03 */
.keyword03 .rc-searchKeyword__list {
  margin-left: 0;
}
.keyword03 .rc-searchKeyword__list > li a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #333333!important;
  box-sizing: border-box;
}
.rc-searchForm__keywordItem a.rc-searchForm__keywordLink:hover{
  background-color: #3f9cc3;
  color: #fff!important;
}
.rc-searchForm__keywordItem:hover a.rc-searchForm__keywordLink:before{
  content: none;
  border-radius: 24px;
}

/*
shop_03
======================================================= */
.shop_03{
  position: relative;
}
.shop_03::before{
  content: "";
  background-color: #fff0f2;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 500%;
  margin: 0 -500%;
  z-index: -1;
}
/*
ranking
======================================================= */
.disclaimer{
  padding: 20px 30px;
  background-color: #ffffff;
}
/*.disclaimer p{
  padding-bottom: 12px;
}*/
.disclaimer p:last-child{
  padding-bottom: 0;
}
/*
present
======================================================= */
.present{
  position: relative;
}
.present._02{
  padding: 0;
}
/*
other
======================================================= */
/* button02 */
.other .button02 .rc-button{
  display: flex;
  margin: 0 auto;
}
.other .button02 .rc-button .rc-button__text{
  color: #e52146;
  font-weight: bold;
}

/*
title
======================================================= */
/* title04 */
.title04 .text_h2{
  font-size: 36px;
  padding-bottom: 35px;
  margin-bottom: 65px;
}
.title04 .text_h2::after {
  width: 60px;
  height: 4px;
  bottom: 0;
  left: 50%;
}

.title04 .text_h2 {
  position: relative;
  font-weight: bold;
  color: #333333;
  text-align: center;
  font-size: 36px;
  padding-bottom: 35px;
  margin-bottom: 80px;
  line-height: 1.7;
}
.title04 .text_h2::after {
  width: 60px;
  height: 4px;
  bottom: 0;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  content: "";
  background-color: #3f9cc3;
}

.title04 .text_h2 ._sub {
  margin-top: 4px;
  display: block;
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
}

/* title_01 */
.title_01_text{
  margin-bottom: 35px;
  padding: 0px 50px;
  font-size: 30px;
}
.ranking .title_01_text{
  margin-top: 90px;
  margin-bottom: 0;
}
.title_01_text::before,
.title_01_text::after{
  width: 20px;
  height: 20px;
  border-right: 2px solid #cb3d1c;
  border-top: 2px solid #cb3d1c;
}
/* title_02 */
.title_02_text{
  margin-bottom: 30px;
  padding: 0 25px;
  font-size: 30px;
}
.ranking .title02 ._text{
  margin-bottom: 0;
}
.title_02_text::before,
.title_02_text::after{
  bottom: 6px;
  width: 2px;
  height: 28px;
}
.sub_title01{
  padding-bottom: 40px;
}
/*
kanban
======================================================= */
.kanban{
  position: relative;
}
/* modal */
.modal .present{
  overflow: hidden;
  background: url(https://r.r10s.jp/evt/event/food/season/spring/present/_pc/img/20220516/modal_bg01.png) #fee8ed top center repeat-y;
}
.modal .present .img_area{
  margin-bottom: 30px;
  padding: 40px 35px;
  background-color: #fff;
  border-radius: 16px;
}
.modal .present .present_img_subtext{
  padding: 20px 0 0 0;
}
.modal .present .presentNote01_Info{
  width: 896px;
}
.modal{
  position: absolute;
  width: 960px;
  height: 348px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.modalBtn{
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transform: none;
  text-align: left;
}
.modalArea {
  visibility: hidden;
  opacity : 0;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: .4s;
}
.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}
.modalWrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  left: 50%;
  transform:translateX(-50%);
  width: 962px;
  height: 90%;
  background-color: #fff;
  border-radius: 8px;
}
.modalContents {
  overflow-y: scroll;
  width: 100%;
  height: 100%;
}
.is-show {
  visibility: visible;
  opacity : 1;
}
.modalBtn button{
  width: 150px;
  height: 38px;
  margin-left: 38px;
  margin-bottom: 27px;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border:none;
  box-shadow: 0px 1px 6px rgb(0 0 0 / 20%);
  border-radius: 24px;
  background: url(https://r.r10s.jp/evt/event/food/season/spring/present/_pc/img/20220516/panda_modal_btn.png) no-repeat;
}
.modalBtn button:hover{
  cursor:pointer;
  opacity:.8;
}
.modalBtn button:focus,
.modalBtn button:active{outline: none;}
/* _presentModal */
._presentModal .rn-modal__container{
  padding: 0;
}
._presentModal .rn-modal__contents{
  margin: 0;
  width: 100%;
  background-color: #fff0f2;
}
.present._02 .presentNote01_Info{
  width: auto;
  font-size: 14px;
  margin-bottom: 45px;
}
.closeButton__fixed{
  cursor: pointer;
  position: fixed;
  top: 52px;
  right: 12px;
  z-index: 122;
  width: 45px;
  height: 45px;
  background-color: #3f9cc3;
  background-image: none;
  border-radius: 4px;
}
.closeButton__fixed::before,
.closeButton__fixed::after{
  content: "";
  width: 24px;
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  background-image: none;
  background-color: #fff;
  height: 2px;
  transform: rotate( 45deg );
  box-shadow: none;
}
.closeButton__fixed::after{
  transform: rotate( -45deg );
}
.about_box_closebtn01{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 190px;
  height: 48px;
  margin: 44px auto 0;
  border: none;
  padding: 0;
  font-size: 16px;
  box-sizing: border-box;
  border-radius: 24px;
  background-color: #3f9cc3;
  color: #fff;
}
.closeButton__fixed:hover,
.about_box_closebtn01:hover{
  opacity: .8;
}

/*
shop
======================================================= */
.shop{
  padding: 70px 0 80px;
}
.shop_list{
  padding-bottom: 30px;
}
/*
keyword
======================================================= */
.keyword .title04 .text_h2{
  margin-bottom: 75px;
}
/* search01 */
.search01 .rc-searchForm__inputContainer{
  width: 680px;
  margin: 15px auto 0;
  border: 2px solid #3f9cc3;
  border-radius: 0;
  font-size: 16px;
  border-radius: 4px;
}
.search01 .rc-searchForm__textInput{
  background: #fff;
}
.search01 .rc-searchForm__textInputContainer{
  height: 51px;
}
.search01 .rc-searchForm__button{
  width: 54px;
  background: #3f9cc3;
  font-size: 27px;
}
.search01 .rc-searchForm{
  margin-bottom: 40px;
}
/* keyword03 */
.rc-searchKeyword{
  width: 901px;
  margin: 0 auto;
}
.keyword03 .rc-searchKeyword__list{
  align-items: center;
}
.keyword03 .rc-searchKeyword__list > li {
  width: 213px;
  margin: 0 16px 16px 0;
}
.keyword03 .rc-searchKeyword__list > li:nth-of-type(4n) {
  margin-right: 0;
}
.keyword03 .rc-searchKeyword__list > li a {
  position: relative;
  font-size: 18px;
  border-radius: 24px;
  height: 48px;
  background: #ecf4f5;
}
    
/*
shop_03
======================================================= */
.shop_03{
  padding: 90px 0 25px;
}
.shop_03 .title04 .text_h2{
  line-height: 1.7;
}
.shop_03_itembox{
  margin-bottom: 55px!important;
}
.shop_03_itembox .img_box{
  position: relative;
  box-sizing: border-box;
  border: 2px solid #f46b89;
  border-radius: 4px;
}
.shop_03_itembox .img_box::before{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 0;
  height: 0;
  border-width: 20px;
  border-style: solid;
  border-color: transparent #f46b89 #f46b89 transparent;
}
.shop_03_itembox .img_box::after{
  content: "";
  position: absolute;
  bottom: 7px;
  width: 9px;
  height: 9px;
  right: 7px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  transform: rotate(45deg);
}
.shop_03_itembox .img_box img{
  width: 100%;
}
.shop_03_itembox a{
  color: #333;
  display: block;
}
.shop_03_itembox span{
  font-size: 18px;
  height: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}


/*
topics
======================================================= */
.topics{
  padding-top: 80px;
}
.topics .rl-column1{
  padding-top: 80px;
  text-align: center;
}
.cmn_btn{
  width: 480px;
  margin: 8px auto 0;
}
.cmn_btn a{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 72px;
  margin: 0 auto;
  border-radius: 36px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  background-color: #3f9cc3;
}
.cmn_btn a::before{
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 32px;
  width: 8px;
  height: 8px;
  margin: auto;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  transform: rotate(45deg);
}
.cmn_btn a:hover{
  opacity: .8;
}

/*
ranking
======================================================= */
.rn-tab._custom{
  margin-bottom: 55px;
}
.rn-tab._custom .rn-tab__menuList {
  margin-right: auto;
  margin-left: auto;
  border-bottom: none;
  flex-wrap: nowrap;
  flex-shrink: 0;
  width: 768px;
}
.rn-tab._custom .rn-tab__menuItem {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex:0 1 auto;
  width: 100%;
  justify-content: center;
  align-items: center;
  height: 56px;
  padding: 6px 0;
  margin: 0 0 0 0;
  border-left: none;
  border-bottom: none;
  background-color: #fff;;
  border: 1px solid #3f9cc3;
  border-radius: 0;
}
.rn-tab._custom .rn-tab__menuItem:hover{
  font-weight: bold;
}
.rn-tab._custom .rn-tab__menuItem + * {
  border-left: none;
}
.rn-tab._custom .rn-tab__menuItem.-active {
  border: none;
}
.rn-tab._custom .rn-tab__menuItem.-active:after {
  position: absolute;
  left: calc(50% - 13px);
  bottom: -12px;
  display: inline-block;
  content: "";
  width: 0;
  height: 0;
  border-color: #3f9cc3 transparent transparent;
  border-style: solid;
  border-width: 12px 13px 0;
}
.rn-tab._custom .rn-tab__itemContainer {
  padding: 24px 0 0;
}
.rn-tab._custom .rn-tab__itemBox{
  display: block!important;
  height: 0;
  overflow:hidden;
}
.rn-tab._custom .rn-tab__itemBox.-opened{
  height:auto;
  overflow:visible;
}
.rn-tab._custom .rn-tab__menuItem.-active {
  background-color: #3f9cc3;
}
.rn-tab._custom .rn-tab__textBox {
  color: #333333;
  font-size: 16px;
}
.rn-tab._custom .rn-tab__menuItem.-active .rn-tab__textBox {
  color: #ffffff!important;
  font-weight: bold;
}
.rn-tab._custom .rl-column1 .ri-navigationLink:last-of-type{
  border-bottom: 1px solid #ebebeb;
}
.ranking{
  padding: 100px 0;
}
.ranking .title04 .text_h2{
  padding-bottom: 30px;
  line-height: 1.7;
}
/*
present
======================================================= */
.present{
  padding: 85px 0 30px;
}
.present .title04 .text_h2{
  margin-bottom: 40px;
  line-height: 1.7;
}
.present .img_area{
  width: 826px;
  margin: 0 auto;
  margin-bottom: 30px;
  padding: 40px 30px;
  /*background-color: #fff;
  border-radius: 16px;*/
}
.presentNote01_Info{
  width: 826px;
  margin: 0 auto 60px;
}
.present_img_subtext{
  padding: 25px 0 0;
}

/*
shoplist
======================================================= */
.shoplist{
  padding: 90px 0;
}
.rn-modal__container{
  max-width: 940px;
}
.rn-modal__contents{
  margin-bottom: 40px;
  padding: 100px 30px;
  background-color: #ffffff;
}
.rn-tab__itemContainer{
  padding: 0;
  background-color: transparent;
}
.shoplist_title{
  font-size: 18px;
  font-weight: bold;
  padding-left: 10px;
  border-left: 2px solid #3f9cc3;
  line-height: 1.0;
  margin-bottom: 15px;
  color: #3f9cc3;
}
.shoplist ul.rl-column3 li.riDotList{
  box-sizing: border-box;
}
.riDotList a{
  color: #333;
  font-size: 12px;
  line-height: 1.6;
}
.riDotList a:hover{
  text-decoration: underline;
}
.riDotList .riIcnBullet{
  top: 4px;
}
.riModalContents._02 .riDotList .riIcnBullet{
  top: 6px;
}
.rn-tab__itemBox{
  display: block;
}
.rn-tab__itemBox:last-child{
  margin-bottom: 0!important;
}
.rn-tab__itemContainer .rl-column3 li {
  width: calc(-16.1px + 33.33333%)!important;
  margin: 0!important;
  line-height: 1.3;
}
.rn-tab__itemContainer .rl-column3>:nth-of-type(3n){
  margin-bottom: 0!important;
}
/*
FAQ
======================================================= */
.faq{
  padding-bottom: 100px;
}
.faq .title01 {
  padding-bottom: 80px;
}
.faq-anchorList {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 18px;
  justify-content: space-between;
}
.faq-anchorList__item {
  display: flex;
  width: 310px;
  height: 66px;
  margin-bottom: 65px;
  background-color: #3f9cc3;
  box-sizing: border-box;
  border-radius: 4px;
}
.faq-anchorList__item:hover{
  opacity: .8;
  cursor: pointer;
}
.faq-anchorList__link {
  display: flex;
  align-items: center;
  width: 100%;
  height: 66px;
  font-size: 18px;
  padding-left: 16px;
  line-height: 1.2;
  position: relative;
  color: #fff !important;
}
.faq-anchorList__icon {
  font-size: 14px;
  position: absolute;
  right: 12px;
  color: #fff;
}
.faq-list__title {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ecfde1;
  font-size: 28px;
  font-weight: bold;
  padding: 8px;
  margin-bottom: 20px;
}
.faq-list__subTitle {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 11px;
}
.faq-list__wrap {
  margin-bottom: 20px;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0px 0px 12px 0px rgb(0 0 0 / 20%);
}
.faq-list__wrap:last-child {
  margin-bottom: 80px;
  border-radius: 4px;
}
#faq-target__3 .faq-list__wrap:last-child {
  margin-bottom: 0;
}
.faq-list__answer{
  display: none;
}
.faq-list__question:not(:first-child) {
  margin-top: 1px;
}
.faq-list__questionInner,
.faq-list__answerInner {
  display: flex;
  padding: 14px 16px;
}
.faq-list__questionInner {
  position: relative;
  font-weight: bold;
}
.faq-list__questionInner::before,
.faq-list__answerInner::before {
  font-size: 20px;
  font-weight: bold;
  min-width: 1.5em;
}
.faq-list__questionInner::before {
  content: "Q.";
  color: #3f9cc3;
}
.faq-list__questionIcon {
  position: absolute;
  top: 50%;
  right: 15px;
}
.faq-list__questionIcon:before, .faq-list__questionIcon:after {
  content: "";
  width: 15px;
  position: absolute;
  display: block;
  right: 0;
  background: #3f9cc3;
  transition: 0.3s ease;
  height: 2px;
}
.faq-list__questionIcon:after {
  transform: rotate(90deg);
}
.faq-list__question--open .faq-list__questionIcon:before {
  display: none;
}
.faq-list__question--open .faq-list__questionIcon:after {
  content: "";
  transform: rotate(180deg);
}
.faq-list__answerInner {
  background-color: #fff;
}
.faq-list__answerInner::before {
  content: "A.";
  color: #3f9cc3;
  line-height: 1.2;
}
.faq-list__questionText,
.faq-list__answerText {
  font-size: 20px;
  line-height: 1.33;
  align-self: center;
  padding: 0 24px 0 4px;
}
.faq-list__answerImage {
  margin: -8px 8px 8px;
}
.faq-list__answerText a{
  text-decoration: underline;
  display: inline-block;
}
.faq-list__answerText a:hover{opacity:.8;}
.faq-button {
  margin-top: 16px;
}
.faq-button__list {
  background-color: #fff;
}
.faq-button__list:not(:first-child) {
  margin-top: 16px;
}
.faq-button__link {
  display: flex;
  flex-direction: column;
  padding: 10px 18px;
  border: 1px solid #bf0000 !important;
  border-radius: 4px;
}
.faq-button__text {
  text-align: center;
  line-height: 1.3;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #bf0000;
}
.faq-button__text .rex-icon {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  color: #bf0000;
}
.faq-button__subText {
  margin-top: 3px;
  display: block;
  line-height: 1.3;
  font-size: 11px;
  color: #333;
  text-align: center;
}
.faq-button__note {
  font-size: 12px;
  line-height: 1.33;
  margin-top: 16px;
  color: #8b8a8a;
  text-indent: -1em;
  padding-left: 1em;
}
.faq-list__questionInner:hover{
  opacity: .8;
}
/*
floating[RJSFloatingNotification]
======================================================= */
#floatingRight.RJSFloatingNotification {
  position: relative;
  position:fixed;
  bottom: 90px;
  right: 50px;
  z-index: 100;
  border-radius: 10px;
  border: 2px solid #3f9cc3;
  width: 175px;
  height: 195px;
  background-color: #fff;
  text-align: center;
}
#floatingRight.RJSFloatingNotification a.floatingNotification__closeButton {
  position: absolute;
  top: -16px;
  right: -16px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 20px;
  color: #b7b7b7;
  background-color: #fff;
  line-height: 1;
  box-shadow: 0 1px 6px rgba(0,0,0,.2);
}
#floatingRight.RJSFloatingNotification .floatingRight_text {
  margin: 12px 0 8px;
  font-size: 16px;
  line-height: 1.2;
}
#floatingRight.RJSFloatingNotification .randomBanner__anchor {
  display: inline-block;
}
#floatingRight.RJSFloatingNotification .randomBanner__anchor:hover{
  opacity: .8;
}

/*
hover
======================================================= */
.navi .naviLink a:hover,
.entry .rcEntryButton-button:hover,
.entry .periodWrap01 .campaignLink a:hover,
.shop_03 a:hover,
.topics ul li a:hover{
  opacity: .8;
  cursor: pointer;
}
.shoplist a:hover{
  border-bottom: 1px solid #f46b89;
}
.faq-list__question {
  cursor: pointer;
}
.panda .rc-searchForm__keywordItem:hover a.rc-searchForm__keywordLink:before{
  border-radius: 24px;
}
.modalBtn:hover.modalBtn button:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 150px;
  height: 38px;
  background: rgba(0,0,0,.04);
  cursor: pointer;
  border-radius: 24px;
}

.rule{
  position: relative;
  padding: 80px 0;
}
.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: -2;
}

.award-banner{
  text-align: center;
}

.award-banner a:hover{
  opacity: 0.8;
}

.award-banner img{
  max-width: 576px;
}

/*
 floatingBottomBanner
=========================================== */
.rb-floatingBottomBanner.-bgc-black .rb-floatingBottomBanner__container{
  width: 800px;
  padding: 12px 0 16px;
  border-radius: 0;
  text-align: center;
  background: rgba(0,0,0,.6);
}
.rb-floatingBottomBanner.-bgc-black .rb-floatingBottomBanner__closeButton{
  top: -16px;
  right: -16px;
  width: 40px;
  height: 40px;
  background-color: transparent;
}
.rb-floatingBottomBanner__link{
  display: inline-block;
}
.rb-floatingBottomBanner__link:hover{
  opacity: .8;
}
.randomBanner__title{
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
}


/* 100187[ad]
--------------------------------------- */
[layout="100187"] .ri-shopIntro {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 10px;
  border-radius: 6px;
  box-shadow: 0 10px 15px rgba(0, 0, 0, 0.15);
}
[layout="100187"] .ri-shopIntro:hover {
  opacity: 0.9;
}
[layout="100187"] .ri-shopIntro.-wrap {
  padding: 16px;
}
[layout="100187"] .ri-shopIntro__link {
  display: flex !important;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 0 !important;
}
[layout="100187"] .ri-shopIntro__imageBox {
  box-sizing: border-box;
  width: 100% !important;
}
[layout="100187"] .ri-shopIntro__imageBox::before {
  display: none;
}
[layout="100187"] .ri-shopIntro__imageBox--576x312::before,
[layout="100187"] .ri-shopIntro__imageBox.-ratio576x312::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 54.16667%;
}
[layout="100187"] .ri-shopIntro__imageBox.-ratio700x100 {
  margin-bottom: 16px;
}
[layout="100187"] .ri-shopIntro__imageBox.-ratio700x100::before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 14.28571%;
}
[layout="100187"] .ri-shopIntro__imageBox.-ratio720x110 {
  width: 93.66% !important;
  margin: auto;
}
[layout="100187"] .ri-shopIntro__image {
  border-radius: 8px 8px 0 0;
}
[layout="100187"] .ri-shopIntro__image {
  position: static;
  width: 100%;
  border-radius: 0;
}
[layout="100187"] .ri-shopIntro__containers {
  box-sizing: border-box;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
  margin-top: 16px;
  margin-left: 0;
}
[layout="100187"] .ri-shopIntro__textContainer {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: space-between;
  margin: 0;
}
[layout="100187"] .ri-shopIntro__text {
  margin: 0;
  font-size: 20px !important;
  color: #333;
}
[layout="100187"] .ri-shopIntro__textIconContainer {
  display: flex;
  flex-wrap: wrap;
  margin-top: 8px;
}
[layout="100187"] .ri-shopIntro__textIcon {
  box-sizing: border-box;
  padding: 8px 6px;
  margin-top: 4px;
  margin-right: 4px;
  font-size: 12px;
  line-height: 1;
  color: #ffffff;
  background-color: #9bc838;
  border-radius: 4px;
}
[layout="100187"] .ri-shopIntro__textIcon--,
[layout="100187"] .ri-shopIntro__textIcon--none {
  display: none !important;
}
[layout="100187"] .ri-shopIntro__icon--,
[layout="100187"] .ri-shopIntro__icon--none {
  visibility: hidden !important;
  height: 22px;
  margin-top: 8px;
}
[layout="100187"] .ri-shopIntro__icon--39shop,
[layout="100187"] .ri-shopIntro__icon--freeshipping,
[layout="100187"] .ri-shopIntro__icon--freeshipping_line {
  margin-top: 8px;
}


/*
pure_page
======================================================= */
/*.pure_page .entry .periodWrap01 .periodTxt:nth-of-type(2),
.pure_page .entry .modalBox .riModalWindow:nth-of-type(2),
.pure_page .entry .recommendation_modal._shopModal.shop,
.pure_page .recommend,
.pure_page .recommend01,
.pure_page .recommend02,
.pure_page .foodprize,
.pure_page .keyword,
.pure_page .shop_03,
.pure_page .ranking,
.pure_page .shopList{
  display: none;
}
.pure_page .entry .modalBox{
  justify-content: center;
}
.pure_page .present{
  padding-top: 0;
}*/

/*
matome_area
======================================================= */
.matome_box{
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  padding-bottom: 10px;
}
.matome_box li{
  width: calc((100% - 96px) / 4);
  margin-right: 32px;
  box-sizing: border-box;
  border: 1px solid #d9d9d9;
  background-color: #fff;
  border-radius: 4px;
  overflow: hidden;
}
.matome_box li:nth-child(n+5){margin-top: 32px;}
.matome_box li a:hover{
  opacity: .8;
}
.matome_box li:nth-of-type(4n){
  margin-right: 0;
}
.matome_img{
  padding: 15px 15px 0;
}
.matome_text{
  background: #fff;
  color: #333;
  font-size: 20px;
  padding: 0 15px;
  height: 64px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.matome_text .genreList__icon{margin-right: 8px;}


/*
rule_notice
======================================================= */
.noticeWrap01{
 padding: 26px 30px 32px;
 background-color: #ffffff;
 border:#bf0000 1px solid;
 font-size: 14px;
 color: #bf0000!important;
 margin-bottom:16px
}
.noticeTxt{
  font-weight:bold;
  margin-bottom:10px;
}

/*
 floating_bnr
----------------------------------------------------- */
.floatingBanner {
	display: none;
	position: fixed;
	width: 175px;
  height: 195px;
  border:2px solid #3f9cc3;
  border-radius: 10px;
  background-color: #ffffff;
	bottom: 80px;
	left: auto;
  right: 52px;
  margin: 0 auto;
  z-index: 101;
}
.floatingBanner .bannerWrap {
	position: relative;
	width: 100%;
	height: 195px;
	margin: 0 auto;
}
.floatingBanner .banner_list {
  display: flex;
  justify-content: space-between;
	width: 100%;
	height: 195px;
  padding: 12px 16px 12px;
  background-color: #ffffff;
  box-sizing: border-box;
  border-radius: 10px;
}
.floatingBanner .banner_list._col02 .bnrImg_wrap {
	width: calc((100% - 24px)/2 - 0.001px);
}
.floatingBanner .banner_list._col01 .bnrImg_wrap {
	width: 100%;
}
.floatingBanner .banner_list .bnrImg_wrap p{
  font-size:15px ;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 6px;
}

.floatingBanner .banner_list .bnrImg_wrap a{
  display: block;
  width: 120px;
  margin: 0 auto;
}
.floatingBanner .banner_list .bnrImg_wrap a:hover{
  opacity: .8;
}
.floatingBanner .banner_list .bnrImg_wrap img {
	width: 100%;
  height: auto;
}
.floatingBanner .closeButton {
	cursor: pointer;
	position: absolute;
	width: 47px;
	height: 47px;
	top: -20px;
	right: -20px;
	background-image: url(https://r.r10s.jp/evt/event/food/campaign/okaimonopanda/_pc/img/20250214/floating_close.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  z-index: 1;
}
.floatingBanner .closeButton:hover {
	opacity: .8;
}

/*
product_list
======================================================= */
.stop20_area{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 562px;
  margin: 48px auto 0;
}
.stop20_img01{
  width: 46px;
}
.stop20_img02{
  width: 57px;
}
.stop20_text{
  font-size: 14px;
  flex: 1;
  padding: 0 11px;
}