/* =====================================================================
/* =====================================================================
*
*   product css
*
* =================================================================== */
.font_light {color: #666666;}
.register_notice {color: #666666; font-size: 11px;text-align: center;}
.ptback {color: #FF5A00;}
.new_review {font-size: 10px;}

/********************** ACTIONS, buttons ***************************************/
#container input[type="submit"].buy_action {
    width: 200px;
}
#container .main_actions .buy_action small {
    font-size: 12px;
}
#container .main_actions .buy_action i.btn_icon,
#container .main_actions .reservation_action i.reservation_icon,
#container .main_actions .reservation_action i.reservation_view,
#container .main_actions .reservation_action i.auto_reservation_icon,
#container .main_actions .reservation_action i.auto_reservation_view {
    vertical-align: middle;
    margin-right: 4px;
    margin-left: 0px;
}

ul.main_actions {
    margin-bottom: 20px;
}
ul.main_actions li {
    margin-bottom: 10px;
}
ul.main_actions li:last-child {
    margin-bottom: 0;
}
ul.main_actions .reservation_date {
    color: #5F9805;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding: 38px 0 28px;
}
ul.main_actions .mb05 {
    margin-bottom: 5px !important;
}
ul.sub_actions {
    background-color: #F1F1F1;
    border: 1px solid #DDDDDD;
    padding: 10px;
    text-align: center;
}
ul.sub_actions li {
    margin-top: 10px;
}
ul.sub_actions li:first-child {
    color: #666666;
    font-weight: bold;
    margin-top: 0;
}
#product_actions .sub_area .browser_reader {margin-bottom: 10px;}

/* ---------large--------- */
#container .btn_l span {
    font-size: 15px;
    vertical-align: middle;
}
#container .btn_l .btn_icon {
    background-image: url("/resources/a/pc/common/images/btn_icons_l.png?date=0118");
    height: 34px;
    width: 28px;
    margin-right: 10px;
    margin-left: -10px;
}

/********************** /ACTIONS, buttons ***************************************/


i[class^="product-icon-"] {
    background-image: url("/resources/a/pc/v2/images/product/pc_parts_product.png?date=20240422");
    background-repeat: no-repeat;
    display: inline-block;
    line-height: 0;
    overflow: hidden;
    vertical-align: top;
}

i[class^="product-icon-star-"] {
    height: 18px;
    width: 18px;
    background-image: url(/resources/a/pc/v2/images/product/review_star.png?date=0910);
    background-size: 56px 20px;

}
i.product-icon-star-full {
    background-position: 0 -2px;
}
i.product-icon-star-half {
    background-position: -17px 0;
}
i.product-icon-star-empty {
    background-position: -37px -2px;
}

/********************** 対応端末 ***************************************/
#product_supported_devices_area {
    margin-bottom: 20px;
    border-top: 1px solid #DDDDDD;
}
#product_supported_devices_area .detail_area {
    padding: 0 20px;
}
#product_supported_devices_area .collapsible_toggle_btn {
    border-top: none;
}

.product_info .icon-review_write,
.review_actions .icon-link-review_write,
.review_actions .icon-review_write,
.review_write_area .icon-review_write,
.product_userreview_myreview .icon-review_write,
.product_userreview_myreview .icon-review_trash {
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2px;
}
.product_userreview_myreview .icon-review_write,
.product_userreview_myreview .icon-review_trash {
    fill: #4D4D4D;
}
i.product-icon-device-movie {background-position: -20px -89px;}
i.product-icon-device-sound {background-position: -40px -89px;}
i.product-icon-device-read {background-position: -60px -89px;}

.disabled i.product-icon-device-movie {background-position: -20px -109px;}
.disabled i.product-icon-device-sound {background-position: -40px -109px;}
.disabled i.product-icon-device-read {background-position: -60px -109px;}

i[class^="product-icon-special-"] {
    height: 16px;
    display: inline-block;
    margin: 0 4px 0 0;
    width: 16px;
}
i.product-icon-special-point {background-position: -80px -33px;}
i.product-icon-special-bulk {background-position: -96px -33px;}
i.product-icon-special-free {background-position: -112px -33px;}
i.product-icon-special-book {background-position: -48px -33px;}


i.product-icon-collapsible {
    background-position: -16px -129px;
    height: 16px;
    width: 16px;
}
.product_text_more i.product-icon-collapsible {
    background-position: -0px -129px;
}


#product_detail_area, .detail_area {
    background-color: #FFFFFF;
    padding: 20px;
}

#product_detail_area.review_product, .detail_area {
    margin-bottom: 20px;
}

/* ===== product_main_area ===== */
.product_main_area {
    display: flex;
    justify-content: space-between;
}

#product_area1 {
    display: flex;
    flex-wrap: wrap;
    width: 700px;
}

#product_detail_area .product_image {
    margin-bottom: 10px;
    margin-right: 20px;
    width: 180px;
}
#product_detail_area .product_image img {
    max-width: 180px;
    margin-bottom: 10px;
}

.product_image img,
.bookshadow img {
    border: solid 1px #E5E5E5;
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.14);
}

#product_detail_area .product_info {
    width: 500px;
}
#product_detail_area .product_actions {
    width: 200px;
}
#product_detail_area .product_details {
    width: 700px;
}
#product_detail_area  h1 {
    font-size: 20px;
    font-weight: bold;
    line-height: 26px;
    margin-bottom: 10px;
}

#product_detail_area .special_banner {
    height: auto;
    margin-bottom: 10px;
    width: 100%;
}

.meta dl {
    display: block;
    width: 100%;
}
.meta dd,.meta dt {
    display: block;
}

