
/*------------ header+side common ------------*/

.shadow{
box-shadow:2px 2px 4px 0px #DCDCDC;
}

.button{
display: inline-block;
border-radius: 2px;
}
.button.noradius{
border-radius: 0px;
}
.button a:hover,
.button a{
    display: inline-block;
    text-decoration:none !important;
    cursor:pointer
}
.button span{
    text-align:center;
    display:block;
}
.button span span{
    background-image:none;
}

.button.gray{
background:#969696;
color: #FFFFFF;
text-decoration: none;
text-shadow: 0px -1px 0px #666666;
}
.button.noshadow{
text-shadow: none !important;
}
.button.gray:hover{
background:#B5B5B5;
}
.button.white{
background:#FFFFFF;
text-shadow: 0px 1px 0px #CCCCCC;
}
.button.white:hover{
background:#E6E6E6;
}

.button.arrow_right_white > span,
.button.arrow_right_white a > span{
    background:transparent url(/resources/a/pc/common/images/bg_arrow_right_white.png) 10px 50% no-repeat !important;
}

.button.disabled{
    background-color:#C9C9C9 !important;
    color:#FFFFFF !important;
    text-shadow: none !important;
    border:1px solid #9A9A9A !important;
}
.button.disabled a{
    background-color:#C9C9C9 !important;
    color:#FFFFFF !important;
        cursor:default;
}
.button.disabled span span{
box-shadow:inset 0px 1px 0px 0px #D6D6D6 !important;
}


.button.disabled2{
    background-image:url(/resources/a/pc/v2/images/product/disabled_line.png);
    color:#CCCCCC !important;
    text-shadow: none !important;
    border:1px solid #E6E6E6 !important;
}


.button span span span,
.button a span span span,
.button a:hover span span span,
.button a:active span span span{
    border-bottom:none !important;
    box-shadow:none !important;
}



/* white_emboss *****************************************************/

.button.white_emboss{
text-decoration:none;
text-align:center;
background-color:#FFFFFF;
background-repeat:no-repeat;
border:1px solid #CCCCCC;
color:#333333;
}
.button.white_emboss:hover {
    border:1px solid #969696;
}

.button.white_emboss a{
    color: #333333;
}
.button.white_emboss a:hover{
    color: #333333;

}
.button.white_emboss a:active span span{
border-bottom:1px solid #969696;
box-shadow:inset 0px 2px 0px 2px #F4F4F4;
}



/* gray_emboss *****************************************************/

.button.gray_emboss{
text-decoration:none;
text-align:center;
background-color:#4D4D4D;
background-image:none;
background-repeat:no-repeat;
border:1px solid #383838;
color:#FFFFFF;
text-shadow: 0px -1px 0px #000000;
}
.button.gray_emboss a{
    color: #FFFFFF;
}
.button.gray_emboss a:hover{
    background-color:#313131;
    color: #FFFFFF;
}
.button.gray_emboss span span{
box-shadow:inset 0px 1px 0px 0px #7A7A7A;
}
.button.gray_emboss a:active span span{
box-shadow:inset 0px 2px 0px 2px #111111;
}

/* green_emboss *****************************************************/

.button.green_emboss{
text-decoration:none;
text-align:center;
background-color:#69A707;
background-image:none;
background-repeat:no-repeat;
border:1px solid #619D03;
color:#FFFFFF;
text-shadow: 0px -1px 0px #548606;
}
.button.green_emboss a{
    color: #FFFFFF;
}
.button.green_emboss a:hover{
    background-color:#5A9300;
    color: #FFFFFF;
}
.button.green_emboss a:hover span span{
    border-bottom:1px solid #5A9300;
}
.button.green_emboss span span{
box-shadow:inset 0px 1px 0px 0px #ADC980;
}
.button.green_emboss a:active span span{
border-bottom:1px solid #969696;
box-shadow:inset 0px 2px 0px 2px #548606;
}

/* orange_emboss *****************************************************/

