﻿@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap");


/* ---reset.css--- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, fREigure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1; 
}
ol, ul, li{
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* ---reset.css--- */
a { text-decoration:none;}

html {	
	-webkit-text-size-adjust:none;
	scroll-behavior: smooth; 

}

body{
	font-family: 'Noto Sans TC', sans-serif;
	background:
    radial-gradient(#FFF 2px, transparent 2px) 15px 15px,
    radial-gradient(#EEE 4px, transparent 4px) 0 0,
  linear-gradient(to bottom, #f8f8f8 0%, #f8f8f8 50%, #f8f8f8 100%);
  background-size: 36px 36px, 36px 36px, 100% 100%;
}

 	@media screen and ( max-width: 768px ){
		*{
			box-sizing:border-box; /* 讓 padding 與 width 解除關係 */
		}
		html,body{
			-webkit-text-size-adjust:none; /* iPhone 旋轉後 文字不要放大 */
		}
	}
/* --電腦版型------------------------------------- */

#WRAPPER{ width:100%; min-width:1200px; margin:0 auto; }
 	@media screen and ( max-width: 768px ){
		#WRAPPER{ min-width:100%;}
	}
	
header{
	clear:both;
	width:100%;
	margin:0 auto;
	background-color:#727171;
	padding:5px 0;

	}	
	
header img{
	padding-left:15px;
	}	

	@media screen and ( max-width: 768px ){
	#WRAPPER{ min-width:100%;}
	header img{
	width:80%;
	padding-left:5px;
	}	
}


article{
	width:100%;
	margin:0 auto;
	text-align:center;	
}


#title{
	width:100%;
	height:596px;
	margin: 0 auto;
	overflow: hidden;
	background:#000 url(images/bg.png) no-repeat;
	background-position:right;
	background-size: cover;
}

#title_m, #m{
	display:none;
	}
	 @media screen and ( max-width: 768px ){
		#title{ display:none;}
		#m{display:block;}
		#title_m{display:block;
		 	width:100%;
	height:auto;
	overflow: hidden;
		 }
		#title_m img{
			width:100%;
			margin:0;
			padding:0;
			right:0;
			}
	}


section{
	width:100%;
	height:auto;	
	margin:0 auto;
	overflow:hidden;
	text-align;center;
	}
section div{
	width:1200px;
	height:auto;
	overflow:hidden;
	margin:10px auto;
	padding-top:3px;
}	
	
section MENU{
	width:100%;
	height:50px;
	background:#2f2e33;
}	
section MENU ul{
	width:980px;
	margin:0 auto;
	padding-top:5px;		
  display: flex;
		grid-template-columns: repeat(6, 1fr); /* 固定 3 欄 */
  	gap: 10px; /* 間距 */
}	
section MENU li{
	padding:8px 0;
}	

section MENU li a{
	font-size:1.385rem;
	color:#8ffbdb;
	font-weight:500;
}	
section MENU li a:hover{
	background:#8ffbdb;
	color:#2f2e33;
}	
	 @media screen and ( max-width: 768px ){

section div{
	width:100%;
	margin:0px auto;
}	
	
section MENU{
	height:auto;
	overflow:hidden;
}	
section MENU ul{
	width:100%;
}	
section MENU li{
	width:26%;
	margin:0px;	
}	

#m li{
	width:100%;
	margin:0px;	
}	
#m .large{
	margin:1px;
}


section MENU li a{
	font-size:18px;
}	
	}


section h1{
	font-size:40px;
	color:#104E8B;
	font-weight:bold;
	letter-spacing: 3px;
	padding:0;
  text-shadow: 1px 1px 3px #FFF;
   font-family: 'Noto Sans TC', sans-serif;

}
h2{
	font-size:22px;
	color:#FFF;
	font-weight:bold;
}

#BOX{
	width:1150px;
	height:auto;
	overflow:hidden;
	margin:10px auto;
		text-align: center;
		padding:0px;
}

#BOX li {
		width:255px;
		height:auto;
		overflow:hidden;
		float:left;
		border-radius: 5px;
		background-color:#FFF;
		padding:0 ;
		margin:12px;
		text-align: center;
		color: #666;
		font-size: 15px;
		}	
		
