@charset "utf-8";
/* =======================================
CSS Overwrite
======================================= */
/* sp-common_20140930.css */
.sliderBox .box-header {
	border: none;
}
.sliderBox .box-header .see-more {
	padding: 0;
	font-size: 12px;
	padding: 16px;
}
.sliderBox .box-header .see-more::after {
	display: none;
}



/* ===============================================
COMMON
=============================================== */
a:link {
    color: #333333;	/*#3366cc*/
}
a:visited {
    color: #822b82;
}

div#contents {
    background: #f7f7f7;
    overflow: hidden;
}

/* article */
article.article {
    background: #fff;
    padding-bottom: 16px;
	margin-bottom: 8px;
	box-shadow: 0 1px 4px #ebebeb;
}
article.article:empty {
	display: none;
}
.article:not(:has(*)){
    display: none;
}


.content-wapper {
	margin-bottom: 0;
}

/* .content-wrap */
.content-wrap {

}
#new-info.content-wrap {
/*margin-bottom: 80px;*/	/*アコーディオン時*/
}

#tieup.content-wrap {

}
#ticket_ns.content-wrap,
#ticket_ps.content-wrap {

}

.genre-book .content-wrap {

}
.genre-book #new-release.content-wrap {

}



/* .content-ttl / .content-ttl_sub */
.content-ttl,
.infoh2wrap {
overflow: hidden;
padding: 16px;
}
.infoh2wrap {
margin-bottom: 0;
}
#new-info .content-ttl,
#ranking-area .content-ttl,
#favorite .content-ttl,
.price-search .content-ttl,
#genre-search .content-ttl {
margin-bottom: 0;
}
.content-ttl_sub {
overflow: hidden;
padding: 0 16px 10px;
}
.content-ttl .content-ttl__name,
.content-ttl_sub .content-ttl__name,
.infoh2wrap .info {
float: left;
font-size: 15px;
font-weight: 700;
color: #333;
display: flex;
}
.content-ttl_sub .content-ttl__name {
font-size: 13px;
}


.content-ttl .content-ttl__name span {
font-size: 12px;
display: contents;
}
.content-ttl .content-ttl__more,
.content-ttl_sub .content-ttl__more,
.infoh2wrap .link {
float: right;
font-size: 12px;
position: relative;
}
/*
.content-ttl .content-ttl__more:after,
.content-ttl_sub .content-ttl__more:after,
.infoh2wrap .link:after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: 0;
display: block;
width: 9px;
height: 18px;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat 0 2px;
background-size: 300px auto;
}
*/
.content-ttl .content-ttl__more a,
.infoh2wrap .link a {
/*color: #09f;*/
}


/* .btn-box */
.btn-box {

}


/* .btn-style */
.btn-style-01 {
display: block;
padding: 10px;
margin: auto;
color: #039;
font-size: 14px;
}

.btn-style-02 {
font-size: 12px;
display: block;
margin: 0 16px 0;
padding: 12px 0;
text-align: center;
border: 1px solid #b5b5b5;
border-radius: 4px;
position: relative;
}
.btn-style-03 {
font-size: 12px;
display: block;
text-align: center;
margin: auto;
vertical-align: middle;
padding: 12px 0;
box-sizing: border-box;
position: relative;
}
@media screen and (max-width: 320px){
	.btn-style-03 {
	/*padding: 6px 25px;*/
	}
}
#calendar .btn-style-02:before,
#calendar .btn-style-03:before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 10px;
display: block;
width: 18px;
height: 18px;
margin: auto;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/rexicon-32-calendar-l.svg) no-repeat 0 1px;
background-size: 18px auto;
}
/*
.btn-style-02:after,
.btn-style-03:after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: 10px;
display: block;
width: 9px;
height: 18px;
margin: auto;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat 0 1px;
background-size: 300px auto;
}
*/
.btn__2col {
	display: table;
	width: 100%;
	border-collapse: separate;
	border-spacing: 11px 0;
	margin-top: 8px;
	padding: 0 5px;
	box-sizing: border-box;
}
.btn__2col .btn__2col__list {
	display: table-cell;
	width: 50%;
	border: 1px solid #b5b5b5;
	border-radius: 4px;
	box-sizing: border-box;
	vertical-align: middle;
}



/* .grad-wrap */
.grad-wrap {
  position: relative;
}
.grad-btn {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: -50px;
  left: 0;
  text-align: center;
}
.grad-btn::before {
  content: "もっと見る";
  padding: 10px 30px;
  background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/icon_arrow_open.png) no-repeat 100% 50%;
  background-size: 15px auto;
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 200px; /*隠した状態の高さ*/
}
.grad-item.grad-item_long {
  height: 500px; /*隠した状態の高さ*/
}
.grad-item::before {
  z-index: 100;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 30px; /*グラデーションで隠す高さ*/
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 70%, rgba(255,255,255,0.9) 70%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 70%, rgba(255,255,255,0.9) 70%, #fff 100%);
  content: "";
}
.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked ~ .grad-btn::before {
  content: "閉じる"; /*チェックされていたら、文言を変更する*/
  padding: 10px 30px;
  background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/icon_arrow_close.png) no-repeat 100% 50%;
  background-size: 15px auto;
  top: 30px;
}
.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}

