@charset "UTF-8";

/*共用---------------------------------------------*/
body {
    width: 100%;
    font-family: Arial, 微軟正黑體, sans-serif,  "Microsoft JhengHei", "LiHei Pro", 新細明體;
    font-size: 16px;
    color: #333333;
	overflow-y: scroll;
    background-color: #c7e8ef;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80' width='80' height='80'%3E%3Cpath fill='%2363a6ef' fill-opacity='0.18' d='M14 16H9v-2h5V9.87a4 4 0 1 1 2 0V14h5v2h-5v15.95A10 10 0 0 0 23.66 27l-3.46-2 8.2-2.2-2.9 5a12 12 0 0 1-21 0l-2.89-5 8.2 2.2-3.47 2A10 10 0 0 0 14 31.95V16zm40 40h-5v-2h5v-4.13a4 4 0 1 1 2 0V54h5v2h-5v15.95A10 10 0 0 0 63.66 67l-3.47-2 8.2-2.2-2.88 5a12 12 0 0 1-21.02 0l-2.88-5 8.2 2.2-3.47 2A10 10 0 0 0 54 71.95V56zm-39 6a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm40-40a2 2 0 1 1 0-4 2 2 0 0 1 0 4zM15 8a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm40 40a2 2 0 1 0 0-4 2 2 0 0 0 0 4z'%3E%3C/path%3E%3C/svg%3E");
}
.float-left { float: left; }
.float-right { float: right; }
.hide { display: none; }

/*區塊*/
.wrapper { width: 100%; }
.container { padding: 35px 0 20px 0; }
.container, .main {
	width: 1200px;
	background-color: #6CC5EB;
	margin: 0 auto;
}
.main { padding: 35px 0 0 0; }
.section { width: 100%; padding: 0; margin: 0; }
.s1 { padding: 0; }
.s2 { padding: 30px 2% 20px 2%; overflow: hidden; }
.s3 { padding: 0 3% 45px 3%; }
.s4 { padding: 0 3%; }
#s1, #s2, #s3 { padding-top: 35px;  margin-top: -35px; }

/*主視覺*/
.kv-area { width: 100%; padding: 0; margin: 0; }
.kv-area img { width: 100%; }
.kv-pc { width: 100%; position: relative; display: block; }
.kv-m { display: none; }

