/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

#mainframe div, #mainframe span, #mainframe applet, #mainframe object, #mainframe iframe,
#mainframe h1, #mainframe h2, #mainframe h3, #mainframe h4, #mainframe h5, #mainframe h6, #mainframe p, #mainframe blockquote, #mainframe pre,
#mainframe a, #mainframe abbr, #mainframe acronym, #mainframe address, #mainframe big, #mainframe cite, #mainframe code,
#mainframe del, #mainframe dfn, #mainframe em, #mainframe img, #mainframe ins, #mainframe kbd, #mainframe q, #mainframe s, #mainframe samp,
#mainframe small, #mainframe strike, #mainframe strong, #mainframe sub, #mainframe sup, #mainframe tt, #mainframe var,
#mainframe b, #mainframe u, #mainframe i, #mainframe center,
#mainframe dl, #mainframe dt, #mainframe dd, #mainframe ol, #mainframe ul, #mainframe li,
#mainframe fieldset, #mainframe form, #mainframe label, #mainframe legend,
#mainframe table, #mainframe capxion, #mainframe tbody, #mainframe tfoot, #mainframe thead, #mainframe tr, #mainframe th, #mainframe td,
#mainframe article, #mainframe aside, #mainframe canvas, #mainframe details, #mainframe embed, 
#mainframe figure, #mainframe figcapxion, #mainframe hgroup, 
#mainframe menu, #mainframe nav, #mainframe output, #mainframe ruby, #mainframe section, #mainframe summary,
#mainframe time, #mainframe mark, #mainframe audio, #mainframe video {
	margin: 0;
	padding: 0;
	/*border: 0;*/
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
#mainframe article, #mainframe aside, #mainframe details, #mainframe figcapxion, #mainframe figure, 
#mainframe hgroup,#mainframe  menu, #mainframe nav, #mainframe section {
	display: block;
}
#mainframe {
	line-height: 1;
}
#mainframe ol, #mainframe ul {
	list-style: none;
}
#mainframe blockquote, #mainframe q {
	quotes: none;
}
#mainframe blockquote:before, #mainframe blockquote:after,
#mainframe q:before, #mainframe q:after {
	content: '';
	content: none;
}
#mainframe table {
	border-collapse: collapse;
	border-spacing: 0;
}
#mainframe a{
	text-decoration: none;
	color: inherit;
}
#mainframe img{
	max-width: 100%;
	vertical-align:middle;
}
/* Page Loader */
#fade{
    display:none;
    width:100%;
    height:100%;
    background: #FFF;
    position: fixed;
    top:0px;
    left:0px;
    z-index:99;
}
#fade .load_img{
    display: block;
    margin: auto;
    padding-top: 30%;
}
#fade .load_img img{
	display: block;
	height: auto;
	width: 200px;
	/*background:transparent;*/
	animation: flash 3s linear infinite;
	margin: auto;
}
@-webkit-keyframes flash{
	0%,50%,to{opacity:1}25%,75%{opacity:0}}
@keyframes flash{0
	%,50%,to{opacity:1}25%,75%{opacity:0}}

#mainframe{
	font-family: 'Noto Sans TC', 'Microsoft JhengHei', '微軟正黑體', Arial, Helvetica, sans-serif;
	overflow-x: hidden;
	color:#222;
}

.sp{display: none!important;}

#mainframe .wrapper{
	font-size: 14.5px;
}