.meta dl.author {
    border-bottom: 1px solid #DDDDDD;
    padding-bottom: 8px;
    margin-bottom: 15px;
}
dl.author {
    display: flex;
    flex-wrap: wrap;
}
dl.author dt,dl.author dd {
    margin-left: 3px;
    padding-bottom: 3px;
}
dl.author dd {
    color: #AAAAAA;
}
.product_price_data {
    display: table;
    margin-bottom: 10px;
    table-layout: fixed;
}
.product_price_data tbody {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.product_price_data tr {
    display: table-row;
}
.product_price_data tr.regular_price {
    width: 100%;
    margin-bottom: 5px;
}
.product_price_data th,
.product_price_data td {
    display: table-cell;
    font-weight: normal;
    text-align: left;
    vertical-align: bottom;
}
.product_price_data tr.main_price th,
.product_price_data tr.main_price td {
    padding-bottom: 4px;
}
.product_price_data th span {
    margin-right: 5px;
}
.relation_collapsible_area .product_price_data th span {
    padding-top: 3px;
}
.product_price_data tr.main_price td {
    color: #FF5A00;
    font-size: 16px;
    font-weight: bold;
}
.product_price_data tr.main_price td .date {
    font-size: 13px;
}
.product_price_data .big_price_font,
.product_price_data .big_price_font_range span {
    font-size: 20px;
    line-height: 20px;
}
.product_price_data .medium_price_front {
    font-size: 14px;
}
.product_price_data td .Tpoint {
    margin-left: 10px;
}
.cooperation_book_link {
    display: inline-block;
}
#product_details .product_review_data {
    margin-bottom: 13px;
}
#product_detail_area .re_review_star_wrap {
    display: flex;
    align-items: center;
}
ul.review_actions {
    clear: both;
    margin-bottom: 20px;
}
.btn_subtitle ul.review_actions {
    position: absolute;
    right: 0;
    top: 0;
}
ul.review_actions li {
    display: inline-block;
    margin-right: 8px;
    margin-top: 5px;
}
ul.product_special_info {
    margin-bottom: 15px;
}
ul.product_special_info.pointback {
    margin-top: 10px;
}
ul.product_special_info li {
    height: 16px;
    margin-bottom: 10px;
    vertical-align: top;
}

.devices_area {
    display: flex;
}

.devices_area .title {
    color: #666666;
    font-size: 13px;
    line-height: 24px;
    text-align: left;
    width: 214px;
    margin: 0 0 10px 10px;
}

.supported_devices {
    margin: 16px 0 0;
}

.tateyomi_devices {
    border-left: 1px solid #DDDDDD;
    margin: 16px 0 0;
    padding: 0 0 0 20px;
}
.tateyomi_devices .title {
    width: 130px;
}

ul.product_supported_devices {
    display: flex;
}

ul.product_supported_devices li {
    color: #666666;
    font-size: 10px;
    text-align: center;
    width: 50px;
}
ul.product_supported_devices li span {
    display: inline-block;
    line-height: 12px;
    margin-top: 2px;
}
ul.product_supported_devices li.disabled {
    opacity: 0.3;
}

.product_warnings {
    margin: 0px 0 10px 0px;
    display: flex;
    flex-wrap: wrap;
}

.product_cart_caption {
    color: #333333;
    margin: 0;
    font-size: 11px;
    line-height: 1.4em;
    width: auto;
}

.unsupported {
    font-size: 11px;
}
.toggle_container {
    border-top:1px solid #DDDDDD;
    display: block;
    height: 22px;
    margin-top: 16px;
}
.product_specs {
    display: block;
    margin-top: -5px;
    width: 70%;
}

.set_sale h3 {
    font-size: 20px;
    font-weight: bold;
}

.set_sale_section {
    display: flex;
}

.set_sale .left_section {
    width: 480px;
}
.set_sale .right_section {
    width: 440px;
}
.set_sale .banner {
    display: block;
    margin-bottom: 18px;
}

.set_sale dl.conditions {
    margin-top: 15px;
}
.set_sale dl.conditions dt,
.set_sale dl.conditions dd {
    display: inline;
}
.set_sale dl.conditions dd {
    color: #FF5A00;
}



.review_score {
    margin: 20px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.review_score .review_vote_area {
    display: inline-block;
    display: flex;
    align-items: center;
}
#container .review_score .review_vote_area a {
    height: 22px;
}
.review_vote_area span {
    display: inline !important;
    margin: 0 0 0 5px;
    /* margin-left: 40px; */
}
.review_vote_area span[id^="good_score_"] {
    margin-right: 10px;
}
.score_bubble {
    position: relative;
    display: inline-block;
    margin-left: 7px;
    padding: 0 12px;
    width: 50px;
    background: #FFFFFF;
    border: 1px solid #CFCED2;
    box-sizing: border-box;
    border-radius: 3px;
}
.score_bubble:before {
    content: "";
    position: absolute;
    transform: rotate(-45deg) skew(10deg, 10deg);
    width: 5px;
    height: 5px;
    background-color: #FFFFFF;
    top: 37%;
    left: -4px;
    border-left: 1px solid #CFCED2;
    border-top: 1px solid #CFCED2;
}
.icon-good_inactive {
    fill: #CCCCCC;
    stroke: #666666;
    stroke-width: 25;
    stroke-miterlimit: 10;
    width: 21px;
    height: 22px;
}
.icon-good_voted {
    fill: #FFAA00;
    stroke: #FFAA00;
    stroke-width: 25;
    stroke-miterlimit: 10;
    width: 21px;
    height: 22px;
}
.icon-good_active {
    fill: #FFFFFF;
    stroke: #666666;
    stroke-width: 25;
    stroke-miterlimit: 10;
    width: 21px;
    height: 22px;
}

.new_review_date {
    margin-left: 2px;
}

