@charset "euc-jp";
sup, sub { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}
sub { bottom: 0em;}
sup { top: -0.5em;}
ol { list-style: none;}
img { border: 0;}
#template #templateFlame .pb15 { padding-bottom: 15px;}



/* ==============================================
	ALL
============================================== */
#templateWrap #templateFlame {
  width: 100%;
  margin: 0;
  padding: 0;
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/main-bg-bf.png") repeat;
}
#templateWrap #templateFlame .w950 {
  margin: 0 auto;
  width: 950px;
}



/*#templateWrap #templateFlame .icon-r::before {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/rayquaza-03.png") no-repeat center;
    position: absolute;
    top: -60px;
    left: -290px;
    display: block;
    width: 100%;
    height: 370px;
    z-index: 3;
}
#templateWrap #templateFlame .icon-pika::before {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/pikachu-02.png") no-repeat center;
    position: absolute;
    top: -35px;
    left: -380px;
    display: block;
    width: 100%;
    height: 310px;
    z-index: 3;
}
#templateWrap #templateFlame .icon-pika::after {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/pikachu-01.png") no-repeat center;
    position: absolute;
    top: -60px;
    right: -370px;
    display: block;
    width: 100%;
    height: 310px;
    z-index: 3;
}*/

#bodyClump .box {
    margin: 0;
}
#templateWrap #templateFlame .copy-right {
    color: #ffffff;
    border-top: 1px solid #eee286;
    padding: 40px 0 30px;
    font-size: 12px;
    line-height: 1.6;
    letter-spacing: 0.2px;
    margin: 70px auto 0;
    text-align: center;
    background: #ffffff40;
}
#templateWrap #templateFlame .copy-right .copy-right-icon {
    text-align: center;
    padding-top: 10px;
}

/* ==============================================================================
cpnbtn
============================================================================== */
#templateWrap #templateFlame #bodyClump .cpnbtn {
    bottom: 10px;
    right: 0;
    position: fixed;
    opacity: 1.0;
    z-index: 90;
    transition-duration: 0.3s;
    transition-property: all;
    display: none;
}
#templateWrap #templateFlame #bodyClump .cpnbtn:hover {
    opacity: 0.8;
    bottom: 20px;
}
#templateWrap #templateFlame #bodyClump .cpnbtn img {
    width: 240px;
}

/* ==============================================
  headline
============================================== */
#templateWrap #templateFlame #headline .typeB {
  width: 100%;
  margin-bottom: 0 !important;
}
#templateWrap #templateFlame #headline .typeB p {
  padding: 0;
}
#templateWrap #templateFlame #headline .typeB p#information {
  padding: 10px 0 5px;
}
#templateWrap #templateFlame #headline .typeB p.p-cpnEntry-notice {
  font-size: 72%;
  font-weight: bold;
}
/* ==============================================
  titleArea
============================================== */
#headline .typeB {
  width: 100%;
  margin-bottom: 0 !important;
}
#headline .typeB p {
  padding: 0;
}
#headline .typeB p#information {
  padding: 10px 0 5px;
}
#headline .typeB p.p-cpnEntry-notice {
  font-size: 14px;
  font-weight: bold;
}
#titleArea {
    position: relative;
}
#titleArea::before {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/campaign-title.png") no-repeat center;
    position: absolute;
    top: 0;
    display: block;
    width: 100%;
    height: 80px;
    z-index: 3;
}
#titleArea #topTab {
    margin-bottom: -2px;
}
#titleArea #topTab img,
#titleArea #mainArea {
    vertical-align: bottom;
}
#titleArea #topTab  ul {
    width: 950px;
    margin: 0 auto;
    display: flex;
    justify-content: start;
    align-items: flex-end;
}
#titleArea #topTab  ul li {
    overflow: hidden;
    padding: 0 10px 0;
}
#titleArea #topTab ul li:last-child {
    padding-left: 0;
}
#titleArea #topTab  ul li a img {
    transition: 0.3s;
}
#topTab ul li a img:hover {
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
}

#titleArea #mainArea {
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/pc-main-bg.png") no-repeat top -260px center #111111;
    padding: 80px 0 40px 0;
}
#titleArea h1 {
  margin: 0 auto;
}
#template #templateWrap #templateFlame .pb15 {
  padding-bottom: 12px;
}
.mainAreaInner {
    /* overflow: hidden; */
  width: 950px;
  margin: 0 auto 30px;
  position: relative;
}
.textContents {
    width: 980px;
    padding: 32px 0 0;
    /* text-align: center; */
}
.textContents img {
    margin: -40px -70px -20px 0;
}

.fadein.is-animated {
    animation: fadeIn 2s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}


.textPostage {
    margin: 30px 0 60px;
}
.textPostage p {
    font-size: 14px;
    font-weight: normal;
    color: #fff;
    text-align: center;
    line-height: 1.5;
}
.textPostage p span {
    background: #574E0B;
    color: #fff;
    padding: 4px 10px;
    font-size: 19px;
    line-height: 2.6;
}

.subItem {
  display: flex;
}
.subItem li a:hover {
  opacity: 0.8;
}
.subItem .first {
  margin-right: 10px;
}
.entryTxt {
  margin: 10px auto 15px;
  text-align: center;
}
#btnArea-entry-coupon {
  margin: 0 auto;
}
#headline .typeB p.ttlCoupon {
  padding: 17px 0 5px;
}
#mainArea .p-apply a:hover img {
  filter: alpha(opacity=90);
  -moz-opacity: 0.9;
  opacity: 0.9;
}
#mainArea .cpnEntry .btnEntry {
  display: block;
  width: 678px;
  height: 78px;
  background: url(https://books.rakuten.co.jp/event/marathon/img/20180512/btn-entry.png) no-repeat left top;
  text-indent: 200%;
  overflow: hidden;
  white-space: nowrap;
}
#mainArea #couponArea .btnCoupon {
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}
#mainArea #couponArea .btnCoupon a {
  background: url(https://books.rakuten.co.jp/event/marathon/img/20180414/btn-coupon.png) no-repeat left top;
  display: block;
  width: 404px;
  height: 105px;
}
#mainArea .cpnEntry .btnEntry:hover, #mainArea #couponArea .btnCoupon a:hover {
  cursor: pointer;
  opacity: 0.8;
  zoom: 1;
}
.conditionsArea {
  text-align: center;
    margin: 30px auto;
}
.conditionsArea img {
    border-radius: 20px;
    box-shadow: 0px 5px 15px 0px rgba(255, 255, 255, 0.35);
}
.conditionsArea p {
    color:#fff;
    font-size: 12px;
    padding: 10px 0 0;
}

