@charset "utf-8";
/* CSS Document */

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  /* outline: solid #f00 1px !important;
  background: #000 !important;
  color: #fff !important; */
}
html {
  font-size: 62.5%;
  /* scroll-behavior: smooth; */
}
body {
  margin: 0px;
  padding: 0px;
  background: url("images/bg.jpg") top fixed;
  /* 　//設定背景圖片的呈現方式.jpg */
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center top;
}
.main {
  font-family: "Noto Sans TC", sans-serif;
}
.main-container {
  max-width: 120rem;
  padding: 0 4.6rem;
  margin: 0 auto;
  letter-spacing: 0.2rem;
  text-align: center;
  font-size: 2rem;
  line-height: 1.7;
  color: #1d1d1d;
}
.span-inline-block {
  display: inline-block;
}
.nowrap {
  white-space: nowrap;
}
.scaled {
  transition: all 0.3s;
  cursor: pointer;
}
.scaled:hover,
.scaled:active {
  transform: scale(1.1);
}
.scaled2 {
  transition: all 0.3s;
  cursor: pointer;
}
.scaled2:hover,
.scaled2:active {
  transform: scale(1.05);
}
.translate {
  transition: all 0.5s;
  cursor: pointer;
}
.translate:hover,
.translate:active {
  transform: translate(1rem, -2.4rem);
}