/* ==============================================
   注目ワード
============================================== */
.rbcomp__campaign__tag {
	padding: 0 16px;
	overflow: hidden;
	/*zoom: 1;*/
}
/*.rbcomp__campaign__tag:before,
.rbcomp__campaign__tag:after {
  content: "";
  display: table;
}
.rbcomp__campaign__tag:after {
  clear: both;
}*/
.rbcomp__campaign__tag li {
	float: left;
	margin-right: 8px;
	margin-bottom: 8px;
}
.rbcomp__campaign__tag li a {
	display: inline-block;
	border: 1px solid #ebebeb;
	border-radius: 4px;
	padding: 8px;
	font-size: 12px;
	line-height: 1.2em;
	color: #333;
}
.rbcomp__campaign__tag li a:hover {
	background: #f7f7f7;
}


/* ===============================================
.slider-box
=============================================== */
.slider {
/*
opacity: 0;
transition: 1s;
*/
}
.slider-box,
.slider-box_02 {
padding: 0 0 0 16px;
position: relative;
}
.slider_margin {
margin-bottom: 24px;
}
.slider_margin_20 {
margin-bottom: 20px;
}


.loader {
text-align: center;
}
.slider-box__list {
width: 100px;
display: inline-block;
margin-right: 10px;
font-size: 14px;
line-height: 1.3;
white-space: normal;
vertical-align: top;
word-break: break-all;
}
.slider-box_02 .slider-box__list {
width: 33%;
margin-right: 0;
padding-right: 12px;
box-sizing: border-box;
}
.slider-box_02 .slider-box__list:nth-child(4),
.slider-box_02 .slider-box__list:nth-child(5),
.slider-box_02 .slider-box__list:nth-child(6) {
margin-top: 10px;
}




/* ===============================================
.normal-box, .normal-box_02
=============================================== */
.normal-box {
padding: 0 15px;
overflow: hidden;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
flex-wrap:wrap;
}
.normal-box .normal-box__list {
/*
float: left;
*/
width: 33.3%;
padding-right: 10px;
box-sizing: border-box;
font-size: 14px;
line-height: 1.3;
white-space: normal;
vertical-align: top;
word-break: break-all;
/*min-height: 250px;*/
margin-bottom: 20px;
}
.normal-box .normal-box__list:nth-child(3n) {
padding-right: 0;
}

.normal-box_02 {
padding: 0 15px;
overflow: hidden;
margin-bottom: -20px;
}
.normal-box_02 .normal-box__list {
float: left;
width: 33.3%;
font-size: 14px;
margin-bottom: 20px;
}



/* ===============================================
.ranking-box
=============================================== */
.ranking-box {
padding: 15px;
clear: left;
}
.ranking-box__top {
}
.ranking-box__top .item-data {
overflow: hidden;
}
.ranking-box__btm {
margin-right: -15px;
overflow: hidden;
margin-bottom: 10px;
}
.ranking-box__list {
box-sizing: border-box;
font-size: 14px;
line-height: 1.3;
white-space: normal;
vertical-align: top;
word-break: break-all;
overflow: hidden;
margin-bottom: 15px;
}
.ranking-box__btm .ranking-box__list {
float: left;
width: 25%;
padding-right: 15px;
box-sizing: border-box;
}

.ranking-box__list a {
display: block;
overflow: hidden;
}



/* ===============================================
.audition-box
=============================================== */
.audition-box {
padding: 15px 15px 0;
}
.audition-box__list {
box-sizing: border-box;
font-size: 14px;
line-height: 1.3;
white-space: normal;
vertical-align: top;
word-break: break-all;
overflow: hidden;
margin-bottom: 10px;
position: relative;
}
.audition-box__list:last-child {
margin-bottom: 0;
}


.audition-box__list .item-data:first-of-type {
overflow: hidden;
padding-right: 120px;
}
.audition-box__list .item-data:last-of-type {
position: absolute;
top: 0;
right: 0;
width: 100px;
}


/* ===============================================
.twoItem-box
=============================================== */
.twoItem-box {
padding: 0 15px;
overflow: hidden;
}

.twoItem-box .twoItem-box__list {
width: 50%;
float: left;
}
.twoItem-box .twoItem-box__list:first-child {
padding-right: 7.5px;
box-sizing: border-box;
}
.twoItem-box .twoItem-box__list:last-child {
padding-left: 7.5px;
box-sizing: border-box;
}

/* ===============================================
slick & bxslider
=============================================== */
/* slick */
/* Slider */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-slider img.slick-loading {
opacity: 0;
transition: 1s;
}

.slick-initialized {
opacity: 1 !important;
}
.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus {
    outline: none;
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}
.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}
.slick-track:after {
    clear: both;
}
.slick-loading .slick-track {
    visibility: hidden;
}
.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide {
    float: right;
}
.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}
.slick-slide.dragging img {
    pointer-events: none;
}
.slick-initialized .slick-slide {
    display: block;
}
.slick-loading .slick-slide {
    visibility: hidden;
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/* bxslider */
/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/bx_loader.gif) center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}