.user-friendly-campaign-entry-form {
  padding: 0 !important;
}
.p-cpnEntry-notice {
  text-align: center;
}
.p-cpnEntry-finish {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center;
  font-weight: bold;
}
.p-cpnEntry-finish img {
  display: block;
  padding-bottom: 10px;
}
.p-cpnEntry-notice a:hover, .p-cpnEntry-finish a:hover {
  text-decoration: underline;
}
#mainArea .p-cpnEntry-notice.linkBlue > a {
  font-weight: bold;
  color: #0033cc;
  background: none;
}
.spu-bnr {
  margin: 0 auto 30px;
  text-align: center;
}
.spu-bnr a img:hover {
  opacity: 0.8;
}

#mainArea .main-head {
  text-align: center;
}
#mainArea .main-head .head-title .main-logo {
    margin-top: -70px;
    margin-left: -330px;  
}
#mainArea .main-head .head-title .sub-data {
    margin-top: -440px;
    margin-right: -570px; 
}
#templateWrap #templateFlame #bodyClump #titleArea #mainArea .poke-bnr {
    width: 1100px;
    margin: 30px auto 0;
    text-align: center;
}
#templateWrap #templateFlame #bodyClump #titleArea #mainArea .poke-bnr p {
    text-align: center;
    color: #fff;
    font-size: 21px;
    margin-top: 22px;
    line-height: 1.4;
}
.poyoyon.is-animated {
    animation: poyoyon 0.8s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards;
}

@keyframes poyoyon {
    0% {
        transform: translateY(-140px);
        opacity: 0;
    }
    50% {
        transform: translateY(0);
    }
    65% {
        transform: translateY(-30px);
    }
    100% {
        transform: translateY(0);
    }
    20%,100% {
        opacity: 1;
    }
}

.mainAreaInner .icon {
    position: absolute;
}
.mainAreaInner .top-rayquaza {
    top: 10px;
    left: -487px;
}
.mainAreaInner .top-pika01 {
    top: 376px;
    right: -280px;
}
.mainAreaInner .top-pika02 {
    top: 640px;
    right: -460px;
}
.mainAreaInner .top-pika03 {
    top: 840px;
    left: -350px;
}
.mainAreaInner .top-pika04 {
    top: 1190px;
    left: -426px;
}
.mainAreaInner .top-pika05 {
    top: 1000px;
    right: -348px;
}
.mainAreaInner .top-pika06 {
    top: 1090px;
    left: -202px;
}
.mainAreaInner .top-balloon01 {
    top: 538px;
    left: -470px;
}
.mainAreaInner .top-balloon02 {
    top: 96px;
    right: -466px;
}
.mainAreaInner .top-balloon01 img,
.mainAreaInner .top-balloon02 img {
    width: 90%;
}

.fuwafuwa {
    animation: fuwafuwa 3s ease-in-out infinite alternate;
    transition: 1.5s ease-in-out;
}

@keyframes fuwafuwa {
    0% {
        transform:translate(0, 0) rotate(-7deg);
    }
    50% {
        transform:translate(0, -7px) rotate(0deg);
    }
    100% {
        transform:translate(0, 0) rotate(7deg);
    }
}


#templateWrap #templateFlame .bg-pokeArea {
    position: relative;
}
#templateWrap #templateFlame .icon-balloon03 {
    position: absolute;
    bottom: 85px;
    right: -80px;
}
#templateWrap #templateFlame .icon-balloon04 {
    position: absolute;
    bottom: 85px;
    left: -200px;
}
#templateWrap #templateFlame .icon-balloon03 img,
#templateWrap #templateFlame .icon-balloon04 img {
    width: 90%;
}

.fluffy {
    animation: fluffy 3s infinite;
}

@keyframes fluffy {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-20px);
    }
}

.txt-c {
    text-align: center;
}



/* ==============================================
rcEntryButton-checkbox
============================================== */
#templateWrap #templateFlame #bodyClump .rcEntryButton-checkbox {
    /*background: #343434;*/
    background: none;
    width: 820px;
    margin: 0 auto;
    padding: 0;
}
#templateWrap #templateFlame #bodyClump .rcEntryButton-checkbox__label, #templateWrap #templateFlame #bodyClump .rcEntryButton-checkbox__text {
    color: #fff;
    line-height: 1.8;
}
#templateWrap #templateFlame #bodyClump .rcEntryButton-checkbox__text a {
    color: #1ed6e4;
}
#templateWrap #templateFlame #bodyClump .preTopEntry {
    margin-bottom: 16px;
}

#templateWrap #templateFlame #bodyClump .preTopEntryWrap {
    text-align: center;
}

#templateWrap #templateFlame #bodyClump .preTopEntryBottomWrap {
    width: 400px;
    height: 80px;
    margin: 0 auto 16px;
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button__default {
    cursor: pointer;
    outline: none;
    border: none;
    padding: 0;
    display: block;
    box-shadow: none !important;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    width: 720px;
    height: 100px;
    border-radius: 50px;
    background: none;
    background-size: 400px 80px;
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button__default a {
    width: 720px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button__default,
#templateWrap #templateFlame #bodyClump .preTopEntry-button__applied,
#templateWrap #templateFlame #bodyClump .preTopEntry-button__entered {
    margin: 0 auto 10px;
}

#templateWrap #templateFlame #bodyClump .preTopEntryBtn {
    position: relative;
    display: block;
    margin: 0 auto 15px;
    width: 720px;
    height: auto;
    background-image: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/entrybtn-pc.png");
    background-color: #7e7531;
    background-size: contain;
    border-radius: 100px;
    text-decoration: none;
    text-align: center;
    font-size: 21px;
    color: #fff !important;
    font-weight: bold;
    line-height: 1.2;
    box-sizing: border-box;
}
#templateWrap #templateFlame #bodyClump .preTopEntryBtn::before {
    content: '';
    /* width: 10px; */
    /* height: 10px; */
    /* border-top: solid 2px #fff; */
    /* border-right: solid 2px #fff; */
    /* position: absolute; */
    /* right: 40px; */
    /* top: calc(50% - 5px); */
    /* transform: rotate(45deg);*/
}

#templateWrap #templateFlame #bodyClump a p.preTopEntryBtn.preTopEntryBtn--dl {
    font-size: 15px;
    width: 275px;
    margin: 0;
    text-align: center;
}

#templateWrap #templateFlame #bodyClump .preTopEntryBtn.preTopEntryBtn--dl {
    padding: 8px 0;
    background: #7e7531;
    border: 2px solid #fff;
    box-shadow: 0px 5px 15px 0px rgba(255, 255, 255, 0.35);
}

