@charset "UTF-8";
/* ---------------------------------------------------------------

お得な4種のクーポンあり！最大900円OFF！

---------------------------------------------------------------*/

:root {
  --contents_width : 100vw;
}
@media screen and (min-width: 768px) {
  :root {
    --contents_width : 464px;
  }
}

#repeat {
  -webkit-text-size-adjust: 100%;
  margin: 0 auto;
  max-width: 960px;
  font-family: 'Noto Sans JP', sans-serif;
}

#repeat * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#repeat .sec_mv .sec_mv_img {
  margin: 0;
}

#repeat .sec_coupon {
  
padding: 8% 0 0;
}
#repeat .sec_coupon_in{
  background-color: #ffe87d;
  padding: 6.5% 0 6.7%;
  margin: 0;
}

#repeat .sec_coupon .sec_coupon_ttl {
  text-align: center;
  display: block;
  /* -webkit-transform: translate(0, -42%); */
  /* transform: translate(0, -42%); */
}

#repeat .sec_coupon .sec_coupon_ttl img {
  width: 30.2%;
  height: auto;
}

#repeat .sec_coupon .sec_coupon_subttl {
  text-align: center;
  font-size: 3.43vw;
  font-weight: bold;
  color: #14171b;
  letter-spacing: 0.08em;
  line-height: 1.5;
  margin: 1% 0 3%;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_subttl {
    font-size: 15px;
  }
}

#repeat .sec_coupon .sec_coupon_lead {
  margin: -1.5% 0 0;
  text-align: center;
}

#repeat .sec_coupon .sec_coupon_lead .sec_coupon_lead_in {
  display: inline-block;
  position: relative;
  font-weight: bold;
  color: #163259;
  font-size: 3.43vw;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lead .sec_coupon_lead_in {
    font-size: 15px;
  }
}

#repeat .sec_coupon .sec_coupon_lead .sec_coupon_lead_in .sec_coupon_lead_fukidashi {
  position: absolute;
  bottom: 0;
  right: 102%;
  -webkit-transform: translate(0, -8%);
  transform: translate(0, -8%);
  width: 25.8vw;
  height: 21.7vw;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lead .sec_coupon_lead_in .sec_coupon_lead_fukidashi {
    width: 120px;
    height: 101px;
  }
}

#repeat .sec_coupon .sec_coupon_grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -webkit-column-gap: 10vw;
  -moz-column-gap: 10vw;
  column-gap: 10vw;
  row-gap: 6vw;
  padding: 6.77% 5%;
  margin: 0 5%;
  background-color: #fffdf2;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_grid {
    -webkit-column-gap: 46px;
    -moz-column-gap: 46px;
    column-gap: 46px;
    row-gap: 26px;
  }
}

#repeat .sec_coupon .sec_coupon_grid:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 1px;
  height: 86.3%;
  background-image: -webkit-linear-gradient(top, #3a220e 2px, transparent 3px);
  background-image: linear-gradient(to bottom, #3a220e 2px, transparent 3px);
  background-size: 1px 4px;
  background-repeat: repeat-y;
  background-position: center top;
}

#repeat .sec_coupon .sec_coupon_grid .sec_coupon_grid_item:nth-of-type(n+3) {
  position: relative;
  padding-top: 6.04vw;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_grid .sec_coupon_grid_item:nth-of-type(n+3) {
    padding-top: 28px;
  }
}

#repeat .sec_coupon .sec_coupon_grid .sec_coupon_grid_item:nth-of-type(n+3):before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-image: -webkit-linear-gradient(left, #3a220e 4px, transparent 2px);
  background-image: linear-gradient(to right, #3a220e 2px, transparent 3px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

#repeat .sec_coupon .sec_coupon_sup {
  text-align: center;
  margin: 8.2% 0 0;
  line-height: 1;
  font-size: 2.29vw;
  font-weight: bold;
  color: #2f2f2f;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_sup {
    font-size: 10px;
  }
}

#repeat .sec_coupon .sec_coupon_sup .sec_coupon_sup_in {
  position: relative;
  display: inline-block;
}

#repeat .sec_coupon .sec_coupon_sup .sec_coupon_sup_in:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 1.09vw 2vw 1.09vw;
  border-color: transparent transparent #2f2f2f transparent;
  margin-right: 0.5em;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_sup .sec_coupon_sup_in:before {
    border-width: 0 5px 9px 5px;
  }
}

