﻿@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600&display=swap');

/*=[header]=========*/
header .btn-member{
	display: inline-block;
	margin: 10px;
}
header .btn-cart{
	display: inline-block;
	margin: 10px;
}
.rd-navbar-nav span{
	display: inline-block;
	font-size: 12px;
	line-height: 12px;
}

/*=[section]=========*/
.section-title{
	position: relative;
	font-family: 'Noto Sans TC', serif;
	font-size: 2em;
	font-weight: 500;
	margin: 0 auto 20px;
}

/*=[index]=========*/

/*=[about]=========*/
#about .section1{

}
#about .section1 .wrapper{
	padding: 40px 0 80px;
}

/*=[product]=========*/
#product .product-title{
	font-size: 30px;
}
#product .form-wrap{padding: 0;}

/*=[course]=========*/
#course .banner img{
	width: 100%;
}
#course .section1{

}
#course .section1 .wrapper{
	padding: 40px 0 80px;
}
#course .main-content .item{
	padding: 20px;
}
#course .main-content .item .inner{
	position: relative;
	border: 1px #DDD solid;
	box-shadow: 2px 2px 10px #CCC;
	background: #FFF;
}
#course .main-content .item-status{
	position: absolute;
	top: 0;
	left: 0;
	color: #FFF;
	background: #047dde;
	line-height: 1;
	padding: 10px;
	z-index: 1;
}
#course .main-content .status-1{}
#course .main-content .status-2{background: #C00;}
#course .section1 .info-wrap{
	font-size: 1.2em;
	padding: 20px 0;
	border-bottom: 1px #333 solid;
}
#course .section1 .info-wrap i{
	margin-right: 15px;
}
#course .section1 #list_signup{
	display: none;
}

#course .signup-form-wrap{
	border: 1px #EEE solid;
	padding: 20px;
	background: #d9eeff;
}

#course .content-wrap{
	position: relative;
	height: 200px;
	overflow: hidden;
}
#course .content-wrap.open{
	position: relative;
	height: initial;
}
#course .open-more{
	cursor: pointer;
}
#course .filter-img{
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 0;
	z-index: 10;
}

#course .recommend-wrap{
	margin: 50px 0;
}
#course .recommend-wrap h2{
	color: #2f8deb;
	font-size: 1.8em;
	font-weight: 400;
	line-height: 1;
	border-left: 5px #2f8deb solid;
	padding-left: 10px;
	margin: 0 0 20px;
}
#course .recommend-wrap .item{
	border: 1px #DDD solid;
	margin-bottom: 20px;
}
#course .recommend-wrap .item-info{
	padding: 10px;
	background: #FFF;
}

/*=[album]=========*/
#album .section1{

}
#album .section1 .wrapper{
	padding: 40px 0 80px;
}
#album .main-content .item{
	padding: 20px;
}
#album .main-content .item .inner{
	position: relative;
	border: 1px #DDD solid;
	box-shadow: 2px 2px 10px #CCC;
}
#album .overlayer{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: rgba(256, 256, 256, 0.5);
	display: none;
}
#album .overlayer img{
	position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#album .section1 .item .inner:hover .overlayer{
	display: block;
}

/*=[media]=========*/
#media .section1{

}
#media .section1 .wrapper{
	padding: 40px 0 80px;
}
#media .main-content .item{
	padding: 10px;
}
#media .main-content .item .inner{
	position: relative;
	text-align: center;
}
#media .btn-play{
	position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/*=[faq]=========*/
#faq .section1{

}
#faq .section1 .wrapper{
	padding: 40px 0 80px;
}
#faq .section1 .content{
	max-width: 800px;
	margin: 20px auto;
}
#faq .item{
	padding-bottom: 20px;
	border-bottom: 1px #CCC solid;
}
#faq .q_title{
	font-size: 1.4em;
	font-weight: 500;
	color: #243c80;
}
#faq .ans{
	line-height: 2;
	color: #666;
}