.nolink:link,.nolink:hover,.nolink:visited {
    color: #333333;
}
.nolink:hover {
    text-decoration: none;
    cursor: default;
}

.warning_tag,
.bought_tag {
    display: block;
    font-size: 11px;
    margin-right: 8px;
    padding: 0px 3px;
    height: 16px;
}
.warning_tag {
    border: 1px solid #D91616;
    color: #FF0000;
}

.bought_tag {
    border: 1px solid #1796C1;
    color: #1796C1;
}
.spoiler_hide a:link,
.spoiler_hide a:visited {
    color: #EEEEEE;
    -webkit-user-select: none;
    user-select: none;
}
.spoiler_hide {
    color: #EEEEEE;
    -webkit-user-select: none;
    user-select: none;
}
.spoiler_hide:hover a {
    color: #0048B4;
}
.spoiler_hide:hover {
    color: #333333;
    -webkit-user-select: auto;
    user-select: auto;
}

/* ------- tag_list ------- */
.tags_area ul {
    display: flex;
    flex-wrap: wrap;
}
.tags_area ul li {
    margin: 0 10px 5px 0;
}
.tags_area ul li a {
    background-color: #F7F7F7;
    border: 1px solid #DDDDDD;
    border-radius: 2px;
    color: #0048B4;
    display: inline-block;
    font-size: 12px;
    line-height: 22px;
    padding: 0 5px;
}
.tags_area ul li a:hover {
    color: #333333;
    text-decoration: none;
    background: #F1F1F1;
}

#container .product_relevance .smallbtnarea .tachiyomi_action {
    margin-right: 4px;
}

#container .list_area {
    content-visibility: auto;
    contain-intrinsic-size: 1600px;
}
#container .search_item_list {
    border-left: none;
    border-right: none;
}
#container .search_item_list li.item {
    display: flex;
    width: 920px;
}
.search_item_list .series_list_book {
    padding: 10px 10px 10px 0;
}
.search_item_list .series_list_detail {
    display: flex;
    width: 798px;
    padding: 10px 0 10px 10px;
}
#container .search_item_list li.item .picture {
    width: 102px;
    height: 145px;
}
#container .search_item_list li.item .picture img {
    max-width: 100px;
    max-height: 143px;
}
#container .search_item_list li.item .title {
    margin-bottom: 5px;
}
#container .product_series_tag.tag_left {
    text-align: left;
}
#container .search_item_list li.item .detail {
    width: 618px;
    margin-right: 30px;
    word-wrap: break-word;
}
#container .search_item_list li.item .buttons {
    width: 150px;
}
#container .search_item_list li.item .buttons .btn.keep_action,
#container .search_item_list li.item .buttons .btn.tachiyomi_action,
#container .search_item_list li.item .buttons .btn.cart_action,
#container .search_item_list li.item .buttons .btn.buy_action,
#container .search_item_list li.item .buttons .btn.reservation_action,
#container .search_item_list li.item .buttons .btn.read_action {
    width: 118px;
}

#slide_up_top .series_list_area .list_area {
    overflow: hidden;
}

/* =====================================================================
*
*   old product css
*
* =================================================================== */
.taR {
    text-align: right;
}
#side .book .tag2 {
    font-size:1.15em;
}

#main .area_common {
background: #FFFFFF;
margin-bottom: 20px;
_zoom: 1;
overflow: hidden;
}
#main .area_common .area_inner {
width: 680px;
margin: 0 auto;
padding-bottom: 10px;
}


/* product_topic */
.product_topic {
    display: flex;
    flex-wrap: wrap;
}

ul.product_topic li {
    padding: 0 5px 5px 0;
    line-height: 1;
}
ul.product_topic span {
    min-width: 58px;
    border: #69A707 solid 1px;
    font-size: 10px;
    line-height: 10px;
    text-align: center;
    color: #69A707;
}

#product_detail_area .product_image .product_topic_ranking {
    margin-bottom: 5px;
    font-size: 10px;
    line-height: 11px;
    padding: 0 5px;
    border: 1px solid #FF5A00;
    color: #FF5A00;
    text-align: center;
    width: 100px;
    display: inline-block;
}
.product_topic_area {
    display: flex;
    flex-wrap: wrap;
}

/* product_data */
.product_data dl {
    display: flex;
}
.product_data dt {
    color: #666666;
    width: 108px;
    padding-top: 3px;
}
.product_data dd {
    width: 60%;
    padding-top: 3px;
}
.product_data dd.colon {
    width: 20px;
}
.product_data dt.first,
.product_data dt.first {
    padding-top: 0;
}

/* メディア情報*/
.product_field {
    display: flex;
    margin-bottom: 20px;
}
.product_media_specs {
    display: block;
    margin-top: -5px;
    width: 70%;
}

.product_media_rabel {
    display: block;
    margin-top: 2px;
    font-size: 11px;
    width: 56px;
    text-align: center;
    padding: 2px 2px 0px 2px;
    color: #FF5B02;
    border : 1px solid #FF5B02;
    border-radius: 1px;
}

/* product_media_data */
.product_media_data li {
    width: 100%;
    display: table;
    margin-bottom: 10px;
}
.product_media_data p {
    padding-top: 3px;
    line-height: 20px;
}

/* product_review */
.product_review {
    margin-bottom: 12px;
}
.product_review_data {
    margin-bottom: 10px;
}
.product_review_box {
    display: flex;
    padding: 0 0 3px;
}
.product_review_star_wrap {
    display: table;
    width: 110px;
}
.product_review_star_wrap #review_average_star {
    display: table-cell;
    padding-top: 2px;
}
.product_review_star_wrap .icon-review_write {
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-right: 2px;
}
.product_review_count_wrap {
    display: table;
}
.review_kan_average {
    display: table-cell;
    width: 2px;
    font-size: 15px;
    font-weight: bold;
    line-height: 27px;
    vertical-align: middle;
}
.review_count_area {
    display: table-cell;
    font-size: 13px;
    line-height: 27px;
    padding-left: 3px;
    vertical-align: middle;
    white-space: nowrap;
}
.review_write_area {
    display: table-cell;
    padding-left: 14px;
    vertical-align: middle;
}
.no_review {
    color: #DDDDDD;
}

