@charset "euc-jp";
/* ==============================================
	contents
============================================== */
#templateWrap #templateFlame {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  font-family: '¥Ò¥é¥®¥Î³Ñ¥´ ProN', 'Hiragino Kaku Gothic ProN', '¥á¥¤¥ê¥ª', Meiryo, '£Í£Ó £Ð¥´¥·¥Ã¥¯', 'MS PGothic', sans-serif;
  background: none !important;
}
#templateWrap #templateFlame #headline .typeM, #templateWrap #templateFlame #headline .typeB {
  margin-bottom: 0;
}
#templateWrap #templateFlame #bodyClump .w950 {
  width: 950px;
  margin: 0 auto;
  margin-bottom: 50px;
}
#templateWrap #templateFlame #bodyClump .box {
  margin-bottom: 34px;
}
.pageTop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 90;
  opacity: 0.8;
}
.pageTop:hover {
  opacity: 1;
}
/* ==============================================
	New campaignEntry Btn
============================================== */
.checkEntryMulti-nocheck .riCheckEntryMulti__noLoginButton {
  cursor: auto;
}
.checkEntryMulti-nocheck .riCheckEntryMulti__noLoginButton:hover {
  opacity: 1 !important;
}
.checkEntryMulti-nocheck .riCheckEntryMulti__noLoginButton .riCheckEntryMulti__entryButtonText {
  box-shadow: none !important;
  opacity: 0.6 !important;
}
.riCheckEntryMulti__checkBoxLabel {
  margin-top: 20px;
}
/* ==============================================
	New campaignEntry coupon Btn
============================================== */
.campaign-entry .campaign-entry-button {
  display: block;
  margin: 0 auto;
  position: relative;
  width: 560px;
  height: 70px;
  line-height: 70px;
  background: #bf0000;
  border-radius: 40px;
  color: #fff;
  text-align: center;
  font-size: 26px;
  box-shadow: 0 6px 0 0 rgba(128, 128, 128, .2);
  text-decoration: none;
}
.campaign-entry .couponOneClick-default::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: -8px 0 0;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  transform: rotate(45deg);
}
.campaign-entry .couponOneClick-default:hover {
  background-color: #D53244;
}
.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;
  width: 560px;
  height: 70px;
  line-height: 70px;
  background: #989898;
  border-radius: 40px;
  color: #fff;
  text-align: center;
  font-size: 26px;
  box-shadow: none;
  font-family: "Lucida Grande", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
/* É¬¿Ü */
.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;
}
/* ==============================================
	mainArea
============================================== */
/*#templateWrap #templateFlame #headline .mainArea {
	background: -webkit-linear-gradient(top, #ffed27 0%, #ffed27 20%, #fff 20%, #fff 100%);
	background: -moz-linear-gradient(top, #ffed27 0%, #ffed27 20%, #fff 20%, #fff 100%);
	background: linear-gradient(to bottom, #ffed27 0%, #ffed27 20%, #fff 20%, #fff 100%);
}*/
#templateWrap #templateFlame #headline .mainArea h1 {
  text-align: center;
  background: url(https://image.books.rakuten.co.jp/books/img/event/marathon/20250719/img/pre-main-bg.png) top center;
  height: 570px;
      background-size: cover;
  background-repeat: no-repeat;
}
#templateWrap #templateFlame #headline .mainArea p {
  padding: 0;
  font-size: 19px;
  color: #333333;
  background: rgba(0, 0, 0, 0);
  height: 64px;
  line-height: 70px;
  text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}
#templateWrap #templateFlame #headline .mainArea h1 img {
  margin: -32px 0 0 0;
}
#templateWrap #templateFlame #headline .mainArea h1 p mark {
  background: #E30F1A;
  height: 30px;
  line-height: 30px;
  padding: 0px 5px 1px 8px;
  display: inline-block;
  font-size: 22px;
  letter-spacing: 2px;
  vertical-align: text-bottom;
  color: #ffffff;
  margin: 0 5px 0 0;
  text-shadow: none;
}
#templateWrap #templateFlame #headline .mainArea h1 p em {
  font-weight: bold;
  font-size: 26px;
  letter-spacing: -1px;
  padding: 0 2px 0 0;
}
#templateWrap #templateFlame #headline .mainArea h1 p strong {
  font-weight: bold;
  font-size: 23px;
  color: #fff;
  letter-spacing: 1px;
  background: #EF363F;
  padding: 0 15px;
  text-shadow: none;
}