/*=[shp]=========*/
#shp .section1{

}
#shp .section1 .wrapper{
	padding: 40px 0 80px;
}
#shp .section1 .content{
	max-width: 800px;
	margin: 20px auto;
	line-height: 2;
	font-size: 1.2em;
}
#shp .section1 h2{
	font-size: 1.4em;
	font-weight: 500;
	color: #555;
	text-align: center;
}
#shp .section1 ol{
	padding: 0 0 0 20px;
}

/*=[contact]=========*/

/*=[member]=========*/
#member .form-wrap{
	max-width: 500px;
	margin: 0 auto;
	padding: 20px;
	background: #FFF;
	border: 1px #DDD solid;
}
#member .order-wrap{
	width: 100%;
	max-width: 1000px;
	margin: 20px auto;
	padding: 20px;
	box-sizing: border-box;
}


/*=[process]=========*/
#process .form-wrap{
	max-width: 800px;
	margin: 20px auto;
}
#process .checkout_table{
	margin: 20px 0;
	width: 100%;
	border: 1px #999 solid;
	border-collapse: collapse;
}
#process .checkout_table th{
	padding: 10px;
	color: #FFF;
	background: #555;
}
#process .checkout_table td{
	color: #000;
	padding: 10px;
	border: 1px #999 solid;
}
#process .checkout_table .item-pic{
	width: 80px;
}
#process .form-title{
	font-size: 1.4em;
	font-weight: 500;
}
#process .total_price{
	font-size: 1.2em;
	color: #C00;
}

/*=[footer]=========*/
footer{
	padding: 0;
	color: #DDD;
	background: #666;
	line-height: 1.5;
}
footer .wrapper{
	position: relative;
}
footer .info-wrap{
	padding: 30px 10px;
}
footer .info-wrap h4{
	margin: 0 0 20px;
	padding: 0;
	font-size: 1.2em;
	font-weight: 400;
	color: #FFF;
}
footer .info-wrap ul{
	margin: 0;
	padding: 0;
	list-style: none;
}
footer .info-wrap a{
	color: #DDD;
}
footer .copyright{
	padding: 20px 10px;
	text-align: center;
	color: #FFF;
	background: #08192b;
}
footer .copyright a{
	color: #39A2C0;
}

#scrollup{
	position: fixed;
	right: 20px;
  bottom: 20px;
	z-index:20;
	display: none;
	width: 38px;
	height: 38px;
	background: url(../images/totop.jpg) center center no-repeat;
	background-size: 100% auto;
	cursor:pointer;
}

/*=[aside_nav]=========*/
.aside-nav{

}
.aside-nav h1{
	color: #2f8deb;
	font-size: 1.8em;
	font-weight: 400;
	line-height: 1;
	border-left: 5px #2f8deb solid;
	padding-left: 10px;
	margin: 0 0 20px;
}
.aside-nav ul{
	margin: 0;
	padding: 0;
	list-style: none;
}
.aside-nav li{
	padding: 10px 0;
	border-bottom: 1px #CCC solid;
}
.aside-nav li a{
	font-size: 1.1em;
	color: #333;
}
.aside-nav li.active{
	border-bottom: 1px #2f8deb solid;
}
.aside-nav li.active a{
	color: #2f8deb;
}

/*=[main-content]=========*/
.main-content{
	padding-left: 60px;
}
.main-content h2{
	font-size: 1.4em;
	font-weight: 400;
	margin: 0 0 10px;
	padding: 0 0 10px;
	border-bottom: 1px #333 solid;
}
.main-content .content-txt{
	line-height: 2;
}

/*=[cart]=========*/
#cart{
	position: fixed;
	top: 0;
	right: -400px;
	width: 400px;
	height: 100%;
	background: #EEE;
	z-index: 9999;
	padding: 20px;
	box-sizing: border-box;
	overflow-y: scroll;
}
#cart .btn-cartclose{
	float: right;
}
#cart .cart_title{
	font-size: 24px;
	margin: 20px 0 20px;
}
#cart .sub_total{
	font-size: 16px;
	margin: 40px 0;
}
#cart .sub_total span{
	float: right;
}
#cart .notice{
	font-size: 12px;
}
#cart .cart_empty{
	padding: 30px;
	background: #EBEBE8;
	margin-left: -25px;
	width: calc(100% + 50px);
	box-sizing: border-box;
}