.product_section_userreview .product_review_star {
    margin: 4px 4px 3px 0 ;
    display: flex;
}
.product_review_star li img {
    vertical-align: top !important;
}


/* シリーズレビュー */
#container .series .btn_link {
    border-width: 0 0 1px 0;
    border-bottom-color: #DDDDDD;
    border-radius: 0;
    padding: 10px;
}
#container .series li:first-child .btn_link {
    border-top: 1px solid #DDDDDD;
}
#container .series .btn_link.review_toggle_area {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#container .series li .btn_link.review_toggle_area .icon-goback {
    display: inline-block;
    width: 0.9em;
    height: 1.85em;
}
#container .hide_series li:first-child .btn_link {
    border-top-width: 0;
}

#container .series .btn_link .btn_txt {
    width: 800px;
}

#container .review_toggle_js .review_list_more,
#container .review_toggle_js .review_list_less {
    width: 70px;
    margin: 0px auto;
    padding: 0 5px 5px;
    border: 1px solid #E6E6E6;
    border-top: 0;
    border-radius: 0px 0px 3px 3px;
    box-shadow: 1px 2px 2px 0px #F1F1F1;
    text-align: center;
    line-height: 1.5;
    display: block;
}
#container .review_toggle_js .review_list_more p,
#container .review_toggle_js .review_list_less p {
    display: inline-block;
    padding: 0 0 6px;
    background: url(/resources/a/pc/v2/images/product/product_text_more.png) no-repeat 50% 100%;
    font-size: 0.85em;
    text-align: center;
    color: #333333;
}
#container .review_toggle_js .review_list_less {
    padding:5px 5px 0;
}
#container .review_toggle_js .review_list_less p {
    padding: 6px 0 0;
    background: url(/resources/a/pc/v2/images/product/product_text_less.png) no-repeat 50% 0%;
}

/* product_text */

.product_summary {
    border-top: 1px solid #DDDDDD;
    display: block;
    padding-top: 16px;
    width: 700px;
}

.product_summary h3 {
    color: #666666;
    font-size: 13px;
}

.product_text {
    padding: 10px 0 0px 0;
    line-height: 22px;
    transition: max-height 0.5s ease;
}

.product_text_title {
    padding-bottom:3px;
    border-bottom:1px solid #E6E6E6;
    font-weight:bold;
}

.product_text_less,
.product_text_more {
    width: 138px;
    margin: 0 0 0 auto;
    border: 1px solid #DDDDDD;
    border-top: 0;
    box-shadow: 1px 2px 2px 0px #F1F1F1;
    text-align: center;
}
.product_text_less a,
.product_text_more a {
    display: block;
    font-size: 11px;
    padding: 3px 5px 3px;
    text-align: center;
    color: #666666 !important;
    display: flex;
}

.product_text_less a span,
.product_text_more a span {
    width: 112px;
}

.product_text_less {
    display: none;
}

.product_description.is-fold {
    position: relative;
    max-height: 195px;
    overflow: hidden;
}

.product_description:not(.is-fold) {
    max-height: initial !important;
}

ul.product_for_magazine_height {
    margin-top:16px;
}

.paper_price {
    font-size: 11px;
    color: #717171;
    padding: 5px;
    padding: 5px 0 0 10px;
}
.product_point_area {
    color: #666666;
}
.product_price_data strong {
    font-size: 17px;
    color: #FF0000;
}
/* product_cart */
.product_cart {
    padding: 10px 20px 0;
    border-bottom: 1px solid #FFFFFF;
}
.product_cart .btn_l,
.product_cart .btn {
    margin-bottom: 10px;
}

.product_cart_point {
    margin-bottom: 5px;
    padding-left: 20px;
    background: url(/resources/a/pc/common/images/icon_p.png) no-repeat 0 50%;
    color: #FF5A00;
    line-height: 1.3;
}

.product_read_reader {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 11px;
    line-height: 1.4;
    text-align: right;
}


/* product_review_nav */
.product_review_back {
    font-size: 13px;
    color: #333333;
    margin: 8px 0;
}
.product_review_nav {
    display: block;
    font-size: 13px;
    color: #333333;
    margin: 10px 0;
    text-align: right;
}
/* 並び替え */
.bl-pagination .pulldown_box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.bl-pagination .pulldown_box .pulldown {
    height: 40px
}
.bl-pagination .pulldown_box .pulldown .sorting {
    position: absolute;
    width: 24px;
    height: 24px;
    top: 11px;
    left: 10px;
    fill: #4D4D4D;
}
.bl-pagination .pulldown_box .pulldown .sort_name {
    box-sizing: border-box;
    width: 100%;
    line-height: 30px;
}
.bl-pagination .pulldown_box .pulldown .arrow_down {
    position: absolute;
    top: 15px;
    right: 12px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 8px solid #4D4D4D;
}
#container .pulldown_box .pulldown {
    border-radius: 3px;
    background: none;
    width: 167px;
}
.pulldown_box_item li a {
    line-height: 40px;
}
#container .pulldown_box div.pulldown a {
    text-align: center;
}

#container .pulldown_box .product_review_nav {
    margin: 6px 0;
}