#mainframe .mv{
	max-width: 1300px;
	margin: auto;
	padding: 0;
}
@media screen and (min-width: 1300px){
	#mainframe .mv{
		padding: 1.8em 1.5em;
	}
}
#mainframe .intro{
	margin: 5em auto 5.5em auto;
}
#mainframe .intro p{
	margin: auto;
	letter-spacing: 0.1em;
	line-height: 230%;
	white-space: pre-line;
	text-align: center;
}
#mainframe .index{
	display: flex;
	max-width: 600px;
	margin: auto;
	margin-bottom: 6%;
	justify-content: space-around;
	flex-wrap: wrap;
}
#mainframe .index a{
	display: block;
	width: calc((100% - 50px) / 4);
	position: relative;
	margin-bottom: 20px;
}
#mainframe .index a img{
	filter: brightness(0.9);
	transition: linear .3s;
}
#mainframe .index a:hover img{
    filter: brightness(0.9);
}
#mainframe .index a p{
	font-family: "Roboto Flex", sans-serif;
   font-size: 24pt;
   font-weight: 400;
   text-align: center;
   color: #FFF;
   position: absolute;
   top: 40%;
   left: calc((100% - 32px) / 2);
}
#mainframe .content{
	margin: auto;
	padding: 8em 0 8.5em 0;
	position: relative;
}
#mainframe .content:nth-of-type(odd){
	background: #eaeeef;
}
#mainframe .content h1{
	font-family: "Roboto Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
	font-size: 40px;
	text-align: center;
	letter-spacing: 0.03em;
	line-height: 110%;
	margin-bottom: 1.5em;
}
#mainframe .content h1 span{
	display: block;
	font-size: 50%;
	letter-spacing: 0.07em;
}
#mainframe .content h1 span::after{
	content: '';
	display: block;
	width: 70px;
	height: 1px;
	background: #222;
	margin: 0 auto 10px auto;
}

#mainframe .inner{
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 1000px;
	margin: auto;
	margin-bottom: 5em;
}
#mainframe .items{
	width: fit-content;
	width: -webkit-fit-content;
	margin: auto;
	position: relative;
}
#mainframe .items h2{
	font-family: "Roboto Flex", sans-serif;
	font-weight: 500;
	font-size: 20px;
	text-align: center;
	letter-spacing: 0.03em;
	line-height: 120%;
	text-transform: uppercase;
	margin-bottom: 2em;
}

#mainframe .items::before{
	content: '';
	background: #a6bfc0;
	display: block;
	width: 2px;
	height: 30px;
	margin: 0 auto 1em auto;
}
#mainframe .items ul li a{
	display: flex;
	align-items: center;
	margin-bottom: 20px;
	transition: linear .3s;
}
#mainframe .items ul li a:hover{
	transform: translateX(5px);
}
#mainframe .items ul li img{
	max-width: 85px;
	width: 25%;
	display: block;
	margin-right: 15px;
}
#mainframe .items ul li .itemName{
	font-size: 90%;
	letter-spacing: .04em;
    text-align: left;
    line-height: 148%;
}
/*===== slider setting =====*/
#mainframe .swiper-container{
	width: 50%;
	height: auto;
	margin: 0 auto;
}

#mainframe .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet{
	margin: 0 8px 0 0;
}

#mainframe .itemsSwiper{
	width: 85%;
	margin: 0 auto;
	overflow: hidden;
}
#mainframe .itemsSwiper .swiper-pagination-items .swiper-pagination-bullet{
	display: inline-block;
	margin: 0 4px;
}
#mainframe .swiper-pagination.swiper-pagination-items.swiper-pagination-black.swiper-pagination-clickable.swiper-pagination-bullets{
	left: 0;
	bottom: -30px;
}
#mainframe .swiper-button-prev:after, #mainframe .swiper-button-next:after{
	font-size: 20px;
}
#mainframe .swiper-button-prev, #mainframe .swiper-button-next{
	color: #222;
}
#mainframe .swiper-button-prev, #mainframe .swiper-button-next{
	width: calc(var(--swiper-navigation-size) / 20 * 27);
}

#mainframe .swiper-button-next, #mainframe .swiper-container-rtl .swiper-button-prev,
#mainframe .swiper-button-prev, #mainframe .swiper-container-rtl .swiper-button-next{
	background-image: none!important;/*為了官網寫的*/
}

/*===== slider setting END =====*/

