@import url('/css/fontawesome-all.css');
@import url('/css/font-awesome.min.css');
@import url('/css/fontawesome.min.css');
@import url('/css/all.min.css');
@import url('/css/SeoJump.css');
@import url('root.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

* { margin: 0; padding: 0; }
*:focus { outline: 2px solid #005fcc;outline-offset: 2px; }

body {margin: 0;}
body ::selection { background: rgba(var(--black-rgb), .1); text-shadow: none; color: var(--info); }
body::-webkit-scrollbar { width: 5px; }
body::-webkit-scrollbar-track { background: rgba(var(--info-rgb), .3); }
body::-webkit-scrollbar-thumb { background: var(--primary); }

header, footer, div, nav, article, h2, h3, h4, h5, h6, hr, p, form, label, input, textarea, ul, li, img, svg, span, font, strong, b, a, i {text-align: left;vertical-align: middle;word-wrap: break-word;word-break: break-word;line-height: 170%;border-width: 0;font-family: "Noto Sans TC", sans-serif;font-size: 1rem;color: var(--info);}

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

ul , ol { list-style: none; }
.webBox * , .webBox :before , .webBox :after { transition: all 0.3s ease-in-out; -webkit-transition: all 0.3s ease-in-out; }

.webBox #gotop a:before{transform:rotate(45deg);-webkit-transform:rotate(45deg);}

fieldset { border: 0; }

input , button , select , textarea { padding: 5px 15px; width: calc(100% - 30px); border: 0; border-bottom: 1px var(--primary) solid; background: none; box-shadow: none; outline: none; font-size: 1rem; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select { padding: 10px 15px; width: 100%; color: var(--info); }

/* img */
img { max-width: 100%; }
.img_cover {width: 100%;object-fit: cover;}
.img_contain { width: 100%; object-fit: contain; }

a , a:link , a:visited , a:hover { text-decoration: none; white-space: pre-wrap; }

/* general class set */

.atag_item {width: 100%;height: 100%;top: 0;left: 0;z-index: 10;}


/* btn */
.btn , .btn_outline {padding: 2px 10px;background-color: #000000;border: 1px solid #000000;border-radius: 2px;text-align: center;color: var(--info);}

/* badge  */
.badge { padding: 2px 10px; box-shadow: none; }
.badge_lighten { padding: 0 4px; min-width: 22px; border-radius: 3px; font-weight: 400; text-align: center; font-size: 1rem; vertical-align: text-bottom; }

/* photo,bgBox */
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 , .trans_none_box { -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
.fancybox-infobar__body span{color: var(--white);}

a:focus-visible, button:focus-visible {outline: 2px solid #ff9900;}

.txt_clamp {
  display:-webkit-box;/* 支援多行截斷 */
  -webkit-box-orient:vertical;overflow:hidden;/* 只影響視覺，不刪文字 */
  text-overflow:ellipsis;word-break:break-word;line-height:1.5;/* 可調整行高 */
  
}
/* webBox */
.webBox { overflow: hidden; position: relative; width: 100%; }
.webBox .pageh1 { position: absolute; top: 0; z-index: 1; }
.webBox .wrapper {position: relative;z-index: 2;padding-top: 140px;}
.webBox .slick-slider { margin-bottom: 0; }
.webBox .wrapper_lines {width: 100vw;height: 100vh;top: 0;left: 0;z-index: -1;display: none;}
.webBox .wrapper_lines .center_box { height: 100vh; border: rgba(var(--info-rgb), .1) solid; border-width: 0 1px; }

/* .slick-dots */
.webBox .slick-dots { position: relative; margin-top: 45px; bottom: 0; }
.webBox .slick-dots li { width: 10px; height: 10px; display: inline-flex; }
.webBox .slick-dots li:before { margin: auto; display: block; border: 1px rgba(var(--white-rgb), .2) solid; content: ""; }
.webBox .slick-dots li.slick-active:before { border-color: var(--primary); }

/* workframe */
.workframe {margin: 0 auto;width: 88%;}



/* header */
header {z-index: 999;position: fixed;left: 0;top: 0;background-color: #fff;-webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);}
header.scroll{padding:0}
header.scroll .barBox .wrap{}
header .barBox{position:fixed;z-index:999;background-color: #fff;-webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);width: 100%;}
header .barBox .wrap{width: 86%;margin:0 auto}
header #cis{width:240px;z-index:999}
header #topBar{position:fixed;width:100%;background:#fff;color:#fff;top: 55px;left:0;z-index:200}
header.scroll #topBar{-webkit-box-shadow:0 0 15px rgb(0 0 0 / 20%);box-shadow:0 0 15px rgb(0 0 0 / 20%)}
header .barBox .topBox{border-bottom:1px solid #d8d8d8}
header .barBox .topBox .wrap{padding:8px 0}
header .barBox .topBox .wrap,header .barBox .bottomBox .wrap{display:flex;flex-direction:row;align-items:center;justify-content:space-between}
header .left .translate { overflow: hidden; }
header .left .translate>p { display: inline-block; vertical-align: initial; font-size: 0.75rem; margin-left: 10px; color: #238dc7; }
header .left .translate>p a { color: #1b6c98; }
header .left form { display: inline-block; }
header .left form p {overflow: hidden;display: flex;align-items: center;flex-direction: row-reverse;gap: 10px;}
header .left #goSearch {width: 32px;height: 32px;background: var(--primary);color: #fff;line-height: 20px;display: flex;flex-direction: column;align-items: center;justify-content: center;border-radius: 50px;padding: 8px;}
header .left #goSearch svg{width: 24px;height: 24px;fill:var(--white)}
header .left form input {height: 30px;width: 200px;padding: 0 5px;vertical-align: text-bottom;font-size: 0.85rem;border-bottom: none;}
header .barBox .topBox .right,header .barBox .topBox .right .topLink{display:flex;align-items:center}
header .barBox .topBox .right{gap:30px}
header .barBox .topBox .right .topLink li a{padding:10px 8px;font-size:1.05rem}
header .barBox .topBox .right .langBox a{background-color:var(--primary);padding: 5px 14px;border-radius:50px;gap: 5px;}
header.scroll #cis{-webkit-filter:initial;filter:initial}
header #webmenu ul{display:flex;align-items:center;justify-content:space-between;gap: .1vw;}
header #webmenu li,header .langBox{position:relative}
header .langBox *{color:#fff}
header .langBox::before{content:"";height:30px;width:1px;background-color:#d8d8d8;position:absolute;left:-15px;top:50%;transform:translate(-100%,-50%)}
header #webmenu li a{color:var(--black);text-align:center;position:relative;font-size:1.2rem;padding: 26px 11px;}
header.open .navbox ul{display:none}
header #toolbar a { display: inline-block; }
header #slideMenumenu button{transition: none;display: flex;justify-content: center;width: 50px;height: 60px;flex-direction: column;align-items: center;gap: 10px;border-bottom: none;padding: 0;}
header #slideMenumenu button p{color: #fff;}
header #slideMenumenu button font.btn {position: relative;width: 10px;height: 8px;display: flex;border: 0;background-color: #ffffff00;}
header #slideMenumenu button font.btn span {position: absolute;width: 100%;height: 2px;background: var(--black);display: block;top: 0;right: 0;}
header.scroll #slideMenumenu a font.btn span{background: var(--info);}
header #slideMenumenu button[data-type="1"] font.btn span:nth-child(2) {top: calc(50% - 1px);width: 100%;right: auto;left: 0;display: none;}
header #slideMenumenu button[data-type="1"] font.btn span:nth-child(3) {top: calc(100% - 1px);width: 60%;right: auto;left: 0;}
header #slideMenumenu button[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 #slideMenumenu button[data-type="2"] font.btn span { transition: .4s cubic-bezier(.645,.045,.355,1); }
header #slideMenumenu button[data-type="2"] font.btn span:nth-child(1) { top: 50%; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
header #slideMenumenu button[data-type="2"] font.btn span:nth-child(2) { opacity: 0; }
header #slideMenumenu button[data-type="2"] font.btn span:nth-child(3) { top: 50%; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
header.headerfixed #slideMenumenu a font.btn span { background: #1f1f1f; }
header #menuBox {overflow: hidden;position: fixed;padding: 8vh 3vw 0;width: 16vw;height: 100vh;background: #fff;left: -500px;top: 0;opacity: 0;z-index: 990;-webkit-transition: all 0.8s ease-in-out;transition: all 0.8s ease-in-out;}
header #menuBox[data-type="2"] {opacity: 1;left: 0;}
header #menuBox .box >ul {padding: 0 0 2vh 0;}
header #menuBox .box >ul >li {position: relative;}
header #menuBox .box >ul >li:last-child { border-bottom: 0; }
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 {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 5px;display: block;font-size: 1.25rem;border-bottom: 1px solid #d1d1d1;}
header #menuBox .box ul li b{position:absolute;right: 0px;padding-left: calc(100% - 30px);padding-right: 0;width:35px;height:40px;display:inline-block;text-align:center;line-height: 40px;top:calc((100% - 41px) / 2);cursor:pointer;z-index: 50;}
header #menuBox .box ul li b i{color: var(--info);}
header #menuBox .box ul li b i{}
header #menuBox .box ul li b i:before, header #menuBox .box ul li b i:after {width: 15px;height: 1px;background: #000000;display: block;content: "";}
header #menuBox .box ul li b i:after { -webkit-transform: translateY(-1px) rotate(90deg); transform: translateY(-1px) rotate(90deg); -webkit-transition: all .2s linear; transition: all .2s linear; }
header #menuBox .box ul li.action b i.fa-minus:after { -webkit-transform: translateY(-1px) rotate(0deg); transform: translateY(-1px) rotate(0deg); }
#menuBox .box ul li .menu_body >ul li .sub2Option {margin: 0 0 15px;padding: 5px 15px 15px;background: #f4f4f4;}
header #menuBox .box ul li .menu_body >ul li a {padding: 10px 18px;display: block;color: #000000;cursor: pointer;z-index: 50;position: relative;}
header #menuBox .box ul li .menu_body .sub2Option a {border-bottom: 1px solid rgb(145 145 145 / 25%);}
header #menuBox .box ul li .menu_body .sub3Option a { color: #8b8b8b; }
header #menuBox .box ul li .menu_body .sub3Option a:before { content: "- "; }
header.headerfixed:before { background: var(--info); }
header.open a { color: #fff; }
header #menuBox .box >ul >li:first-child {border-top: none;}
header .langBox a{display:flex;flex-direction:row;align-items:center;align-content:center;justify-content:space-between}
header .langBox a svg{fill: var(--white);width: 20px;height: 20px;}
header .langBox a font{font-size:18px;color:#122338}
header #menuBox .linkItem{margin-top:10px;background-color:#f6f6f6;padding:15px 10px;border-radius:20px}
header #menuBox .linkItem .topLink{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}
header #menuBox .linkItem .topLink li{text-align:center}
header #menuBox .langBox::before{display:none}
header #menuBox .langBox{display:flex;align-items:center;justify-content:center;margin-top:20px}
header #menuBox .langBox a{background-color:var(--primary);display:flex;justify-content:center;padding:8px 15px;width:100px;border-radius:50px;gap:10px}

/* menubg */
#menubg { width: 100vw; height: 100vh; top: 0; left: 0; }
#menubg[data-type="1"] { background: rgba(var(--secondary-rgb), 0); z-index: -998; }
#menubg[data-type="2"] {background: rgb(0 0 0 / 40%);z-index: 998;}

/* footer */
footer{padding: 50px 0 30px 0;background: #f7f7f7;}
footer *{font-weight: 400;font-size: 1.1rem;color: var(--info);letter-spacing: 1px;}
footer .workframe{display:flex;justify-content:space-between;align-items: flex-start;flex-direction: column;width: min(1560px, 88%);}
footer .infoList{display: grid;grid-template-columns: 440px 55%;width:100%;padding-bottom: 10px;margin-bottom: 10px;justify-content: space-between;}
footer .flogo a img{aspect-ratio:8/3;width:240px;object-fit:contain}
footer .f_contact{display:flex;gap:3px;flex-direction:column;flex-wrap:wrap;align-items:flex-start}
footer .f_contact p{align-items:center;position:relative;grid-template-columns:64px 1fr;gap:0;display:grid}
footer .f_contact p font{line-height:140%;font-weight:400}
footer .footerMenuList{display:flex;justify-content:space-between;gap:16px}
footer .footerMenuList .title{padding-bottom:15px;margin-bottom:10px;position:relative;letter-spacing:.5px}
footer .footerMenuList .title:after{content:"";width:22px;height:1px;background:var(--complement);display:block;position:absolute;bottom:0px;left:0;z-index:0}
footer .footerMenuList li .classLinks{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
footer .footerMenuList li .classLinks a{font-size:1.05rem;color:#444444}
footer .footerMenuList li .classTitleLink{display:flex;flex-direction:column;gap:8px}
footer #f_bottom{display:grid;grid-template-columns:250px 1fr;width:100%;align-items:center;justify-content:space-between;border-top:1px solid #d8d8d8;padding-top:20px;margin-top:20px}
footer #f_bottom .community{display:flex;align-items:center;gap:20px}
footer #f_bottom .community ul li a{padding:10px;width:22px;height:22px;background-color:#e4e4e4;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}
footer #f_bottom .community ul li:hover a{background-color:var(--primary)}
footer #f_bottom .community ul li:hover a svg{fill:#ffffff}
footer #f_bottom .community ul li a svg{fill:#7c7c7c;width:16px;height:16px}
footer #f_bottom .community .footerLinkBox{display:flex;align-items:center;gap:20px}
footer #f_bottom .community .footerLinkBox a{position:relative;font-size:1rem}
footer #f_bottom .community .footerLinkBox a:not(:last-child):after{content:"";position:absolute;width:1px;height:60%;right: -10px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);background-color: #b5b5b5;z-index:5}
footer #f_bottom .copyright{display:flex;align-items: center;gap:5px;flex-direction: row;flex-wrap:wrap;justify-content: flex-end;}
footer #f_bottom .copyright p,footer #f_bottom .copyright p a{font-size: 0.75rem;;font-weight:300}
footer #f_bottom .copyright p a{vertical-align:baseline;}

/* webSeo */
#webSeo { padding: 10px 0; white-space: nowrap; box-sizing: border-box; }
#webSeo .seo { padding-left: 100%; font-family: var(--font-family), sans-serif; font-weight: 100; font-size: 0.75rem; color: var(--info); }

/* gotop */
#gotop {right: 7px;bottom: 20px;z-index: 2000;}
#gotop a { border: 1px var(--primary) solid; }
#gotop a:before { position: absolute; width: 30%; height: 30%; border: solid var(--primary); border-width: 1px 0 0 1px; display: block; top: calc((100% - 7px) / 2); left: calc((100% - 15px) / 2); content: ""; }

@-webkit-keyframes marquee { 0% { -webkit-transform: translate(0, 0); } 100% { -webkit-transform: translate(-100%, 0); } }
@keyframes marquee { 0% { transform: translate(0, 0); } 100% { transform: translate(-100%, 0); } }

@-webkit-keyframes marquee { 0% { -webkit-transform: translate(0, 0); } 100% { -webkit-transform: translate(-100%, 0); } }
@keyframes marquee { 0% { transform: translate(0, 0); } 100% { transform: translate(-100%, 0); } }


.webBox #gotop a{width: 40px;height: 40px;background-color: #fff;border-radius: 50%;}


@media screen and (max-width: 1640px){
	header .barBox .wrap{width:92%}
}
@media screen and (min-width:1441px){
	.workframe{width: min(1440px, 94%);}
}
@media screen and (max-width:1440px){
    header #webmenu li a{font-size:1.1rem;padding: 26px 6px;}
	header #webmenu ul{gap: .1vw;}
}
@media screen and (min-width:1281px) {
  .webBox .slick-dots li:hover:before { border-color: var(--primary) }
  .webBox header #webmenu li .menu_body { transform: translate(0,30px); -webkit-transform: translate(0,30px); -moz-transform: translate(0,30px); -ms-transform: translate(0,30px); -o-transform: translate(0,30px) }
  .webBox header #webmenu li .menu_body { transform: translate(20px,30px); -webkit-transform: translate(20px,30px); -moz-transform: translate(20px,30px); -ms-transform: translate(20px,30px); -o-transform: translate(20px,30px); }
  .webBox header #webmenu li:hover .menu_body { transform: translate(20px,0); -webkit-transform: translate(20px,0); -moz-transform: translate(20px,0); -ms-transform: translate(20px,0); -o-transform: translate(20px,0); }
  header #webmenu nav ul li b,header #slideMenumenu { display: none }
  header #webmenu nav ul li:hover { overflow: visible; }
  header #menuBox .box::-webkit-scrollbar { width: 0 }
  header #webmenu nav ul li:hover a { color: var(--black); }
  header #menuBox { top: 160px; bottom: 0; max-height: 625px; -webkit-transform: translateX(140px); transform: translateX(140px) }
  header.scroll #menuBox { opacity: 0; transform: translateX(-100%); pointer-events: none }
  .webBox header #webmenu li .menu_body { transform: translate(0,30px); -webkit-transform: translate(0,30px) }
  .webBox header #webmenu li .menu_body .subOption li .sub2Option { transform: translate(-30px,0); -webkit-transform: translate(-30px,0); display: flex; flex-direction: column; }
  .webBox header #webmenu li .menu_body .subOption li .sub2Option li .sub3Option { transform: translate(-30px,0); -webkit-transform: translate(-30px,0) }
  .webBox header #webmenu li .menu_body .subOption li .sub2Option li:hover .sub3Option { transform: translate(0,0); -webkit-transform: translate(0,0) }
  .webBox header #webmenu li .menu_body .subOption li:hover .sub2Option { transform: translate(0,0); -webkit-transform: translate(0,0) }
  .webBox header #webmenu li:hover .menu_body { transform: translate(0,0); -webkit-transform: translate(0,0) }
  .webBox header #webmenu li:last-child .menu_body .subOption li .sub2Option { transform: translate(30px,0); -webkit-transform: translate(30px,0) }
  .webBox header #webmenu li:last-child .menu_body .subOption li .sub2Option li .sub3Option { transform: translate(30px,0); -webkit-transform: translate(30px,0) }
  .webBox header #webmenu li:last-child .menu_body .subOption li .sub2Option li:hover .sub3Option { transform: translate(0,0); -webkit-transform: translate(0,0) }
  .webBox header #webmenu li:last-child .menu_body .subOption li:hover .sub2Option { transform: translate(0,0); -webkit-transform: translate(0,0) }
  header #webmenu li .menu_body,header #webmenu li .subOption ul { position: absolute; width: 200px; right: calc(50% - 100px); z-index: -1; opacity: 0; }
  header #webmenu li .menu_body ul { background: var(--white); box-shadow: 0 0 10px rgba(var(--black-rgb),.3); display: flex; flex-direction: column; }
  header #webmenu li .subOption li { overflow: hidden; width: -webkit-fill-available; }
  header #webmenu li .subOption li >div a { padding: 10px 15px; border-bottom: 1px rgba(var(--black-rgb),.1) solid; line-height: 150%; font-weight: 400; display: inline-block; width: -webkit-fill-available; font-size: 1.1rem; }
  header #webmenu li .subOption li >div a:hover { background-color: var(--primary); color: var(--white); }
  header #webmenu li .subOption .sub2Option,header #webmenu li .subOption .sub3Option { top: 0; right: -200px; }
  header #webmenu nav >ul >li:hover,header #webmenu li .subOption li:hover { overflow: visible; }
  header #webmenu nav >ul >li:hover .menu_body,header #webmenu li .subOption li:hover >ul { z-index: 2; opacity: 1; }
  header #webmenu li:last-child .subOption .sub2Option,header #webmenu li:last-child .subOption .sub3Option { right: auto; left: -170px; }
}
@media screen and (max-width: 1280px){
    .webBox .wrapper{padding-top: 80px;}
	header{background-color:#fff;padding:0}
	header .barBox a font{color:var(--triadic1)}
	header .navbox{display:none}
	header #cis{width:190px}
	header #menuBox{width:40vw;padding:12vh 2.5vw 0}
	header.headerTop #menuBox{padding:8vh 2.5vw 0}
	header #menuBox[data-type="2"]{overflow-y:scroll}
	header #menuBox[data-type="2"]::-webkit-scrollbar{width:0}
	header.scroll:before{background:var(--white)}
    header .barBox .topBox .right{display: none;}
    header .barBox .topBox .wrap{padding:2px 0}
	header .left #goSearch{width:14px;height:14px}
	header #slideMenumenu button{width:50px;height:50px}
	header #topBar{top:36px}
	header #cis{width:170px}
}

@media screen and (max-width: 1140px){
	.webBox .wrapper_lines .center_box >div{border-width:0 0 0 1px}
    footer .infoList{grid-template-columns:1fr;gap:40px}
}
@media screen and (max-width: 768px){
    footer *{font-size:1rem}
	footer{padding:30px 0 30px 0}
	footer .f_contact p{grid-template-columns:54px 1fr}
	footer #f_bottom{display:flex;flex-direction:column;align-items:center;gap:10px}
	footer .footerMenuList{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:40px 20px}
	footer .flogo a img{width:200px}
	footer #f_bottom .copyright{display:flex;justify-content:center}
	header #menuBox{width:min(100vw - 5vw)}
}