/*上選單*/
.topnav-1 {
	float: left;
	width: 75%;
	height: 130px;
	background-color: #1C8FD1;
	padding: 10px 40px 20px 40px;
	margin: 0;
}
.topnav-1 h2 {
    font-size: 1.5em;
    font-weight: 900;
    text-align: center;
    color: #FFF;
    margin: 0 0 5px 0;
}
.topnav-1 ul { overflow: hidden; }
.topnav-1 li a {
    float: left;
    width: 25%;
    font-size: 2.25em;
    font-weight: 700;
    text-align: center;
    background-color: #FFF;
    border-right: 2px dashed #1C8FD1;
    border-radius: 5px;
    padding: 10px 10px;
    margin: 0;
}
.topnav-1 li a span {
    font-size: 0.6em;
    font-weight: 900;
}
.topnav-1 li:nth-child(1) a { color: #d4145a; }
.topnav-1 li:nth-child(2) a { color: #00a99d; }
.topnav-1 li:nth-child(3) a { color: #f15a24; }
.topnav-1 li:nth-child(4) a { color: #29abe2; border-right: 0px dashed #1C8FD1; }
.topnav-1 li a:hover, .topnav-1 li a:focus {
	color: #FFF;
	background-color: #ED1E79;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.topnav-2 {
	float: left;
	width: 25%;
	height: 130px;
	background-color: #1768B7;
	margin: 0;
}
.topnav-2 a {
	text-align: center;
    padding: 30px 15px;
	display: block;
}
.topnav-2 a:hover, .topnav-2 a:focus {
	background-color: #104981;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.topnav-2 h2 {
    font-size: 2em;
    font-weight: 900;
    text-align: center;
    color: #FFF;
    margin: 0 0 10px 0;
}
.topnav-2 p {
    width: 70%;
    font-size: 1.2em;
    text-align: center;
    color: #1768B7;
    background-color: #FFF;
    border-radius: 15px;
    padding: 5px 10px;
    margin: 0 auto;
}
.topnav-2 a span {
    font-size: 0.8em;
    color: #8c6239;
    background-color: #FFF;
    padding: 10px 15px;
    margin: 30px 0 0 0;
}

/*item*/
.iblock { width: 0; height: 100%; vertical-align: middle; display: inline-block; }
div[class^="photo"] { text-align: center; }
div[class^="photo"] img { width: auto; }
div[class^="name"] {
    font-weight: 600;
    /*font-size: 1.125em;*/
    /*line-height: 1.3em;*/
	/*height: 2.5em; */
     /*-webkit-line-clamp: 2; /*顯示行數*/
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow : hidden;
}
div[class^="price"] { font-size: 0.875em; padding: 0 10px; }
div[class^="sale"] { }
div[class^="sale"] span { font-size: 0.9em; }
div[class^="sale"] strong { font-size: 0.8em; padding: 0 0 0 5px; }
div[class^="sale"] b { font-size: 1.8em; }


/*分類*/
.s2 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.list-1 {
	width: 48%;
	padding: 0;
	margin: 0 1% 25px 1%;
}
.list-1 ul, .list-2 ul {
    background-color: #f4f1e0;
    border-radius: 0 5px 5px 5px;
    padding: 20px;
    overflow: hidden;
}
.list-1 li {
    float: left;
    width: 29.3333%;
    padding: 0;
    margin: 0 2% 15px 2%;
}
.list-2 {
	width: 98%;
	padding: 0;
	margin: 0 1% 25px 1%;
}
.list-2 li {
    float: left;
    width: 14.6666%;
    padding: 0;
    margin: 0 1% 15px 1%;
}
.list-1 .title a, .list-2 .title a {
    width: 70%;
    font-size: 2em;
    font-weight: 900;
    text-align: center;
    padding: 10px;
    color: #FFF;
    border-left: 8px solid #1768B7;
    border-radius: 5px 5px 0 0;
    display: block;
    -webkit-clip-path: polygon(0% 0%, 95% 0, 100% 30%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 95% 0, 100% 30%, 100% 100%, 0% 100%);
}
.list-1 .title a:hover, .list-1 .title a:focus, .list-2 .title a:hover, .list-2 .title a:focus {
    background-color: #1768B7;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.list-1 .title-1 a { background-color: #778155; }
.list-1 .title-2 a { background-color: #F38607; }
.list-1 .title-3 a { background-color: #57a29d; }
.list-1 .title-4 a { background-color: #7F58AD; }
.list-1 .title-5 a { background-color: #DD5B92; }
.list-1 .title-6 a { background-color: #648dbc; }
.list-2 .title a { width: 30%; background-color: #6367B7; } 

.title span, .press h2 span {
    font-size: 0.8em;
    font-weight: normal;
    padding: 0 0 0 15px;
}
i.icon-right-open-mini:before {
    font-size: 0.9em;
    line-height: 1; 
    margin: 0; 
}

.name-1 {
    font-size: 1.125em;
    line-height: 1.3em; 
	height: 2.5em; 
    -webkit-line-clamp: 2;
    color: #333;
    padding: 0 10px;
    margin: 0 0 5px 0;
}
.name-1 a, .name-1 a:link, .name-1 a:visited { color: #333; }
.name-1:hover, .name-1 a:hover, .name-1 a:focus {
	color: #666; 
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.photo-1 { height: 210px; background-color: #FFF; padding: 5px; margin: 0 auto 8px auto; overflow: hidden; }
.photo-1 img { max-height: 200px; }
.price-1 { color: #666; padding: 0 10px; }
.sale-1 { font-size: 1em; color: #666; text-align: center; padding: 0 10px; margin: 0 0 8px 0; }
.sale-1 span { color: #FF0000; }
.sale-1 strong, .sale-1 b { color: #FF0000; }

.list-1 h2 {
    width: 300px;
    height: 300px;
    line-height: 300px;
    font-size: 1.8em;
    font-weight: 700;
    text-align: center;
    color: #FFFF00;
    background-color: rgba( 0,0,0, 0.7);
    border-radius: 50%;
    padding: 0;
    margin: 36px auto;
}
.list-2 h2 {
    width: 300px;
    height: 300px;
    line-height: 300px;
    font-size: 1.8em;
    font-weight: 700;
    text-align: center;
    color: #FFFF00;
    background-color: rgba( 0,0,0, 0.7);
    border-radius: 50%;
    padding: 0;
    margin: 0 auto;
}

/*出版社*/
.press { margin: 0 auto; }
.press h2 a {
    font-size: 2em;
    text-align: center;
    color: #FFF;
    background-color: #1768B7;
    padding: 10px;
    border-radius: 20px 20px 0 0;
    display: block;
}
.press ul {
    background-color: #f4f1e0;
    padding: 30px 20px 10px 20px;
    overflow: hidden;
}
.press li a {
	float: left;
	width: 24%;
	font-size: 1.3em;
	text-align: center;
	color: #FFF;
	background-color: #1C8FD1;
	border-radius: 30px;
	padding: 15px 5px;
	margin: 0 0.5% 20px 0.5%;
	display: block;
}
.press li a:hover, .press li a:focus {
	background-color: #1768B7;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}

/*購物車區塊--------------------------------------*/
.cart-box {
    width: 100%;
	border: 2px solid #0B2C60;
	background-color: #FFFFFF;
    padding: 0;
	margin: 0 auto 40px auto;
}
.cart-box h2 {
	font-size: 1.75em;
	text-align: center;
	color: #FFFFFF;
	background-color: #0B2C60;
	padding: 10px;
	margin: 0;
}
.cart-box h3 {
	font-size: 1em;
    text-align: center;
	color: #FFFFFF;
    background-color: #0B2C60;
    padding: 0 10px 10px 10px;
	margin: 0;
}
.cart-box h3 b {
	font-size: 1em;
	color: #FFFF00;
}
.cart-box h3 a:link, .cart-box h3 a:visited, .cart-box h3 a:hover, .cart-box h3 a:focus {
	font-size: 1em;
	color: #FFFFFF;
	text-decoration: underline;
}

.cart-list { padding: 20px 30px; }
.cart-list h4 {
    font-size: 1.5em;
    font-weight: 600;
    text-align: center;
    color: #666;
}
.cart-list ul, .info-list { overflow: hidden; }
.cart-list li {
    border-bottom: 1px solid #CCC;
    padding: 10px 0 5px 0;
    overflow: hidden;
}
.info-list { float: left; width: 55%; display: block; }
.name-list {
	font-size: 1em;
    font-weight: 600;
    line-height: 1.3em;
	height: 1.3em; 
    -webkit-line-clamp: 1; 
    padding: 0 10px;
    margin: 0 0 5px 0; 
}
.price-list { font-size: 1em; color: #999; margin: 0; }
.sale-list {
    float: left;
    width: 15%;
    font-size: 1em;
    line-height: 30px;
    text-align: right;
    white-space : nowrap;
    color: #FF0000;
    padding: 0 20px 0 10px;
}
.qty {
    float: left;
    width: 10%;
    text-align: right;
    padding: 0 10px;
}
input[type="text"] {
    width: 70px;
    height: 30px;
	font-size: 1em;
	text-align: center;
	color: #333;
	background-color: #FFF;
    border: 1px solid #999;
	padding: 0 5px;
}
.amount {
    float: left;
    width: 10%;
    font-size: 1em;
    text-align: right;
    white-space : nowrap;
    line-height: 30px;
    padding: 0 10px;
}
.btn-del {
    float: left;
    width: 10%;
    text-align: center;
    padding: 0 10px 0 30px;
}
.btn-del a:link, .btn-del a:visited {
	font-size: 1.4em;
	color: #999;
	cursor: pointer;
	display: block;
}
.btn-del a:hover, .btn-del a:focus { color: #666; }
.icon-trash-empty:before, .icon-cw-2:before { line-height: 30px;}

.cart-total {
	background-color: #FDD6D7;
    padding: 10px 0;
    overflow: hidden;
}
.qty-total {
    float: right;
    width: 10%;
	font-size: 1em;
    line-height: 30px;
    text-align: right;
    white-space : nowrap;
	color: #333;
    padding: 0 2.5% 0 2%;
}
.qty-total span {
	font-size: 1.25em;
    font-weight: 700;
	color: #FF0000;
    padding: 0 2px;
}
.amount-total {
    float: right;
    width: 20%;
	font-size: 1em;
    line-height: 30px;
    text-align: right;
    white-space : nowrap;
	color: #FF0000;
    padding: 0 10% 0 3%;
}
.amount-total span {
	font-size: 1.5em;
    font-weight: 700;
    padding: 0 0 0 2px;
}
.btn-sc a:link, .btn-sc a:visited {
	font-size: 1.75em;
	width: 200px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	color: #FFFFFF;
	background-color: #FF6600;
    border-radius: 8px;
	margin: 20px auto 0 auto;
	display: block;
}
.btn-sc a:hover, .btn-sc a:focus {
	background-color: #C1272D;
}
.btn-un {
	font-size: 1.75em;
	width: 200px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	color: #FF6600;
	background-color: #FFFFFF;
	border: 2px solid #FF6600;
    border-radius: 8px;
	margin: 20px auto 0 auto;
	display: block;
}

/*page------------------------------------------------------------------*/
.kv-pbn { text-align: center; margin: 0 auto; }
.kv-pbn img { width: 100%; }
.cart-page { padding: 0 2% 10px 2%; }

/*選單*/
.bg-none { background-color: transparent; }
.nav-area {
    position: relative; 
    width: 100%;
    padding: 15px 1% 0 1%;
}
.nav-box { position: relative; width: 100%; height: auto; }
.nav ul { padding: 0 0 1% 0; overflow: hidden; }
.nav li a {
    float: left; 
	width: 19.5%;
    font-size: 1.725em;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
    color: #FFF;
    background-color: #1768B7;
    border-radius: 15px 0 15px 0;
    padding: 15px 10px;
    margin: 0 0.5% 0 0;
    display: block;
}
.nav li.on a {
    color: #FFF;
	background-color: #ED1E79;
	border-radius: 15px 0 15px 0; 
}
.nav li a:hover, .nav li a:active, .nav li a:focus {
    background-color: #ED1E79;
    -webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.nav-more { display: none; }

/*次選單*/
.subnav-box { width: 100%; padding: 0; margin: 0 auto; }
.subnav ul { padding: 0; margin: 0 auto; overflow: hidden; }
.subnav li a {
    float: left;
    width: 16.666%;
    height: 36px;
	font-size: 1.125em;
    font-weight: 600;
	text-align: center;
    white-space: nowrap;
	line-height: 36px;
	color: #1768B7;
    background-color: #FFF;
    border-bottom: 2px solid #6CC5EB;
    border-right: 2px solid #6CC5EB;
	display: block;
}
.subnav li a:hover {
	color: #FFFFFF;
	background-color: #ED1E79;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.subnav li.on a, .subnav li.on a:active, .subnav li.on a:focus {
	color: #FFFFFF;
	background-color: #ED1E79;
    display: block;
}

/*路徑*/
.path { padding: 10px 1% 5px 1%; }
.path li {
	float: left;
	font-size: 1em;
    font-weight: bold;
	line-height: 130%;
	color: #0B2C60;
	display: block;
}
.path ul { overflow: hidden; }
.path span { margin: 0 5px; }
.path h2 { font-size: 1.5em; }
.path h2 b { color: #FF0000; }

/*list*/
.list-area { min-height: 550px; padding: 0 0 10px 0; }
.list { min-height: 550px; }
.list h2 {
    width: 300px;
    height: 300px;
    line-height: 300px;
    font-size: 1.8em;
    font-weight: 700;
    text-align: center;
    color: #FFFF00;
    background-color: rgba( 0,0,0, 0.7);
    border-radius: 50%;
    padding: 0;
    margin: 10px auto 0 auto;
}
.list ul { padding: 1% 0.5%; overflow: hidden; }
.list li {
    position: relative;
	float: left;
	width: 19%;
	background-color: #FFFFFF;
	padding: 5px 15px 15px 15px;
	margin: 0 0.5% 1% 0.5%;
	display: block;
}
.list li:hover { box-shadow: 0 0 6px 0px rgba(0,0,0, 0.3); }
.photo { width: 100%; height: 180px; }
.photo img { width: auto; max-height: 180px; }
.name {
    font-size: 1.125em;
	line-height: 1.3em;
    height: 2.4em;
	-webkit-line-clamp: 2;
    padding: 0 10px;
    margin: 5px 0 8px 0; 
}
.name:hover, .name:focus { color: #666; }
.name a:link, .name a:visited { color: #333; }
.name a:hover, .name a:focus {
	color: #666;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.price { color: #999; }
.sale { color: #FF0000; text-align: center; margin-bottom: 8px; }
.sale span  { color: #FF0000; }
.sale strong, .sale b  { color: #FF0000; }

/*頁碼*/
.page {
	width: 100%;
	text-align: center;
	padding: 1.5% 1% 4% 1%;
	margin: 0 auto;
}
.page ul {
	width: 65%;
	text-align: center;
    margin: 0 auto;
	display: inline-block;
}
.page li {
	float: left;
	width: 31.3333%;
	margin: 0 1%;
}
a.page_prev, a.page_next {
	height: 48px;
	font-size: 1.2em;
	line-height: 48px;
	text-align: center;
	color: #666;
	background-color: #FFFFFF;
	border-radius: 5px;
	display: block;	
}
a.page_prev {
	background-image: url(../images/page_prev.png);
	background-repeat: no-repeat;
	background-position: 10% center;
}
a.page_next {
	background-image: url(../images/page_next.png);
	background-repeat: no-repeat;
	background-position: 90% center;
}
a.page_prev:hover, a.page_prev:focus {
    color: #333;
	background-color: #EAEAEA;
}
a.page_next:hover, a.page_next:focus {
    color: #333;
	background-color:#EAEAEA;
}
a.page_prev_off, a.page_next_off {
	height: 48px;
	font-size: 1.2em;
	line-height: 48px;
	text-align: center;
	color: #D5D5D5;
	background-color: #FFFFFF;
	border-radius: 5px;
	display: block;
	cursor: default;
}
.page_number {
	width: 100%;
	height: 48px;
	font-size: 1.2em;
	line-height: 48px;
	text-align-last: center;
	color: #666666;
	background-color: #FFFFFF;
	border-radius: 5px;
	padding: 4px;
}

/*rule*/
.rule {
	width: 98%;
    background-color: #FFF;
	padding: 20px 50px;
	margin: 0 auto;
}
.rule h2 {
	font-size: 1.75em;
	font-weight: 700;
	line-height: 130%;
    text-align: center;
	color: #0B2C60;
    border-bottom: 1px solid #0B2C60;
    padding: 0 0 5px 0;
	margin: 0 auto 10px auto;
}
.rule h3 { text-align: center; margin: 0 auto 10px auto; }
.rule h3 img { width: 85%; }
.rule ol {
	list-style: decimal;
	margin-left: 30px;
}
.rule ul {
	list-style: disc;
	margin-left: 30px;
	margin-top: 5px;
}
.rule > ol > li {
	font-size: 1em;
	line-height: 140%;
	color: #666666;
	margin-bottom: 5px;
}
.rule > ol > li > ul > li,  .rule > ol > li > ul > li > ol > li {
	font-size: 1em;
	line-height: 140%;
	color: #666666;
	margin-bottom: 5px;
}
.rule a:link, .rule a:visited, .rule a:hover, .rule a:focus {
	font-size: 1em;
	font-weight: bold;
	color: #0B2C60;
	text-decoration: underline;
}
.rule p {
	font-size: 1em;
	line-height: 140%;
	color: #666666;
	padding: 0 0 5px 0;
}
.rule b { color: #0B2C60; }

/*購物車--------------------------------------------*/
.cart { width: 80%; text-align: center; margin: 0 auto;}
.pointer { cursor: pointer; }
.width120 { width: 100%;}
.button02, .button03, .button04 {
	height: 40px;
	text-align: center;
	border-radius: 3px;
}
.button02 span, .button03 span, .button04 span {
	font-size: 0.9em;
    line-height: 38px;
}

/*02--放入購物車*/
.button02 {
	color: #FFFFFF;
	background-color: #E55934;
	border: 1px solid #E55934;
}
.button02:hover, .button02:focus {
	color: #FFFFFF;
	background-color: #CC0000;
	border:1px solid #CC0000;
}

/*03--已放入購物車*/
.button03 {
	color: #FFFFFF;
	background-color: #999999;
	border:1px solid #999999;
	cursor: default;
}

/*04--已售完，補書中/新書尚未入庫/不開放訂購*/
.button04 {
	color: #666666;
	background-color: #FFFFFF;
	border:1px solid #666666;
	cursor: default;
}
