body{
	font-family: "Microsoft JhengHei";
	background-image: url(../img/bg-texture.png);
	background-repeat: repeat;
	background-size: 10%;
}
main{min-height: 45vh;}
hr{border-top: 2px solid #e41a65;margin: 3em 0;}
*:focus{outline: 2px dashed deeppink!important;}
img[src=""]{display: none;}
a{color:#017f90;}
.flex-auto{flex:auto;}

.pagination{justify-content: center;}

.btn{border-radius: 0;}
.btn:hover,.btn:active{box-shadow: none;}
.btn.btn-main{
	background-color: #017f90;
	color: #fff;
}
.btn.btn-main:hover,.btn.btn-main:focus,.btn.btn-main:active{
	background-color: #007c99;
	color: #fff;
}
.btn.btn-sub{
	background-color: #e41a65;
	color: #fff;
}
.btn.btn-sub:hover,.btn.btn-sub:focus{
	background-color: #b3144e;
	color: #fff;
}
.btn.btn-main-outline{
	font-weight: bold;
	border: 3px solid #017f90;
	background-color: #fff;
	color: #000;
}
.btn.btn-main-outline:hover,.btn.btn-main-outline:focus,.btn.btn-main-outline:active{
	color: #fff;
	background-color: #017f90;
}
.btn.btn-sub-outline{
	font-weight: bold;
	border: 3px solid #e41a65;
	background-color: #fff;
	color: #000;
}
.btn.btn-sub-outline:hover,.btn.btn-sub-outline:focus,.btn.btn-sub-outline:active{
	color: #fff;
	background-color: #e41a65;
}
.btn.btn-round{border-radius: 50%;}
.btn-row .btn{min-width: 45px;}

.text-color-main{color: #017f90;}
.text-color-sub{color: #e41a65;}
.bg-color-main{background-color: #017f90;}
.bg-color-sub{background-color: #e41a65;}

.append-icon{position: relative;}
.append-icon:after {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	right: -1.5em;
	top: 0;
	display: block;
	padding: 0.37em 0.5em;
	background-color: #b3144e;
	outline: 1px solid #b3144e;
}

.input-group-btn{margin-left: -3em;}

.title-linethrough{
	position: relative;
	display: inline-block;
}
.title-linethrough:before,.title-linethrough:after{
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	border-color: inherit;
	border-bottom: 2px solid;
	top: .6em;
}
.title-linethrough:before{left: -3em;}
.title-linethrough:after{right: -3em;}
/* 全域 */


.quick-icon{
	display: inline-flex;
	flex-direction: column;
	align-items: center;
}

/* topnav */
.topnav{border-bottom: 8px solid #017f90;}
.topnav ul li{margin-right: 2em;}

/* main menu */
.mainnav-wrapper{
	position: relative;
	z-index: 999;
}
.mainnav>li>a{
	display: block;
	font-size: 1.2em;
	padding: .5em .7em;
	font-weight: bold;		
}
.mainnav>li>a:hover{
	background-color: #017f90;
	color: #fff;
}	

.dropdown-menu>li>a{
	display: block;
	padding: .5em;
	color: #000;
}
.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{
	color: #fff;
	background-color: #017f90;
}	

/* banner section */
.banner-prev,.banner-next,.links-prev,.links-next{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 999;
}
.banner-prev,.links-prev{left: 0;}
.banner-next,.links-next{right: 0;}


/* news section */
.title-underline{
	position: relative;
	display: inline-block;
	text-align: center;
	min-width: 330px;
	font-size: 3em;
	margin: 3em 0;
}
.title-underline:before,.page-banner-title:before{
	content: "";
	position: absolute;
	display: block;	
	width: 33px;
	height: 33px;
	left: 30px;
	top: 15px;
	background-image: url(../img/paw.png);	
}
.title-underline:after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 60px;
	background-image: url(../img/title-underline.png);
	background-size: contain;
	background-repeat: no-repeat;
	bottom: -45px;
	left: 0;
}

.bg-index-news{
	position: relative;
	background-image: url(../img/bg-cloud.png);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100%;
}
.list-layout1 li{
	display: flex;
	align-items: center;
	margin-bottom: 2em;
}
.list-layout1 li a{
	font-size: 1.25em;
	padding: 0 1.5em;
}
.datemark{
	display: inline-flex;
	flex-direction: column;
	text-align: center;
	border: 2px solid;
}
.datemark span{
	padding: .3em 1.3em;
	white-space: nowrap;
	background-color: #fff;
}
.datemark.datemark-color-main{border-color: #017f90;}
.datemark.datemark-color-main span:first-child{background-color: #017f90;color:#fff;}
.datemark.datemark-color-sub{border-color: #e41a65;}
.datemark.datemark-color-sub span:first-child{background-color: #e41a65;color:#fff;}

.bg-index-cat{
	top: 50%;
	left: 1em;
}
.bg-index-dog{
	bottom: 0;
	right: 1em;
}


.index-video-wrapper{
	background-color: #fff;
	border: 3px solid #017f90;
	box-shadow: 8px 8px 0 rgba(0,0,0,.15);
}

#linkSlide a{
	display: block;
	padding-bottom: 30%;
	margin: .2em 0; 
	background-size: 90%;
	background-position: center;
	background-repeat: no-repeat;
}

footer{background-color: #017f90;}
.copyright{background-color: #e41a65;}



@media(max-width: 1366px){
	.bg-index-dog,.bg-index-cat{z-index: -1;opacity: .6;}
}

@media(min-width: 768px){
	.index-video-wrapper{
		border-top-right-radius: 200px;
		border-bottom-right-radius: 200px;			
	}

	/* main menu */
	.mainnav-wrapper{margin-top: -2.5em;}
	.inner-page .mainnav-wrapper{margin-top: -4em;}
	.mainnav>li>a{
		border-radius: 15px;
		border: 3px solid #017f90;
		background-color: #fff;
		color: #000;
		margin: .3em;
	}

	.dropdown-menu{
		min-width: 9rem;
		border: 3px solid #017f90;
		padding: 0;
		left: .6em;
	}
	.dropdown-menu.show{animation: menuShow .2s;}
	@keyframes menuShow{
		from{
			transform: translateY(-10%);
			opacity: 0;
		}
		to{
			transform: translateY(0);
			opacity: 1;
		}
	}	

}




/* page 內頁 */
.customstyle-list{list-style-position: inside;}
.customstyle-list li{margin-bottom: 3.5em;}
.customstyle-list strong{font-size: 1.15em;line-height: 2em;}

.page-banner{position: relative;}
.page-banner-title{
	position: absolute;
	color: #fff;
	top: 50%;
	left: 10%;
	transform: translateY(-50%);
}
.page-banner-title:before{left: -1em;}
article img{max-width: 100%;}

/* news list */
a.list-item-wrapper{display: block;}
.list-item-wrapper .list-item-descr{transition: .3s;}
.list-item-wrapper:hover{text-decoration: none;}
.list-item-wrapper:hover .list-item-descr{background-color: #b3144e;}

.list-item-wrapper .date strong{
	display: block;
	text-align: center;
	font-size: 1.6em;
}
.list-item-wrapper .content{
	white-space: pre-wrap;
	flex: auto;
	margin-left: 1em;
}
.list-item-wrapper .btn{align-self: stretch;}


.article-img-wrapper{position: relative;}
.article-img-wrapper .datemark{
	position: absolute;
	top: 60%;
	left: -1em;
}
.article-img-wrapper{
	min-height: 250px;
	background-image: url(../img/default-cover.jpg);
	background-size: cover;
	background-position: center;
}

.article-info-wrapper{flex: auto;}
.article-info{
	padding: 2em 0; 
	border-top: 2px solid;
	border-bottom: 2px solid;
	border-color: #e41a65;
}
.article-content ol li{margin-bottom: 1.5em;}
.article-content ul li{margin-bottom: .5em;}

.article-attachment{
	margin-top: 3em;
}

.table thead th{
	background-color: #017f90;
	color: #fff; 
	text-align: center;
	border: 0;
}
.table th:first-child{
	border-top-left-radius: 25px;
	border-bottom-left-radius: 25px;
}
.table th:last-child{
	border-top-right-radius: 25px;
	border-bottom-right-radius: 25px;
}
.table-hover tbody tr:hover,.table-hover tbody tr:hover a{
	background-color: #e41a65;
	color: #fff;
}

/* image use background-image */
.img-bgmask{
	position: relative;
	display: block;
	padding-top: 70%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: .5s;
}
.img-bgmask:before{
	content: "\f002";
	font-size: 6em;
	position: absolute;
	top: 50%;
	left: 50%;
	color: #fff;
	display: block;
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900; 
	transform: translate(-50%, -30%);
	text-shadow: 8px 8px rgba(0,0,0,.25);
	opacity: 0;
	transition: .2s;
}
.img-bgmask:hover:before,a:focus .img-bgmask:before{
	opacity: 1;
	transform: translate(-50%, -50%);
}
.index-video-wrapper .img-bgmask:before{
	content: "\f167";
	font-family: "Font Awesome 5 Brands";  
}
.img-bgmask .alt-description{
	position: absolute;
	top: 0;	
	z-index: -1;
}

/* pawlist */
.list-item-paw{
	display: flex;
	justify-content: center;
	align-items: center;
	white-space: pre-line;
	height: 100%;
	padding: 2em;
	border-radius: 15px;
	position: relative;
	font-size: 1.2em;
	box-shadow: 8px 8px 0 rgba(0,0,0,.15);
}
.list-item-paw:before{
	content: "";
	display: block;
	position: absolute;
	top: -37px;
	left: -25px;
	width: 33px;
	height: 36px;
	background-image: url(../img/bg-hovereffect.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	opacity: 0;
	transform: translate(30%,30%);
	transition: .2s;
}
.list-item-paw:after{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: -33px;
	width: 55px;
	height: 55px;
	border-radius: 50%;
	border: 3px solid #e41a65;
	background-color: #e41a65;
	background-image: url(../img/paw-white.png);
	background-repeat: no-repeat;
	background-size: 50% 50%;
	background-position: center;
	transform: translateX(-50%);
	transition: .3s;
}

.btn.list-item-paw:hover,.btn.list-item-paw:focus{
	border-width: 3px;
	background-color: #fff;
	color: #000;
}
.list-item-paw:hover:before,.list-item-paw:focus:before{
	opacity: 1;
	transform: translate(0, 0);
}
.list-item-paw:hover:after,.list-item-paw:focus:after{
	background-color: #fff;
	background-image: url(../img/paw.png);
}


/* collpase-list (faq) */
.accordion .card{
	border: 0;
	background-color: transparent;
	margin-bottom: 1em;
}
.accordion .card .btn{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1em 2em;
	border-radius: 15px;

}
.accordion .card .btn span{
	text-align: left;
	white-space: normal;
	padding-right: .5em;
}

.accordion-paw .card .btn{
	background-image: url(../img/paw.png);
	background-repeat: no-repeat;	
	background-position: 97% center;
	background-size: 33px 33px;	
}
.accordion-paw .card .btn:hover,.accordion-paw .card .btn:focus{
	background-image: url(../img/paw-white.png);
}

/* map */
.map-info-wrapper{
	position: relative;
	box-shadow: 8px 8px 0 rgba(0,0,0,.15);
	padding: 1em;
	margin: 0 auto;
	z-index: 999;
}
.map-info-wrapper a{color: #fff;}
.map-info-wrapper img{position: absolute;}
.bg-map-plane{
	top: 8%;
	right: -5%;
}
.bg-map-cat{
	right: 5%;
	bottom: 6%;
	transform: scale(-1.2,1.2);
}

/*store-list*/
.list-item-hoverable{
	display: block;
	position: relative;
	overflow: hidden;
}
.list-item-hoverable .img-bgmask:before{
	content: "\f5a0";
	top: 25%;
}
.list-item-hoverable .img-bgmask{padding-top: 100%;}
.list-item-hoverable .list-item-descr{
	position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transform: translateY(55%);
    transition: .3s;
}
.list-item-hoverable:hover .list-item-descr{
	transform: translateY(0);
}
.bg-medalA:after,.bg-medalB:after{
	content: "";
	width: 67px;
	height: 67px;
	display: block;
	background-repeat: no-repeat;
}
.bg-medalA:after{background-image: url('../img/medal-A.png')}
.bg-medalB:after{background-image: url('../img/medal-B.png')}


/* sitemap */
.sitemap-mainitem{
	font-size: 1.2em;
	display: block;
	color: #fff!important;
	background-color: #017f90;
	padding: .5em;
}
.sitemap-subitem{
	padding-left: .5em;
	display: block;
	color: #017f90!important;
}

/* search */
.keyword_set:not(:last-child){
	padding-bottom: 1.5em;
	margin-bottom: 1.5em;
	border-bottom: 1px dashed lightgrey;
}
.keyword_title{font-size: 1.5em;}

@media(min-width: 992px){

	.page-banner-title{font-size: 3.5em;}

	.map-info-wrapper{
		margin-top: -10%;		
		padding: 1em 5em;
		width: 80%;
		border-radius: 200px;
	}

	/* paw img for decoration (hide in md-screen)*/
	.bg-paw-after,.bg-paw-before{
		position: relative;
	}
	.bg-paw-after:after,.bg-paw-before:before{
		content: "";
		display: block;
		position: absolute;	
		top: -16px;
		width: 33px;
		height: 33px;
		background-image: url(../img/paw.png);
		background-repeat: no-repeat;
		background-size: cover;
	}
	.bg-paw-after:after{right: -40px;}
	.bg-paw-before:before{left: -40px;}	
}


/* lightpick(日期選擇input) inline style */
.lightpick--inlined {display: block;}
.lightpick--inlined .lightpick__month{width: 100%;}


/* pagination */
.page-link{color: #017f90;}
.page-item.active .page-link{
	background-color: #017f90;
	border-color: #017f90;
}

/* sitemap */
.sitemap a{display: block;font-size: 1.2em; font-weight: bold;}
.sitemap-item{margin-bottom: 1em;}
.sitemap-main{ background-color: #017f90; color: #fff!important; padding: .5em;}
.sitemap-sub,.sitemap .sitemap-third{color: #017f90!important;}


/* 列印樣式 */
@media print{
    header,.navbar,.download,.breadcrum,.btn-row,.article-imgrow,.article-attachment,.pagination,footer{
        display: none;
    }
    .collapse{display: block;}

    body{background: #fff;}
}

@page {
  size: A4 portrait;
  margin: 2cm auto;
}

caption{caption-side: initial;}

.nav-tabs {
	padding: 0.5em;
	border-bottom: 0.05em solid #dee2e6 !important;
}

.nav-tabs > a {
	font-size: 1.3em;
	display: block;
	color: rgb(85, 85, 85);
	font-weight: 500;
	padding: 0em 0.5em 0em 0.5em;
	text-decoration: none;
}

.nav-tabs > a.active {
	color: rgb(0, 0, 0);
	font-weight: 900;
}
.nav-tabs > a:not(:nth-child(1)) {
	border-style: solid;
	border-width: 0em 0em 0em 0.05em;
	border-color: rgb(172, 172, 172);
}

.newmessage {
	margin: 0em 1.5em 0em 1.5em;
}

.newmessage-item > a {
	text-decoration: none;
	cursor: pointer;
}

.newmessage-item {
	padding: 0.5em 0em 0.5em 0em;
}

.newmessage-header > span, 
.newmessage-body > span {
	padding: .08em .25em .08em .25em;
}

.newmessage-item:not(:nth-child(1)) {
	border-style: solid;
	border-width: 0.05em 0em 0em 0em;
	border-color: rgb(216, 216, 216);
}

.newmessage-top {
	background-color: rgb(236, 59, 59);
	color: white;
}

.newmessage-date {
	font-size: 0.9em;
	color: rgb(59, 161, 39);
	font-weight: 900;
}

.newmessage-announce {
	background-color: rgb(165, 216, 83);
	color: white;
}

.newmessage-news {
	background-color: rgb(54, 177, 207);
	color: white;
}

.newmessage-title {
	color: rgb(63, 63, 63);
	font-size: 1.2em;
	font-weight: 700;
}