.book-list {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.book-list-item {
    flex: 0 1 23%;
    margin: 1%;
    min-height: 200px;
    background-color: #fff;
    border: 1px solid #d0d0d0;
    box-shadow: 0 4px 0 rgba(16,48,144,.1);
    box-sizing: border-box;
    display: flex;
}

.book-data-caption {
    font-size: 1.125em;
    font-weight: bold;
    line-height: 130%;
    padding: 10px 0;
    width: 100%;
    text-align: center;
}

.bg-light-blue {
    background-color: #004ea2;
    color: #ffffff;

}

.book-list-item-container {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    width: 100%;
}

.book-img {
    margin: 10px auto;
    display: block;
    max-width: 100%;
    height: auto;
}


.book-img img {
  width: 100%;
  height: auto;
  display: block;
}


.book-data {
    flex-grow: 1;
    width: 100%;
}


.book-data-text {
    margin-top: 10px;
    flex-grow: 1;
    width: 100%;
    text-align: left;
}

.book-data-bottom {
    margin-top: auto;
    text-align: center;
    width: 100%;
}

.bt-golist .ico-arrow-r {
    background: url(/WebRelease2/r.5815878009025237300.r882sa000000006p/s13dha000000002p/aecg8b0000000iaq/aecg8b0000000iar/common/img/ico_btarrow_r.png) no-repeat 100% 50%;
    background-size: 36px auto;
    display: inline-block;
    min-height: 16px;
    padding: 10px 36px;
}


.book-card-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: inherit;
  height: 100%;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  border-radius: 8px;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
  position: relative;
  overflow: hidden;
}

/* ホバー時に白い膜＋浮くような動き */
.book-card-link::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.3); /* 白い膜 */
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.book-card-link:hover::after {
  opacity: 1;
}

.book-card-link:hover {
  transform: translateY(-4px); /* 少し浮く */
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); /* 影を強調 */
  cursor: pointer;
}