.product_review_nav_prev a {
    background: #969696 url(/resources/a/pc/common/images/bg_button_slide_left.png) no-repeat 50% 50%;
}
.product_review_nav_next a {
    background: #969696 url(/resources/a/pc/common/images/bg_button_slide_right.png) no-repeat 50% 50%;
}

.bottom_review_nav {
    border-top: 1px solid #DDDDDD;
    padding-top: 10px;
}

/* 「すべてのレビュー」、「ネタバレ」タブメニュー */
.tab_menu {
    background-color: #FFFFFF;
    overflow: hidden;
}

.tab_menu_list {
    display: flex;
}

.tab_menu_list li {
    width: calc((100% - 20px) / 2);
    box-sizing: border-box;
    border: 1px solid #AAA9A9;
    border-radius: 4px;
}

.tab_menu_list li:first-child,
.sort_menu:first-child {
    margin: 0 20px 0 0;
}

.tab_menu_list li a {
    display: block;
    width: 100%;
    line-height: 48px;
    color: #AAA9A9;
    text-decoration: none;
}

.notcurrent a:hover {
    background-color: #F1F1F1;
}

.tab_menu_list li.current {
    border: 1px solid #FF5A00;
}

.tab_menu_list li.current a {
    color: #FF5A00;
    font-weight: bold;
}

.spoiler_txt {
    text-align: center;
    border: 1px solid #FF0000;
    padding: 6px 8px;
    color: #FF0000;
    margin: 0 0 20px;
}

/* product_userreview */
.product_bookseller_review_area {
    padding: 20px;
    border-radius: 4px;
    border: 1px solid #DDDDDD;
}
.product_bookseller_review_area .review_staff_area {
    justify-content: start;
}
.product_bookseller_review_area .product_userreview_name {
    margin-bottom: 10px;
}

.product_userreview_item_title {
    margin-bottom: 10px;
}
#container .product_userreview_item_title a {
    color: #333333;
    font-size: 14px;
    font-weight: bold;
}
.product_userreview {
    border-top: 1px solid #DDDDDD;
    padding: 20px 0;
}

.product_userreview .review_name_area {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.product_userreview_hgroup {
    overflow: hidden;
    margin: 10px 0;
    display: flex;
    align-items: center;
    gap: 5px;
}

.product_userreview_title {
    font-weight: bold;
    font-size: 15px;
}
.product_userreview_pro_title {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 10px;
    color: #888888;
}

p.product_userreview_name {
    font-size: 11px;
    line-height: 20px;
    margin: 0 0 0 auto;
}

p.product_userreview_name .img_booklog {
    margin-right: 30px;
}
.product_userreview_text {
    font-size: 15px;
}
.product_userreview_myreview {
    overflow: hidden;
    _zoom: 1;
    margin-top: 10px;
    text-align: right;
}

.product_userreview_myreview a {
    margin-left: 10px;
}

.readmore_link {
    color: #0048B4;
    background-color: #FFFFFF;
    border-width: inherit;
}

/* ===== product_campaign ===== */
.product_campaign {
    font-size: 1em;
}
.product_campaign div.area_inner > div.line {
    display: flex;
}

/* ===== product_genresearch ===== */
.product_genresearch {
    padding: 0px 18px 0px;
}
.product_genresearch li {
    color: #AAAAAA;
    padding-bottom:0;
}

/* ===== product_bukumaru ===== */
.product_bukumaru {
    padding: 0;
}
.product_bukumaru ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: -20px;
    margin-bottom: 0;
}
.product_bukumaru li {
    margin-top: 20px;
    width: 50%;
    height: 60px;
    padding: 0;
    box-sizing: border-box;
}
.product_bukumaru a {
    display: block;
    margin-left: 70px;
    width: 350px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
}
.product_bukumaru .icon-bukumaru {
    width: 60px;
    height: 60px;
}

/*セット販売エリア*/
.set_product {
    font-size: 17px;
    font-weight: bold;
    color: #F04F08;
    text-align: center;
}
.set_product_area {
    border-top: solid 3px #FFFFFF;
    padding: 20px;
}
.set_product_area .set_status {
    margin-bottom: 12px;
}
.set_product_area .set_cart_lead .set_title_num,
.set_product_area .set_status_text {
    font-weight: bold;
    color: #FF5A00;
}
.set_product_area .trilink {
    margin-bottom: 0;
}
.set_product_area .set_product_area_banner {
    margin-bottom: 10px;
}
.set_product_area .set_name {
    font-weight: bold;
}
/*シリーズ一覧*/
.series_list_top {
    display: flex;
    margin-bottom: 5px;
}
.series_list_top .or_trilink {
    margin-left: 20px;
}
.series_list_top_pager {
    margin-left: auto;
}
.series_title_kanno {
    color: #333333;
    font-size: 13px;
    font-weight: bold;
}

.series_all_in_btn {
    width: 300px;
    margin: 15px 0 0 auto;
}

.series_list_area .list_area_inner .right {
    display: flex;
}
.series_price_area {
    margin-bottom: 5px;
}
.series_price_area .sale_price_area {
    display: flex;
    align-items: baseline;
}
.series_price_area .sale_price_area .regular_price {
    font-size: 11px;
    text-decoration: line-through;
    margin-right: 10px;
}
.series_price_area .sale_price_area .main_price {
    color: #FF5A00;
    font-weight: bold;
}
.series_price_area .sale_price_area .main_price .big_price_font {
    font-size: 16px;
}
.series_price_area .sale_price_area .main_price .medium_price_font {
    font-size: 11px;
}
.button_area {
    margin-top: 10px;
}
.font_close_sales_end {
    font-size: 8px;
}

/*初めての方へ popup */

#popup_window .forfirst_ddltxt {
    color: #FF5A00;
    font-weight: bold;
    padding-bottom: 5px;
}
#popup_window .btn_app_dl.forfirst {
    background-image:none;
    padding: 6px 5px 4px;
    text-align: center;
    width: 190px;
}