#templateWrap #templateFlame #headline .mainArea h1 .ttl{
           padding: 70px 0 20px;
    text-align: center;
}
#templateWrap #templateFlame #headline .mainArea h1 ul{
        display: flex;
    justify-content: center;
    margin: 50px 0 20px;
}
#templateWrap #templateFlame #headline .mainArea h1 ul li p{
       color: #D5082A;
    font-size: 13px;
    height: auto;
    line-height: 1.6;
    background: none;
}
#templateWrap #templateFlame #headline .mainArea h1 ul li .litxt{
       font-size: 13px;
    height: auto;
    line-height: 1.6;
    background: none;
    margin-top: 20px;
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}
#templateWrap #templateFlame #headline .mainArea h1 ul li:nth-child(1){
       margin-right: 35px;
}


/* ==============================================
	cpn-link
============================================== */
#templateWrap #templateFlame #bodyClump .cpn-link {
  width: 560px;
  margin: 25px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 85%;
}
#templateWrap #templateFlame #bodyClump .cpn-link li {
  margin: 0 10px;
  line-height: 2em;
}
/* ==============================================
	h2
============================================== */
#templateWrap #templateFlame #bodyClump .h2 {
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 24px;
  line-height: 55px;
  text-align: center;
  background-image: none;
  background: var(--h2Bg);
  color: var(--h2TxColor);
}
#templateWrap #templateFlame #bodyClump h2.red {
  background-color: #E30F1A;
}
#templateWrap #templateFlame #bodyClump h2.red span {
  color: #fff;
}
#templateWrap #templateFlame #bodyClump h2.black {
  /*background-color: #333;*/
  background-color: #EF363F;
}
#templateWrap #templateFlame #bodyClump h2 span {
  color: #fff;
}
/* ==============================================
	inner
============================================== */
#templateWrap #templateFlame #bodyClump div div.inner {
  width: 950px;
  margin: 0 auto;
}
#templateWrap #templateFlame #bodyClump div div.inner p {
  margin: 0 !important;
  padding: 20px 0 0 !important;
  line-height: 150%;
  text-align: center;
}
/* ==============================================
	itemGenreRanking
============================================== */
#templateWrap #templateFlame #bodyClump div.itemGenreRanking {
  width: 950px !important;
  margin: 20px auto 50px !important;
}
/* ==============================================
	link165x100
============================================== */
#templateWrap #templateFlame #bodyClump .link165x100TypeA ul {
  width: 950px;
  margin: -1px auto 0;
}
#templateWrap #templateFlame #bodyClump .link165x100TypeB ul {
  padding: 20px 0;
}
/* ==============================================
	campaignDetail
============================================== */
#templateWrap #templateFlame #bodyClump .campaignDetail {
  width: 950px;
  margin: 20px auto 0;
}
#templateWrap #templateFlame #bodyClump .campaignDetail h2 {
  margin-bottom: 0;
  line-height: 24px;
}
/* ==============================================
	p-apply
============================================== */
#templateWrap #templateFlame #bodyClump .p-apply {
  width: 950px;
  margin: 20px auto 15px;
  font-size: 90%;
  text-align: center;
}
#templateWrap #templateFlame #bodyClump .p-apply li {
  padding-bottom: 10px;
}
#templateWrap #templateFlame #bodyClump .p-apply li.li3 {
  color: #bf0000;
}
#templateWrap #templateFlame #bodyClump .p-apply li a img {
  display: block;
  margin: 0 auto;
  transition-duration: 0.4s;
  transition-property: opacity;
}
#templateWrap #templateFlame #bodyClump .p-apply li a:hover img {
  -moz-opacity: 0.7;
  opacity: 0.7;
  filter: alpha(opacity=70);
}
/* ==============================================
	cpn-link
============================================== */
#templateWrap #templateFlame #bodyClump .cpn-link {
  width: 560px;
  margin: 25px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
/* ==============================================
	period
============================================== */
#templateWrap #templateFlame #bodyClump dl.period {
  width: 810px;
  margin: 20px auto;
  font-size: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}