#templateWrap #templateFlame #bodyClump .preTopEntryBtn--dl::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: -4px 0 0 7px;
    background: url(https://image.books.rakuten.co.jp/books/img/event/blackfriday/202311/img/icon_another-link.png) no-repeat;
    background-size: 16px 16px;
    vertical-align: middle;
}


#templateWrap #templateFlame #bodyClump .preTopEntryBtn--entered {
    padding: 25px 0;
    background: #ccc;
    color: #6b6b6b !important;
    font-size: 20px;
}
#templateWrap #templateFlame #bodyClump p.dlTxt {
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    margin: 25px 0 10px;
    background: none;
    /*padding: 5px;
    border-bottom: 1px #cbcbcb dotted;
    border-top: 1px #cbcbcb dotted;*/
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button__entered.entried_btn {
    width: 720px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button__entered.entried_btn a.preTopEntryBtn,
#templateWrap #templateFlame #bodyClump .preTopEntry-button__applied.entried_btn a.preTopEntryBtn {
    width: 275px !important;
    display: inline-block;
    margin: 0 auto !important;
    padding: 0 !important;
}

#templateWrap #templateFlame #bodyClump .preTopEntryBtn__text {
    font-size: 21px;
    color: #fff;
}

#templateWrap #templateFlame #bodyClump .preTopEntryBottomWrap {
    width: 560px;
    height: 80px;
    margin: 0 auto 16px;
}

#templateWrap #templateFlame #bodyClump .rcEntryButton-status--applied .preTopEntry-button .preTopEntry-button__default,
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--entered .preTopEntry-button .preTopEntry-button__default {
    display: none !important;
}

#templateWrap #templateFlame #bodyClump .rcEntryButton-status--applied .preTopEntry-button .preTopEntry-button__applied,
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--entered .preTopEntry-button .preTopEntry-button__entered {
    display: block;
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button .preTopEntry-button__entered,
#templateWrap #templateFlame #bodyClump .preTopEntry-button .preTopEntry-button__applied {
    display: none;
}

#templateWrap #templateFlame #bodyClump .rc-toTop {
    bottom: 24px;
}

#templateWrap #templateFlame #bodyClump .btnBorder,
#templateWrap #templateFlame #bodyClump .btnFilled {
    position: relative;
    display: block;
    height: 70px;
    line-height: 70px;
    border: solid 1px #fefcf0;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    box-sizing: border-box;
    color: #fefef4;
    width: 500px;
    margin-left: auto;
    margin-right: auto;
}
#templateWrap #templateFlame #bodyClump .btnBorder:before,
#templateWrap #templateFlame #bodyClump .btnFilled:before {
    position: absolute;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: solid 14px transparent;
    border-right: solid 14px #fff;
    border-bottom: transparent;
    border-left: transparent;
    bottom: 6px;
    right: 5px;
}
#templateWrap #templateFlame #bodyClump .btnBorder--black {
    border: solid 2px #000;
    color: #000;
    font-weight: bold;
    width: 500px;
    font-size: 20px;
    height: 60px;
    line-height: 60px;
    margin: 32px auto 12px;
}
#templateWrap #templateFlame #bodyClump .btnBorder--black:before {
    border-top: solid 7px transparent;
    border-right: solid 7px #000;
    border-bottom: solid 7px #000;
    border-left: solid 7px transparent;
    bottom: 6px;
    right: 5px;
}
#templateWrap #templateFlame #bodyClump .btnFilled--green {
    border: none;
    border-radius: 4px;
    background: #006800;
    font-size: 22px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #fff !important;
    text-decoration: none !important;
}
#templateWrap #templateFlame #bodyClump .btnFilled--green span {
    color: #fff !important;
}
#templateWrap #templateFlame #bodyClump .btnFilled--green:hover {
    color: #fff !important;
    text-decoration: none !important;
    opacity: 0.8;
}
#templateWrap #templateFlame #bodyClump .multiBtnWrapper {
    width: 500px;
    margin-left: auto;
    margin-right: auto;
}

#templateWrap #templateFlame #bodyClump .multiBtnWrapper .btnFilled--green {
    width: 238px;
    float: right;
    font-size: 20px !important;
    line-height: 1.2 !important;
}
#templateWrap #templateFlame #bodyClump .multiBtnWrapper .btnFilled--green span {
    padding-top: 13px;
    display: block;
    box-sizing: border-box;
}
#templateWrap #templateFlame #bodyClump .multiBtnWrapper .btnFilled--green:first-child {
    float: left;
}

#templateWrap #templateFlame #bodyClump .preTopEntry-button__applied .preTopEntryBtn::before,
#templateWrap #templateFlame #bodyClump .preTopEntry-button__entered .preTopEntryBtn::before {
    display: none;
}


/* ==============================================
  wchanceArea
============================================== */
#templateWrap #templateFlame #bodyClump .wchanceArea {
  /*background: linear-gradient(90deg, #ffec90, #fff7c9, #ffec90);*/
  padding: 32px 0 16px;
}
#template #templateWrap #templateFlame #bodyClump .wchanceArea h2 {
  background: none;
  text-align: center;
  width: 950px;
  margin: 32px auto;
  padding: 0 !important;
}
#templateWrap #templateFlame #bodyClump .wchanceArea img {
  width: 100%;
}
#templateWrap #templateFlame #bodyClump .wchanceArea div {
  position: relative;
  width: 950px;
  margin: 32px auto;
}
#templateWrap #templateFlame #bodyClump .wchanceArea .inner-img p {
  position: absolute;
  bottom: 50px;
  left: 0;
  right: 0;
  width: 120px;
  margin: 0 auto;
}
#templateWrap #templateFlame #bodyClump .wchanceArea ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#templateWrap #templateFlame #bodyClump .wchanceArea li {
  width: 450px;
}
#templateWrap #templateFlame #bodyClump .wchanceArea .inner-text p {
  line-height: 1.4em;
  font-size: 15px;
  color: #333;
}
#templateWrap #templateFlame #bodyClump .wchanceArea .inner-text p:nth-child(2) {
  text-align: right;
}
/* ==============================================
bodyClump
============================================== */
#templateWrap #templateFlame #bodyClump {
    width: 100%;
    margin: 0;
    padding: 0;
}

/* ==============================================
	New campaignEntry coupon Btn
============================================== */
.contentsR .coupon01 {
  background: #fff;
  margin-bottom: 20px;
  padding: 25px 30px;
  box-sizing: border-box;
}
.contentsR .coupon01 .ttlWrapper .campaign-entry .campaign-entry-button {
  background: #ff9000;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto 6px;
}
.contentsR .coupon01 .ttlWrapper .campaign-entry .campaign-entry-button .coupon-note {
  display: block;
  text-align: center;

  margin-bottom: 10px;
}