#repeat .sec_coupon .sec_coupon_annotation {
  margin-top: 2.6%;
}

#repeat .sec_coupon .sec_coupon_annotation .sec_coupon_annotation_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
}

#repeat .sec_coupon .sec_coupon_annotation .sec_coupon_annotation_item:first-child {
  margin-top: 0;
}

#repeat .sec_coupon .sec_coupon_annotation .sec_coupon_annotation_item .sec_coupon_annotation_item_in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.12vw;
  font-weight: 500;
  color: #2f2f2f;
  letter-spacing: 0.08em;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_annotation .sec_coupon_annotation_item .sec_coupon_annotation_item_in {
    font-size: 14px;
  }
}

#repeat .sec_coupon .sec_coupon_annotation .sec_coupon_annotation_item .sec_coupon_annotation_item_in:before {
  content: "\203B";
  display: inline-block;
}

#repeat .sec_coupon .sec_coupon_lottery {
  margin: 9.5% 0 0;
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_ttl {
  margin: 0;
  font-size: 5.62vw;
  color: #008cc8;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_ttl {
    font-size: 26px;
  }
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_lead {
  margin: 4.47% 0 0;
  font-size: 3.12vw;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.09em;
  color: #163259;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_lead {
    font-size: 14px;
  }
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_subttl {
  font-weight: 900;
  color: #ffffff;
  background-color: #008cc8;
  font-size: 4.16vw;
  text-align: center;
  display: block;
  margin: 4.37% 9.89% 0;
  padding: 0.6%;
  letter-spacing: 0.11em;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_subttl {
    font-size: 19px;
  }
}

#repeat .sec_coupon .sec_coupon_lottery_txt {
  margin: 4.7% 0 0;
  font-weight: 700;
  color: #2e2e2e;
  font-size: 3.43vw;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lottery_txt {
    font-size: 15px;
  }
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_txt + .sec_coupon_lottery_subttl {
  margin-top: 8.54%;
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_list {
  line-height: 1.4;
  letter-spacing: 0.05em;
  font-size: 3.12vw;
  font-weight: 500;
  color: #2f2f2f;
  margin-left: 9.89%;
}

@media screen and (min-width: 768px) {
  #repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_list {
    font-size: 14px;
  }
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_list .sec_coupon_lottery_list_item {
  margin: 5.8% 0 0;
  padding: 0;
  text-indent: -1em;
  padding-left: 1em;
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_list .sec_coupon_lottery_list_item:first-child {
  margin-top: 0;
}

#repeat .sec_coupon .sec_coupon_lottery .sec_coupon_lottery_list .sec_coupon_lottery_list_item:before {
  content: "\30FB";
}

#repeat .sec_coupon .sec_coupon_btn {
  display: block;
}

#repeat .sec_coupon .sec_coupon_btn_lead {
  font-size: calc(26 / 960 * var(--contents_width));
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1;
  margin: 0;
  padding: 0;
}

#repeat .sec_coupon .sec_coupon_btn_lead_strong {
  font-size: calc(26 / 960 * var(--contents_width));
  font-family: "Oswald", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1;
  padding: 0;
  margin: 0;
}

#repeat .sec_coupon .sec_coupon_btn_off{
  text-align: center;
  margin: 4.2% 0 0;
  padding: 0;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.06em;
  font-size: calc(40 / 960 * var(--contents_width));
}

#repeat .sec_coupon .sec_coupon_btn_off_strong {
  font-family: "Oswald", sans-serif;
  font-weight: 900;
  font-size: calc(66 / 960 * var(--contents_width));
  line-height: 1;
  left: 0.08em;
  transform: translate(0, 0.05em);
}

#repeat .sec_coupon .sec_coupon_btn_code{
  background-color: #ccc;
  margin: 7.2% 0 0;
  padding: 9% 0;
}

#repeat .sec_coupon .sec_coupon_btn_code.type_color01{
  background-color: #b60e0e;
}

#repeat .sec_coupon .sec_coupon_btn_code.type_color02{
  background-color: #da6620;
}

#repeat .sec_coupon .sec_coupon_btn_code.type_color03{
  background-color: #0e7db6;
}

#repeat .sec_coupon .sec_coupon_btn_code.type_color04{
  background-color: #1ab60e;
}

#repeat .sec_coupon .sec_coupon_btn_code_main{
  text-align: center;
  margin: 0;
  padding: 0;
  line-height: 1;
  letter-spacing: 0.08em;
  font-size: calc(52 / 960 * var(--contents_width));
  font-weight: bold;
  margin: 3.6% 0 0;
  padding: 0;
  color: #ffffff;
}

