﻿/* dn */
.item_author{ display: none !important; }

/* showmore design */
.showmore_closed,.showmore_closed_manual,
.showmore_opened,.showmore_opened_manual{
  pointer-events: none;
  z-index: 5;
  position: relative;
  padding-top: 30px;
  margin-top: -25px;
  text-align: center;
}
.showmore_closed,.showmore_closed_manual{ background: linear-gradient( to bottom, rgba(255,255,255,0.0) 0px, rgba(255,255,255,1.0) 25px); }
.showmore_opened,.showmore_opened_manual{ background: rgba(255,255,255,0.0); }
.showmore_closed > span,.showmore_closed_manual > span,
.showmore_opened > span,.showmore_opened_manual > span{
  pointer-events: auto;
  display: inline-block;
  color: #f80;
  font-size: 16px;
  line-height: 30px;
  text-align: center;
  border: 2px solid #f80;
  border-radius: 3px;
  width: 70%;
  cursor: pointer;
  -ms-user-select: none; /* IE 10+ */
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}
.showmore_closed > span:hover,.showmore_closed_manual > span:hover,
.showmore_opened > span:hover,.showmore_opened_manual > span:hover{
  color: #fff;
  background: #f80;
}
.showmore_showmore {
  width: 100%;
  flex: 1 1 auto;
  min-height: 0%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.showmore_showmore a {
  width: 75%;
}
.showmore_showmore img {
  width: 100%;
  height: auto;
}
/* flex init */
.showmorelist_container,.showmorelist_container_manual{ width: 100%; margin-bottom: 30px; text-align: center; }
.showmorelist { display: flex; flex-wrap: wrap; height: 100px; align-items: stretch; overflow: hidden; z-index: 1; position: relative; }
.showmorelist > * { font-size: 0px; line-height: 0px; margin: 0; padding: 1px; position: relative; }
/* .showmorelist > * img { width: 100%; height: auto;} */
.showmorelist > * img { width: 100%;}
.genre .showmorelist > * img { height: auto;}
.standard .showmorelist > * img { height: auto;}
.topics .showmorelist > * img { height: auto;}
.banner-cot .showmorelist > * img { height: auto;}
.category-top-banner .showmorelist > * img { height: auto;}
.feature_banner .showmorelist > * img { height: auto;}
.monopoly_banner .showmorelist > * img { height: auto;}
.recommend_bok .showmorelist > * img { height: auto;}
/* ajust width */
.showmorelist.children_center > *{ align-self: center; }

.item-5> * {  flex: 0 1 auto; height: auto; width: 20%;}
@media(max-width: 1000px){ .item-5 > * { flex: 0 1 auto; width: 25%; } }
@media(max-width: 766px){ .item-5 > * { flex: 0 1 auto; width: 50%; } }

.item-8> * {  flex: 0 1 auto; height: auto; width: 20%; max-width: 200px; }
@media(max-width: 1250px){ .item-8 > * { flex: 0 1 auto; width: 20%; } }
@media(max-width: 1000px){ .item-8 > * { flex: 0 1 auto; width: 25%; } }
@media(max-width: 750px){ .item-8 > * { flex: 0 1 auto; width: 33.33%; } }
@media(max-width: 500px){ .item-8 > * { flex: 0 1 auto; width: 50%; } }

.fullwidth .item-8> * { flex: 0 1 auto; height: auto; width: 12.5%; max-width: 200px; }
@media(max-width: 1920px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 12.5%; } }
@media(max-width: 1750px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 14.285%; } }
@media(max-width: 1500px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 16.66%; } }
@media(max-width: 1250px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 20%; } }
@media(max-width: 1000px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 25%; } }
@media(max-width: 750px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 33.33%; } }
@media(max-width: 500px){ .fullwidth .item-8 > * { flex: 0 1 auto; width: 50%; } }