#mainframe .kbf-btn{
	display: block;
	width: fit-content;
	width: -webkit-fit-content;
	text-align: center;
	font-size: 110%;
	letter-spacing: .07em;
	font-weight: 600;
	line-height: 145%;
	color: #53898b;
	border-bottom: 1px dotted;
	padding: 10px 15px 10px 20px;
	margin: 0 auto 20px auto;
	position: relative;
}

#mainframe .textBox{
	width: 40%;
	padding: 2em 1em 1em 1em;
}
#mainframe .textBox p{
	width: 90%;
	margin: auto;
	line-height: 200%;
	text-align: justify;
	letter-spacing: .08em;
	/*color: #f36954;*/
}
#mainframe .detail{
	width: 80%;
	margin: auto;
	margin-top: 1.8em;
}
#mainframe .mainBtn{
	font-family: "Roboto Flex", sans-serif;
	font-size: 100%;
	text-align: center;
	letter-spacing: .05em;
	width: 130px;
	padding: 13px 0;
	margin: 25px auto 0 auto;
	display: block;
	color: #fff;
	background: #222;
	transition: linear .3s;
}

#mainframe .mainBtn:hover{
	transform: translateY(8px);
}
#mainframe .mainBtn .arrow{
	display: inline-block;
	width: 5px;
	height: 5px;
	background: transparent;
	border-top: 1px solid #fff;
	border-right: 1px solid#fff;
	transform: rotate(45deg) translateY(-4px);
}


#mainframe .more-btn{
	font-family: "Roboto Flex", sans-serif;
	display: block;
	font-size: 110%;
	text-align: center;
	letter-spacing: .04em;
	font-weight: 300;
	color: #222;
	border: solid 1px;
	width: fit-content;
	width: -moz-fit-content;
	width: -ms-fit-content;
	width:-webkit-fit-content;
	padding: 1.2em 2.5em;
	-webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    margin:6em auto 0 auto;
}
#mainframe .more-btn:hover{
	-webkit-transform: translateY(6px);
    transform: translateY(6px);
}
#mainframe .gotop{
	width: 40px;
	position: fixed;
	right: 20px;
   bottom: 4.5em;
   z-index: 99;
}
#mainframe .gotop:hover{
	opacity: 0.6;
}

/*======= mobile setting ======= */

@media screen and (max-width: 640px){
	#mainframe .wrapper{
		/*font-size: 15px;*/
	}
	#fade .load_img{
		padding-top: 75%;
	}
	.pc{display: none!important;}
	.sp{display: block!important;}
	#mainframe .wrapper{
		width: 100%;
		overflow-x: hidden;
		padding-bottom: 0;
	}
	#mainframe .mv{
		width: 100%;
	}
	#mainframe .intro{
		width: 75%;
		margin: 4em auto;
	}
	#mainframe .intro p{
		text-align: justify;
	}
	#mainframe .index{
		margin-bottom: 3em;
	}
	#mainframe .content{
		padding: 5em 0 6.5em 0;
	}
	#mainframe .inner{
		display: block;
		margin-bottom: 3em;
	}
	#mainframe .content h1{
		font-size: 50px;
		margin-bottom: .5em;
	}
	#mainframe .swiper-container{
		width: 100%;
	}
	#mainframe .itemsSwiper{
		width: 80%;
	}
	#mainframe .kbf-btn{
		font-size: 120%;
		margin-top: 10px;
	}
	
	#mainframe .textBox{
		width: 90%;
		margin: 10px auto 0 auto;
		padding: 1em 0 0 0;
	}
	#mainframe .detail::before{
		margin-top: 1em;
	}
	#mainframe .detail{
	}
	#mainframe .items ul{
		width: fit-content;
		width: -webkit-fit-content;
	}
	#mainframe .items ul li img{
	}
	
}

@media(max-width: 450px){
	#mainframe .index{
		width: 80%;
	}
	#mainframe .index a{
		width: calc((100% - 40px) / 2);
	}
	
}

@media(max-width: 380px){
	#mainframe .items ul li img{
		width: 22%;
	}
}