/********************* NEW CSS 13/09/04***********************/
/** GLOBAL OVERRIDES **/
/*--- link font ---*/
a:link {
color: #0048B4;
text-decoration:none;
}
a:visited {
color: #0048B4;
text-decoration:none;
}
a:active {
color: #0048B4;
text-decoration:none;
}
a:hover {
color: #0048B4;
text-decoration:underline;
}

/*------------ headings ------------*/
#container .cont_sub_title3 {
    border-left: 6px solid #FF5A00;
    font-size: 18px;
    line-height: 2;
    margin: 0 0 24px 0;
    padding: 0 0 0 14px;
}

/*------------ overflow ------------*/

.overflow {
position: absolute;
z-index: 100;
background: #FFFFFF;
box-shadow: 3px 5px 6px rgba(0, 0, 0, 0.15);
border: 1px solid #E6E6E6;
}
.overflow a {
text-decoration: none;
color: #333333;
}
.overflow a:hover { background-color: #F1F1F1; }
.balloon_gray {
position: absolute;
z-index: 100;
top: 50px;
left: 50px;
font-size: 0.8em;
}
.balloon_gray span {
display: inline-block;
padding-top: 4px;
background: url(/resources/a/pc/common/images/bg_arrow_up_black.png) no-repeat center top;
}
.balloon_gray span span {
display: inline-block;
padding: 0 4px;
background-color: #4D4D4D;
border-radius: 2px;
padding: 6px 5px 4px 5px;
color: #FFFFFF;
text-decoration: none;
box-shadow: 3px 5px 5px rgba(0, 0, 0, 0.15);
}



/* breadcrumb -------------------------------------------------- */
#breadcrumb {
    margin-bottom: 13px;
    overflow: hidden;
    _zoom: 1;
    font-size: 11px;
    line-height: 1.5em;
}

#breadcrumb ul {
    overflow: hidden;
    _zoom: 1;
}
#breadcrumb ul a {
    display: inline-block;
    height: 21px;
    padding-right: 8px;
    background: url(/resources/a/pc/common/images/bg_breadcrumb.png) no-repeat 100% -42px;
    text-decoration: none;
}
#breadcrumb ul a span, #breadcrumb ul div span {
    display: inline-block;
    height: 21px;
    padding: 0 10px 0 10px;
    background: url(/resources/a/pc/common/images/bg_breadcrumb.png) no-repeat 100% -63px;
    /*font-size:0.85em;font-size:0.9em;*/
    line-height: 21px;
}

#breadcrumb ul li div > span.book_title:after {
    content: "…";
    position: absolute;
    right: 0;
    bottom: 2.2em;
}

#breadcrumb ul li.home a span {
    background: url(/resources/a/pc/common/images/bg_breadcrumb.png) no-repeat 0 -63px;
}
#breadcrumb ul li.contents a {
    background: url(/resources/a/pc/common/images/bg_breadcrumb.png) no-repeat 100% -84px;
}

#container .purchased_action.btn_s,
#container .cart_action.btn_s {
    width: auto !important;
}

#container .btn,
#container .btn_l {
    text-align: center;
}

#container .btn_l .btn_icon.tachiyomi_browser {
    background-position: -196px 0;
}


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

.area_campaign .area_inner .banner {
    margin: 0 13px 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 dd a {
    display: block;
}


/* ===== product_series ===== */
.product_series {
    margin-bottom: 30px;
    text-align: center;
}

/* product_series_detail */
.product_series_detail {
    overflow: hidden;
    margin-left: -16px;
    text-align: left;
    display: flex;
}
.product_series_detail dl {
    width: 100px;
    margin-left: 16px;
    padding-bottom: 20px;
}
.product_series_detail dt {
    text-align:center;
    vertical-align:bottom;
    height:174px;
    overflow: hidden;
}
.product_series_detail dt .picture {
    width: 100px;
    text-align: center;
    height: 145px;
    padding-bottom: 10px;
    overflow: hidden;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    justify-content: center;
}

.product_series_detail dt img {
    max-width: 101px;
    max-height: 143px;
    vertical-align: bottom;
    border: solid 1px #E5E5E5;
}

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

.product_series_title.multiline {
    white-space: normal;
}
.product_series_title a {
    color: #333333;
    text-decoration: none;
}
.product_series_title a:hover {
    text-decoration: underline;
}


/* シリーズ作品　中ボタン：カートを見る　 */
/* シリーズ作品　中ボタン：カートに入れる　 */
.product_series_btn_cart.button > span,
.product_series_btn_cart.button a > span,
.product_series_btn_look.button > span,
.product_series_btn_look.button a > span {
    height: 30px;
    line-height: 30px;
    width: 180px;
}
.product_series_btn_cart.button span {
    background: transparent url(/resources/a/pc/v2/images/product/product_cart_into_m.png) 10px 50% no-repeat !important;
}
.product_series_btn_look.button span {
    background: transparent url(/resources/a/pc/v2/images/product/product_cart_look_m.png) 10px 50% no-repeat !important;
}
.product_series_btn_cart.button span span,
.product_series_btn_look.button span span {
    padding-left: 10px;
    background-image: none;
}

/* 計測要素(画像やiframe)をデザインに影響しないように */
[src^="http://log10.recommender.jp"] {
    position: absolute;
}

/*公開終了メッセージ*/
.finished_mes {
    font-size: 16px;
}
.finished_text {
    font-size: 16px;
}

/* T_point */
#container .icon-tpoint {
    display: inline-block;
    height: 18px;
    margin-right: 2px;
    width: 18px;
    vertical-align: top;
}
#container .Tpoint p {
    display: table-cell;
    vertical-align: middle;
}