.couponOneClick-acquired.campaign-entry-button.is-acquired,
.couponOneClick-finished.campaign-entry-button.is-finished,
.couponOneClick-having.campaign-entry-button.is-having {
    width: 310px;
    height: 64px;
    background: #999 !important;
    padding: 0 !important;
    border-radius: 3px;
    border-radius: 80px;
    border: none !important;
    line-height: 64px;
    margin: 33px 10px 33px 0;
}
.contentsR .coupon02 {
  background: #fff;
  border-radius: 3px;
  margin-bottom: 20px;
  padding: 27px 20px;
  box-sizing: border-box;
}
.contentsR .coupon02 .ttlWrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  margin-bottom: 25px;
}
.contentsR .coupon02 .ttlWrapper .campaign-entry .campaign-entry-button {
  background: #edf6c9;
  border: #73a82f 2px solid;
  padding: 10px;
  box-sizing: border-box;
}
.contentsR .coupon02 .ttlWrapper .campaign-entry .campaign-entry-button .coupon-note {
  display: block;
  text-align: center;
  margin-bottom: 10px;
  background: url(https://books.rakuten.co.jp/event/marathon/img/20200409/ic-beginner.png) left no-repeat;
  background-position-x: 37px;
  padding-left: 20px;
}
.contentsR .coupon02 .ttlWrapper .campaign-entry .campaign-entry-button .coupon-linkTxt {
  display: block;
  text-align: center;
  color: #73a82f;
  font-size: 24px;
  font-weight: bold;
  position: relative;
  background: #fff;
  padding: 7px;
  border-radius: 100px;
}
.contentsR .coupon02 .ttlWrapper .campaign-entry .campaign-entry-button .coupon-linkTxt::after {
  content: "";
  position: absolute;
  top: 57%;
  right: 20px;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: -8px 0 0;
  border-top: 2px solid #73a82f;
  border-right: 2px solid #73a82f;
  transform: rotate(45deg);
}

.contentsR .coupon01 .ttlWrapper .campaign-entry .campaign-entry-button.is-expired,
.contentsR .coupon02 .ttlWrapper .campaign-entry .campaign-entry-button.is-expired{
  background: #999;
  border: #999 2px solid;
  padding: 0;
  box-sizing: border-box;
  color: #fff;
  width: 100%;
  height: 64px;
  line-height: 64px;
  margin: 0 auto 6px;
  font-size: 20px;
}

.contentsR .coupon01 .cpn-link,
.contentsR .coupon02 .cpn-link {
  display: block;
  margin: 16px 0 0;
  text-align: center;
}
.contentsR .coupon01 .cpn-link li:nth-last-child(1),
.contentsR .coupon02 .cpn-link li:nth-last-child(1) {
  margin-left: 0;
  margin-top: 3px;
}
.campaign-entry .campaign-entry-button {
  display: block;
  margin: 0 auto 6px;
  padding-right: 10px;
  position: relative;
  height: 64px;
  line-height: 64px;
  border-radius: 60px;
  color: #ffffff;
  text-align: center;
  font-size: 22px;
  box-shadow: 0 6px 0 0 rgba(128, 128, 128, 0.2);
  text-decoration: none;
}
.campaign-entry .campaign-entry-button * {
  color: inherit;
}
.campaign-entry .campaign-entry-button b {
  font-size: 30px;
}
.campaign-entry .couponOneClick-default::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: -8px 0 0;
  border-top: 4px solid #ffffff;
  border-right: 4px solid #ffffff;
  transform: rotate(45deg);
}
.campaign-entry .couponOneClick-default:hover {
  opacity: 0.7 !important;
}
.campaign-entry-button.is-acquired,
.campaign-entry-button.is-having,
.campaign-entry-button.is-expired,
.campaign-entry-button.is-finished {
  margin: 0 auto;
  cursor: default;
  position: relative;
  height: 64px;
  line-height: 64px;
  background: #989898 !important;
  border-radius: 60px;
  color: #fff;
  text-align: center;
  font-size: 24px;
  box-shadow: none;
  font-family: "Lucida Grande", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
/* couponOneClick */
.couponOneClick .couponOneClick-acquired,
.couponOneClick .couponOneClick-having,
.couponOneClick .couponOneClick-expired,
.couponOneClick .couponOneClick-finished {
  display: none;
}
.couponOneClick-status-acquired .couponOneClick-acquired,
.couponOneClick-status-having .couponOneClick-having,
.couponOneClick-status-expired .couponOneClick-expired,
.couponOneClick-status-finished .couponOneClick-finished {
  display: block;
}
.couponOneClick-status-acquired .couponOneClick-default,
.couponOneClick-status-having .couponOneClick-default,
.couponOneClick-status-expired .couponOneClick-default,
.couponOneClick-status-finished .couponOneClick-default {
  display: none;
}

/* .cv-cont */
#mainArea .cv-cont {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#mainArea .cv-cont__items01 {
	flex: 0 0 400px;
  max-width: 400px;
}
#mainArea .cv-cont__items02 {
	flex: 0 0 466px;
  max-width: 466px;
}

/* .entry-cont */
#mainArea .entry-cont {
  padding: 20px 30px 0;
}
#mainArea .entry-cont .condition {
  margin-left: -30px;
  margin-right: -30px;
}
#mainArea .entry-cont .riCheckEntryMulti.checkEntryMulti-event {
  padding: 10px 0 84px;
}
#mainArea .entry-cont .riCheckEntryMulti.checkEntryMulti-event.checkEntryMulti-registered,
#mainArea .entry-cont .riCheckEntryMulti.checkEntryMulti-event.checkEntryMulti-entered {
  padding-bottom: 0;
}

/* .coupon-box */
.contentsR .coupon01 .ttlWrapper .coupon-box {
  box-sizing: border-box;
  position: relative;
  padding: 16px 20px;
  border: solid 3px #ddd;
  border-radius: 8px;
  text-align: center;
}
.contentsR .coupon01 .ttlWrapper .coupon-box::before {
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  margin-top: -10px;
  border: 10px solid transparent;
  border-left: 10px solid #FFF;
  z-index: 2;
}
.contentsR .coupon01 .ttlWrapper .coupon-box::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -28px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-left: 14px solid #ddd;
  z-index: 1;
}
.contentsR .coupon01 .ttlWrapper .coupon-box__ttl {
  font-size: 24px;
  font-weight: 700;
  color: #ff9800;
}
.contentsR .coupon01 .ttlWrapper .coupon-box__ttl > b {
  font-size: 36px;
}
.contentsR .coupon01 .ttlWrapper .coupon-box__note {
  font-size: 12px;
  color: #444;
}