#templateWrap #templateFlame #bodyClump dl.period dt {
  float: left;
  width: 260px;
  background: #eee;
  text-align: center;
  padding: 4px 0;
  margin: 2px 10px 2px 0;
}
#templateWrap #templateFlame #bodyClump dl.period dd {
  float: right;
  padding: 4px 0;
  margin: 2px 0;
}
/* ==============================================
	rankingContents
============================================== */
#templateWrap #templateFlame #bodyClump .rankingContents li {
  /*height: 360px;*/
}
#templateWrap #templateFlame #bodyClump .rankingContents li .note span.before {
  text-decoration: line-through;
  color: #999;
  font-size: 1em;
  display: block;
  float: none;
}
#templateWrap #templateFlame #bodyClump .rankingContents li .note span.discountRate {
  font-weight: bold;
}
#template .rankingContents .note a {
  height: auto;
}
/* ==============================================
	snsArea
============================================== */
#templateWrap #templateFlame #bodyClump .snsArea {
  width: 950px;
  margin: 0 auto;
}
#templateWrap #templateFlame #bodyClump .snsArea ul {
  padding: 20px 0;
  overflow: hidden;
}
#templateWrap #templateFlame #bodyClump .snsArea li {
  float: left;
  width: 300px;
}
#templateWrap #templateFlame #bodyClump .snsArea li.mr25 {
  margin-right: 25px;
}
/* ==============================================
	item
============================================== */
#templateWrap #templateFlame #bodyClump .itemTypeA {
  background: url(https://image.books.rakuten.co.jp/books/img/common/template/line_gray.gif) repeat-x bottom;
}
#templateWrap #templateFlame #bodyClump .itemTypeA .image {
  float: left;
  width: 240px;
}
#templateWrap #templateFlame #bodyClump .itemTypeA .note {
  float: right;
  width: 200px;
  overflow: hidden;
}
#templateWrap #templateFlame #bodyClump .itemTypeA .discount {
  font-weight: bold;
  font-size: 18px;
}
/* ==============================================
	API
============================================== */
#template #templateWrap #templateFlame #bodyClump .rankingContents {
  margin: 0;
  padding: 0;
  background: url(//image.books.rakuten.co.jp/books/img/common/template/line_gray.gif)repeat-x bottom;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li {
  height: auto;
  float: none;
  margin: 30px 22px 30px 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li:nth-child(4n) {
  margin-right: 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .image {
  display: table;
  height: 180px;
  width: 180px;
  margin: 0 0 10px 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .image a {
  display: table-cell;
  text-align: center;
  height: 180px;
  width: 180px;
  vertical-align: bottom;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .image a img {
  max-height: 180px;
  max-width: 180px;
  transition-duration: 0.3s;
  transition-property: all;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .image a img:hover {
  opacity: 0.7;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .note {
  height: auto;
  float: none;
  display: block;
  margin: 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .note a {
  height: auto;
  display: block;
  margin: 10px 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .note span.before {
  text-decoration: line-through;
  color: #999;
  font-size: 1em;
  display: block;
  float: none;
  margin: 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .note span.after {
  display: block;
  font-weight: 700;
  color: #bf0000;
  float: none;
  font-size: 1.2em;
  margin: 3px 0 0 0;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents ol li .note span.after span {
  color: inherit;
  font-size: 80%;
}
#template #templateWrap #templateFlame #bodyClump .rankingContents li .note span.discountRate {
  font-weight: bold;
  display: block;
  float: none;
  margin: 5px 0 0;
}
/* ==============================================
	rule_bigsale
============================================== */
#template #templateFlame .rule_bigsale {
  width: 950px;
  margin: auto;
  border: 2px solid #ddd;
  padding: 16px;
  line-height: 1.5em;
}
#template #templateFlame .rule_bigsale h2 {
  background-color: #424242;
  color: #fff;
  text-align: center;
  font-size: 16px !important;
  padding: 16px;
  letter-spacing: 0.5px !important;
}
#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;
}
/* ==============================================
	mobileArea
============================================== */
#templateWrap #templateFlame #bodyClump .mobileArea {
  text-align: center;
  margin-top: 40px;
      padding-bottom: 50px;
}
#templateWrap #templateFlame #bodyClump .mobileArea .bgPink {
  display: block;
  background: #FF008C;
  padding: 7px 18px 8px 20px;
  line-height: 1;
  color: #fff;
  /* margin-right: 8px; */
  font-weight: bold;
  font-size: 110%;
  width: 740px;
  margin: 0 auto;
}
#templateWrap #templateFlame #bodyClump .mobileArea .subTx {
  font-size: 90%;
  line-height: 1.6;
  margin-top: 8px;
}
#templateWrap #templateFlame #bodyClump .mobile-btn a {
  display: block;
  font-size: 20px;
  background: #FF008C;
  padding: 16px;
  line-height: 1;
  color: #fff;
  width: 400px;
  margin: 12px auto 0;
  border-radius: 50px;
  transition: .3s;
}
#templateWrap #templateFlame #bodyClump .mobile-btn a:hover {
  text-decoration: none;
  opacity: .8;
}
#templateWrap #templateFlame #bodyClump .mobile-note {
  font-size: 85%;
  margin-top: 12px;
}
#templateWrap #templateFlame #bodyClump .linkTypeA ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}
#templateWrap #templateFlame #bodyClump .linkTypeA ul li {
  width: 170px;
  margin: 25px 25px 0 0;
}
#templateWrap #templateFlame #bodyClump .linkTypeA ul li:nth-child(5n) {
  margin: 25px 0 0 0;
}
#templateWrap #templateFlame #bodyClump .linkTypeA ul li img {
  width: 100%;
}
#templateWrap #templateFlame #bodyClump .bta-ui-carousel {
  padding: 30px;
}
#templateWrap #templateFlame #bodyClump .ui-carousel {
  width: 950px !important;
  margin: 0 auto !important;
}
.genre-label .cd, .genre-label .book, .genre-label .magazine, .genre-label .fbook, .genre-label .dvd, .genre-label .blu-ray, .genre-label .game, .genre-label .pc, .genre-label .toy, .genre-label .goods {
  background: #BF0000;
  color: #fff;
  padding: 0px 8px;
  font-size: 10px;
  line-height: 2.0;
  letter-spacing: 2px;
}
#templateWrap #templateFlame #bodyClump .genre-label .blu-ray {
  background: #23B0EB;
}