.button.orange_emboss{
text-decoration:none;
text-align:center;
background-color:#FF5A00;
background-image:none;
background-repeat:no-repeat;
border:1px solid #E95200;
color:#FFFFFF;
text-shadow:-1px -1px 1px #D54B00;
}
.button.orange_emboss a{
color:#FFFFFF;
}
.button.orange_emboss a:hover{
background-color:#F04F08;
color:#FFFFFF;
}
.button.orange_emboss a:hover span span{
border-bottom:1px solid #F04F08;
}
.button.orange_emboss span span{
border-bottom:1px solid #FF5A00;
box-shadow:inset 0px 1px 0px 0px #FFA473;
}
.button.orange_emboss a:active span span{
border-bottom:1px solid #FFA473;
box-shadow:inset 0px 2px 0px 2px #D54B00;
}

/* white_green_emboss *****************************************************/

.button.white_green_emboss{
text-decoration:none;
text-align:center;
background-color:#FFFFFF;
background-image:none;
background-repeat:no-repeat;
border:1px solid #969696;
color:#FFFFFF;
text-shadow: 0px -1px 0px #E7E7E7;
}
.button.white_green_emboss a{
    color: #69A707;
}
.button.white_green_emboss a:hover{
    background-color:#F1F1F1;
    color: #69A707;
}
.button.white_green_emboss a:hover span span{
    border-bottom:1px solid #969696;
}
.button.white_green_emboss span span{
box-shadow:inset 0px 1px 0px 0px #FFFFFF;
}
.button.white_green_emboss a:active span span{
border-bottom:1px solid #969696;
box-shadow:inset 0px 2px 0px 2px #E7E7E7;
}

/**************************************************************************/

.button.white_orange_emboss{
text-decoration:none;
text-align:center;
background-color:#FFFFFF;
background-image:none;
background-repeat:no-repeat;
border:1px solid #969696;
color:#FF5A00;
text-shadow: 0px -1px 0px #E7E7E7;
}
.button.white_orange_emboss a{
    color: #FF5A00;
}
.button.white_orange_emboss a:hover{
    background-color:#F1F1F1;
    color: #FF5A00;
}
.button.white_orange_emboss a:hover span span{
    border-bottom:1px solid #969696;
    color: #FF5A00;
}
.button.white_orange_emboss span span{
border-radius:3px;
border-bottom:1px solid #969696;
box-shadow:inset 0px 1px 0px 0px #F5F5F5;
}
.button.white_orange_emboss a:active span span{
border-bottom:1px solid #969696;
box-shadow:inset 0px 2px 0px 2px #E7E7E7;
}