/* ==============================================
	cpn-link
============================================== */
.cpn-link {
  letter-spacing: -0.1px;
  flex-wrap: wrap;
    margin: 0 auto 30px;
    display: block;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 90%;
}
.cpn-link li {
    margin: 0 10px;
    line-height: 1.6em;
    color: #dfdfdf;
}
#templateWrap #templateFlame #bodyClump .cpn-link li a {
    color: #e8ffff;
}

/* ==============================================
  navArea
============================================== */
#navArea {
    width: 100%;
    margin: 0 auto;
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/navi-bg.png") top center repeat-x;
    background-color: #000000d4;
}
#navArea.fixed {
  box-shadow: 0px 1px 4px 2px rgba(0, 0, 0, 0.4);
}
#navArea ul {
  list-style-type: none;
  display: block;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  width: 1210px;
  height: 120px;
}
#navArea ul li {
  float: left;
  display: block;
}
#navArea ul li:nth-of-type(1) {
  width: 260px;
}
#navArea ul li:nth-of-type(2) {
  width: 200px;
}
#navArea ul li:nth-of-type(3) {
  width: 200px;
}
#navArea ul li:nth-of-type(4) {
  width: 200px;
}
#navArea ul li:nth-of-type(5) {
  width: 200px;
}
#navArea ul li:nth-of-type(6) {
  width: 110px;
}
#navArea ul li a {
    /* background-repeat: no-repeat; */
    display: block;
    /* height: 120px; */
    /* text-indent: 100%; */
    /* white-space: nowrap; */
    /* overflow: hidden; */
    position: relative;
    padding: 23px 0 0;
    text-align: center;
}
/*#navArea ul li a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
    background: #de15d2;
  transition: all .5s;
  transform: scale(0, 1);
  transform-origin: center top;
}
#navArea ul li a:hover::after {
  transform: scale(1, 1);
}*/

#navArea ul li a:hover {
    transform: translateY(8px);
    transition: all .5s;
}
.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10000;
}
.dummy {
  display: none;
}
/* nav-hight */
.nav-hight {
  margin: -130px 0 0;
  padding: 130px 0 0;
  display: block;
}
/* ==============================================
h2
============================================== */
#template #templateFlame #bodyClump h2 {
    padding: 112px 0 !important;
    margin: 30px auto;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    border-radius: 0 !important;
    letter-spacing: 1px;
    position: relative;
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/h2-bg.png") top center repeat-x;
}

#template #templateFlame #bodyClump .rankTitle {
    background: none !important;
    height: auto !important;
}
/*#template #templateFlame #bodyClump h2:before {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202311/img/h2-title-line.png") repeat-x;
    background-size: 180px 10px;
    position: absolute;
    top: -6px;
    display: block;
    width: 100%;
    height: 17px;
}
#template #templateFlame #bodyClump h2:after {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202311/img/h2-title-line.png") repeat-x;
    background-size: 180px 10px;
    position: absolute;
    bottom: -11px;
    display: block;
    width: 100%;
    height: 17px;
}*/

#template #bodyClump h2.green { background: #56b800;}
#template #bodyClump h2.pink { background:#ff88a1;}
#template #bodyClump h2.blue { background: #ffe87c;}
#template #bodyClump h2.orange { background: #d72a29;}
#template #bodyClump h2.silver { background: #ffeec7;}
#template #bodyClump h2.black { background: #6fe5ef;}

/*#template #templateFlame #bodyClump h2 span {
  display: block;
  margin: 0 auto;
  width: 950px;
  text-align: center;
  color: #fff;
}
#template #templateFlame #bodyClump h2 span:before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: -6px 14px 0 0;
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202311/img/h2-title-icon.png") no-repeat;
    background-size: 30px 30px;
    vertical-align: middle;
}
#template #templateFlame #bodyClump h2 span:after{
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: -6px 0 0 14px;
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202311/img/h2-title-icon.png") no-repeat;
    background-size: 30px 30px;
    vertical-align: middle;
}*/


#template #templateFlame #bodyClump h2.silver span,
#template #templateFlame #bodyClump h2.blue span {
  color: #fff;
}
/* ==============================================
h3
============================================== */
#template #templateFlame #bodyClump h3 {
  width: 100%;
  padding-top: 7px;
  font-size: 110%;
}
#template #templateFlame #bodyClump h3 span {
  display: block;
  margin: 0 auto;
  width: 950px;
  color: #333333 !important;
  font-size: 120%;
  padding: 4px 0;
}
/* ==============================================
 ui-carousel
============================================== */
.ui-carousel-heading.border {
  border-bottom: none;
  padding-bottom: 0;
}
#bodyClump p.ui-carousel-title-h2 {
  padding-bottom: 10px;
  border-bottom: 1px solid #666666;
}
.bta-ui-carousel {
    width: 890px !important;
    margin: 30px auto 10px;
    padding: 40px;
    border-radius: 40px;
    background: #fff;
}
/* ==============================================
 itemTypeA
============================================== */
#bodyClump .itemTypeA ul {
  width: 950px;
  margin: 0 auto;
}
#bodyClump .itemTypeA ul:first-of-type {
  background: none;
}
#bodyClump .itemTypeA .image {
  height: 260px;
}
#bodyClump .itemTypeA .image img {
  width: 180px;
}
#bodyClump .itemTypeA .note {
  width: 270px;
}
#bodyClump .itemTypeA .price, #bodyClump .itemTypeA .discount {
  font-size: 125%;
}
#bodyClump .itemTypeA .note .entry-txt a {
  font-size: 100%;
}
#bodyClump .itemTypeA span.price > span {
  font-size: 75%;
}
#bodyClump .itemTypeA p {
  line-height: 2;
}
div.note > .genre {
  margin-bottom: 2px;
}
#bodyClump .pointIc {
  display: block;
  width: 180px;
  background-color: #f60e9c;
  color: #fff;
  border-radius: 3px;
  text-align: center;
  padding: 7px 0;
}
#bodyClump .pointIc span {
  color: #fff;
  font-weight: bold;
}
#bodyClump .pointIc.pointIc-2 {
  background-color: #fa5c38;
}
/* ==============================================
 itemTypeC
============================================== */
#template #bodyClump .itemTypeC {
  width: 950px;
  margin: 0 auto 80px;
}
#bodyClump .itemTypeC ul {
  padding: 40px 0;
}
#bodyClump .itemTypeC ul:last-child {
  padding-bottom: 0;
}
#bodyClump .itemTypeC ul:first-child {
  background: none;
}
#bodyClump .itemTypeC ul li {
  display: inline;
  float: left;
  width: 225px;
  overflow: hidden;
  margin-left: 0;
  margin-right: 15px;
}
#bodyClump .itemTypeC ul li:nth-child(4n) {
  margin: 0;
}
#bodyClump .itemTypeC ul li .image {
  height: 220px;
  width: 220px;
  margin-bottom: 16px;
}
#bodyClump .itemTypeC ul li .image img {
  max-height: 220px;
  max-width: 220px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  transition-duration: 0.3s;
  transition-property: all;
}
#bodyClump .itemTypeC ul li .image img:hover {
  opacity: 0.8;
}
#bodyClump .itemTypeC .note a {
  line-height: 1.4em;
  font-size: 15px;
}
#bodyClump .itemTypeC ul li .note .price, #bodyClump .itemTypeC ul li .note .discount {
  font-size: 16px;
  margin-bottom: 10px;
}
#bodyClump .itemTypeC ul li .note .owner, #bodyClump .itemTypeC ul li .note .genre {
  margin: 10px 0 4px;
}
/* ==============================================
 itemTypeD
============================================== */
#bodyClump .itemTypeD {
  width: 950px;
  margin: 0 auto;
}
#bodyClump .itemTypeD .image {
  height: 180px;
}
#bodyClump .itemTypeD ul:first-child {
  background: none !important;
}
/* ==============================================
p-about-marathon
============================================== */
#bodyClump #p-about-marathon {
    margin:40px auto 0;
    width: 950px;
    padding: 40px;
    position: relative;
}
/*#bodyClump #p-about-marathon::before {
    content: "";
    background: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/rayquaza-02.png") no-repeat right;
    position: absolute;
    top: -180px;
    right: -70px;
    display: block;
    width: 100%;
    height: 330px;
    z-index: 3;
}*/