#BOX li h1{
	height:10px;	font-size:13px;
	line-height:1.5;
	background:#71174b;
	padding:0 5px 10px 0;	margin:0px; 	
	letter-spacing: 3px;float:none;
}
		
#BOX li div{
		width:180px;
		height:230px;
		line-height : 230px;
		}			

#BOX li div.book_title{
		width:auto;
		height:80px;
		line-height :20px;
		padding:0 10px;
 		 display: table; 
		}	
#BOX img {
		width: 90%;
		height:auto;
		vertical-align : middle;
		}
#BOX .cp{
	width:50px; 
	position: absolute;
	margin-left:60px;
	margin-top:5px;  opacity: 0.9;
}

#BOX h2 {
		font-size: 17px;
		font-weight:bold;
		color: #613f2e;
		display: table-cell;
  vertical-align: middle;
}

#BOX p {
		font-size: 15px;
		margin-bottom:10px;
		color: #333;
}
           
#BOX p span.red{
		color: #CD0B0B;
		font-weight:bold;
		font-size: 20px;
		padding-left:5px;
		padding-right:8px;
}

#BOX h3{
		font-size: 14px;
		margin:15px;
		padding:10px;
		 }	    			
		 
#BOX h3 a {
	background-color: #03A0E9;
	font-weight:bold;
	color: #FFF;
	padding:10px;
	 }
            
#BOX h3 a:hover {
	color: #111;
	background-color:#b2e0f8;
 }
	 @media screen and ( max-width: 768px ){

.title{
	width:90%;
}

section h1{
	font-size:25px;
}

h2{
	font-size:16px;
}

#BOX{
	width:100%;
	margin:0 auto;
	padding:10px;
		
}

#BOX li {
		width:45%;
		margin:8px;
		font-size: 13px;
		}	
		
#BOX li h1{
display:none;
}
		
#BOX li div{
		width:95%;
		height:210px;
		line-height : 200px;
		}			

#BOX li div.book_title{
		width:auto;
		height:100px;
		line-height :20px;
		padding:0 5px;
		}	
#BOX img {
		width: 85%;
		}
#BOX .cp{ 
	width:40px;
	margin-left:30px;
}

#BOX h2 {
		font-size: 15px;
}

#BOX p {
		font-size: 14px;
		margin-bottom:5px;
}
           
#BOX p span.red{
		font-size: 16px;
		padding-left:3px;
		padding-right:5px;
}

#BOX h3{
		font-size: 14px;
		 }	    			
		 

	}


footer{
	clear:both;
	width:100%;
	margin:0 auto;
	background:#4B3100;
	color:#FFF;
	padding:8px 0;
	text-align:center;
	font-size:0.85rem;
	line-height:1.5;
}





#car{ /* 購物車 */
	width:145px;
  position:fixed;
  z-index:999999;
}

#car a{ /* 購物車 */
width:25px;
  height:auto;
	margin:0 auto;
	border-radius: 15px;
	background: #ff4f81;
  color:#FFF;
  font-size:1.15rem;
  text-align:center;
  padding:5px 3px;
  position:fixed;
	display:inline-block;
  top:42px;
	right:5px;
	box-shadow: 0 5px 15px #193047;
  border:1px solid #EEE;
  font-weight:800;
  line-height:1.2;
}


iframe{ /* 購物車 */
width:140px;
  position:fixed;
  right:40px;
  top:42px;
  height:180px;
  overflow:hidden;
}  



@media screen and ( max-width: 768px ){	

	#car{ /* 購物車 */
		width:auto;
	}
	
	#car a{ /* 購物車 */
	width:35px;
	  height:auto;
		margin:0 auto;
		border-radius: 5px;
	  font-size:1.15rem;
	  top:80%;
	  line-height:1.5;
	}

	iframe{
	display:none;
	}

}


.yellow {
	height:30px;
	padding-top:30px;
	font-size:20px;
}