/* slick & bxslider common arrow */
.slick-slider .slick-prev, .slick-slider .slick-next,
.bx-wrapper .bx-prev, .bx-wrapper .bx-next {
position: absolute;
top: 0;
bottom: 0;
margin: auto;
display: inline-block;
width: 32px;
height: 32px;
color: #fff !important;
border-radius: 50px;
text-align: center;
z-index: 1;
font-size: 12px;
line-height: 25px;
opacity: 0.4;
}
.slick-slider .slick-prev,
.bx-wrapper .bx-prev {
  left: 8px;
  background: url(https://image.books.rakuten.co.jp/books/img/common/icon_circle-arrow_left.svg) 0 0 no-repeat;
  background-size: 32px auto;
}
.slick-slider .slick-next,
.bx-wrapper .bx-next {
  right: 8px;
  background: url(https://image.books.rakuten.co.jp/books/img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
  background-size: 32px auto;
}
.slick-slider .slick-disabled,
.bx-wrapper .bx-controls-direction a.disabled {
  display: none !important;
}







/* ===============================================
.item-data__XXX
=============================================== */
/* .item-data__info */
.item-data__info,
.item-data__info_normal {
color: #f93;
font-size: 12px;
font-weight: bold;
margin-bottom: 6px;
}
.normal-box .item-data__info {
margin-bottom: 3px;
}

.item-data__info.noItemDataInfo {
    height: 15.594px;
}

#rankingNS 				.slider-box__list .item-data__info:before,
#ranking3DS 			.slider-box__list .item-data__info:before,
#rankingPS4 			.slider-box__list .item-data__info:before,
#rankingAll 			.slider-box__list .item-data__info:before,
#rankingToy 			.slider-box__list .item-data__info:before,
#rankingNsDev 			.slider-box__list .item-data__info:before,
#rankingPS4Dev			.slider-box__list .item-data__info:before,
#downloadItem			.slider-box__list .item-data__info:before,
#price-down 			.slider-box__list .item-data__info:before,
.slider_ranking			.slider-box__list .item-data__info:before,
.slider_ranking			.slider-box__list .item-data__info_normal:before {
display: inline-block;
content: "";
width: 12px;
height: 12px;
margin-right: 3px;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/rexicon-32-ranking-f.svg) 0 0 no-repeat;
opacity: .5;
}


.item-data__info_sub,
.item-data__info_sub_normal {
font-size: 12px;
border-radius: 5px;
padding: 5px 8px;
color: #fff;
display: table-cell;
vertical-align: top;
position: relative;
height: 2.5em;
background: #999;
}
.item-data__info_sub:after,
.item-data__info_sub_normal:after {
position: absolute;
content: "";
display: block;
width: 0;
height: 0;
bottom: -8px;
left: 10px;
border-style: solid;
border-width: 8px 10px 0 0;
border-color: #999 transparent transparent transparent;
}

#limited .item-data__info_sub {
background: #f93;
}
#limited .item-data__info_sub:after {
border-color: #f93 transparent transparent transparent;
}
#tieup .item-data__info_sub,
#guide-book .item-data__info_sub,
#topic .item-data__info_sub_normal {
background: #83b958;
}
#tieup  .item-data__info_sub:after,
#guide-book  .item-data__info_sub:after,
#topic  .item-data__info_sub_normal:after {
border-color: #83b958 transparent transparent transparent;
}




/* .item-data__image */
.item-data__image {
width: 100px;
height: 100px;
overflow: hidden;
margin-bottom: 6px;
text-align: center;
}
.genre-book .item-data__image,
.genre-magazine .item-data__image,
.genre-dvd .item-data__image {
height: 130px;
}
.genre-goods .item-data__image {
height: 125px;
}
.genre-game .item-data__image {
height: 125px;
}
.genre-game #ranking-toy .item-data__image {
height: 100px;
}

.genre-book #topic  .item-data__image {
height: auto;
margin-bottom: 0;
}
.genre-fbook .item-data__image {
height: auto;
}
.slider-box_02 .item-data__image {
width: auto;
height: auto;
}


#limited .item-data__image,
#tieup .item-data__image,
#topic .item-data__image,
#guide-book .item-data__image {
margin-top: 10px;
}

.normal-box .item-data__image{
width: 80px;
height: 80px;
}
.normal-box_02 .item-data__image {
width: 80px;
height: 60px;
position: relative;
}




.ranking-box .item-data__image {
width: 80px;
height: 80px;
overflow: hidden;
}

.ranking-box__top .item-data__image {
float: left;
padding: 0 10px 0 25px;
position: relative;
}
.ranking-box__top .item-data__image:before {
content: "1";
font-size: 12px;
color: #fff;
position: absolute;
display: block;
width: 12px;
height: 28px;
text-align: left;
top: 0;
left: 0;
padding-top: 2px;
padding-left: 5px;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat -56px 0;
background-size: 300px auto;
}
.ranking-box__top .ranking-box__list:nth-child(2) .item-data__image:before {
content: "2";
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat -76px 0;
background-size: 300px auto;
}
.ranking-box__top .ranking-box__list:nth-child(3) .item-data__image:before {
content: "3";
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat -96px 0;
background-size: 300px auto;
}
.ranking-box__btm .item-data__image {
width: auto;
max-width: 80px;
text-align: right;
height: 60px;
position: relatiave;
margin-bottom: 3px;
}


