/* books
##################################### */
#books #main {
  background: url("../img/books/bg_t.png") no-repeat 0 0/100% auto;
}

.list_books li {
  position: relative;
  display: block;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px #fff inset, 0 0 0 2px #826122 inset;
  box-shadow: 0 0 0 1px #fff inset, 0 0 0 2px #826122 inset;
  border: 1px solid #826122;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.list_books li:before, .list_books li:after {
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  height: 37px;
  background-size: 36px 37px !important;
}

.list_books li:before {
  top: 0;
  background: url("../img/common/frame03_tl.png") no-repeat 0 0, url("../img/common/frame03_tr.png") no-repeat 100%;
}

.list_books li:after {
  bottom: 0;
  background: url("../img/common/frame03_bl.png") no-repeat 0 0, url("../img/common/frame03_br.png") no-repeat 100%;
}

.box_books:not(:last-child) {
  margin-bottom: 40px;
}

.box_books figure a {
  -webkit-transition: opacity .8s ease-out;
  -o-transition: opacity .8s ease-out;
  transition: opacity .8s ease-out;
}

.box_books figure a:hover {
  opacity: .8;
}

.box_books .txt p:not(.label):not(:last-child) {
  margin-bottom: 15px;
}

.box_books .label {
  display: inline-block;
  padding: .4em .8em .33em;
  background: #5bb653;
  color: #fff;
  vertical-align: top;
}

.box_books .etc {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 2;
  font-weight: normal;
}

.box_books .releaseday {
  color: #119506;
}

/* books pc
===================================== */
@media screen and (min-width: 769px) {
  .list_books li {
    padding: 40px;
  }
  .list_books li:not(:last-child) {
    margin-bottom: 40px;
  }
  .box_books {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .box_books figure {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 182px;
    margin-right: 40px;
  }
  .box_books figure img {
    width: 100%;
  }
  .box_books .txt {
    -ms-flex-negative: 1;
    flex-shrink: 1;
  }
  .box_books .label {
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: normal;
  }
  .box_books .detail {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
    font-weight: normal;
  }
}

@media all and (-ms-high-contrast: none) {
  .box_books .label {
    padding: .5em .8em .15em;
  }
}

/* books sp
===================================== */
@media screen and (max-width: 768px) {
  .list_books li {
    padding: 20px;
  }
  .list_books li:not(:last-child) {
    margin-bottom: 20px;
  }
  .box_books {
    text-align: center;
  }
  .box_books figure {
    margin-bottom: 15px;
  }
  .box_books figure img {
    width: 49.8%;
  }
  .box_books .label {
    margin-bottom: 8px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: normal;
  }
  .box_books .detail {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 2;
    font-weight: normal;
  }
  .box_books.cd figure img {
    width: 70.7%;
  }
}
