@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('root.css');
@import url('/css/contentBuilder.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&family=Noto+Sans+SC:wght@100;300;400;500;700;900&family=Montserrat:wght@100;200;300;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Noto+Serif+TC:wght@200..900&display=swap');

* { margin: 0; padding: 0; }
*:focus { outline: none; }

body { margin: 0; }
body ::selection { background: #191919; text-shadow: none; color: #fff; }
body::-webkit-scrollbar { width: 5px; }
body::-webkit-scrollbar-track { background: #c0c0c0; }
body::-webkit-scrollbar-thumb { background: #191919; }
body::-webkit-scrollbar-thumb:hover { background: #000; }

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: var(--font-family), sans-serif;font-size: 16px;word-wrap: break-word;word-break: break-all;-webkit-transition: all .3s ease-out;-moz-transition: all .3s ease-out;-ms-transition: all .3s ease-out;-o-transition: all .3s ease-out;transition: all .3s ease-out;color: var(--info);}

:before , :after { -webkit-transition: all .3s ease-out; -moz-transition: all .3s ease-out; -ms-transition: all .3s ease-out; -o-transition: all .3s ease-out; transition: all .3s ease-out; }

ul, ol { list-style: none; }

fieldset { border: 0; }

input,button,select,textarea { outline:none }

img { max-width: 100%; }

a , a:link , a:visited , a:hover { display: inline-block; text-decoration: none; }

.text-clamp , a.text-clamp { overflow: hidden; height: 27px; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }

/* a.photo */
a.photo , .bgBox { overflow: hidden; background: no-repeat 50% / cover; display: block; }

/* svg */
svg.arrow { width: 15px; }
svg.arrow.white { fill: #fff; }
svg.show { width: 8px; }

/* 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; }

/* slick-slider */
.wrapper .slick-slider { margin-bottom: 0; }

/* webBox */
.webBox { position: relative; overflow: hidden; width: 100%; }
.webBox .wrapper {position: relative;background: #4b352a;z-index: 2;}

/* workframe */
.workframe {position: relative;margin: 0 auto;width: 1440px;}

/* Sitemap */
#Sitemap #jsonUL a { display: block; font-size: 0; color: #000; }
#Sitemap #jsonUL a * { display: inline-block; line-height: 170%; font-size: 16px; vertical-align: top; }
#Sitemap #jsonUL a font { width: calc(100% - 15px); }
#Sitemap #jsonUL p a { font-size: 22px; }

/* header */
header { position: fixed; width: 100%; z-index: 999; }
header .barBox {position: relative;padding: 35px 70px;width: calc(100% - 140px);display: flex;z-index: 999;}
header .barBox a {display: inline-flex;color: #fff;align-items: center;}
header .rightBox .socialBox {display:flex;align-items: center;gap: 15px;}
header .barBox #linelink a{border:1px solid white;font-family: "Noto Serif TC", serif;font-size: 14px;letter-spacing: 3px;padding: 5px 35px;position: relative;}
header .barBox #linelink a:after{content:'';position:absolute;width: 0;height: 100%;background: white;opacity: .15;left: 0;}
header .barBox #linelink a:hover:after{width:100%;}
header .barBox #linelink{border-left:1px solid white;display: inline-flex;align-items: center;padding-left: 25px;margin-left: 25px;}
header .barBox a svg{width: 20px;height: 20px;fill: white;}
header #cis {margin: 0 auto 0 0;width: 250px;}
header #cis img {width: 100%;height: 60px;object-fit: contain;}
header .rightBox{display:flex;align-items: center;justify-content: flex-end;}
header .rightBox >div {margin-left: 35px;display: inline-block;line-height: 50px;}
header #searchBox form { position: absolute; background: rgb(0 0 0 / .7); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); font-size: 0; right: -500px; }
header #searchBox form input { padding: 5px 10px; width: 150px; background: none; display: inline-block; color: #fff; vertical-align: middle; }
header #searchBox form a { padding: 5px 10px; display: inline-block; vertical-align: middle; color: #fff; }
header #toolbar a { display: inline-block; }
header #menuIcon a {-webkit-transition: none;-moz-transition: none;-ms-transition: none;-o-transition: none;transition: none;}
header #menuIcon a font.btn {position: relative;margin-right: 10px;width: 25px;height: 6px;display: inline-block;margin-top: -11px;}
header #menuIcon a font.btn span {position: absolute;width: 100%;height: 1px;background: #fff;display: block;top: 0;left: 0;}
header #menuIcon a[data-type="1"] font.btn span:nth-child(2) {top: calc(50% - 1px);width: 75%;}
header #menuIcon a[data-type="1"] font.btn span:nth-child(3) {top: calc(100% - 1px);width: 75%;}
header #menuIcon a[data-type="1"] font.btn span { transition: transform .4s cubic-bezier(.215,.61,.355,1),opacity .4s cubic-bezier(.215,.61,.355,1), -webkit-transform .4s cubic-bezier(.215,.61,.355,1); }
header #menuIcon a[data-type="2"] font.btn span { transition: .4s cubic-bezier(.645,.045,.355,1); }
header #menuIcon a[data-type="2"] font.btn span:nth-child(1) { top: 50%; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
header #menuIcon a[data-type="2"] font.btn span:nth-child(2) { opacity: 0; }
header #menuIcon a[data-type="2"] font.btn span:nth-child(3) { top: 50%; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
header #menuBox {overflow: hidden;position: fixed;padding: 0 5vw;width: 0;height: 0;background: var(--triadic2);right: 0;top: 0;opacity: 0;z-index: -1;display: flex;gap: 40px;flex-direction: column;align-items: stretch;}
header #menuBox[data-type="2"] {padding: 15vh 5vw 0;height: 100vh;font-size: 0;opacity: 1;z-index: 998;width: 20vw;}
header #menuBox .box >ul >li >p ,
header #menuBox .box ul li .menu_body ul li .bo { position: relative; }
header #menuBox .box ul li .menu_body ,
header #menuBox .box ul li .menu_body >ul li .sub2Option ,
header #menuBox .box ul li .menu_body >ul li .sub3Option { margin-bottom: 15px; display: none; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
header #menuBox .box >ul >li >p a {padding: 10px 0;display: flex;font-weight: 300;font-size: 17px;color: #fff;align-items: center;justify-content: space-between;border-bottom: 1px solid rgb(255 255 255 / 15%);font-family: "Noto Serif TC", serif;letter-spacing: 3px;position: relative;}
header #menuBox .box >ul >li >p a:after{content:'';width: 0;height: 1px;position: absolute;left: 0;bottom: -1px;z-index: 2;background: var(--secondary);}
header #menuBox .box >ul >li:hover >p a:after{width:100%}
header #menuBox .box >ul >li >p a span{font-family: "Cormorant Garamond", serif;letter-spacing: 2px;}
header #menuBox .box ul li b { position: absolute; padding: 5px 0; width: 23px; display: inline-block; text-align: center; color: #fff; top: calc((100% - 33px) / 2); right: 0; }
#menuBox .box ul li .menu_body >ul li .sub2Option { margin: 5px 0 15px; padding: 5px 15px; background: #3a3a3a; }
header #menuBox .box ul li .menu_body >ul li a { padding: 4px 0; display: block; font-size: 18px; color: #9b9b9b; }
header #menuBox .box ul li .menu_body .sub2Option a { color: #fff; }
header #menuBox .box ul li .menu_body .sub3Option a { color: #8b8b8b; }
header #menuBox .box ul li .menu_body .sub3Option a:before { content: "- "; }
header #menuBox .contactBox ul {}
header #menuBox .contactBox ul li p {display: grid;grid-template-columns: 80px 1fr;align-items: center;}
header #menuBox .contactBox ul li p font
{text-transform:uppercase;font-family: "Cormorant Garamond", serif;color: white;font-size: 15px;}
header #menuBox .contactBox ul li p a {padding: 5px 0;display: inline-block;font-size: 14px;color: #fff;font-family: "Noto Serif TC", serif;}
header #menuBox .contactBox ul li p i { margin-right: 10px; font-size: 18px; display: inline-block; color: #ffb8b8; }
header #menuBox .contactBox ul li.community a { margin: 15px 10px 5px 0; width: 40px; height: 40px; border: 1px #bbb solid; border-radius: 50%; display: inline-flex; justify-content: center; align-items: center; color: #bbb; }
header #menuBox .contactBox ul li.community a i { font-size: 14px; }
header #menuBox .contactBox ul li.community a svg { width: 60%; height: 60%; fill: #bbb; }

header #navbox{position:fixed;right: 85px;top: 17%;}
header #navbox *{color:white;font-size: 17px;letter-spacing: 2px;font-family: "Noto Serif TC", serif;margin: 3.5px 0;}
header #navbox a{position:relative}
header #navbox a::before { content: attr(data-en); position: absolute; left: 0; top: 0; width: 100%; height: 100%; color: white; opacity: 0; transform: translateY(100%); transition: .35s ease; font-family: "Cormorant Garamond",serif; font-size: 14px; text-align: center; letter-spacing: 0.5px; }
header #navbox a:hover { color: transparent; }
header #navbox a:hover::before { opacity: 1; transform: translateY(0); }
header.headerfixed #navbox{display:none;}
header.headerfixed {background: var(--primary);}
header.headerfixed  .barBox{padding: 15px 70px;}
header.open a { color: #fff; }
header.open #menuIcon a font.btn span { background: #fff; }

/* footer */
footer {padding-top: 26vw;background-image: url(/images/37/img-footer.png);background-repeat: no-repeat;background-position: top left;background-size: 100%;margin-top: -7vw;padding-bottom: 60px;}
footer *{color: #f0e7da;font-size: 16px;letter-spacing: 1px;font-weight: 300;}
footer svg{width: 16px;height: 16px;fill: #f0e7da;}
footer .wbox {width: min(90%, 1400px);margin: 0 auto;display: grid;grid-template-columns: 75% 18%;justify-content: space-between;}
footer .wbox:last-child{margin-top:30px;}
footer #flogo {order: 2;display: flex;justify-content: flex-end;}
footer #flogo img{width:100%;height: 156px;}
footer #fnav {display:grid;grid-template-columns: repeat(5, 1fr);width: 50%;gap: 10px 0;}
footer #footerinfo {margin-top: 40px;}
footer #footerinfo ul {margin-bottom: 20px;font-size: 0;display: flex;gap: 15px 95px;flex-wrap: wrap;}
footer #footerinfo ul li {position: relative;}
footer #footerinfo ul li font:first-child{font-size: 15px;display: flex;align-items: center;gap: 10px;}
footer #footerinfo ul li.plus-information img { position: absolute; max-width: 150px; bottom: 100%; left: 0; z-index: 8; max-height: 150px; display: none; }
footer .copyright  *{display: inline-flex;font-size: 13px;color: rgb(240 231 218 / 40%);}
footer .follow{display:flex;align-items: center;justify-content: flex-end;gap: 30px;}
footer .follow svg{width:22px;height: 22px;}

/* gotop */
#gotop {position: fixed;right: 20px;bottom: 95px;z-index: 99;display: inline-flex;flex-direction: column-reverse;gap: 15px;}
#gotop svg{width: 20px;height: 20px;fill: white;}
#gotop a {font-weight: 300;width: 54px;aspect-ratio: 1/1;background: var(--secondary);display: flex;align-items: center;justify-content: center;border-radius: 50px;}
#gotop a:hover{background:var(--primary)}

/* webSeo */
#webSeo { position: relative; overflow: hidden; margin-top: 40px; padding: 10px 0; }
#webSeo .js-marquee-wrapper * , #webSeo .js-marquee * , #webSeo .seo * { font-weight: 100; font-size: 13px; color: #959595; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }

/* 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 (max-width: 1500px){
	.workframe , footer .wbox { width: 90%; }
}
@media screen and (min-width: 1281px){
	header #menuBox .box::-webkit-scrollbar { width: 0; }
	footer #footerinfo ul li.plus-information:hover img { display: block; }
}
@media screen and (max-width: 1440px){
    header #menuBox[data-type="2"]{padding: 20vh 5vw 0;}
    header #menuBox .contactBox{display:none;}
}
@media screen and (max-width: 1280px){
    header #navbox{display:none;}
	header .barBox, header.headerfixed .barBox { padding: 10px 5%; width: 90%; }
	header #menuBox[data-type="2"] { overflow-y: scroll; height: 85vh; }
	header #menuBox[data-type="2"]::-webkit-scrollbar { width: 0; }
	header #menuBox .contactBox ul { padding: 0 0 15vh; border: 0; }
    header #menuBox[data-type="2"]{width: 35vw;}
}
@media screen and (max-width: 1024px){
    footer #fnav{width: 90%;}
}
@media screen and (max-width: 980px){
    footer{margin:0;background-size: 120%;padding-top: 36vw;}
    header #menuBox[data-type="2"]{width: 45vw;}
    header .barBox #linelink{border:0;padding: 0;margin-left: 0;}
    header .rightBox .socialBox{display:none}
}
@media screen and (max-width: 600px){
    footer .follow{justify-content:center}
    footer *{font-size:15px;}
    footer #fnav{width: 100%;grid-template-columns: repeat(4, 1fr);}
    header #menuBox[data-type="2"]{width: 80vw;padding: 16vh 10vw 0;}
    header #cis{width: 180px;}
    header #menuIcon a font.btn{margin-right:0}
    header .rightBox >div{margin-left: 10px;}
	footer {padding-bottom: 50px;background-image: url(/images/37/img-mofooter.png);background-size: 100%;padding-top: 50%;}
    footer .wbox{display:flex;flex-direction: column;gap: 50px;}
    footer #flogo{order:0;justify-content: center;}
    footer #flogo img{height: 116px;}
	footer #footerinfo ul li { width: calc(100% - 20px); }
	footer #footerinfo .copyright { text-align: left; }
	header .rightBox #searchBox { left: 25%; }
	header .rightBox #translateLink { left: 50%; }
	header .rightBox #oredericon { left: 75%; }
	header .barBox #linelink a {padding: 5px;}
	header #searchBox form { position: fixed; bottom: 60px; }
}