.audition-box .item-data__image {
width: 80px;
height: 80px;
overflow: hidden;
float: left;
padding: 0 10px 0 0;
}

.twoItem-box .item-data__image {
width: 100%;
height: 100%;
}


.item-data__image img {
max-width: 100%;
max-height: 100%;
vertical-align: middle;
/*opacity: 0;
transition: 1s;*/
}
.item-data__image img.lazy-loaded {
    opacity: 1;
}

.normal-box_02 .item-data__image img {
max-width: 80px;
max-height: initial;
max-height: auto;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}

.ranking-box__btm .item-data__image img {
width: auto;
max-width: 60px;
}
.ranking-box__btm .item-data__image:before {
content: "4";
font-size: 12px;
color: #fff;
position: absolute;
display: block;
width: 13px;
height: 14px;
text-align: left;
background: #999;
border-radius: 6px;
padding-left: 3px;
box-sizing: border-box;
}
.ranking-box__btm .ranking-box__list:nth-child(2) .item-data__image:before { content: "5"; }
.ranking-box__btm .ranking-box__list:nth-child(3) .item-data__image:before { content: "6"; }
.ranking-box__btm .ranking-box__list:nth-child(4) .item-data__image:before { content: "7"; }
.ranking-box__btm .ranking-box__list:nth-child(5) .item-data__image:before { content: "8"; }
.ranking-box__btm .ranking-box__list:nth-child(6) .item-data__image:before { content: "9"; }
.ranking-box__btm .ranking-box__list:nth-child(7) .item-data__image:before {
content: "10";
font-size: 10px;
padding-left: 0;
}

/* .item-data__genre */
.item-data__genre {
	margin-bottom: 4px;
}
.item-data__genre img {
width: 35px;
display: block;
}



/* .item-data__title */
.item-data__title {
font-size: 12px;
color: #333;
margin-bottom: 3px;
}
.normal-box_02 .item-data__title {
padding-right: 20px;
}


/* .item-data__name */
.item-data__name {
color: #999;
margin-bottom: 3px;
font-size: 12px;
}
.normal-box_02 .item-data__title {
padding-right: 20px;
}


/* .item-data__price */
.item-data__price {
color: #bf0000;
margin-bottom: 5px;
}

/* .item-data__listprice */
.item-data__listprice {
text-decoration: line-through;
font-size: 11px;
color: #696969;
}

/* .item-data__discount_rate */
.item-data__discount_rate {
color: #f93;
font-weight: bold;
font-size: 15px;
line-height: 1;
}
.item-data__discount_rate span {
font-size: 12px;
}

/* .item-data__audio */
.item-data__audio a {
display: block;
max-width: 100px;
box-sizing: border-box;
border: 1px solid #aaa;
border-radius: 2px;
padding: 5px 5px 5px 20px;
text-align: center;
font-size: 12px;
line-height: 1.5;
background: #f5f5f5;
position: relative;
color: #333;
}
.item-data__audio a:before {
position: absolute;
content: "";
display: block;
width: 13px;
height: 13px;
margin: auto;
top: 7px;
left: 25px;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/rexicon-32-headphone-l.svg) 0 0 no-repeat;
background-size: 13px auto;
opacity: .5;
}







.item-data__audio object {
margin: 0;
padding: 0;
}

/* .item-data__buy */
.item-data__buy a {
display: block;
max-width: 100px;
box-sizing: border-box;
border: 1px solid #aaa;
border-radius: 2px;
padding: 5px;
margin-top: 10px;
text-align: center;
font-size: 12px;
}

.item-data__buy object {
margin: 0;
padding: 0;
}




















/* ===============================================
#new-info
=============================================== */
#new-info #infoArea .infoh2wrap .link {
display: none;
}
#new-info .listNew {
	padding: 0 16px;
}
#new-info .listNew li {
border-bottom: 1px dotted #ccc;
}
#new-info .listNew li:last-child {
border-bottom: none;
}
#new-info .listNew li .bullet {
display: none;
}
#new-info .listNew li .new {
display: none;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat -25px 0;
background-size: 300px auto;
vertical-align: middle;
margin-left: 2px;
}
#new-info .listNew li a {
display: block;
padding: 8px 32px 8px 8px;
font-size: 13px;
color: #333;
position: relative;
}
#new-info .listNew li a:after {
content: "";
display: block;
width: 7px;
height: 7px;
margin-top: -5px;
border-top: 1px solid #b5b5b5;
border-right: 1px solid #b5b5b5;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
right: 16px;
top: 50%;
}







/* ===============================================
#ranking-area
=============================================== */
.ranking {
position: relative;
}



/* .bx-tabContainer_01, 02, 03 */
.bx-tabContainer_01,
.bx-tabContainer_02,
.bx-tabContainer_03 {
overflow-x: auto;
border-top: 1px dotted #ccc;
border-bottom: 1px dotted #ccc;
padding: 15px 0;
}
.bx-tabContainer_01 {
border-top: none;
}
.bx-tab_01 {
display: table;
}
.bx-tab_02 {
display: table;
width: 200%;
}
@media screen and (min-width: 400px){
.bx-tab_02 { width: 150%; }
}
@media screen and (min-width: 580px){
.bx-tab_02 { width: auto; }
}
.bx-tab_03 {
display: table;
width: 150%;
}
@media screen and (min-width: 400px){
.bx-tab_03 { width: 120%; }
}
@media screen and (min-width: 580px){
.bx-tab_03 { width: auto; }
}