#bodyClump #p-about-marathon dl {
    border: 3px solid #fff;
    padding: 30px 40px 40px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.4);
    color: #fff;
    box-shadow: 0px 1px 9px 2px rgba(159, 159, 221, 0.6);
}
#bodyClump #p-about-marathon dl dt {
    font-weight: 700;
    font-size: 20px;
    padding-bottom: 16px;
    /* border-bottom: 1px solid #ffe87c; */
    /* margin-bottom: 16px; */
}
#bodyClump #p-about-marathon dl dd {
    position: relative;
    font-size: 90%;
}
#bodyClump #p-about-marathon dl dd p {
    position: absolute;
    right: 0;
    bottom: 0;
}
#bodyClump #p-about-marathon dl dd p a {
    color: #fff;
}
/* ==============================================
reactSlickRec
============================================== */
#template #templateFlame #bodyClump .reactSlickRec {
  padding: 0;
}
#template #templateFlame #bodyClump .reactSlickRec .rankTitle {
    height: auto;
}
#template #templateFlame #bodyClump .reactSlickRec h2 {
    letter-spacing: 2px;
    display: block;
    float: none;
    padding: 114px 0 !important;
    margin: 30px auto;
    font-size: 33px;
    font-weight: bold;
    text-align: center;
    border-radius: 0 !important;
    letter-spacing: 1px;
    position: relative;
    background: url(https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/h2-bg.png) top center repeat-x !important;
    color: #fff;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}
#template #templateFlame #bodyClump .reactSlickRec .slider .slickItem__main {
    color: #fff !important;
}
#template #templateFlame #bodyClump .reactSlickRec .slider {
    position: relative;
    padding: 0 80px;
    margin: 40px 0 130px;
}
/* ==============================================
link600x100
============================================== */
#bodyClump .link600x100 {
  margin: 0 auto 0;
    padding-bottom: 0px;
}
#bodyClump .link600x100 ul {
  margin: 40px auto 80px;
  width: 600px;
}
#bodyClump .link600x100 ul li {
  margin: 50px auto 0;
  text-align: center;
  width: 600px;
}
#bodyClump .link600x100 ul li a {
  text-decoration: none;
  color: #0f33cc;
  font-weight: bold;
  font-size: 14px;
}
#bodyClump .link600x100 ul li a img {
  margin: 0 0 10px;
  width: 600px;
}
#bodyClump .link600x100 ul li a img:hover {
  position: relative;
  left: 0;
  top: 2px;
}
#bodyClump .link600x100 ul li a span {
  color: #0f33cc;
}
#bodyClump .link600x100 ul li .note a:hover, #bodyClump .link600x100 ul li a span:hover {
  text-decoration: underline;
}
/* ==============================================
 bnrArea-sale-campaign
============================================== */
.bnrArea-sale-campaign {
    padding-bottom: 55px;
}
.bnrArea-sale-campaign ul {
  margin: 0 auto;
  overflow: hidden;
  padding-top: 40px;
  width: 950px;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}