.product_actions .pr {
    padding-right: 16px;
}
#container .slider_prev, #container .slider_next {
    top: 102px;
}
/* review-list */
#container .review_product_image {
    width: 120px;
}
#container .review_product_image img {
    width: 120px;
}
#product_detail_area .review_title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
}
#container .review_title a {
    color: #333333;
}
#container .review_author {
    border-bottom: none;
}

#product_reviews .hidden_user_review {
    display: none;
}
.product_userreview_name a:link {
    color: #0048B4 !important;
    margin-right: 10px;
}
#product_reviews .re_review_btn {
    width: 350px !important;
    margin: 15px 0;
}
.re_review_btn_area {
    display: flex;
    justify-content: center;
}
.re_review_btn_text {
    text-align: center;
}
.re_review_btn_text span {
    display: block;
    font-size: 16px;
}
.re_review_btn_text span.attention_text {
    font-size: 11px;
    margin-bottom: 10px;
}

#product_reviews a.re_review {
    display: block;
    font-weight: bold;
    margin: 0;
    padding: 20px;
    text-align: center;
    border-top: 1px solid #DDDDDD !important;
}
#product_reviews .btn_subtitle {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#container .follow_area {
    overflow: hidden;
    display: flex;
    justify-content: space-between;
}
#container .follow_area dt {
    width: 200px;
}
#container .follow_area dd {
    width: 710px;
    margin-top: 9px;
}

.limited_area .limited_inner .limited_item {
    display: inline-block;
    vertical-align: middle;

}
.limited_area .limited_inner .limited_icon {
    height: 34px;
    width: 34px;
}
.limited_area .limited_inner .limited_icon .img_icon {
    background-image: url(/resources/a/common/images/icon_osusume.png?date=0213);
    background-repeat: no-repeat;
    background-size: 268px 34px;
    display: inline-block;
    line-height: 0;
    overflow: hidden;
    background-position: -134px 0;
    height: 34px;
    width: 34px;
}
#wrapper #container .btn_basic_flat {
    padding: 0;
}
.limited_area .limited_title {
    font-size: 18px;
    font-weight: bold;
}
#container .btn_basic_flat {
    width: 480px;
    margin: 0;
}
div.page_nav ul {
    border: none;
}
.product_price_data .include_tax {
    font-size: 13px;
    color: #666666;
    font-weight: normal;
}
.product_price_data .discount_date {
    color: #FF5A00;
    font-size: 13px;
    font-weight: bold;
}

/*無料有料連携*/
.product_price_data tr.main_price.free_price th,
.product_price_data tr.main_price.free_price td,
.relation_collapsible_area .product_price_data tr.product_point_area td {
    padding-top: 5px;
}
.product_price_data tr.product_point_area {
    padding-top: 3px;
}

.related_free_info {
    display: block;
}
.related_free_info .limited_area {
    text-align: left;
}
.related_free_info .limited_area .limited_item.item_txt {
    letter-spacing: -0.8px;
}
.related_free_info ul.sub_actions {
    background-color: #FFFFFF;
    border: 1px solid #FFFFFF;
    padding: 0;
}
.relation_collapsible_area {
    display: inline-block;
    width: 200px;
    margin-top: 10px;
    background-color: #F7F7F7;
}
.relation_collapsible_area .relation_collapsible {
    margin-top: 5px;
    padding: 0 !important;
    width: 180px;
}
.relation_collapsible_area .relation_collapsible div.drawer_toggle {
    color: #333333;
    display: block;
    height: 28px;
    font-size: 12px;
    line-height: 28px;
    margin-bottom: 0;
    width: 200px;
    padding: 0 10px;
}

.relation_collapsible_area div.drawer_toggle span {
    font-weight: bold;
    color: #333333;
    font-size: 12px;
    line-height: 28px;
}
.relation_collapsible_area .relation_area {
    display: inline-block;
    width: 180px;
    font-size: 12px;
    padding: 0 10px;
}
.relation_collapsible_area .product_price_data {
    margin-bottom: 5px;
}
.relation_collapsible_area .product_price_data th, .product_price_data td {
    vertical-align: top;
}
.relation_collapsible_area .product_price_data tr.main_price th,
.relation_collapsible_area .product_price_data tr.main_price td {
    padding-bottom: 0;
}
.product_price_data .big_price_font_range span {
    font-size: 15px;
    line-height: 15px;
}
#container .relation_area .main_actions .buy_action {
    width: auto;
}
.social_actions_area {
    display: block;
    padding: 0 10px;
}

.relation_all_btn {
    display: inline-block;
    width: 100%;
}
.relation_all_btn li {
    width: 35%;
    margin: 0 auto;
}
#container .relation_all_btn .btn_l.cart_action {
    width: 100%;
}
.relation_navi_pager .slider_prev, .relation_navi_pager .slider_next {
    top: 62px !important;
}
.picture.relation_picture {
    height: 155px;
}
#container .cont_sub_title4.relation_title {
    margin-bottom: 0;
}
.related_free_info .font_close_sales_end {
    font-size: 11px;
}

/* 感情タグ */
.tag_emotions {
    display: flex;
    flex-wrap: wrap;
    margin-top: 25px;
    margin-bottom: 10px;
}
.tag_emotions a {
    background-color: #F7F7F7;
    border: 1px solid #DDDDDD;
    margin-left: 8px;
    padding: 5px 10px;
    border-radius: 3px;
}
.tag_emotions span {
    background-color: #F7F7F7;
    border: 1px solid #DDDDDD;
    margin: 0 8px;
    padding: 1em 0.8em;
    width: 100%;
}

