@import url('/css/fontawesome-all.css');
@import url('/css/font-awesome.min.css');
@import url('/css/fontawesome.min.css');
@import url('/css/SeoJump.css');
@import url('/css/contentBuilder.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC&family=Noto+Sans+SC&family=Playfair+Display:wght@500&display=swap');

* { margin: 0; padding: 0; }
*:focus { outline: none; }

body { margin:0; }
body ::selection { background: #b3d4fc; text-shadow: none; }
body::-webkit-scrollbar { width: 5px; }
body::-webkit-scrollbar-track { background: #d0d0d0; }
body::-webkit-scrollbar-thumb { background: #3c3c3c; }
body::-webkit-scrollbar-thumb:hover { background: #222222; }

header, footer, div, nav, article, h2, h3, h4, h5, h6, hr, p, form, label, input, textarea, ul, li, img, span, font, strong, b, a, i{ text-align: left; vertical-align: middle; margin: 0; padding: 0; line-height: 170%; border-width: 0; font-family: 'Playfair Display', 'Noto Sans TC', 'Noto Sans SC', serif; font-size: 16px; word-wrap: break-word; word-break: break-all; -webkit-transition: all .5s ease-out; -moz-transition: all .5s ease-out; -ms-transition: all .5s ease-out; -o-transition: all .5s ease-out; transition: all .5s ease-out; }

:before , :after { -webkit-transition: all .5s ease-out; -moz-transition: all .5s ease-out; -ms-transition: all .5s ease-out; -o-transition: all .5s ease-out; transition: all .5s ease-out; }

ul, ol { list-style: none; }

fieldset { border: 0; }

input,button,select,textarea { outline:none }

img { max-width: 100%; }

a:link , a:visited , a:hover { text-decoration: none; vertical-align: initial; }

* html .clearfix { height: 1%; }

.clearfix { display: block; }

livedemo00.template-help:after, :before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.text-clamp { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; }

/* a.photo */
a.photo , .bgBox { overflow: hidden; background: no-repeat 50% / cover; display: block; }

/* fancybox */
[class^="fancybox-"] , [class^="fancybox-"] * , .slick-track , .fa , .fas , .fa:before , .fas:before , .fa:after , .fas:after { -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }

/* webBox */
.webBox { position: relative; overflow: hidden; width: 100%; }
.webBox .pageh1 { position: absolute; top: 0; z-index: 1; }
.webBox .wrapper { position: relative; background: #fff; z-index: 2; }

/* workframe */
.workframe { position: relative; margin: 0 auto; width: 1100px; }

/* a.link */
a.link { position: relative; overflow: hidden; padding: 0 30px; display: inline-block; align-items: center; border: 1px #000 solid; border-right: 0; letter-spacing: .06em; line-height: 30px; transition: 1.2s ease 1.8s; transform: translateX(0%); }
a.link:before { position: absolute; width: 100%; height: 100%; background: #000; top: 0; left: 0; transform: translateX(-140%) skewX(63deg); transition: .4s cubic-bezier(.23,1,.32,1); content: "" }
a.link font { position: relative; padding: 10px 10px 10px 0; display: inline-block; color: #000; z-index: 2; }
a.link svg { position: relative; z-index: 2; }

/* Sitemap */
#Sitemap #jsonUL a { color: #000; }

/* header */
header { position: fixed; padding: 10px 200px 10px 5%; width: calc(95% - 200px); font-size: 0; top: 0; left: 0; z-index: 999; }
header.headerfixed { background: #fff; box-shadow: 0 0 10px #6a6a6a; }
header .row { width: 250px; display: inline-block; }
header #menuIcon { width: 130px; display: inline-block; text-align: right; color: #000; vertical-align: middle; }
header #menuIcon b { padding: 10px 0; display: inline-block; }
header #menuIcon font { position: relative; margin-left: 10px; width: 25px; height: 25px; display: inline-block; text-align: center; line-height: 23px; color: #555555; vertical-align: middle; }
header #menuIcon span { position: absolute; width: 20px; height: 1px; background: #555555; display: block; top: 5px; left: 3px; }
header #menuIcon span:nth-child(2) { width: 13px; top: 12px; left: 10px; }
header #menuIcon span:nth-child(3) { top: 19px; }
header #menuIcon[data-type="2"] span:nth-child(1) { -webkit-transform: translate3d(0, 7px, 0) rotate(45deg); transform: translate3d(0, 7px, 0) rotate(45deg); transition-delay: 0.1s; }
header #menuIcon[data-type="2"] span:nth-child(2) { width: 0; height: 0; }
header #menuIcon[data-type="2"] span:nth-child(3) { -webkit-transform: translate3d(0, -7px, 0) rotate(-45deg); transform: translate3d(0, -7px, 0) rotate(-45deg); transition-delay: 0.1s; }
header #mbMenu { margin-left: 10px; width: calc(100% - 260px); }
header #mbMenu .btnBox , header #mbMenu nav ul { text-align: right; font-size: 0; }
header #mbMenu .btnBox a { margin: 0 10px; height: 27px; display: inline-block; line-height: 27px; color: #000; }
header a#lineSh { position: absolute; padding: 0 15px; margin: 0; height: auto; line-height: inherit; top: 20px; right: 0; }
header #mbMenu nav ul li { display: inline-block; }
header #mbMenu nav ul li a { margin: 5px 0; padding: 10px; display: block; color: #000; }

/* hSearch */
header form[name="hSearch"] { position: absolute; background: #292929; box-shadow: 0 0 20px rgba(82, 82, 82, .4); border-radius: 3px; top: 50px; right: 250px; top: -100%; opacity: 0; -webkit-transition-duration: .3s; -moz-transition-duration: .3s; -ms-transition-duration: .3st; -o-transition-duration: .3s; transition-duration: .3s; }
header form[name="hSearch"] input { margin: 5px 0; padding: 5px 20px; background: transparent; color: #fff; }
header form[name="hSearch"]:before { position: absolute; width: 1px; height: 25px; background: #a2a2a2; display: inline-block; right: 59px; top: calc((100% - 25px) / 2); content: ""; }
header form[name="hSearch"] a { padding: 0 20px; display: inline-block; color: #a2a2a2; }
header form#hSearch { top: 50px; opacity: 1; }

/* footer */
footer , footer a { color: #fff; }
footer #webCont { font-size: 0; }
footer #webCont .row { margin-right: 0; margin-left: 0; width: 50%; height: 480px; display: inline-block; }
footer #webCont #g-map { position: relative; }
footer #webCont #g-map:before { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 2; content: ""; }
footer #webCont #g-map iframe { position: relative; width: 100%; height: 100%; -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); _filter: none; z-index: 1; }
footer #webCont .info { overflow-y: scroll; background: #222; }
footer #webCont .info::-webkit-scrollbar { width: 0; }
footer #webCont .info li { padding: 20px 40px; border-bottom: 1px #3d3d3d solid; font-size: 0; }
footer #webCont .info li:last-child { border-bottom: 0; }
footer #webCont .info li >div { width: 150px; display: inline-block; vertical-align: top; }
footer #webCont .info li >div:last-child { margin-left: 10px; width: calc(100% - 160px); }
footer #webCont .info li >div p { margin-bottom: 10px; }
footer #webCont .info li >div p:last-child { margin-bottom: 0; }
footer #webCont .info li.plus-information b , footer #webCont .info li.plus-information span { display: inline-block; vertical-align: middle; }
footer #webCont .info li.plus-information a { position: relative; display: inline-block; }
footer #webCont .info li.plus-information img { position: absolute; max-width: 150px; bottom: 100%; left: 0; z-index: 8; max-height: 150px; display: none; }
footer #webCont .info a.link { border-color: #454545; border-width: 0 0 1px 1px; }
footer #webCont .info a.link:before { height: calc(100% + 1px); background: #fff; }
footer #webCont .info a.link:after { position: absolute; width: 85%; height: 1px; background: #454545; top: 0; left: 0; content: ""; }
footer #webCont .info a.link font { color: #fff; }
footer #webCont .info a svg path { fill: #fff; }
footer #footerInfo { padding: 40px 5% 5px; background: #181818; font-size: 0; }
footer #footerInfo .row { width: 380px; display: inline-block; }
footer #footerInfo .row #flogo a { margin-bottom: 10px; display: inline-block; }
footer #footerInfo .row .foot { margin-right: 10px; display: inline-block; font-size: 15px; color: #b8b8b8; }
footer #footerInfo .row .foot.text { color: #fff; }
footer #footerInfo #sitefooter { margin-left: 20px; width: calc(100% - 400px); }
footer #footerInfo #sitefooter >div { text-align: right; }
footer #footerInfo #sitefooter >div a { margin: 5px 0 10px 10px; display: inline-block; }
footer #footerInfo #sitefooter #community { display: flex; justify-content: flex-end; align-items: center; }
footer #footerInfo #sitefooter #community a { min-width: 18px; display: flex; justify-content: center; align-items: center; }
footer #footerInfo #sitefooter #community a svg { width: 16px; height: 16px; fill: #fff; }

/* webSeo */
#webSeo { position: relative; overflow: hidden; }
#webSeo .js-marquee-wrapper * , #webSeo .js-marquee * , #webSeo .seo * { font-size: 13px; color: #5e5e5e; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }

/* gotop */
.gotop { position: fixed; right: 20px; bottom: 20px; z-index: 990; }
.gotop a { display: block; color: #000; opacity: 0; }
.gotop span { position: relative; margin: 0 auto 10px; width: 1px; height: 50px; background: #000; display: block; animation: gotop 2s infinite alternate ease-in-out; -webkit-animation: gotop 2s infinite alternate ease-in-out; }
.gotop span:before { position: absolute; border-left: 4px solid transparent; border-bottom: 7px solid #000; border-right: none; border-top: none; display: block; top: -5px; left: -3px; content: ""; }
#fgtop a { color: #fff; }
#fgtop span { background: #fff; }
#fgtop span:before { border-bottom-color: #fff; }

@keyframes gotop { 0%, 100% { height: 50px; } 50% { height: 70px; } }
@-webkit-keyframes gotop { 0%, 100% { height: 50px; } 50% { height: 70px; } }

/* SeoStarRating */
#SeoStarRating font { margin-right: 5px; display: inline-block; vertical-align: bottom; }
#SeoStarRating font:first-child { line-height: 130%; font-weight: bold; font-size: 18px; color: #FF9800; }
#SeoStarRating font:nth-child(2) { font-size: 16px; color: #FF9800; }
#SeoStarRating font:last-child { color: #383838; }

@media screen and (min-width: 1281px) {
	a.link:hover:before { -webkit-transform: translateX(0) skewX(0); transform: translateX(0) skewX(0); }
	a.link:hover font { color: #fff; }
	a.link:hover svg path { fill: #fff; }
	header #menuIcon { display: none; }
	footer #webCont .info a.link:hover { border-color: #fff; }
	footer #webCont .info a.link:hover font { color: #000; }
	footer #webCont .info a.link:hover svg path { fill: #000; }
	footer #webCont .info a.link:hover:after { background: #fff; }
	footer #webCont .info li.plus-information a:hover img { display: block; }
}
@media screen and (max-width: 1280px) {
	.workframe { width: 90%; }
	header #mbMenu { overflow-y: scroll; position: fixed; margin-left: 0; padding: 0 5%; width: 90%; height: 0; background: #fff; box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, .6); left: 0; top: 67px; -webkit-transition-duration: .35s; transition-duration: .35s; }
	header #mbMenu nav { margin-top: 20px; padding-bottom: 200px; }
	header #mbMenu nav ul li { padding: 0 20px; border-bottom: 1px #e5e5e5 solid; display: block; }
	header a#lineSh { top: 7px; }
	footer #webCont .row , footer #footerInfo .row { width: 100%; height: auto; }
	footer #webCont #g-map { height: 350px; }
	footer #footerInfo #sitefooter { margin-left: 0; width: 100%; }
	footer #footerInfo #sitefooter >div { text-align: left; }
}
@media screen and (max-width: 980px) {
	header { padding: 10px 5%; width: 90%; background: #fff; box-shadow: 0 0 10px #6a6a6a; }
	header #cis { width: calc(100% - 130px); }
	header a#lineSh { position: fixed; width: calc(70% - 15px); background: #000; top: auto; bottom: 0; }
	header a#lineSh font { padding: 10px; color: #fff; }
	header a#lineSh svg path { fill: #fff; }
	footer #footerInfo { padding-bottom: 60px; }
	.gotop { bottom: 60px; }
}
@media screen and (max-width: 640px) {
	footer #webCont .info li { padding: 20px 15px; }
	footer #webCont .info li >div , footer #webCont .info li >div:last-child { margin-left: 0; width: 100%; display: block; }
	footer #webCont .info a.link { padding: 0 15px; }
}