.button.orange{
background: -webkit-gradient(linear, left top, left bottom, color-stop(0.03, #F55D13), color-stop(0.00, #F68643));
background: linear-gradient(to bottom, #F55D13 0%, #F68643 3%);
border:1px solid #D1500E;
}

/*------------ book ------------*/

.book{
width:105px;
float:left;
margin:0 10px 0 0;
}
.book.nofloat{
float:none;
}

.book:last-child{
margin:0 0px 0 0;
}

.book .title{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
margin: 0 0 10px;
text-align:left;
height: 2.5em;
font-size: 13px;
line-height: 16px;
}

.book .title.multiline{
white-space: normal;
}

.book .title a{
color: #333333;
}

.book .caption{
font-size:11px;
line-height:1.2;
overflow: hidden;
text-overflow: ellipsis;
margin:0 0 10px 0;
height: 53px;
}

.book .pitarea{
    height:174px;
    overflow: hidden;
}

.book .picture{
width:115px;
display:table-cell;
vertical-align:bottom;
text-align: center;
height: 145px;
padding-bottom: 10px;
overflow: hidden;
}
.book .picture img,
.product_series_detail dt img {
max-width:101px;
max-height: 143px;
vertical-align: bottom;
}
.spcms .item-thumb img,
.book .picture img,
.product_series_detail dt img ,
.product_image img {
border: solid 1px #E5E5E5;
box-shadow: none;
}
.bookshadow img {
border: solid 1px #E5E5E5;
box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.14);
}
.bookborder img {
border: solid 1px #E5E5E5;
}
.book .author{
margin: 0 0 10px;
font-size: 12px;
line-height: 14px;
height: 14px;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
/* 特集ページ用旧デザイン(#feature_module) */
#feature_module .book .author{
    margin: 0 0 10px;
    font-size: 12px;
    line-height: 14px;
    height: auto;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.book > .txtarea:last-child > .author:last-child {
    margin-bottom: 0;
}
.book .author.ptmark{
display: block;
background:url(/resources/a/pc/common/images/icon_p.png) no-repeat 88px center;
padding-right:20px;
}
.book .btnarea {
width:105px;
clear:both;
}
.book .price.sale {
    color: #EE0000;
    font-weight: bold;
}

/* キープ & 試し読みタグ */
.book .btnarea li{
width: 46px;
font-size:10px;
display: block;
}

.book .btnarea li.read_book{
float:left;
margin-right: 5px;
}
.book .btnarea li.keep_book{
float:left;
}

.book .btnarea li:last-child{
margin-right: 0px;
}
.book .btnarea li{
display:block;
height: 16px;
line-height: 16px;
}

.book .btnarea li a{
display: block;
text-decoration: none;
}
/* キープタグ OFF */
.book .btnarea li.off{
border:1px solid #9A9A9A;
display: block;
background:#C9C9C9;
color:#FFFFFF;
text-align:center;
}
.book .btnarea li.off a,
.book .btnarea li.off a:hover{
color:#FFFFFF;
}

.book.horizontal{
width:auto;
}

.book.horizontal .picture{
width:65px;
display:table-cell;
vertical-align:top;
text-align: center;
height: 90px;
overflow: hidden;
    float:left;
    margin-right:8px;
}

.book.horizontal .picture img{
max-width:65px;
max-height:85px;
}

.book.horizontal .right{
    /*float:right;*/float:left;
    width:122px;
    /*width:118px;*/
    text-align:left;
}

.book.horizontal .title{
    line-height: 1.2;
    height: 3.6em;
    margin-bottom: 0px;
    padding-top: 1px;
}

.area_campaign .area_inner .line{
margin-bottom:10px;
}
.area_campaign .area_inner .line:last-child{
margin-bottom:0;
}

.area_campaign .area_inner .banner{
float:left;
margin:0 10px 0 0;
width:220px;
}
.area_campaign .area_inner .banner:last-child{
margin-right:0px;
}

.area_campaign .area_inner .banner dt{
margin-bottom:5px;
}
.area_campaign .area_inner .banner dt a {
    display: flex;
    align-items: center;
    min-height: 137px;
    background-color: #F4F4F4;
}
.area_campaign .area_inner .banner dt a img {
    height: auto;
}
#container .banner_area {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#container .banner_area li a {
    min-height: 125px;
}
#container .banner_area li img {
    height: auto;
    max-height: 125px;
}

.area_campaign dd a{
display: block;
}

.area_lineup{
width:678px;
border:1px solid #E6E6E6 ;
margin-bottom:10px;
_zoom: 1;
overflow: hidden;
}

.area_lineup .lineup{
border-right:solid 1px #E6E6E6;
float:left;
padding:10px;
width:205px
}

.area_lineup .lineup:last-child{
    border:0;
}

.area_lineup .book{
width:auto;
}

.area_lineup .book .left{
    float: left;
    /*height: 106px;*/height:103px;
    width: 65px;
    overflow: hidden;
}


.area_lineup .book .right{
    margin-left:75px;
    width: 130px;
    /*width:120px;*/
}

.area_lineup .book .title{
    margin-bottom: 3px;
    height: 3.0em;
    /*height: 2.5em;*/
}

.area_lineup .book .caption{
    height: 5.0em;
    height: 3.5em\9;
}

.area_lineup .book .authorarea{
    /*display:inline-block;
    /*display:inline;*/
    /*zoom:1;*/
    max-width:205px;height:22px;
}

.area_lineup .book .picture{
width:65px;
display:table-cell;
vertical-align:top;
text-align: center;
height: 85px;
overflow: hidden;
}

.area_lineup .book .picture img{
max-width:65px;
max-height:85px;
}

/* ボタン：購入 */
.product_cart_buy {
    /*margin-top:10px;*/
    margin-top:12px;
    width:200px;

}
#container .product_cart_buy a {
    background-color:#FF5A00;
    background-image:url(/resources/a/pc/v2/images/product/product_cart_buy.png);
    border:1px solid #E95200;
    font-weight:bold;
    color:#FFFFFF;
    text-shadow:-1px -1px 1px #D54B00;
    height:35px;
    line-height:33px;
}
#container .product_cart_buy a:hover {
    background-color:#F04F08;
}
#container .product_cart_buy a:hover span {
    border-bottom:1px solid #F04F08;
}
#container .product_cart_buy a span {
    border-bottom:1px solid #FF5A00;
    box-shadow:inset 0px 1px 0px 0px #FFA473;
}
#container .product_cart_buy a:active span {
    border-bottom:1px solid #F04F08;
    line-height:33px;
    box-shadow:inset 0px 2px 0px 2px #D54B00;
}
/*.product_cart_buy:first-letter {
    letter-spacing:0.5em;
}*/