#repeat .sec_coupon .sec_coupon_btn_code_sub{
  text-align: center;
  margin: 0;
  padding: 0;
  line-height: 1;
  letter-spacing: 0.08em;
  font-size: calc(24.4 / 960 * var(--contents_width));
  font-weight: bold;
  color: #ffffff;
}

#repeat .sec_repeat {
  position: relative;
  padding: 12.66% 5% 0;
  text-align: center;
}
#repeat .sec_repeat_ttl{
  font-size: 4.27vw;
  font-weight: 700;
  margin-bottom: 9%;
}
@media screen and (min-width: 768px) {
  #repeat .sec_repeat_ttl{
    font-size: 20px;
  }
}
#repeat .repeat_btn a{
  font-size: 4.77vw;
  font-weight: 700;
  display: block;
  background-color: #fed615;
  box-shadow: 3px 3px 0 0 #b60e0e;
  border-radius: min(1.56vw,5px);
  line-height: 2.8;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (min-width: 768px) {
  #repeat .repeat_btn a{
    font-size: 22px;
  }
}

#repeat .sec_repeat:before {
  content: "";
  position: absolute;
  top: 0;
  left: 6.52%;
  margin-top: -5.2%;
  width: 17.5vw;
  height: 28.8vw;
  background-image: url(/campaign/repeat/img/repeat_deco01.png);
  background-size: 99.9% auto;
  background-position: center center;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  #repeat .sec_repeat:before {
    width: 80px;
    height: 129px;
  }
}

#repeat .sec_repeat:after {
  content: "";
  position: absolute;
  top: 0;
  right: 9.62%;
  margin-top: 9.16%;
  width: 15vw;
  height: 11.1vw;
  background-image: url(/campaign/repeat/img/repeat_deco02.png);
  background-size: 99.9% auto;
  background-position: center center;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  #repeat .sec_repeat:after {
    width: 70px;
    height: 51px;
  }
}

#repeat .repeat_btn a:before {
  content: "";
  display: block;
  position: absolute;
  height: 1.6em;
  width: 1.6em;
  background: #fff;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
}

#repeat .repeat_btn a:after {
  content: "▲";
  font-size: 0.5em;
  display: block;
  position: absolute;
  color: #b50e0e;
  right: 6.7%;
  top: 48%;
  transform: translateY(-50%) rotate(-30deg);
  border-radius: 50%;
}

#repeat .sec_reco {
  position: relative;
  padding: 12.66% 0 0;
}

#repeat .sec_reco .sec_reco_ttl {
  text-align: center;
  display: block;
  margin: 0;
}

#repeat .sec_reco .sec_reco_ttl img {
  width: 48.85%;
  height: auto;
}

#repeat .sec_reco .sec_reco_subttl {
  text-align: center;
  font-size: 3.43vw;
  font-weight: bold;
  color: #14171b;
  letter-spacing: 0.08em;
  line-height: 1.5;
  margin: 2.6% 0 0;
}

@media screen and (min-width: 768px) {
  #repeat .sec_reco .sec_reco_subttl {
    font-size: 15px;
  }
}

#repeat .sec_reco .sec_reco_tab {
  margin: 5.41% 0 0;
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_head {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -webkit-column-gap: 2.91vw;
  -moz-column-gap: 2.91vw;
  column-gap: 2.91vw;
  row-gap: 2.91vw;
  padding: 0 4.27%;
}

@media screen and (min-width: 768px) {
  #repeat .sec_reco .sec_reco_tab .sec_reco_tab_head {
    -webkit-column-gap: 13px;
    -moz-column-gap: 13px;
    column-gap: 13px;
    row-gap: 13px;
  }
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_link {
  position: relative;
  display: block;
  border-radius: 1.56vw;
  padding: 13.8% 0 22.1%;
  background-color: #ae0e0e;
  height: 100%;
  font-size: 3.43vw;
  font-weight: bold;
  color: #fefefe;
  line-height: 1.5;
  letter-spacing: 0.14em;
  text-align: center;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  #repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_link {
    border-radius: 7px;
    font-size: 15px;
  }
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_link:before {
  content: "";
  position: absolute;
  bottom: 28%;
  left: 50%;
  width: 2.18vw;
  height: 2px;
  border-radius: 20px 0 0 20px;
  background-color: #ffffff;
  -webkit-transform: translate(-82%, 0) rotate(45deg);
  transform: translate(-82%, 0) rotate(45deg);
  z-index: 2;
}