.yellow A {
	BORDER-RIGHT: #666 1px solid; 
	PADDING-RIGHT: 5px; 
	BORDER-TOP: #666 1px solid; 
	PADDING-LEFT: 5px; 
	PADDING-BOTTOM: 2px; 
	MARGIN: 5px; 
	BORDER-LEFT: #666 1px solid; 
	COLOR: #666; 
	PADDING-TOP: 2px; 
	BORDER-BOTTOM: #666 1px solid; 
	TEXT-DECORATION: none;
}
.yellow A:hover {
	BORDER-RIGHT: #f0f0f0 1px solid;
	BORDER-TOP: #f0f0f0 1px solid; 
	BORDER-LEFT: #f0f0f0 1px solid; 
	COLOR: #FFF; 
	BORDER-BOTTOM: #f0f0f0 1px solid
}
.yellow A:active {
	BORDER-RIGHT: #f0f0f0 1px solid; 
	BORDER-TOP: #f0f0f0 1px solid; 
	BORDER-LEFT: #f0f0f0 1px solid; 
	COLOR: #000; 
	BORDER-BOTTOM: #f0f0f0 1px solid;
}
.yellow SPAN.current {
	BORDER-RIGHT: #000 1px solid; 
	PADDING-RIGHT: 5px; 
	BORDER-TOP: #000 1px solid; 
	PADDING-LEFT: 5px; FONT-WEIGHT: bold; 
	PADDING-BOTTOM: 2px; 
	MARGIN: 5px;  
	BORDER-LEFT: #000 1px solid; 
	COLOR: #0190DF; 
	PADDING-TOP: 2px; 
	BORDER-BOTTOM: #000 1px solid; 
	BACKGROUND-COLOR: #FFF;
	font-size:22px;
}
.yellow SPAN.disabled {
	BORDER-RIGHT: #eee 1px solid; 
	PADDING-RIGHT: 5px; 
	BORDER-TOP: #eee 1px solid; 
	PADDING-LEFT: 5px; 
	PADDING-BOTTOM: 2px; 
	MARGIN: 5px; 
	BORDER-LEFT: #eee 1px solid; 
	COLOR: #ddd; PADDING-TOP: 2px; 
	BORDER-BOTTOM: #eee 1px solid;
}
	 @media screen and ( max-width: 768px ){

.yellow {
	height:50px;
	padding-top:20px;
}

	}



/* -- sidemanu for pc -- */
.side-menu{
position: fixed;
	width: 120px;
	top:25%;
	left:5px;
	padding:10px 5px;
	border-radius:20px;
	box-sizing: border-box;
	background:#832E2F;
	opacity:0.75; 
	display: flex;
	flex-direction: column;
	transform: translateX(0);
	transition: .3s;
	text-align:center;
	z-index:9999;
	font-size:1rem;
	line-height:1.5;
}
.side-menu label{
	position: fixed;
	width: 40px;
	height: 150px;
	background:#e87436;
	opacity:0.95; 
	color: #f6f5e5;
	right: -40px;
	top: 0%;
	line-height: 28px;
	text-align: center;
	font-size:1.15rem;
	border-radius: 0 10px 10px 0;
	padding:18px 8px 10px 8px;
	font-weight:500;
}

nav a{
	display: block;
	padding: 15px 5px;
	color: #FFF;
	text-decoration: none;
	position: relative;
	font-weight: 900;
}
nav a:hover{
	color: #ffffff;
	background-color:#e87436;
	border-radius:0;
}
nav p.name_menu{ padding:5% 0 3% 0; font-size:1.13rem; line-height:1.5em; border-bottom:1px solid; color:#fff100;font-weight: bold; margin-bottom:5px;}
nav ul.area1{ margin-bottom:210px;}
nav ul.area1 li{ width:49%; float:left; border-bottom:1px dotted #CCC;}
nav ul.area1 li:first-child{ width:100%; float:left; border-bottom:1px dotted #2a438d; background:#01096A;}
nav ul.area1 li:nth-child(even){ border-right:1px dotted #CCC;}


nav ul.area2 img{width:100px;margin-left:-5px;margin-bottom:10px; }
nav ul.area2 li{ border-bottom:1px dotted #CCC;}
nav ul.area1 li:nth-last-child(1), nav ul.area1 li:nth-last-child(2), nav ul.area2 li:nth-last-child(1){ border-bottom:none;}
	@media screen and ( max-width: 640px ){
		.side-menu {display: none;}
	}


#info{
width:1100px;
}
#info h1{
	width:auto;
	font-size:28px;
	text-align: left;
	font-weight: bold;
	background:#DB7093;
	color:#182d69;
}
#info li{
		text-align: left;
		width:auto;
		float:none;
		color:#333;
		background:none;
		font-size:20px;
		line-height: 1.8;
	text-align: justify;
	padding-left:18px;
	text-indent : -18px ;
}

	 @media screen and ( max-width: 768px ){

#info{
	width:90%;
}

#info h1{
	font-size:21px;
}
#info li{

	font-size:16px;
}

}