/*三角リンク*/
.trilink {
    background: url("/resources/a/pc/common/images/bg_arrow_right_black.png") no-repeat scroll left center transparent;
    padding-left: 12px;
    margin-bottom: 15px;
}

.lineup-link-list {
    font-weight:bold;
}
.lineup-link-list li {
    margin-bottom:5px;
}

/* グレーライン */
hr.normal{
    border-top:1px solid #BEBEBE;
}

.privilege_box {
    border:solid 1px #CCCCCC;
    margin-bottom:20px;
    padding:10px;
    list-style-type:none;
}
.title_privilege {
    margin-bottom:5px;
    font-weight:bold;
}
.privilege_box li {
    margin-bottom:10px;
    padding-bottom:10px;
    border-bottom:solid 1px #CCCCCC;
}
.privilege_box li:last-child {
    margin-bottom:0;
    padding-bottom:0;
    border-bottom:none;
}
.privilege_box li dt {
    float:left;
    width:550px;
    font-size:14px;
}
.privilege_box li dd {
    float:right;
    width:75px;
    text-align:right;
}

.privilege_box.detal dt {
    width:450px;
}
.privilege_box .check {
    font-weight:normal;
    background:#FF5A00;
    font-size:10px;
    color:#FFFFFF;
    padding:0 2px;
    margin-right:2px;
    border-radius:2px;
}

/* area_common */
#container #container_inner #main .area_common {
    margin-bottom: 20px;
    padding-bottom: 40px;
}
#container #container_inner #main .area_common:last-child {
    margin-bottom: 0;
}
#container #container_inner #main .area_common:last-of-type {
    margin-bottom: 0;
}
#container #container_inner #main #area_new_2.area_common {
    margin-top: -20px;
}

/* area_common コンポーネント単位での調節 */
#container #container_inner #main .slider_group_parent .area_common {
    margin-bottom: 0;
}
#container #container_inner #main .area_label {
    margin-bottom: 20px;
}
#container #container_inner #main .area_label .area_common {
    margin-bottom: 0;
    padding-bottom: 20px;
}
#container #container_inner #main .area_label .area_common:last-child {
    padding-bottom: 40px;
}
#container #container_inner #main .heading_title + #area_check.area_common {
    padding-bottom: 20px;
}
#container #container_inner #main .area_common.mytop_area {
    margin-top: 20px;
    padding-bottom: 20px;
}

/* Safari対策 float排除 */
.main_lite dl.form_style > div {
    display: flex;
}
.main_lite dl.form_style > div:nth-of-type(n + 2) {
    margin-top: 10px;
}
.main_lite dl.form_style > div dt {
    float: none;
}
.main_lite dl.form_style.style_b div dd {
    margin-left: 20px;
    width: calc(100% - 145px);
}
.main_lite dl.form_style.form_style--long.style_b div dd {
    width: calc(100% - 125px);
}
.button_common.button_common--space {
    margin-top: 10px;
}