.bx-tab__button_01,
.bx-tab__button_02,
.bx-tab__button_03 {
    display: table-cell;
    padding: 0 3px;
    box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
    min-width: 90px;
}
.bx-tab__button_01 a,
.bx-tab__button_02 a,
.bx-tab__button_03 a {
    color: #fff;
    display: block;
	padding: 0 10px;
    font-size: 14px;
    line-height: 2.5;
    background: #999;
    border-radius: 50px;
    min-height: 35px;
    box-sizing: border-box;
}
.bx-tab__button_01.active a,
.bx-tab__button_02.active a,
.bx-tab__button_03.active a {
    background: #bf0000;
    position: relative;
}
.bx-tab__button_01.active a:after,
.bx-tab__button_02.active a:after,
.bx-tab__button_03.active a:after {
position: absolute;
content: "";
display: block;
width: 0;
height: 0;
bottom: -11px;
left: 0;
right: 0;
margin: auto;
border-style: solid;
border-width: 8px 14px 0 14px;
border-color: #bf0000 transparent transparent transparent;
}

/*
.ranking__nav {
padding: 15px 0;
border-top: 1px dotted #ccc;
border-bottom: 1px dotted #ccc;
	white-space: nowrap;
	overflow: hidden;
	overflow-x: scroll;
}
.ranking__weekly .ranking__nav {
border-top: none;
}
.ranking__nav li {
display: inline-block;
margin-left: 10px;
}
.ranking__nav li a {
display: block;
background: #999;
color: #fff;
font-size: 14px;
line-height: 1;
padding: 10px 15px;
border-radius: 50px;
}
.ranking__nav li.active a {
background: #bf0000;
}
*/








/* ===============================================
#favorite
=============================================== */
#favorite.content-wrap {
margin-bottom: 80px;
}


#favorite .favorite-box__list {
border-bottom: 1px dotted #ccc;
font-size: 14px;
line-height: 1.3;
}
#favorite .favorite-box__list:nth-child(even) {
background: #f5f5f5;
}
#favorite .favorite-box__list a {
display: block;
box-sizing: border-box;
padding: 15px 40px 15px 15px;
position: relative;
overflow: hidden;
}
#favorite .favorite-box__list a:after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: 15px;
display: block;
margin: auto;
width: 9px;
height: 18px;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat 0 2px;
background-size: 300px auto;
}

.favorite-box__data__image {
float: left;
width: 80px;
height: 80px;
overflow: hidden;
text-align: right;
}
.favorite-box__data__image img {
max-width: 80px;
}
.favorite-box__data__data {
overflow: hidden;
padding-left: 10px;
box-sizing: border-box;
}
.favorite-box__data__name {
font-weight: bold;
color: #333;
margin-bottom: 3px;
}
.favorite-box__data__desc {
color: #333;
font-size: 12px;
margin-bottom: 3px;
}
.favorite-box__data__desc_sub {
font-size: 12px;
color: #999;
}






/* ===============================================
.ticket
=============================================== */
.ticket {
margin:  0 15px;
}
.ticket dt {
text-align: center;
padding: 2px 10px;
background: #ccc;
color: #fff;
font-size: 14px;
margin-bottom: 10px;
}
#ticket_ns .ticket dt {
background: #e60012;
}
#ticket_ps .ticket dt {
background: #044192;
}
#ticket_ns .ticket dt img {
width: 100%;
max-width: 150px;
}
#ticket_ps .ticket dt img {
width: 100%;
max-width: 160px;
}

.ticket ul {
overflow: hidden;
}
.ticket ul li {
float: left;
width: 50%;
padding: 0 10px;
box-sizing: border-box;
}
.ticket ul li a {
display: block;
padding: 5px;
text-align: center;
border: 1px solid #ccc;
border-radius: 10px;
font-size: 12px;
margin-bottom: 5px;
position: relative;
color: #666;
}
.ticket ul li a:after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: 15px;
display: block;
margin: auto;
width: 9px;
height: 18px;
background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/genre-top.png) no-repeat 0 2px;
background-size: 300px auto;
}
.ticket ul li a span {
font-weight: bold;
color: #333;
}
.ticket ul li a b {
font-size: 18px;
font-weight: bold;
color: #bf0000;
}
.ticket ul li a + div {
font-size: 12px;
text-align: center;
}
.ticket ul li a + div span {
color: #bf0000;
}







/* ===============================================
.linkList_1rows
=============================================== */
.link-list_1rows {
	padding: 0 16px;
}
.link-list_1rows .link-list_1rows__list {
	border-bottom: 1px dotted #9c9c9c;
}
.link-list_1rows .link-list_1rows__list:last-child {
	border-bottom: none;
}
.link-list_1rows .link-list_1rows__list a {
	display: block;
	padding: 8px 32px 8px 8px;
	font-size: 13px;
	color: #333;
	position: relative;
}
.link-list_1rows li a:after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    margin-top: -5px;
    border-top: 1px solid #b5b5b5;
    border-right: 1px solid #b5b5b5;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 16px;
    top: 50%;
}
.link-list_1rows .link-list__adult a {
    background: #ebebeb;

}
.link-list_1rows .link-list__adult span {
    color: #f16a00;
    font-size: 11px;
}

