@charset "UTF-8";

.main_wrapper {
  color     : #923219;
  width     : 100%;
  max-width : 100%;
  word-break: break-all;
}

.sp_none {
  display: block;
}

.pc_none {
  display: none;
}

.inner {
  max-width : 98%;
  margin    : 0 auto;
  position  : relative;
  text-align: center;
}

#contents_mv {
  width   : 100%;
  margin  : 0 auto;
  position: relative;
}

#contents_mv img {
  width: 100%;
}

/* read */
#contents_read {
  background-color: #FBF0D1;
}

#contents_read .inner {
  width  : 1000px;
  padding: 50px 0;
}

#contents_read img {
  margin: 0 auto;
}

.read01,
.read02 {
  padding-bottom: 30px;
}

.read03 {
  padding-bottom: 80px;
}

.read04 {
  padding-bottom: 16px;
}

/* 賞品 */
#contents_prize {
  background-color: #FBF0D1;
}

#contents_prize .inner {
  width  : 1000px;
  padding: 50px 0 100px;
}

.title {
  font-size     : 26px;
  letter-spacing: 5px;
  line-height   : 1;
}

.title span {
  color         : #FE410F;
  font-family   : "sirenia", sans-serif;
  font-weight   : 800;
  font-style    : normal;
  font-size     : 60px;
  letter-spacing: normal;
}

.prize_box {
  display        : flex;
  flex-wrap      : wrap;
  justify-content: space-between;
  padding-top    : 50px;
  gap            : 40px;
}

.prize_box>div {
  width     : calc((100% - 40px) / 2);
  box-sizing: border-box;
}

#contents_prize ul {
  margin      : 0;
  margin-left : 0;
  padding-left: 0;
  list-style  : none;
  text-align  : left;
  padding-top : 30px;
}

#contents_prize ul li {
  font-size   : 16px;
  font-weight : 300;
  padding-left: 1em;
  text-indent : -1em;
}

/* 対象商品 */
#contents_products {
  background-image : url(../images/bg01_pc.png);
  background-repeat: no-repeat;
  background-size  : cover;
}

#contents_products .inner {
  width  : 1000px;
  padding: 120px 0;
}

#contents_products img {
  margin: 0 auto;
}

.products01 {
  padding: 20px 0 60px;
}

.products02 {
  padding-bottom: 15px;
}

.products03 {
  padding-bottom: 40px;
}

.products04 {
  font-size     : 20px;
  font-weight   : 300;
  line-height   : 2;
  padding-bottom: 80px;
}

/* 応募方法 */
#contents_apply {
  background-color: #FE410F;
}

#contents_apply .inner {
  width  : 1130px;
  padding: 120px 0 140px;
}

.title02 {
  color         : #fff;
  font-size     : 26px;
  letter-spacing: 5px;
  line-height   : 1;
}

.title02 span {
  font-family   : "sirenia", sans-serif;
  font-weight   : 800;
  font-style    : normal;
  font-size     : 60px;
  letter-spacing: normal;
}

.apply_box {
  display        : flex;
  justify-content: space-between;
  padding-top    : 50px;
}

.apply_box>div {
  width     : calc((100% - 40px) / 3);
  box-sizing: border-box;
}

/* レシートの撮影時の注意事項 */
#contents_receipt {
  background-color: #923219;
}

#contents_receipt .inner {
  width  : 1000px;
  padding: 100px 0 80px;
}

.title03 {
  position      : relative;
  padding-bottom: 5px;
  color         : #fff;
  font-size     : 28px;
  font-weight   : 300;
}

.title03::after {
  content         : "";
  position        : absolute;
  bottom          : 0;
  left            : 50%;
  transform       : translateX(-50%);
  /* 中央寄せ */
  width           : 196px;
  /* 線の長さ */
  height          : 1.4px;
  /* 線の太さ */
  background-color: #fff;
}

#contents_receipt ul {
  margin      : 0;
  margin-left : 0;
  padding-left: 0;
  list-style  : none;
  text-align  : left;
  padding     : 60px 0 40px;
}

#contents_receipt ul li {
  color       : #fff;
  font-size   : 21px;
  font-weight : 300;
  padding-left: 1em;
  text-indent : -1em;
}

.receipt01 {
  width : 50%;
  margin: 0 auto;
}

.receipt02 {
  color      : #FFFF83;
  font-size  : 26px;
  font-weight: 600;
  padding    : 30px 0;
}

.receipt_box {
  display        : flex;
  justify-content: space-between;
  gap            : 10px;
}

.receipt_box>div {
  width     : calc((100% - 10px) / 4);
  box-sizing: border-box;
}

.receipt03 {
  margin: 30px auto 0;
}

/* 応募規約 */
#contents_rules {
  background-color: #FBF0D1;
}