.item-10> * { flex: 0 1 auto; height: auto; width: 16.66%; max-width: 200px; }
@media(max-width: 1200px){ .item-10 > * { flex: 0 1 auto; width: 16.66%; } }
@media(max-width: 1000px){ .item-10 > * { flex: 0 1 auto; width: 20%; } }
@media(max-width: 800px){ .item-10 > * { flex: 0 1 auto; width: 25%; } }
@media(max-width: 600px){ .item-10 > * { flex: 0 1 auto; width: 33.33%; } }
@media(max-width: 400px){ .item-10 > * { flex: 0 1 auto; width: 50%; } }

.fullwidth .item-10> * { flex: 0 1 auto; height: auto; width: 10%; max-width: 200px; }
@media(max-width: 1920px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 10%; } }
@media(max-width: 1800px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 11.11%; } }
@media(max-width: 1600px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 12.5%; } }
@media(max-width: 1400px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 14.285%; } }
@media(max-width: 1200px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 16.66%; } }
@media(max-width: 1000px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 20%; } }
@media(max-width: 800px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 25%; } }
@media(max-width: 600px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 33.33%; } }
@media(max-width: 400px){ .fullwidth .item-10 > * { flex: 0 1 auto; width: 50%; } }

/* item container */
.item_container_wrap { padding: 2px; display: flex; flex-direction: column; position: relative; }
.item_container { background: #eee; padding: 4px; flex: 1 1 auto; min-height: 0%; display: flex; flex-direction: column; }
.item_info > div { text-align: left; font-size: 12px; line-height: 14px; padding: 2px 0; height: auto; display: flex; align-items: center; }
.item_info > div:not(.item_price) > span { width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -o-text-overflow: ellipsis; /* Opera9,10対応 */ }
.item_price > span { word-break: break-all; }
.item_new { pointer-events: none; width: 47px; height: 47px; right: 0; top: 0; z-index: 2; background-image: url('../commonfiles/images/new_ribbon.png'); background-repeat: no-repeat; background-position: center; background-size: auto; position: absolute; display: block; -webkit-transform: translate3d(0,0,0); opacity: 0.75;}
.item_senbai { pointer-events: none; width: 47px; height: 47px; left: 0; top: 0; z-index: 2;  background-repeat: no-repeat; background-position: center; background-size: auto; position: absolute; display: block; -webkit-transform: translate3d(0,0,0); opacity: 0.75;}
.item_toragen { pointer-events: none; width: 47px; height: 47px; left: 0; top: 0; z-index: 2; background-repeat: no-repeat; background-position: center; background-size: auto; position: absolute; display: block; -webkit-transform: translate3d(0,0,0); opacity: 0.75;}
.item_tokuten { pointer-events: none; width: 47px; height: 47px; left: 0; top: 0; z-index: 2; background-repeat: no-repeat; background-position: center; background-size: auto; position: absolute; display: block; -webkit-transform: translate3d(0,0,0); opacity: 0.75;}

.lazyloaded .item_senbai  { background-image: url('../commonfiles/images/senbai_ribbon.png'); }
.lazyloaded .item_toragen  { background-image: url('../commonfiles/images/gentei_ribbon.png'); }
.lazyloaded .item_tokuten  { background-image: url('../commonfiles/images/tokuten_ribbon.png'); }

.item_toragen + a > .mlist_line1{ position: relative; }
.item_toragen + a > .mlist_line1:after{
  content: "";
  background-image: url(https://contents.toranoana.jp/ec/img/toragen_obipop_ol.png);
  position: absolute;
  background-size: cover;
  height: 45px;
  opacity: 0.9;
  width: 100%;
  left: 0;
  bottom: 8px;
}

.item_container > .item_image > img { padding: 5px; margin-bottom: 5px; min-height: 0%; flex: 1 0 auto; }
.item_image { flex: 0 0 auto; min-height: 0; }
.item_image_height img { height: auto; }
.item_title { margin-bottom: 5px; text-align: left; font-size: 14px; line-height: 16px; display: block; overflow: hidden; word-break: break-all; }
.item_price { margin-top: 5px; font-weight: bold; }
.item_container > a { text-decoration: none; min-height: 0%; }
.item_container > a:hover { color: #999; }
.item_info_container { flex: 1 1 auto; min-height: 0%; display: flex; flex-direction: column; justify-content: space-between; }
.item_info > div:not(.item_mark):before { margin: 0 2px; display: inline-block; width: 18px; height: 16px; content: ''; background-repeat: no-repeat; background-position: left center; }
.item_author:before{ background-image: url("../commonfiles/images/ico-pen-gray.svg"); }
.item_category:before{ background-image: url("../commonfiles/images/ico-tag-gray.svg"); }
.item_char:before{ background-image: url("../commonfiles/images/ico-chr-gray.svg"); }
.item_circle:before{ background-image: url("../commonfiles/images/ico-circle-gray.svg"); }
.item_maker:before{ background-image: url("../commonfiles/images/ico-maker-gray.svg"); }
.item_price:before{ background-image: url("../commonfiles/images/ico-coin-gray.svg"); }
.item_mark { margin-top: 5px; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; text-align: center; }
.item_mark > div { width: 100%; line-height: 21px;}
.item_mark > span { width: calc(50% - 2px); padding: 2px 3px; margin: 0 1px 2px 1px; color: #000; border: 1px solid #f80; background: #fff; font-size: 12px; line-height: 14px; }
.item_mark > span.mark_notforsale { color: #999; border: 1px solid #999; }
.item_mark a { padding: 13px 10px; }

/* swiper edit */
.swiper_part { width: 100%; }
.swiper_part .item_container_wrap img{ width: 100%; height: auto; }
.swiper-container { pointer-events: none; }
.swiper-wrapper { pointer-events: auto; position: relative; }
.swiper-ctrl { position: relative; display: flex; justify-content: center; align-items: center; }
.swiper-pagination { position: relative !important; }
.swiper-pagination-bullet { margin: 0 2px; pointer-events: auto; position: relative; }
.swiper-button-prev, .swiper-button-next{ pointer-events: auto; position: relative; left: 0 !important; right: 0 !important; background-size: 11px 15px !important; width: 11px !important; height: 15px !important; position: relative !important; margin: 0 !important; }

/*
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("../commonfiles/images/swiper-prev.svg") !important;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("../commonfiles/images/swiper-next.svg") !important;
}
*/

.swiper-showmore-wrapper{
  width: 100%;
  text-align: right;
}
.swiper-showmore{
  position: relative;
  text-decoration: underline;
  pointer-events: auto;
}

/* ranking */
.ranking_period { font-size: 14px; font-weight: normal; }
.item_rank { text-align: center; color: #222; }
.item_rank.rank-1 { color: #cc9f42; }
.item_rank.rank-2 { color: #a5a5a5; }
.item_rank.rank-3 { color: #c35731; }

/* json parts header */
.json_header{
  font-weight: bold;
  font-size: 18px;
}

@media(max-width:766px){
  .json_header{
    font-size: 16px;
  }
}

/* 20180531追記 */
.item_container{
  border: 1px solid rgb(221, 221, 221);
  background: none;
}

.item_info > div{
  border-bottom: 1px dashed rgb(221, 221, 221);
}

.campaign_link{
  display: block;
  color: #3a72d5;
  font-size: 16px;
  font-weight: bold;
  margin-top: -20px;
}
@media(max-width:766px){
  .campaign_link{
    margin-top: 0;
  }
}

/* 20180914追記 */
.pc.swiper-button-prev, .pc.swiper-button-next{
  background: black;
  width: 40px !important;
  height: 50px !important;
  position: absolute !important;
  margin: auto 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  opacity: 0.6;
}

.pc.swiper-button-prev:hover, .pc.swiper-button-next:hover{
  opacity: 0.7;
}

.pc.swiper-button-prev.swiper-button-disabled,
.pc.swiper-button-next.swiper-button-disabled{
  pointer-events: auto !important;
  opacity: 0.2 !important;
}

.pc.swiper-button-prev{
  left: 0;
  background-image: url("../commonfiles/images/swiper-prev.svg");
  background-repeat: no-repeat;
  background-position: 50%;
  border-radius: 0 5px 5px 0;
}

.pc.swiper-button-next{
  right: 0 !important;
  left: auto !important;
  background-image: url("../commonfiles/images/swiper-next.svg");
  background-repeat: no-repeat;
  background-position: 50%;
  border-radius: 5px 0 0 5px;
}


/* 20180927追記 */
.topMinimalDisplay{
  display: flex;
  flex-wrap: wrap;
}

.topMinimalDisplay > div{
  flex: 0 0 50%;
  width: 50%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0px;
}

.minimalDisplay > a{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  text-decoration: none;
  border: 1px dashed #999;
  margin: 4px 2px;
  overflow: hidden;
}

.minimalDisplay > a:hover{
  background: #fb0;
  border: 1px dashed #fb0;
  color: #fff;
}

.minimalDisplay > a > div{
  align-self: center;
}

.minimalDisplay > a > div:first-of-type{
  flex: 0 0 auto;
  width: 90px;
}

.minimalDisplay > a > div:first-of-type img{
  display: block;
  padding: 1px 5px 1px 2px;
  width: 100%;
  height: auto;
}

.minimalDisplay > a > div:last-of-type{
  flex: 1 1 auto;
  width: 100%;
  height: 55px;
  display: flex;
  margin: 0 0 1px 0;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
}

.minimalDisplay > a > div:last-of-type > div{
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
}

.minimalDisplay > a > div:last-of-type > div:nth-child(1){
  font-size: 14px;
}
.minimalDisplay > a > div:last-of-type > div:nth-child(2){
  font-size: 12px;
}
.minimalDisplay > a > div:last-of-type > div:nth-child(3) span{
  padding: 0 5px;
  margin-right: 2px;
  line-height: 15px;
  font-size: 12px;
  color: #fff;
  background: #fb0;
  border-radius: 15px;
}

@media(max-width: 766px){
  .minimalDisplay > a > div:last-of-type > div:nth-of-type(1){
    font-size: 14px;
  }
  .minimalDisplay > a > div:last-of-type > div:nth-of-type(2){
    font-size: 12px;
  }
  .minimalDisplay > a > div:last-of-type > div:nth-of-type(3) span{
  }
}

@media(min-width:1200px){
  .minimalDisplay{
    display: flex;
    flex-wrap: nowrap;
  }
  .minimalDisplay > a{
    flex: 1 1 100%;
    flex-direction: column;
  }
  .minimalDisplay > a > div:first-of-type{
    flex: 0 0 auto;
    width: 110px;
  }
}

@media(max-width: 480px){
  .minimalDisplay > a{
    flex: 1 1 100%;
    flex-direction: column;
  }
}

/* flex-cart design */
.flex-cart {
  line-height: 1.3;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  max-width: 1200px;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.flex-cart * {
  line-height: 1.3;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
.flex-cart > div {
  flex: 0 0 auto;
  display: flex;
}
.flex-cart > div:last-child {
  border-left: 2px solid #dedede;
}

.flex-cart__item:first-child {
  padding: 0 20px 0 0;
}
@media screen and (max-width: 766px) {
  .flex-cart__item:first-child {
    margin-bottom: 30px;
  }
}
.flex-cart__item:last-child {
  padding: 0 0 0 20px;
}
@media screen and (max-width: 766px) {
  .flex-cart__item {
    padding: 0 !important;
  }
}
.flex-cart__item > div {
  flex: 0 0 auto;
}

.flex-cart__item__preview {
  align-self: center;
}
.flex-cart__item__preview img {
  width: 100%;
  max-height: 350px;
  font-family: "object-fit:contain;";
  object-fit: contain;
  vertical-align: bottom;
}

.flex-cart__item__info {
  display: flex;
  flex-direction: column;
  padding-left: 20px;
  justify-content: center;
}
@media screen and (max-width: 766px) {
  .flex-cart__item__info {
    padding-left: 0;
  }
}
.flex-cart__item__info__details {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  overflow: hidden;
  background: #eee;
  max-width: 300px;
  border-radius: 3px;
}
.flex-cart__item__info__details tr td {
  vertical-align: middle;
  padding: 0 0 5px 5px;
  font-size: 12px;
  line-height: 1.1;
}
.flex-cart__item__info__details tr td:first-child {
  width: 37% !important;
}
.flex-cart__item__info__details tr:first-child td {
  padding: 10px 5px 5px 5px;
}
.flex-cart__item__info__details tr:first-child td:last-child {
  padding: 10px 5px 5px 5px;
}
.flex-cart__item__info__details tr:first-child td:last-child:before {
  height: calc(100% - 5px);
  top: 5px;
}
.flex-cart__item__info__details tr:last-child td {
  padding: 0 5px 10px 5px;
}
.flex-cart__item__info__details tr:last-child td:last-child {
  padding: 0 5px 10px 5px;
}
.flex-cart__item__info__details tr:last-child td:last-child:before {
  height: calc(100% - 5px);
  top: auto;
  bottom: 5px;
}
.flex-cart__item__info__details tr td:last-child {
  font-size: 14px;
  position: relative;
}
.flex-cart__item__info__details tr td:last-child:before {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  top: 0;
  left: 0;
  background: #828282;
}

.flex-cart__item__info__title {
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 766px) {
  .flex-cart__item__info__title {
    font-size: 16px;
  }
}

.flex-cart__item__info__cart {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.flex-cart__item__info__cart__itemcode > span:first-child {
  font-size: 10px;
}
.flex-cart__item__info__cart__itemcode > span:last-child {
  font-size: 14px;
}

.flex-cart__item__info__cart__price {
  color: #fe0b0b;
}
.flex-cart__item__info__cart__price > span:first-child {
  font-size: 26px;
  font-weight: bold;
}
.flex-cart__item__info__cart__price > span:last-child {
  font-size: 16px;
}

.flex-cart__item__info__cart__button > a {
  font-size: 14px;
  text-decoration: none;
  display: block;
  width: 100%;
  padding: 10px 0px;
  color: #fff;
  background: #ff246d;
  text-align: center;
  box-shadow: 1px 1px 2px 0px rgba(255, 0, 85, 0.5);
  border-radius: 2px;
  transition: box-shadow 0.2s ease;
}
.flex-cart__item__info__cart__button > a:hover {
  box-shadow: 2px 2px 5px 0px rgba(255, 0, 85, 0.5);
}

.flex-cart__item__info__cart__button__disable {
  background: #aaa !important;
  pointer-events: none !important;
  box-shadow: none !important;
}

@media (max-width: 766px) {
  .flex-cart {
    display: block;
  }
  .flex-cart > div {
    width: 100% !important;
    max-width: 100% !important;
    flex-direction: column;
  }
  .flex-cart > div:last-child {
    border-left: none;
  }

  .flex-cart__item > div {
    width: 100% !important;
    max-width: 100% !important;
  }

  .flex-cart__item__preview {
    max-height: 250px;
    text-align: center;
    padding-right: 0px;
    margin-bottom: 10px;
  }
  .flex-cart__item__preview img {
    height: 100%;
    max-height: 250px;
  }

  .flex-cart__item__info__cart__itemcode > span:last-child {
    font-size: 10px;
  }

  .flex-cart__item__info__cart__price > span:first-child {
    font-size: 20px;
    font-weight: bold;
  }
  .flex-cart__item__info__cart__price > span:last-child {
    font-size: 12px;
  }
}