#cart table{
	width: 100%;
	border-top: 1px #717171 solid;
	border-bottom: 1px #717171 solid;
	border-collapse: collapse;
}
#cart table td{
	padding: 5px;
}

#cart table td.border-bottom{
	border-bottom: 1px #717171 solid;
}
#cart input[name=quantity]{
	appearance: none;
	border: none;
	width: 30px;
	text-align: center;
	background: transparent;
	font-weight: bold;
	font-size: 16px;
	line-height: 1;
	vertical-align: top;
	padding: 2px;
	border: 1px #CCC solid;
}
#cart .btn_add, #cart .btn_sub{
	appearance: none;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	border: 1px #CCC solid;
	background: transparent;
	vertical-align: top;
	outline: none;
	padding: 5px;
}
#cart .item-pic{
	display: block;
	width: 60px;
	border: 1px #CCC solid;
	margin-right: 10px;
}
#cart .btn_checkout{

}
#cart .btn_checkout:hover{

}
#cart .btn_login{
	display: block;
	padding: 10px;
	font-size: 16px;
	border: 1px #999 solid;
	text-align: center;
	width: 120px;
	margin: 20px 0;
	color: #999;
}
#cart .btn_login:hover{
	color: #FFF;
	background: #999;
}
#cart .remove{
	font-size: 12px;
}
#cart .hide{
	display: none;
}

/*=[common]=========*/
.form-wrap{padding: 0 20px;}
.form-group2{padding: 5px;}
.form-control2{
	width: 100%;
	box-sizing: border-box;
	padding: 15px;
	box-sizing: border-box;
	border: 1px #dbdbdb solid;
	resize: none;
}

input[type=radio],input[type=checkbox]{
	width: initial;
	zoom: 1.2;
}
label{
	color: #333;
	font-size: 1.2em;
	font-weight: 500;
}

i.fa{font-style: normal;}

.clearfix::after {
  content: "";
  clear: both;
  display: table;
}
.btn{
	display: inline-block;
	font-size: 1em;
	font-weight: 400;
	padding: 5px 15px;
	min-width: 140px;
	color: #FFF;
	background: #2f8deb;
	border: 1px #2f8deb solid;
	border-radius: 5px;
	text-align: center;
	cursor: pointer;
}
.btn:hover{
	color: #2f8deb;
	background: #FFF;
}
.btn.active{
	color: #2f8deb;
	background: #FFF;
}
.btn-list{
	padding: 5px 15px;
	background: #4fba34;
}
.btn-small{
	line-height: 1;
	min-width: initial;
	padding: 5px 10px;
	background: #273691;
}

.pages{margin: 80px 0; text-align: center;}
.pages a{
	display: inline-block;
	vertical-align: middle;
	font-size: 1.4em;
	line-height: 1;
	padding: 10px 15px;
	margin: 0 5px;
	border-radius: 10px;
	border: 1px #333 solid;
}
.pages a.active{
	color: #FFF;
	background: #966443;
}
.breadcrumb{
	padding: 10px 0;
}
.social-icon{
	display: inline-block;
	width: 30px;
}

.img-border{
	outline: 1px solid #333;
  outline-offset: -5px;
}
.object-fit {
	width: 100%;
  height: 160px;
  object-fit: cover;
}

