:root {
  --swiper-theme-color: #138496;
}

.container {
  text-align: center;
}

#popular-books-section {
  background: #e3f0f1;
  padding-top: 50px;
  width: 90%;
  margin: 0 auto;
}

#popular-books-section .book-title {
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 2.5em;
}
#popular-books-section .book-rank {
  position: absolute;
  top: 25px;
  left: 25px;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #138496;
  color: #fff;
}
#popular-books-section article {
  background: #fff;
  border-radius: 10px;
  position: relative;
  box-shadow: 10px 10px 20px rgba(27, 79, 120, 0.05);
}

#popular-books-section .swiper {
  width: calc(100% - 100px);
  margin: 0 auto;
  padding-bottom: 30px;
}

#popular-books-section article {
  padding: 20px;
  max-width: 250px;
}

.bd-example {
  background: #fff;
}

#books-section section {
  padding: 70px 0;
  position: relative;
}

#books-section h2 {
  font-family: "BMHANNAPro", sans-serif;
  font-size: 1.8em;
  margin-bottom: 10px;
}

#books-section h2 + p {
  margin-bottom: 30px;
  color: #aaaaaa;
}

#books-section figure {
  max-height: 15em;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #d7d7d7;
  max-height: 210px;
}

#books-section figure img {
  width: 100%;
  max-height: 260px;
  object-fit: cover;
}

.introduce-section {
  padding: 20px 0 10px;
  color: #bebebe;
}

.books-list {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% - 150px);
  margin: 0 auto;
}
#books-section .books-list figure {
  max-height: 250px;
}
.books-list article {
  width: 20%;
  padding: 20px;
  padding-top: 0;
}
.book-authers {
  color: #aaaaaa;
  margin-top: 5px;
  font-size: 0.9em;
}

@media screen and (max-width: 1200px) {
  #popular-books-section .swiper,
  .books-list {
    width: calc(100% - 70px);
  }
  .books-list article {
    padding: 15px;
  }
}
@media screen and (max-width: 990px) {
  #popular-books-section .swiper,
  .books-list {
    width: calc(100% - 50px);
  }
  .books-list article {
    width: 25%;
    padding: 15px;
  }
  .books-list article:nth-child(n+5) {
    display: none;
  }
  #popular-books-section .book-title {font-size: 0.9em;}
}
@media screen and (max-width: 768px) {
  .container {padding:0;}
  header h1 img {max-height: 100px;}
  #search-input {height:40px;}
  header button {height:40px;}
  #books-section h2 + p {width:80%; margin:0 auto 20px;}
  .books-list article {padding:10px;}
  #popular-books-section article {padding:15px;}
  #popular-books-section {width:100%;}
  .book-title {font-size:0.9em;}
  .book-authers {font-size:0.8em;}

  #popular-books-section .swiper {
    width: 100%;
  }
  .books-list {
    width: 90%;
  }
  .books-list article {
    width: 33.33%;
  }
  .books-list article:nth-child(n+4) {
    display: none;
  }
  .introduce-section {width:90%; margin:0 auto;}
}

.swiper-button-next {
  right: 0;
}
.swiper-button-prev {
  left: 0;
}
.swiper-button-next,
.swiper-button-prev {
  width: 60px;
  height: 60px;
  color: #138496;
  background: rgba(255, 255, 255, 0.8);
  top: 40%;
}
.swiper-button-next:after,
.swiper-button-prev:after {
  font-size: 25px;
}

footer {
  padding: 50px 0;
  background: #e4e4e4;
}

footer img {
  opacity: 0.2;
  height: 20px;
}