/*****************************/
/* SECTION HERO */
/*****************************/
.section-hero {
  width: 100%;
  background-image: url(images/bg-hero.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  /* background-color: #fdf4f0; */
  background-position: center top;
  background-repeat: no-repeat;
  position: relative;
  padding: 6.4rem 0 10rem 0;
}
.hero-container {
  max-width: 120rem;
  position: relative;
}
.hero-flex {
  display: flex;
  justify-content: start;
  margin-left: 2.4rem;
}
.hero {
  max-width: 60rem;
  text-align: left;
}
.hero-title-img {
  width: 48rem;
  margin-bottom: 2.4rem;
}
.hero-promotion-absolute {
  position: absolute;
  right: 10%;
  top: 60rem;
}
.hero-promotion-box {
  position: relative;
  /* display: inline-block; */
  max-width: 55rem;
  background-color: rgba(247, 118, 147, 0.9);
  border-radius: 1rem;
  padding: 3.6rem;
  color: #fff;
  text-align: left;
}
.hero-promotion-flower {
  position: absolute;
  right: -2rem;
  top: -3rem;
}
.promotion-flower-img {
  width: 9.2rem;
}
.hero-promotion-date-absolute {
  position: absolute;
  left: 1rem;
  top: -1rem;
}
.hero-promotion-date-absolute2 {
  top: 12rem;
}
.hero-promotion-date-absolute3 {
  top: 26rem;
}
.hero-promotion-text-margin-top {
  margin-top: 7rem;
}
.hero-promotion-text-margin-top3 {
  margin-top: 7rem;
}
.promotion-date-img {
  height: 3.5rem;
}
.hero-promotion-text-flex {
  display: flex;
  gap: 1rem;
}
.dot-img {
  width: 3.2rem;
  margin-top: 0.8rem;
}
.hero-promotion-text {
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.3rem;
}
.hero-promotion-big {
  font-size: 3rem;
  font-weight: bold;
  /* color: #ffde00; */
}
.hero-t-box {
  position: relative;
  max-width: 95rem;
  color: #fff;
  font-size: 2rem;
  /* font-weight: bold; */
  text-align: justify;
  letter-spacing: 0.3rem;
  line-height: 1.6;
  background-color: rgba(0, 0, 0, 0.9);
  border: solid 1.2rem #fc546a;
  border-radius: 1rem;
  padding: 4.6rem;
  margin-top: 33rem;
  margin-bottom: 3.2rem;
}
.hero-t-title {
  color: #fbd17e;
  font-size: 2.8rem;
  font-weight: bolder;
}
.hero-t-text-margin-bottom {
  margin-bottom: 2.8rem;
}
.hero-t-text-margin-bottom2 {
  margin-bottom: 2rem;
}
.hero-t-text-list {
  margin-left: 3.2rem;
}
.hero-t-text-list-flex {
  display: flex;
  gap: 1rem;
}
.hero-t-dot {
  color: #fbd17e;
}
.hero-t-list-y {
  color: #ffafc1;
  font-weight: bold;
}
.hero-t-btn-flex {
  display: flex;
  justify-content: center;
}
.hero-t-btn {
  display: inline-block;
  font-weight: bold;
  font-size: 2.8rem;
  color: #fff;
  background-color: #fc546a;
  padding: 0.3rem 3rem 0.5rem 3rem;
  border-radius: 5rem;
  position: relative;
  overflow: hidden;
  z-index: 1;
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.hero-t-btn::before {
  content: "";
  position: absolute;
  color: #fff;
  z-index: 3;
  transition: all 0.5s;
}
.hero-t-btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fbd17e;
  transform: translateX(-100%);
  z-index: 2;
  transition: all 0.5s;
}
.hero-t-btn:hover::before {
  content: "立即查看詳情";
  color: #000;
}
.hero-t-btn:hover::after {
  transform: translateX(0);
}

/*****************************/
/* SECTION INTRO */
/*****************************/
.section-intro {
  width: 100%;
  /* background-image: url(images/bg-09.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover; */
  /* background-size: cover;
  background-color: #fdf4f0; */
  /* background-position: center top;
  background-repeat: repeat-y; */
  position: relative;
  padding: 12rem 0;
  z-index: 0;
}
.hero-intro-box {
  position: relative;
  max-width: 95rem;
  color: #653f3e;
  font-size: 2rem;
  /* font-weight: bold; */
  text-align: justify;
  letter-spacing: 0.3rem;
  line-height: 1.6;
  background-color: rgba(243, 233, 225, 0.9);
  border-radius: 1rem;
  padding: 6.4rem 4.6rem;
}
.intro-flower {
  position: absolute;
  top: -4.6rem;
  left: 1rem;
}
.intro-flower-img {
  width: 23.7rem;
}

/*****************************/
/* SECTION CHAP 01 */
/*****************************/
.section-chap-01 {
  width: 100%;
  background-image: url(images/bg-01.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  /* background-color: rgba(0, 0, 0, 0.8); */
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 6.4rem 0 9rem 0;
  z-index: 0;
}
.chap-01-pic {
  position: absolute;
  top: -16rem;
  left: 5%;
  z-index: -1;
}
.chap-02-pic {
  position: absolute;
  top: -16rem;
  left: 5%;
  z-index: -1;
}
.chap-04-pic {
  position: absolute;
  top: -16rem;
  left: 0;
  z-index: -1;
}
.chap-06-pic {
  position: absolute;
  top: -16rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.chap-01-pic-img {
  width: 81rem;
}
.chap-02-pic-img {
  width: 86rem;
}
.chap-04-pic-img {
  width: 99rem;
}
.chap-06-pic-img {
  width: 120rem;
}
.chap-title-01 {
  margin-top: 3.2rem;
}
.chap-title-06 {
  margin-left: 5.2rem;
}
.chap-title-06-sm {
  display: none;
}
.chap-title-flex-end {
  display: flex;
  justify-content: end;
  margin-right: 0;
}
.chap-title-flex-end-07 {
  margin-right: 15%;
}
.chap-title-flex-start {
  display: flex;
  justify-content: start;
  margin-right: 0;
}
.chap-title-01-img {
  height: 27rem;
}
.chap-title-02-img {
  height: 36rem;
}
.chap-title-06-img {
  width: 18rem;
  margin-bottom: 6.4rem;
}
.chap-title-descrip {
  max-width: 90rem;
  margin: 0 auto;
  color: #653f3e;
  font-weight: bold;
  text-align: justify;
  background-color: rgba(252, 241, 222, 0.9);
  padding: 3.2rem;
  margin-top: 8rem;
  margin-bottom: 10rem;
}
.chap-title-descrip-w {
  background-color: rgba(252, 248, 254, 0.9);
}
.content-box {
  max-width: 110rem;
  background-color: rgba(252, 241, 222, 0.9);
  border-radius: 1rem;
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.15);
  padding: 4.6rem;
  padding-bottom: 9rem;
}
.content-box-w {
  background-color: rgba(252, 248, 254, 0.9);
}
.content-box-r {
  background-color: rgba(118, 41, 42, 0.9);
}
.book-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.book-box {
  width: 25rem;
  padding: 2rem 0;
}
.book {
  position: relative;
  color: #653f3e;
}
.book-tag {
  position: absolute;
  top: -0.5rem;
  left: 1rem;
  color: #fff;
  display: inline-block;
  border-radius: 3rem;
  padding: 0.2rem 1.2rem;
  letter-spacing: 0.1rem;
  font-size: 1.6rem;
  background-color: #3a5397;
}
.book-tag-ebook {
  background-color: #2e6e54;
}
.book-tag-usedbook {
  background-color: #f77693;
}
.book-tag-magazine {
  background-color: #676d9f;
}
.book-tag-goods {
  background-color: #21989c;
}
.book-img {
  height: 28rem;
}
.good-img {
  height: 24rem;
}
.book-text-content {
  text-align: left;
  letter-spacing: 0.1rem;
  margin-top: 1rem;
  padding-left: 2rem;
  padding-right: 2rem;
  color: #653f3e;
}
.book-title {
  font-weight: bold;
}
.book-author {
  font-size: 1.6rem;
  color: #555;
}
.book-price-ori {
  font-size: 1.8rem;
  color: #333;
}
.book-price-dis {
  font-size: 2.4rem;
  font-weight: 700;
  color: #d50000;
}
.book-title-w {
  color: #fff;
}
.book-author-w {
  color: #ccc;
}
.book-price-ori-w {
  color: #ddd;
}
.book-price-dis-y {
  color: #fef200;
}
.bn-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
  row-gap: 4.6rem;
  margin-top: 3.2rem;
}
.bn-grid-4 {
  grid-template-columns: repeat(4, 1fr);
  margin-top: 4.6rem;
}
.margin-top-none {
  margin-top: 0;
}
.bn-long-img {
  width: 100%;
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.15);
}