#area_attr_tag_title_list[data-no-book="false"] .p-slider-vue-attr-tag-title-list-height,
#area_recommend[data-no-book="false"] .p-slider-vue-recommend-watch-height,
#area_product_history[data-no-book="false"] .p-slider-vue-product-history-height,
#area_book[data-no-book="false"] .p-slider-vue-relation-list-height,
#area_new_keisai_list[data-no-book="false"] .p-slider-vue-new-keisai-list-height {
    height: 291.5px;
}

#area_genre_nocharge_list[data-no-book="false"] .p-slider-vue-genre-nocharge-list-height {
    height: 261.5px;
}

#area_ranking_title_list[data-no-book="false"] .p-slider-vue-ranking-title-list-height {
    height: 340.5px;
}

#area_relation_title[aria-hidden="true"],
#area_attr_tag_title_list[aria-hidden="true"],
#area_recommend[aria-hidden="true"],
#area_product_history[aria-hidden="true"],
#area_new_keisai_list[aria-hidden="true"],
#area_genre_nocharge_list[aria-hidden="true"],
#area_ranking_title_list[aria-hidden="true"] {
    display: none;
}

.series.hide_series {
    overflow: hidden;
    height: 0;
}

.bl-pager.sort-review {
    display: none;
}

span[id^="readmore"] {
    display: inline-block;
    overflow: hidden;
    height: 0;
    transition: height linear;
}

/* 詳しい情報をみる、閲覧環境 ブルダウン */
.collapsible_toggle_btn {
    background-color: #FFFFFF;
    border-top: 1px solid #DDDDDD;
    height: 46px;
    line-height: 46px;
    margin: 0;
    overflow: hidden;
    width: 100%;
    display: flex;
    align-items: center;
}

.collapsible_toggle_btn.on {
    background-color: #FFFFFF;
    background-position: 0px 6px;
    border-bottom: none;
}

.collapsible_toggle_btn.on .btn-icon-collapsible {
    background-position: left center;
}

.icon-collapsible {
    display: flex;
    justify-content: center;
    text-align: center;
    width: 16px;
    margin: 0 20px 0 auto;
}
.cssicon-arrow.arrow_updown::before {
    transform: rotate(-45deg);
    top: 2px;
}
.collapsible_toggle_btn.on .cssicon-arrow.arrow_updown::before {
    transform: rotate(135deg);
    top: -10px;
}

.collapsible_toggle_text {
    color: #333333;
}

a.collapsible_toggle_btn:hover {
    text-decoration: none;
}

.device_disabled {
    display: none;
}

.info_important {
    display: block;
    border: 1px solid #EC2B4D;
    background-color: #EC2B4D;
    height: 23px;
    box-sizing: border-box;
    padding: 0 5px;
    margin: 0 15px;
    border-radius: 4px;
    line-height: 23px;
    color: #FFFFFF;
    font-size: 11px;
    letter-spacing: 0.05em;
    text-align: center;
}

.supported_wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 50px 0 0px;
}

.book_info {
    padding: 0 20px;
    box-sizing: border-box;
}

#area_relation_title {
    background-color: #FFF7E6;
    padding: 0;
}
#area_relation_title .heading_title {
    background-color: #FFF7E6;
}
#area_relation_title .heading_title .middle {
    padding-left: 10px;
}
#area_relation_title .title_wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
#area_relation_title .title_wrapper>div:nth-of-type(2) {
    margin-left: auto;
}
#area_relation_title .relation_title_all_in_btn {
    position: static;
    width: 200px;
    padding: 20px 10px;
}

/* banner */
.banner dt a {
    display: flex;
    align-items: center;
    min-height: 137px;
    background-color: #F4F4F4;
}
.banner dt a img {
    height: auto;
}

/* product follow */
#product_follow_area ul.social_actions {
    justify-content: center;
    margin: 0 0 10px 0;
    padding-top: 16px;
}

#product_follow_area ul.social_actions li.sns-btn-wrap {
    margin-right: 2px;
}

#product_follow_area ul.social_actions li.color-x {
    width: 32px;
    height: 32px;
    margin-top: -5px;
}

#product_follow_area ul.social_actions li.sns-btn-wrap .icon-facebook {
    margin-top: -5px;
}

#product_follow_area ul.social_actions li + li {
    margin-left: 8px;
}
#product_follow_area ul.social_actions li:nth-of-type(3) {
    margin-left: 9px;
}
#product_follow_area ul.social_actions li a {
    color: #666666;
    font-size: 11px;
}

#book_abst .product_description.is-fold {
    max-height: 135px;
}

.coupon-feature {
    border: 1px solid #FF5A00;
    border-radius: 3px;
    padding: 5px 10px 5px 10px;
    margin: 10px 0 10px 0;
}

.coupon-feature p {
    color: #FF5A00;
    font-size: 12px;
    font-weight: bold;
}

.coupon-feature span {
    font-size: 12px;
}

.coupon-feature .font_strong {
    font-size: 14px;
}

.coupon-feature li:not(:last-child) {
    border-bottom: 1px dashed #FF5A00;
    margin: 3px 0 3px 0;
}

.icon-coupon {
    fill: #FF5A00;
    width: 2em;
    height: 2em;
    display: inline-block;
    vertical-align: middle;
}

.font_strong {
    font-weight: bold;
}

.exception_attention_text {
    margin-top: 15px;
    font-size: 11px;
}

/* lp_campaign_banner */
.lp_campaign_banner {
    background-color: #FFFFFF;
    margin: 0 auto;
    display: block;
    padding: 10px;
    margin-bottom: 20px;
}
.lp_campaign_banner a {
    max-width: 632px;
    display: block;
    margin: 0 auto;
}
.lp_campaign_banner img,
.facebook_banner img {
    width: 100%;
    height: auto;
}