/* ===============================================
.kw-link
=============================================== */
/*
.kw-link {
margin: 0 15px;
}
.kw-link__list {
display: inline-block;
margin: 0 10px 10px 0;
}
.kw-link__list a {
display: inline-block;
border: 1px solid #999;
border-radius: 5px;
padding: 10px;
font-size: 12px;
}
*/

/* ===============================================
.kw-feature
=============================================== */
.kw-link {
margin: 0 16px;
}
.kw-title {
padding: 16px;

font-size: 15px;
font-weight: 700;
}
.kw-link {
overflow: hidden;
}
.kw-link li {
float: left;
margin-right: 8px;
margin-bottom: 8px;
}
.kw-link li a {
	display: inline-block;
    border: 1px solid #ebebeb;
    border-radius: 4px;
    padding: 8px;
    font-size: 12px;
    line-height: 1.2em;
    color: #333;
}
.kw-link li a:hover {
	background: #f7f7f7;
}


/* ===============================================
#genre-serch
=============================================== */
#genre-serch li a {
font-size: 14px;
}

/* ===============================================
1行1列バナー .bnr-layout
=============================================== */
.bnr-layout01 {
	padding: 0 16px;
	margin: auto;
	text-align: center;
}
.bnr-layout01 img {
width: 100%;
max-width: 414px;
vertical-align: bottom;
}


/* ==============================================
	特集用 1line 2banners
============================================== */
#genre_cpn .rbcomp__campaign__bnr--two-bnr {
	padding: 0 16px;
}
#genre_cpn .rbcomp__campaign__bnr--two-bnr ul {
	overflow: hidden;
	margin-bottom: 16px;
}

#genre_cpn .rbcomp__campaign__bnr--two-bnr ul li {
	float: left;
	width: 50%;
	padding: 0 4px;
	box-sizing: border-box;
    text-align: center;
}

#genre_cpn .rbcomp__campaign__bnr--two-bnr ul li img {
    width: 100%;
    max-width: 140px;
    vertical-align:  middle;
}

#genre_cpn .rbcomp__campaign__bnr--two-bnr ul li:nth-child(odd) {

}

#genre_cpn .rbcomp__campaign__bnr--two-bnr ul li p {
	display: none;
    line-height:  1.3;
    font-size: 14px;
    color: #000;
    /* margin: 5px 0px; */
}

/* ==============================================
	ページの先頭に戻る
============================================== */
#page-top {
	display: none;
	margin: 0 ;
	padding: 0 ;
}
#page-top p {
	margin: 0 ;
	padding: 0 ;
	bottom: 10px;
	right: 10px;
	position: fixed;
	-moz-opacity: 0.8;
	opacity: 0.8;
	filter:alpha(opacity=50);
	z-index: 90;
}
#page-top p img {
	width: 50px;
	height: 50px;
}

/* ==============================================
	nowordLine
============================================== */
div#nowordLine {
    display: none;
    padding: 5px 10px;
    border-bottom: 1px solid #ababab;
    color: #bf0000;
    font-weight: bold;
    font-size: 14px;
}
/* ==============================================
 genreTopHeader for Genre Top Page
============================================== */
.genreTopHeader {

}
.genreTopHeader h1 {
    padding: 16px;
    /*border-left: 5px solid #bf0000;*/
    background: #fff;
    font-size: 18px;
    font-weight: bold;
}

.genre-fbook .genreTopHeader h1 {
	margin-bottom: 8px;
	box-shadow: 0 1px 4px #ebebeb;
}


.ttl h2 {
    padding: 16px;
    font-size: 15px;
    font-weight: 700;
	color: #333;
}

/* =======================================================
/* .footer-genre__menu
======================================================= */
.footer-genre .footer-genre__menu {
	margin: 0 16px;
}
.footer-genre .footer-genre__menu li a {
	display: block;
	padding: 12px;
	border-bottom: 1px solid #d1d1d1;
	font-size: 13px;
	line-height: 1.5;
	color: #333;
	text-align: center;
	position: relative;
}
.footer-genre ul.footer-genre__menu li:last-child a {
	border-bottom: none;
}

.genre_software .footer-genre ul.footer-genre__menu li.list-goods a {
	border-bottom: none;
}