.bnrArea-sale-campaign li {
  margin: 0 25px 25px 0;
  width: 300px;
  text-align: center;
  line-height: 0;
}
.bnrArea-sale-campaign li:nth-child(3n) {
  margin-right: 0;
}
.bnrArea-sale-campaign li a {
  text-decoration: none;
  font-weight: bold;
  color: #0f33cc;
  font-size: 90%;
}
.bnrArea-sale-campaign li a img {
  width: 300px;
  height: 300px;
}
.bnrArea-sale-campaign li a img:hover {
  position: relative;
  top: 2px;
  left: 0;
}
.bnrArea-sale-campaign li a span {
  color: #0f33cc;
}
.bnrArea-sale-campaign li a span:hover {
  text-decoration: underline;
}
/* ==========================================
 special
========================================== */
.special {
  border-radius: 4px;
  color: #ffffff;
  display: inline-block;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 2px;
  margin-top: 15px;
  padding: 2px 10px;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
}
.special.point-03 {
  background: #fa8638;
}
.special.point-15 {
  background: #fa3838;
}
.special.point-10 {
  background: #fa3877;
}
.special.point-08 {
  background: #e48f0a;
}
.special.point-back {
  background: #bf0000;
}
.point-10 {
  background: #fa3877;
  border-radius: 3px;
  color: #ffffff;
  display: inline-block;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 2px;
  margin-top: 15px;
  padding: 2px 10px;
  text-align: center;
  text-decoration: none;
}
.point {
  background: #fa8638;
  border-radius: 3px;
  color: #ffffff;
  display: inline-block;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 2px;
  margin-top: 15px;
  padding: 2px 10px;
  text-align: center;
  text-decoration: none;
}
.pT10 {
  padding-top: 10px !important;
}
.pT15 {
  padding-top: 15px !important;
}
.pT20 {
  padding-top: 20px !important;
}
.ic {
  padding: 0 10px;
  display: inline-block;
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  border-radius: 3px;
  line-height: 2;
}
.ic3 {
  background: #ff1891;
}
.ic5 {
  background: #ff951c;
}
.ic7 {
  background: #ff8560;
}
.ic10 {
  background: #eb3731;
}
.ic-off {
  background: #008eff;
}
.ic-cpn {
  line-height: 1.3;
  padding: 3px 10px;
}
.cpn {
  background: #eb3731;
  line-height: 1.4 !important;
  padding: 8px !important;
}
/* ==============================================
moreBtn
============================================== */
.moreBtn {
    width: 600px;
    margin: 20px auto 0;
    padding-bottom: 80px;
}
.moreBtn a {
    display: block;
    width: 564px;
    height: 110px;
    padding: 78px 30px 0 0;
    background-image: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/btn-bg-pc.png");
    background-position: top right;
    background-size: contain;
    color: #FFF;
    font-size: 23px;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
    font-weight: bold;
    text-align: center;
    /* letter-spacing: 0.06em; */
    /* box-shadow: 0px 1px 9px 2px rgba(159, 159, 221, 0.6); */
}
/*.moreBtn a::after {
    position: relative;
    bottom: 16px;
    left: 440px;
    display: block;
    content: '';
    width: 17px;
    height: 5px;
    border-radius: 2px;
    background-color: #ffffff;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
    margin-top: 2px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}*/
/*.moreBtn a::before {
    position: relative;
    top: 15px;
    left: 440px;
    display: block;
    content: '';
    width: 17px;
    height: 5px;
    border-radius: 2px;
    background-color: #ffffff;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
    margin-top: -3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}*/
.moreBtn a:hover {
    /*opacity: 0.8;*/
    text-decoration: none;
    position: relative;
    top: 3px;
}
.moreBtn a:hover:before, .moreBtn a:hover:after {
    background-color: #ffffff;
}

.btn-tapestry div {
    width: 652px;
    margin: 50px auto 0;
    padding-bottom: 20px;
}
.btn-tapestry div a {
    display: block;
    width: 612px;
    padding: 20px;
    background-image: url("https://image.books.rakuten.co.jp/books/img/event/blackfriday/202411/img/entrybtn-pc.png");
    background-position: top right;
    background-size: cover;
    color: #FFF;
    font-size: 21px;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
    font-weight: bold;
    text-align: center;
    /* letter-spacing: 0.06em; */
    /* box-shadow: 0px 1px 9px 2px rgba(159, 159, 221, 0.6); */
}
.btn-tapestry div a:hover {
    opacity: 0.8;
    text-decoration: none;
    position: relative;
    top: 3px;
}


/* ==============================================
  campaign-close
============================================== */
#campaign-close {
  margin: 80px auto 30px !important;
}
/* ==============================================
  heading3Red
============================================== */
#template #templateWrap .heading3Red {
  background: #bf0000 none repeat scroll 0 0;
  color: #ffffff;
  font-size: 150%;
  margin: 0 auto 15px;
  padding: 10px;
  width: 930px;
}
.heading3Area {
  margin: 0 auto;
  width: 950px;
}
.all-notice-mp-clear {
  margin: 0 !important;
  border-bottom: 0 !important;
}
/* ==============================================
  js-api-data
============================================== */
#template #templateWrap #templateFlame #bodyClump .js-api-data span.price-after {
  font-size: 16px;
}
#template #templateWrap #templateFlame #bodyClump .js-api-data span.price-discountRate {
  font-size: 16px;
  margin-top: 3px;
}
#template #templateWrap #templateFlame #bodyClump .js-api-data span.price-after span.price-text span {
  font-size: inherit;
}
#template #templateWrap #templateFlame #bodyClump .js-api-data,
#template #templateWrap #templateFlame #mainContents .js-api-data {
  margin-bottom: 0;
}
/* ==============================================
  popup
============================================== */
#template #templateWrap #templateFlame #bodyClump #rexSurveyRoot .boIRoU button.primary span{
	color:#fff;
}

/* ==============================================
	modal
============================================== */
#modal1 {
  width: 100%;
  height: 100%;
  position: fixed;
  overflow-y: scroll;
  z-index: 9999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none;
}
#modal1 > div {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#modal1 > div .modal-inner {
  background: #fff;
  padding: 10px;
}
#modal1 > div .modal-inner .campaignDetail {
  margin-bottom: 0!important;
}
#modal1 > div .close {
  height: 30px;
  position: relative;
}
#modal1 > div .close a {
  color: #fff;
  position: absolute;
  right: 0;
}
/* ==========================================
	rule_bigsale
========================================== */
#template #templateFlame .rule_bigsale {
  width: 950px;
  margin: 0 auto 80px;
  border: 2px solid #ddd;
  padding: 16px;
  line-height: 1.5em;
    background: #fdfdfd;
}
#template #templateFlame #bodyClump .rule_bigsale h2.h2_bigsale {
    padding: 16px 0 !important;
}
#template #templateFlame #bodyClump .rule_bigsale h2 {
  background: #424242;
  color: #fff;
  text-align: center;
  font-size: 16px !important;
  padding: 16px;
  letter-spacing: 0.5px !important;
}
#template #templateFlame #bodyClump .rule_bigsale h2:before,
#template #templateFlame #bodyClump .rule_bigsale h2:after {
    background: none;
}
#template #templateFlame .rule_bigsale dt {
  margin: 24px 0;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.5px;
  color: #424242;
}
#template #templateFlame .rule_bigsale dd {
  border-bottom: 1px solid #ddd;
  padding: 0 0 24px 0;
  font-size: 13px;
}
#template #templateFlame .rule_bigsale dd:last-child {
  border-bottom: none;
}


#template .rankingContents li .note span.discountRate{
   margin-top: 5px !important;
    font-size: 16px !important;
}
#template .rankingContents li .note span.after,
#template .rankingContents li .note span.discountRate {
    color: #ff7676 !important;
}
#template .rankingContents li .note span.before {
    color: #888888 !important;
}