.zoom{
  overflow: hidden;
  width: 100%;
}
.zoom * {
  box-sizing: border-box;
  -webkit-transition: all 0.45s ease-in-out;
  transition: all 0.45s ease-in-out;
}
.zoom img{
  position: relative;
  display:block;
  width: 100%;
  opacity: 1;
}
.zoom:hover img{
  opacity: 0.8;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.mobile{display: none !important;}

.table2 {
	width: 100%;
	border-collapse: collapse;
	margin: 20px 0;
	border: 1px #999 solid;
}
.table2 th{
	color: #333;
	background: #BCDEFF;
	border: 1px #999 solid;
	padding: 10px;
	font-weight: bold;
}
.table2 td{
	border: 1px #999 solid;
	padding: 10px;
	vertical-align: top;
	text-align: center;
}

.rwd-table {
	width: 100%;
	border-collapse: collapse;
	margin: 20px 0;
	line-height: 26px;
}
.rwd-table th{
	color: #67542c;
	border-bottom: 2px #67542c solid;
	padding: 10px;
	font-weight: bold;
}
.rwd-table td{
	border-bottom: 1px #999 solid;
	padding: 20px 0;
	vertical-align: top;
}
/*.rwd-table td:first-child{text-align: left;}*/
.rwd-table td:before {display: none;}

.rwd-table a:hover{
	color: #0d30a6;
}

.mt-60{margin-top: 60px}

/*=[.owl-carousel]=========*/
.owl-carousel .owl-dots{
  position: absolute;
  width: 100%;
  bottom: 20px;
  left: 0;
  z-index: 20;
  text-align: center;
  box-sizing: border-box;
}
.owl-carousel.no-dots .owl-dots{
	display: none;
}
.owl-carousel .owl-dot{
  display: inline-block;
}
.owl-carousel .owl-dot span{
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 10px;
  border-radius: 50%;
  background: #555;
}
.owl-carousel .owl-dot.active span{
  background: #FFF;
}
.owl-carousel .owl-nav {
	position: absolute;
	width: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 50px;
	margin: auto;
	z-index: 20;
	pointer-events: none;
}
.owl-carousel .owl-nav .owl-prev{
	position: absolute;
	top: 0;
	left: 5px;
	width: 29px;
	height: 50px;
	background: url(../images/btn_owl_prev.png) center center no-repeat;
	background-size: 100% auto;
}
.owl-carousel .owl-nav .owl-next{
	position: absolute;
	top: 0;
	right: 5px;
	width: 29px;
	height: 50px;
	background: url(../images/btn_owl_next.png) center center no-repeat;
	background-size: 100% auto;
}

.video-container {
	position: relative;
	padding-bottom: 56.25%;
  padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin: 10px auto;
}

.video-container iframe, .video-container object, .video-container embed {
	position: absolute;
	top: 0;left: 0;
	width: 100%;
	height: 100%;
}

/* 左上右下斜線 */
.slashTL2BR {
  background: linear-gradient(to top right, #fff calc(50% - 1px), #999 , #fff calc(50% + 1px) )
}
 
/* 左下右上斜線 */
.slashBL2TR {
  background: linear-gradient(to bottom right, #fff calc(50% - 1px), #999 , #fff calc(50% + 1px) )
}

@media screen and (max-width: 1200px) {
	.wrapper{
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
	}

@media screen and (max-width: 1080px) {
	
	.section-title{
		width: 200px;
	}

	#index .section1 .wrapper{
		padding: 0;
	}
	#index .section2 .wrapper{
		padding: 40px 0;
	}


	#about .section1 .wrapper,
	#news .section1 .wrapper,
	#course .section1 .wrapper,
	#album .section1 .wrapper,
	#media .section1 .wrapper,
	#member .section1 .wrapper{
		padding: 20px;
	}

	#news .main-content .item,
	#course .main-content .item,
	#album .main-content .item,
	#media .main-content .item{
		padding: 20px 0;
	}
	
	#member .order_detail td{display: block;}
	#member .order_detail .tableBorder td{display: table-cell;}

	.aside-nav{
		padding: 10px;
	}
	.main-content{
		padding: 10px;
	}
	#cart{
		right: -300px;
		width: 300px;
	}
}

@media screen and (max-width: 767px) {
	.desktop{ display: none !important;}
	.mobile{ display: block !important;}
}