div.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index:999;
/*  padding: 5px;
  background-color: #cae8ca;
  border: 2px solid #4CAF50;*/
}



#TOP{
	width:160px;
	height:auto;
	overflow:hidden;
	border-radius:5px;
	background:#f3f4f7;
	padding:0px;	
	position:fixed; /*固定位置定位*/
  top:85%; 
  right:5px;
	text-align:center;
 	z-index: 9999;
	line-height:1.5;
}	

#TOP h1{
 	font-size:1.15rem;
 	font-weight:bold;
 	color:#FFF;
	border-radius:5px 5px 0 0 ;
	background:#401f4c;
	padding:5px 0;
}

#TOP p{
	padding:10px 0;
 	font-size:1.1rem;
}

#TOP p span{
	padding:10px 0 10px 3px;
 	font-size:1.5rem;
 	font-weight:bold;
 	color:#be0027;
}


	@media screen and ( max-width: 768px ){
	


#TOP{
	width:100px;
  top:90%; 
  right:0;
   background: rgba(255, 255, 255, 0.85);
}	

#TOP h1{
 	font-size:0.78rem;
   background: rgba(64, 31, 76, 0.7);
}

#TOP p{
	padding:5px 0;
 	font-size:0.8rem;
}

#TOP p span{
	padding:5px 0;
 	font-size:1rem;
}
	
	
	}

/* === 活動抽獎專用 === */
.event-lottery {
  max-width: 1000px;
  margin: 0 auto 30px auto;
  background: #ffffff;
  border-radius: 16px;
  border: 3px solid #ffe178;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
  color: #333;
}

/* 標題區 */
.event-lottery__header {
  text-align: center;
  padding: 30px 20px 25px;
  background: linear-gradient(135deg, #fff6b3, #ffe178, #ffd44d);
}
.event-lottery__header h1 {
  margin: 0;
  font-size: 34px;
  font-weight: 800;
  color: #b24a00;
  text-shadow: 1px 1px 0 #fff;
}
.event-lottery__header p {
  margin-top: 12px;
  font-size: 18px;
  color: #555;
}

/* 獎項格 */
.event-lottery__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
  padding: 24px 24px 36px;
}

/* 獎項卡片 */
.event-lottery__card {
  background: #fdfaf3;
  border: 2px solid #ffd972;
  border-radius: 12px;
  padding: 14px 10px;
  text-align: center;
  transition: transform 0.2s, box-shadow 0.2s;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
}
.event-lottery__card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}
.event-lottery__card h2 {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 700;
  color: #f25c05;
}
.event-lottery__card p {
  margin: 8px 0;
  font-size: 1rem;
  line-height: 1.4;
  color: #333;
}
.event-lottery__card span {
  display: block;
  font-size: 12px;
  color: #777;
}

/* 第一獎突出 */
.event-lottery__card.highlight {
  background: linear-gradient(135deg, #fff3c4, #ffe178);
  border-color: #ffb700;
  box-shadow: 0 0 16px rgba(255, 198, 66, 0.4);
}

/* 頁尾 */
.event-lottery__footer {
  text-align: center;
  background: #fff8d6;
  border-top: 2px solid #ffe178;
  padding: 14px;
  font-size: 14px;
  color: #666;
}

/* RWD */
@media (max-width: 1024px) {
  .event-lottery__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 600px) {
  .event-lottery__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .event-lottery__header h1 {
    font-size: 26px;
  }
  .event-lottery__card h2 {
    font-size: 16px;
  }
}