#contents_rules .inner {
  width  : 800px;
  padding: 100px 0 80px;
}

.rules_box {
  background-color: #fff;
  height          : 400px;
  overflow        : hidden;
  margin          : 50px auto 110px;
  padding         : 40px 30px;
  text-align      : left;
  line-height     : 1.5;
  border-radius   : 10px;
}

.rules_box_inner {
  width     : 100%;
  height    : 100%;
  overflow  : scroll;
  overflow-x: hidden;
}

.rules_box h5 {
  margin     : 0;
  padding-top: 20px;
  font-size  : 16px;
  font-weight: normal;
}

.rules_box p {
  font-size: 16px;
  margin   : 0;
}

.rules_box ul,
.rules_box ol {
  margin      : 0;
  margin-left : 0;
  padding-left: 0;
  list-style  : none;
}

.rules_box ul li {
  font-size   : 16px;
  padding-left: 1em;
  text-indent : -1em;
}

.rules_box ol li {
  font-size   : 16px;
  list-style  : none;
  position    : relative;
  padding-left: 1em;
  text-indent : -1em;
}

.rules_box a {
  color          : #923219;
  text-decoration: underline;
}

/* お問い合わせ */
#contents_contact {
  background-image : url(../images/bg02_pc.png);
  background-repeat: no-repeat;
  background-size  : cover;
}

#contents_contact .inner {
  width  : 1000px;
  padding: 40px 0 150px;
}

#contents_contact img {
  margin: 0 auto;
}

.contact01,
.contact02 {
  padding-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .pc_none {
    display  : block;
    max-width: 100%;
  }

  .sp_none {
    display: none;
  }

  #contents_mv {
    width    : 100%;
    max-width: 100%;
  }

  /* read */
  #contents_read .inner {
    width    : 100%;
    max-width: 95%;
    padding  : 20px 0 30px;
  }

  .read01,
  .read02 {
    padding-bottom: 15px;
  }

  .read03 {
    padding-bottom: 40px;
  }

  .read04 {
    padding-bottom: 10px;
    width         : 95%;
  }

  .button01 {
    width : 95%;
    margin: 0 auto;
  }

  /* 賞品 */
  #contents_prize .inner {
    width    : 100%;
    max-width: 90%;
    padding  : 30px 0;
  }

  .title {
    font-size: 19px;
  }

  .title span {
    font-size: 45px;
  }

  .prize_box {
    display    : block;
    padding-top: 25px;
  }

  .prize_box>div {
    width : 100%;
    margin: 0 auto 20px;
  }

  #contents_prize ul {
    padding-top: 0;
  }

  #contents_prize ul li {
    font-size: 13px;
  }

  /* 対象商品 */
  #contents_products {
    background-image: url(../images/bg01_sp.png);
  }

  #contents_products .inner {
    width    : 100%;
    max-width: 90%;
    padding  : 50px 0;
  }

  .products01 {
    padding: 30px 0 20px;
  }

  .products02 {
    padding-bottom: 10px;
  }

  .products04 {
    font-size     : 18px;
    padding-bottom: 40px;
  }

  /* 応募方法 */
  #contents_apply .inner {
    width    : 100%;
    max-width: 85%;
    padding  : 40px 0 60px;
  }

  .title02 {
    font-size: 19px;
  }

  .title02 span {
    font-size: 45px;
  }

  .apply_box {
    display    : block;
    padding-top: 30px;
  }

  .apply_box>div {
    width         : 100%;
    padding-bottom: 30px;
  }

  /* レシートの撮影時の注意事項 */
  #contents_receipt .inner {
    width    : 100%;
    max-width: 90%;
    padding  : 40px 0 50px;
  }

  .title03 {
    position : relative;
    font-size: 20px;
  }

  .title03::after {
    width: 140px;
  }

  #contents_receipt ul {
    padding: 40px 0 30px;
  }

  #contents_receipt ul li {
    font-size: 15px;
  }

  .receipt01 {
    width: 100%;
  }

  .receipt02 {
    font-size: 16px;
    padding  : 20px 0;
  }

  .receipt_box {
    flex-wrap: wrap;
  }

  .receipt_box>div {
    width: calc((100% - 10px) / 2);
  }

  .receipt03 {
    margin: 15px auto 0;
  }

  /* 応募規約 */
  #contents_rules .inner {
    width    : 100%;
    max-width: 90%;
    padding  : 40px 0 50px;
  }

  .rules_box {
    height : 200px;
    margin : 40px auto 60px;
    padding: 20px 15px;
  }

  /* お問い合わせ */
  #contents_contact {
    background-image: url(../images/bg02_sp.png);
  }

  #contents_contact .inner {
    width    : 100%;
    max-width: 90%;
    padding  : 30px 0 80px;
  }

  .contact01,
  .contact02 {
    padding-bottom: 20px;
  }
}