/* ==========================================
	 話題・人気の一押し商品
========================================== */
#template .item-four{
    width: 950px;
    margin: 0 auto;
    padding: 40px 0;
}
#template .item-four .item-img{
    height: 220px;
    width: 220px;
    /* position: relative; */
    background: #fff !important;
    width: 100%;
    text-align: center;
    display: table;
    border-radius: 3px;
    float: none !important;
}
#template #templateWrap #templateFlame #bodyClump .item-four .item-main .item-img a {
    display: table-cell;
    vertical-align: middle;
}
#template #templateWrap #templateFlame #bodyClump .item-four .item-main .item-img img{
    border: 0px solid #eee !important;
    max-height: 200px;
    max-width: 200px;
    width: auto !important;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    transition-duration: 0.3s;
    transition-property: all;
    /* position: absolute; */
}
#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .title a, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .js-api-title{
    line-height: 1.4em !important;
    font-size: 15px !important;
    color: #ffe203 !important;
}
#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .author, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .date {
    color: #fff !important;
}
#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price span.js-api-itemPrice,#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .fix-price {
    color: #ff7676 !important;
}
#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .fix-price{
    font-size: 16px !important;
    margin-bottom: 10px !important;
}
#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .book, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .magazine, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .fbook, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .dvd, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .blu-ray, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .game, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .pc, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .toy, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .goods,#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .cd{
    background: #BF0000;
    color: #fff;
    padding: 1px 10px !important;
    font-size: 12px !important;
    line-height: 2.0;
    letter-spacing: 2px;
}
#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .genre-label .blu-ray{
    background: #3399ff !important;
}

#template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price span.js-api-itemPrice, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price span.tax, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price span.percent, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price span.js-api-discountRate, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .price span.pre-price-value, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .fix-price span.tax, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .fix-price span.pre-price-value, #template #templateWrap #templateFlame #bodyClump .rbcomp__campaign__item .fix-price span.pre-price-value span {
    color: #ff7676 !important;
}

/* ==========================================
modalbox
========================================== */
#templateWrap #templateFlame #bodyClump ul.modal-btn {
    bottom: 50px;
    right: 0px;
    position: fixed;
    z-index: 90;
}
#templateWrap #templateFlame #bodyClump ul.modal-btn li img {
    padding-top: 20px;
}

#templateWrap #templateFlame #bodyClump ul.modal-btn li a:hover {
    opacity: 0.8;
}
#templateWrap #templateFlame #bodyClump .modal-content {
    background: #201f39;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #86cdee;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner {
    background: #201f39;
    box-sizing: border-box;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .modalHead {
    text-align: center;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .modalHead img {
    margin-right: -30px;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn {
    background: #312b4b;
    border-radius: 16px;
    margin: 0 auto;
    padding: 15px 0 0 0;
    box-sizing: border-box;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .rcEntryButton-checkbox {
    margin-top: 15px;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .entrydetail {
    text-align: center;
    margin: 15px 0 10px;
    font-size: 13px;
    line-height: 1.6;
    color: #fff;
}
/* ポイントアップ条件 */
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions ul {
    background: #201b3a;
    border-radius: 0 0 16px 16px;
    display: flex;
    justify-content: left;
    font-size: 10px;
    letter-spacing: 0.5px;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(1) {
    display: table;
    width: 16%;
    background: #1e1336;
    border-radius: 0 0 0 16px;
    margin: 0 8px 0 0;
    color: #fff;
    text-align: center;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(1) p {
    display: table-cell;
    vertical-align: middle;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(2) {
    width: 84%;
    padding: 4px 0 8px 0;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(2) p {
    margin: 0 8px 0 0;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(2) span {
    display: inline-block;
    margin: 4px 0 0 0;
    padding: 4px 14px;
    color: #fff;
    border-radius: 3px;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .entrydetail li a {
    color: #4ffafc;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(2) p.bg-cr-red span {
    /* background: #af010b; */
    border: 1px solid #e802b6;
    color: #e802b6;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .entrybtn .conditions li:nth-child(2) p.bg-cr-blue span {
    /* background: #041e7f; */
    border: 1px solid #1fb2c4;
    color: #1fb2c4;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .rcEntryButton-button {
    height: 57px;
    font-size: 18px;
    background: linear-gradient(to right, rgba(186,12,175,1) 0%,rgba(237,14,239,1) 48%,rgba(186,12,175,1) 100%);
    background-color: #ed0eef;
    border: 1px solid #ed0eef;
    color: #fff;
}
#templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .rcEntryButton-status--entered .rcEntryButton-button, #templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .rcEntryButton-status--before .rcEntryButton-button, #templateWrap #templateFlame #bodyClump .modal-content .modalBox .inner .rcEntryButton-status--closed .rcEntryButton-button {
    background: #f3f3f3 !important;
    border-color: #f3f3f3 !important;
    color: #717171 !important;
    border: none !important;
}
#templateWrap #templateFlame #bodyClump .modalClose {
    width: 300px;
    text-align: center;
    background: linear-gradient(to right, rgba(186,12,175,1) 0%,rgba(237,14,239,1) 48%,rgba(186,12,175,1) 100%);
    background-color: #ed0eef;
    margin: 15px auto 0;
    padding: 10px;
    border-radius: 50px;
    font-size: 12px;
}
#templateWrap #templateFlame #bodyClump .modalClose:hover {
    background: #fe5aff;
}
#templateWrap #templateFlame #bodyClump .modalClose a {
    display: block;
    text-decoration: none;
    color: #ffffff;
}
#templateWrap #templateFlame #bodyClump .modalClose a.modal-close.crossBtn {
    width: 3vw;
    height: 3vw;
    display: block !important;
    position: absolute;
    top: 10px;
    right: 10px;
}

.modal-wrap {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    overflow-y: scroll;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10001;
    display: none;
}
.modal-wrap > div:first-child {
    width: 100%;
    height: 100%;
    position: absolute;
    font-size: 0;
}
.modal-wrap > div:last-child {
    width: 950px;
    min-height: 504px;
    margin: 25px auto;
    background: white;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 768px) {
    .modal-wrap > div:last-child {
        width: 80%;
        margin: 2vw auto;
        padding: 2vw;
    }
}

span.genre-label {
}
span.genre-label span.book,
span.genre-label span.cd,
span.genre-label span.dvd,
span.genre-label span.game,
span.genre-label span.toy,
span.genre-label span.pc,
span.genre-label span.goods {
    background: #CC0910;
    color: #fff;
    padding: 4px 20px 2px;
    font-size: 14px;
}
span.genre-label span.blu-ray {
    background: #3399FC;
    color: #fff;
    padding: 4px 20px 2px;
    font-size: 14px;
}



#templateWrap #templateFlame #bodyClump  .modal-btn .close {
    text-align: right;
    margin: 0px 15px -15px 10px;
    z-index: 99999;

}