.footer-genre ul.footer-genre__menu li a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 50%;
	height: 43px;
	margin: auto;
	box-sizing: border-box;
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 0 no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-ebook a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -45px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-magazine a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -90px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-foreignbook a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -135px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-dvd a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -180px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-cd a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -225px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-game a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -270px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-software a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -315px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-goods a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 -360px no-repeat;
	background-size: 107px auto;
}
.footer-genre ul.footer-genre__menu li.list-book a:before {
	background: url(https://image.books.rakuten.co.jp/books/img/common/img/sp/navi-08.png?t=20240314-1) 0 0 no-repeat;
	background-size: 107px auto;
}


.footer-genre ul.footer-genre__menu li a:after {
	background: none;
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	margin: auto;
	border-top: 1px solid #b5b5b5;
	border-right: 1px solid #b5b5b5;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 16px;
}
.footer-genre ul.footer-genre__menu li a span {
	z-index: 100;
	position: relative;
}

/* for each genre */
.genre_book .list-book,
.genre_magazine .list-magazine,
.genre_foreign-book .list-foreignbook,
.genre_dvd-blu-ray .list-dvd,
.genre_cd .list-cd,
.genre_game .list-game,
.genre_software .list-software,
.genre_goods .list-goods {
display: none !important;
}


/* =======================================================
 Ad banners
======================================================= */
.adNetwork {
    width: 320px;
    margin: 8px auto;
}
.pushAd {
    width: auto;
    margin: 8px 16px;
}
.pushAd li.img {
    text-align: center;
}
.pushAd li a img {
    width: 100%;
    max-width: 414px;
    vertical-align: middle;
    height: auto;
}






/* =======================================================
new-item
======================================================= */
.new-item {
	padding: 16px 16px 0;
}

.new-item a {
	display: block;
	padding: 12px 16px;
	border: 1px solid #b6b6b6;
	border-radius: 4px;
	font-size: 12px;
	color: #333;
	position: relative;
}
.new-item a:after {
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	margin-top: -5px;
	border-top: 1px solid #b5b5b5;
	border-right: 1px solid #b5b5b5;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: 16px;
	top: 50%;
}



/* =======================================================
sliderBox
======================================================= */
div#contents div.sliderBox {
    border-right: none;
    border-left: none;
    background: #fff;
}
div#contents div.sliderBox h2 {
    color: #333;
    font-weight: bold;
    font-size: 15px;
	padding: 16px;
}
div#contents div.sliderBox h2 a {
    display: inline;
    color: #003399;
    text-shadow: none;
}
div#contents div.sliderBox div.sliderInner {
    padding: 0;
    background: #ffffff;
    border: none;
}
div.sliderBox.ranking div.carousel {
    margin-top: 2px;
}
div.sliderBox.ranking div.carousel div.imageViewer {
    height: 188px;
}
div.sliderBox .sliderList li {
    text-align: left;
}
div.sliderBox .sliderList .genreIcon {
    padding: 0;
}
div.sliderBox .sliderList .sliderTxt {
    padding: 0;
    font-size: 12px;
    color: #000000;
}
div.sliderBox .sliderList .author {
    width: 90px;
    height: 15px;
    overflow: hidden;
    color: #666666;
    font-size: 12px;
    display: inline-block;
    padding: 0;
}
div.sliderBox div.sliderInner ul.sliderList {
    overflow: hidden;
    zoom: 1;/*  margin-left: -10px;*/
}
div.sliderBox div#search div#searchBtn input {
    height: 30px;
    font-size: 16px;
}
ul.sliderList > li {
    float: left;
    margin-left: 12px;
    width: 90px;
}
ul.sliderList > li:first-child {
	margin-left: 16px;
}
.sliderList a {
    display: block;
}
.sliderList a.sliderTxt {
    font-size: 12px;
    word-wrap: break-word;
    text-align: left;
    padding-top: 0px;
    line-height: 1.3;
    text-decoration: none;
    height: 2.5em;
    overflow: hidden;
    color: #333333;
    margin-bottom: 4px;
}
.sliderList .author {
    display: block;
    width: 100%;
    color: #666666;
    font-size: 12px;
    padding: 0;
    text-overflow: ellipsis;
    text-align: left;
}
.sliderList a.sliderImg {
    display: block;
    width: 90px;
    height: 113px;
    vertical-align: bottom;
    position: relative;
    margin-bottom: 4px;
}
.sliderList li img {
    max-width: 90px;
    max-height: 113px;
    /*  position: absolute;*/
    left: 0;
    bottom: 0;
}
.sliderList li img.icon_ebook {
    max-width: none;
    max-height: none;
    position: relative;
    vertical-align: middle;
    margin: 2px 4px 2px 0;
}
.sliderList li span.number {
    display: block;
    text-align: left;
    height: 21px;
}
.sliderList li span.number img {
    max-width: 22px;
    max-height: 21px;
    position: relative;
}
.sliderList span.genreIcon {
    padding-top: 5px;
    text-align: left;
    vertical-align: bottom;
    line-height: 1;
    display: block;
}
.sliderList li span.genreIcon img {
    position: relative;
    width: 35px;
    height: 15px;
}
.sliderBtnBox {
    display: -webkit-box;
    display: box;
}
.sliderBtnPrev, .sliderBtnNext {
    display: none;
    width: 26px;
    height: 32px;
    background: url(//image.books.rakuten.co.jp/books/img/common/smart/arrow.png) 0 0 no-repeat;
    background-width: 24px;
    background-height: 32px;
}
.sliderPageIndicators {
    text-align: center;
    min-width: 90px;
    display: -webkit-box;
    -webkit-box-flex: 1;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    display: box;
    box-flex: 1;
    box-align: center;
    box-pack: center;
}
.sliderPageLamper {
    width: 10px;
    height: 10px;
    border: solid 1px white;
    margin: 3px;
}



.sliderBox .sliderInner {

}
.sliderBox .sliderInner .list {
	padding: 0 16px;
	overflow: hidden;
	margin-bottom: 8px;
	/*box-shadow: 0 1px 4px #ebebeb;*/
}
.sliderBox .sliderInner .list li {
	margin-bottom: 16px;
	font-size: 12px;
}
.sliderBox .sliderInner .list dl {
	display: block;
	clear: left;
	overflow: hidden;
}
.sliderBox .sliderInner .list dt {
	float: left;
}
.sliderBox .sliderInner .list dt img {
	vertical-align: middle;
}
.sliderBox .sliderInner .list dd {
	margin-left: 100px;
}
.sliderBox .sliderInner .list dd.title {

}
.sliderBox .sliderInner .list dd em {
	color: #bf0000
}


/* =======================================================
carousel
======================================================= */
div.carousel {
    position: relative;
}
div.carousel div.imageViewer {
    position: relative;
    min-width: 300px;
    height: 170px;
    margin: auto;
    overflow: hidden;
}
div#slider4.carousel div.imageViewer {
    height: 194px;
}
div.carousel div.imageViewer ul {
    position: absolute;
    width: 900px;
}
div.carousel div.imageViewer li {
    float: left;
    width: 90px;
    /*  text-align: center;*/
    vertical-align: bottom;
}
div.carousel div.imageViewer img {
    padding: 0;
    border-top: none;
    border-right: none;
    border-bottom: none;
    border-left: none;
    position: static;
    vertical-align: bottom;
}
div.carousel div.prev, div.carousel div.next {
    display: none;
    position: absolute;
    bottom: 40%;
    margin: 0px;
    z-index: 10;
}
div.carousel div.prev {
    left: 0px;
}
div.carousel div.prev.none {
    color: #999999;
}
div.carousel div.next {
    right: 0;
}
div.carousel div.next.none {
    color: #999999;
}
div.carousel .pager {
    overflow: hidden;
    height: 14px;
    margin: auto;
    text-align: center;
}
div.carousel ul.pager li {
    display: inline-block;
    background: #d4d4d4;
}
div.carousel ul.pager li.current {
    background: #666666;
}