/* ==============================================
	20250719
============================================== */
#templateWrap #templateFlame #bodyClump .rcEntryButton-button{
      background: linear-gradient(100deg, rgba(224, 54, 147, 1) 0%, rgba(191, 0, 0, 1) 100%) ;
    color: #fff;
}
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--applied .rcEntryButton-button, 
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--selected .rcEntryButton-button {
    font-family: Hiragino Kaku Gothic ProN;
    font-style: normal;
    font-weight: normal;
    background: #ebf7ec;
    border-color: #069907;
    color: #069907;
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: 1;
}
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--entered .rcEntryButton-button, 
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--before .rcEntryButton-button, 
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--closed .rcEntryButton-button{
   background: #f3f3f3;
    border-color: #f3f3f3;
    color: #717171;
    font-style: normal;
    font-weight: normal;
        height: 72px;
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: 1;
}


#templateWrap #templateFlame #bodyClump .w-entry .w-more{
       position: absolute;
        bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 99;
}
#templateWrap #templateFlame #bodyClump .w-entry{
      background: #FEFAEE;
          margin-bottom: -15px !important;
          position: relative;
}
#templateWrap #templateFlame #bodyClump .w-entry h2 p{
       width: 100%;
    margin: 0;
    padding: 0;
    font-size: 24px;
    line-height: 55px;
    text-align: center;
    background-image: none;
    background: var(--h2Bg);
    color: var(--h2TxColor);
}
#templateWrap #templateFlame #bodyClump .w-entry .w-img{
    text-align: center;
    margin: 50px 0;
}
#templateWrap #templateFlame #bodyClump .w-entry p{
       color: #D5082A;
    font-size: 13px;
    height: auto;
    line-height: 1.6;
    background: none;
    text-align: center;
    padding-bottom: 50px;
}

#templateWrap #templateFlame #bodyClump .w-entry .w-inner{
  padding-bottom: 100px;
}
#templateWrap #templateFlame #bodyClump .w-fav{
  background: #fefaee;
      padding-bottom: 60px;
}
#templateWrap #templateFlame #bodyClump .w-fav ul li .w-txt{
       margin-right: 50px;
}
#templateWrap #templateFlame #bodyClump .w-fav ul li .favorite .buttonArea__button{
       width: 100px !important;
    height: 100px !important;
    border: 1px solid #b5b5b5 !important;
    border-radius: 8px !important;
     background-size: 60px auto !important;
}
#templateWrap #templateFlame #bodyClump .w-fav ul li .favorite .buttonArea__title{
       font-size: 16px !important;
    margin-bottom: 9px !important;
}

#templateWrap #templateFlame #bodyClump .w-fav .w-flex{
      display: flex;
    justify-content: center;
    padding: 60px 0 30px;
}
#templateWrap #templateFlame #bodyClump .foot{
       background: #e44493;
    padding: 20px;
    text-align: center;
    color: #fff;
    margin-top: 40px;
}
#templateWrap #templateFlame #bodyClump .w-fav p{
       text-align: center;
    margin-bottom: 0 !important;
        font-size: 13px;
}
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--applied .rcEntryButton-button,
#templateWrap #templateFlame #bodyClump .rcEntryButton-status--selected .rcEntryButton-button{
       font-family: Hiragino Kaku Gothic ProN;
    font-style: normal;
    font-weight: normal;
    background: linear-gradient(100deg, rgba(224, 54, 147, 1) 0%, rgba(191, 0, 0, 1) 100%);
    border-color: #e03793;
    color: #fff;
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: 1;
}
.rcEntryButton-applied-text .rcEntryButton-applied-text__inner{
       color: #fff;
}

.entrybtn-02{
       text-align: center;
    margin-bottom: 20px;
}
.entrybtn-02 a{
      margin: 0 auto 15px;
    width: 480px;
    height: 72px;
    background: linear-gradient(100deg, rgba(224, 54, 147, 1) 0%, rgba(191, 0, 0, 1) 100%);
    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;
    padding: 20px;
    display: block;
}
.entrybtn-02 a:hover{
   text-decoration: none;
}

.entrybtn-02 p{
      margin: 0;
}