@media screen and (min-width: 768px) {
  #repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_link:before {
    width: 8px;
  }
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_link:after {
  content: "";
  position: absolute;
  bottom: 28%;
  right: 50%;
  width: 2.18vw;
  height: 2px;
  border-radius: 20px 0 0 20px;
  background-color: #ffffff;
  -webkit-transform: translate(82%, 0) rotate(135deg);
  transform: translate(82%, 0) rotate(135deg);
}

@media screen and (min-width: 768px) {
  #repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_link:after {
    width: 8px;
  }
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_head .sec_reco_tab_head_item.is_active .sec_reco_tab_head_link {
  background-color: #f73737;
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_body {
  margin: 9.68% 0 0;
  background-color: #ffe87d;
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_body .sec_reco_tab_body_item {
  padding: 4.68% 5% 9.27%;
  display: none;
}

#repeat .sec_reco .sec_reco_tab .sec_reco_tab_body .sec_reco_tab_body_item.is_active {
  display: block;
  -webkit-animation: fade_animation01 1.5s ease 0s 1 normal;
  animation: fade_animation01 1.5s ease 0s 1 normal;
}

#repeat .sec_end {
  padding: 11.7% 0 5.31%;
}

#repeat .sec_end_img01{
  width: 56.25%;
  margin: 0 auto;
}

#repeat .js_p_lpclose_filter {
  position: relative;
}

#repeat .js_p_lpclose_filter:before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 50;
}

.tempA_pbox_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox {
  width: 48.14%;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox:nth-of-type(n+3) {
  margin-top: 3.7%;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .box_wrap {
  background-color: #ffffff;
  padding: 8%;
  height: 100%;
  display: block;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 12%;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .brand {
  margin-top: 4%;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .brand img {
  width: auto;
  height: 5.20833vw;
  display: block;
}

@media screen and (min-width: 768px) {
  .tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .brand img {
    height: 24px;
  }
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .name {
  margin-top: 2%;
  font-size: 2.91667vw;
  font-weight: bold;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .name {
    font-size: 13px;
  }
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .fix_bottom {
  margin-top: 8%;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .price_box {
  color: #bd1e1e;
  text-align: center;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .price_box .text {
  display: block;
  font-size: 3.33333vw;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .price_box .text {
    font-size: 15px;
  }
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .price_box .price {
  display: block;
  font-size: 5.625vw;
  font-weight: bold;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .price_box .price {
    font-size: 26px;
  }
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .set_btn {
  margin-top: 6%;
  display: block;
}

.tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .set_btn_in {
  display: block;
  font-weight: bold;
  background-color: #be1e1e;
  color: #fff;
  letter-spacing: 0.1em;
  text-align: center;
  font-size: 2.91667vw;
  padding: 6.2%;
}

@media screen and (min-width: 768px) {
  .tempA_pbox_wrap .tempA_pbox_S.tempA_pbox .set_btn_in {
    font-size: 13px;
  }
}

.morelist_btn {
  margin-top: 9.25%;
  display: block;
  text-align: center;
}

.morelist_btn a {
  position: relative;
  display: inline-block;
  font-size: 3.75vw;
  font-weight: bold;
  line-height: 1;
  color: #ffffff;
  background-color: #b60e0e;
  min-width: 81.45%;
  padding: 4.9% 0;
  border-radius: 1.04167vw;
}

@media screen and (min-width: 768px) {
  .morelist_btn a {
    font-size: 17px;
    border-radius: 5px;
  }
}

.morelist_btn a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 6.01%;
  -webkit-transform: rotate(45deg) translate(0, -50%);
  transform: rotate(45deg) translate(0, -50%);
  width: 1.97vw;
  height: 1.97vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
}

@media screen and (min-width: 768px) {
  .morelist_btn a:before {
    width: 9px;
    height: 9px;
  }
}

@-webkit-keyframes fade_animation01 {
  0% {
    visibility: visible;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade_animation01 {
  0% {
    visibility: visible;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


/* cmnパーツ調整 */
#footer {
  margin-top: 0;
}

body.mfp-bg-fix {
  position: fixed;
  width: 100%;
}

.js_clipboard_msgbox {
  z-index: 200010 !important;
}