/*****************************/
/* SECTION CHAP 02 */
/*****************************/
.section-chap-02 {
  width: 100%;
  background-image: url(images/bg-02.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 6.4rem 0 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 03 */
/*****************************/
.section-chap-03 {
  width: 100%;
  background-image: url(images/bg-03.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 6.4rem 0 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 04 */
/*****************************/
.section-chap-04 {
  width: 100%;
  background-image: url(images/bg-04.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 6.4rem 0 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 05 */
/*****************************/
.section-chap-05 {
  width: 100%;
  background-image: url(images/bg-05.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 6.4rem 0 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 06 */
/*****************************/
.section-chap-06 {
  width: 100%;
  background-image: url(images/bg-06.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 07 */
/*****************************/
.section-chap-07 {
  width: 100%;
  background-image: url(images/bg-07.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 08 */
/*****************************/
.section-chap-08 {
  width: 100%;
  background-image: url(images/bg-08.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #fdf4f0;
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
  padding: 9rem 0;
  z-index: 0;
}

/*****************************/
/* SECTION CHAP 09 */
/*****************************/
.section-chap-09 {
  width: 100%;
  /* background-image: url(images/bg-09.jpg);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover; */
  /* background-size: cover;
  background-color: #fdf4f0; */
  /* background-position: center top;
  background-repeat: repeat-y; */
  position: relative;
  padding: 9rem 0;
  z-index: 0;
}
.bn-img {
  max-width: 90rem;
}
.chap-title-09-img {
  height: 5.2rem;
  margin-bottom: 2rem;
}
.chap-subtitle {
  margin-bottom: 2.4rem;
}
.bn-margin-bottom {
  margin-bottom: 6.4rem;
}

/*****************************/
/* SECTION ACTIVITY*/
/*****************************/
.activity {
  /* max-width: 100rem; */
  /* background-color: rgba(226, 215, 193, 0.9); */
  /* padding: 5.2rem; */
  /* border-radius: 1rem; */
  margin: 0 auto;
  margin-top: 8rem;
  padding-top: 4.6rem;
  border-top: dotted 0.1rem #1d4b7f;
  /* margin-bottom: 12rem; */
}
.activity-header {
  font-weight: 700;
  text-align: center;
  margin-bottom: 3.2rem;
  color: #283140;
}
.activity-part {
  list-style: none;
  padding-bottom: 5rem;
  text-align: justify;
}
.activity-date {
  color: #1d4b7f;
  margin-bottom: 2rem;
  font-weight: 700;
}
.activity_item {
  display: inline-block;
  font-weight: 700;
  letter-spacing: 1.6;
  margin-bottom: 2rem;
  padding: 0 16px;
  background-color: #476aac;
  /* border: solid 1px #283140; */
  color: #fff;
  font-size: 1.8rem;
}
.activity-item-context {
  margin-left: 4.4rem;
  font-size: 1.8rem;
}
.activity_list {
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 1.6;
  color: #283140;
}
.activity_link {
  color: #eae1c9;
}
.activity-letter-space {
  letter-spacing: 0;
}
.text-align {
  text-align: left;
}
.activity-note {
  font-size: 1.8rem;
  text-align: left;
  line-height: 1.6;
  letter-spacing: 1.6;
  margin-top: 2.4rem;
  color: #283140;
  margin-left: 2rem;
}

/*****************************/
/* SIDE BAR */
/*****************************/
.side-bar {
  position: fixed;
  bottom: 8rem;
  right: -0.2rem;
  z-index: 999;
  font-family: "Noto Sans TC", sans-serif;
  font-size: 1.6rem;
  width: 12rem;
  display: flex;
  flex-direction: column;
  align-items: end;
}
.sb {
  color: #fff;
  background-color: #fc546a;
  border-radius: 5rem 0 0 5rem;
  border: dotted 0.2rem #483b4a;
  padding: 0.4rem 1rem 0.4rem 1rem;
  margin-bottom: 1rem;
  width: 10rem;
  transition: all 0.3s;
}
.sb:hover,
.sb:active {
  background-color: #feea19;
  color: #04050d;
  width: 12rem;
}

/*****************************/
/* HAMBURGER */
/*****************************/
.w3-button,
.w3-xxlarge {
  display: none;
}

/*****************************/
/* TOP */
/*****************************/
.top {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  cursor: pointer;
}