/* =======================================================
goods top common area
======================================================= */
article.article:has(.flexContentsCommon) {
    background:unset;
    padding-bottom: 0;
  }
.flexContentsCommon img {
    max-width: 100%;
    max-height: 100%;
}

.flexContentsCommon .flexContents__box {
    background: #ffffff;
    overflow: hidden;
    margin-bottom: 8px;
    box-shadow: 0 1px 4px #ebebeb;
}
.flexContentsCommon .adTop {
    position: relative;
    padding: 24px 40px;
}

.flexContentsCommon .adTop:before,
.flexContentsCommon .adTop:after {
    position: absolute;
    width: 0;
    height: 0;
    border-right: 80px solid transparent;
    content: '';
}

.flexContentsCommon .adTop:before {
    bottom: 16px;
    left: 16px;
    border-bottom: 80px solid #f59600;
}

.flexContentsCommon .adTop:after {
    bottom: 18px;
    left: 18px;
    border-bottom: 80px solid #ffffff;
}

.flexContentsCommon .adTop__inner {
    padding: 24px 0;
}

.flexContentsCommon .adTop__inner:before,
.flexContentsCommon .adTop__inner:after {
    position: absolute;
    width: 0;
    height: 0;
    border-left: 80px solid transparent;
    content: '';
}

.flexContentsCommon .adTop__inner:before {
    top: 16px;
    right: 16px;
    border-top: 80px solid #f59600;
}

.flexContentsCommon .adTop__inner:after {
    top: 18px;
    right: 18px;
    border-top: 80px solid #ffffff;
}

.flexContentsCommon .adTop__inner .adContent {
    display: table;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    table-layout: fixed;
    vertical-align: middle;
    position: relative;
    z-index: 1;
}

.flexContentsCommon .adTop__inner .adContent__head,
.flexContentsCommon .adTop__inner .adContent__body {
    display: table-cell;
    vertical-align: middle;
}

.flexContentsCommon .adTop__inner .adContent__head .title,
.flexContentsCommon .adTop__inner .adContent__body .title {
    margin: 0 0 8px;
    font-size: 15px;
    font-weight: 700;
    color: #333;
}

.flexContentsCommon .adTop__inner .adContent__head .content,
.flexContentsCommon .adTop__inner .adContent__body .content {
    font-size: 14px;
    color: #4d4d4d;
    font-weight: normal;
}

.flexContentsCommon .adTop__inner .adContent__head {
    padding-right: 16px;
    font-size: 0;
    text-align: right;
}

.flexContentsCommon .adTop__inner .adContent__head img {
    width: auto;

}

.flexContentsCommon .adTop__inner .adContent:hover {
    text-decoration: none;
}

.recommendFeatureCommon .featureContents {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0 auto;
    padding: 0 16px;
}
.recommendFeatureCommon .topPanel__head{
    font-size: 15px;
    font-weight: bold;
    color: #333;
    text-align: left;
    margin: 0 auto;
    padding:16px;
}

.recommendFeatureCommon .featureContents__item {
    width: 50%;
    box-sizing: border-box;
    padding: 0 4px 16px;
    text-align: center;
}
.recommendFeatureCommon .featureContents__item a {
  height: auto;
}

.recommendFeatureCommon .featureContents__item img {
  display: block;
    width: 100%;
    height: auto;
    max-width: 140px;
}
