*:focus{outline:none}
*,::after,::before{margin:0;padding:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}
body{overflow-x:hidden;overflow-y:overlay;margin:0;min-height:100vh}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background-color:transparent}
::-webkit-scrollbar-thumb{background-color:rgb(132 132 132 / 50%);border-radius:5px}
::-webkit-scrollbar-thumb:hover{box-shadow:#848484}
::-webkit-scrollbar{position:absolute;top:0;right:0;bottom:0;left:0}
header,footer,div,nav,article,hr,p,form,label,input,select,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:1.7;border-width:0;font-family:'Noto Sans TC','Jost',sans-serif;font-size:16px;color:#1e1d1d}
ul,ol{list-style:none}
fieldset{border:0}
input[type=text],input[type=number],input[type=tel],input[type=password],button,select,textarea{padding:.3em 1em;width:100%;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:0;box-shadow:none;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}
input[type=number]{-moz-appearance:textfield}
input[type="password"]{font-family:auto}
select{padding:.3rem 1rem;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 5l-6.5 7L1 5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") white no-repeat calc(100% - .5em) 50% / auto .5em}
img{max-width:100%}
.img_cover{object-fit:cover}
.img_contain{object-fit:contain}
a,a:link,a:visited,a:hover{display:inline-block;text-decoration:none;white-space:pre-wrap}
.txt_clamp{overflow:hidden;height:27px;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
.d_inblock.txt_clamp{display:-webkit-inline-box}
.atag_item{width:100%;height:100%;top:0;left:0}
.flex_direction{flex-direction:column}
.flex_wrap{flex-wrap:wrap}
.text_en{font-family:'Jost',sans-serif}
a.photo{overflow:hidden;background-repeat:no-repeat;background-position:50%;background-size:cover}
[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{font-size:inherit;color:currentcolor;vertical-align:initial}
.wrapper{overflow:hidden;position:relative;background:#fff}
.wrapper:before,.wrapper:after{position:absolute;width:1px;height:100%;background:#dadada;display:block;top:0;right:5vw;z-index:1;content:"";display:none}
.wrapper:after{height:135px;background:#de0e0e;content:""}
.workframe,.workframe_s{position:relative;margin:0 auto;width:90vw;z-index:10}
.web_logo svg{width:265px;aspect-ratio:8/2;transition:all 0.3s ease-in-out;-webkit-transition:all 0.3s ease-in-out}
.web_logo svg use{fill:#040404}
.web_logo svg .circle_a{fill:#fff}
header{position:fixed;padding:1em 5vw;width:100vw;display:flex;justify-content:space-between;align-items:center;top:0;left:0;z-index:9999;transition:all 0.3s ease-in-out;-webkit-transition:all 0.3s ease-in-out}
header .menu_box{position:relative;margin-right:2em;width:1%;flex:1 1 auto}
header .menu_box .menu_list{display:flex;justify-content:flex-end;align-items:center}
header .menu_box .menu_list li a{padding:.5em 1em;font-weight:500}
header .contact_btn a{padding:.5em 1em;background:linear-gradient(to right,rgba(117,77,218,1) 0%,rgba(205,152,231,1) 100%);border-radius:3em;display:flex;align-items:center;color:#fff}
header .contact_btn a svg{margin-left:.5em;width:13px;height:13px;fill:#fff}
header.scroll{padding:.5em 5vw;background:#222;box-shadow:0 0 3em rgb(0 0 0 / 40%)}
header.scroll .web_logo svg{width:250px}
header.scroll .web_logo svg use{fill:#fff}
header.scroll .web_logo svg .circle_a{fill:#040404}
header.scroll .menu_box .menu_list li a{color:#fff}
#nav_toggleInner{margin:0 0 0 auto;padding:0;width:3.58em;height:3.58em;background:none;border:1px #dadada solid;border-radius:50%;display:flex;justify-content:center;align-items:center}
#nav_toggleInner .nav_hamburger{position:relative;width:1.6em;height:8px;display:inline-block}
#nav_toggleInner .nav_hamburger span{position:absolute;width:100%;height:1px;background:#404040;top:3px;-webkit-transition:-webkit-transform 300ms cubic-bezier(0.13,0.095,0.2,0.915);transition:-webkit-transform 300ms cubic-bezier(0.13,0.095,0.2,0.915);transition:transform 300ms cubic-bezier(0.13,0.095,0.2,0.915);transition:transform 300ms cubic-bezier(0.13,0.095,0.2,0.915),-webkit-transform 300ms cubic-bezier(0.13,0.095,0.2,0.915)}
#nav_toggleInner .nav_hamburger span.line_top{-webkit-transform:translateY(-4px);transform:translateY(-4px);-webkit-transform-origin:center;transform-origin:center}
#nav_toggleInner .nav_hamburger span.line_bottom{-webkit-transform:translateY(4px);transform:translateY(4px);-webkit-transform-origin:center;transform-origin:center}
.menu-open #nav_toggleInner .nav_hamburger span.line_top{-webkit-transform:translateY(0) rotate(135deg);transform:translateY(0) rotate(135deg)}
.menu-open #nav_toggleInner .nav_hamburger span.line_mid{-webkit-transform:translateY(0) scaleX(0);transform:translateY(0) scaleX(0)}
.menu-open #nav_toggleInner .nav_hamburger span.line_bottom{-webkit-transform:translateY(0) rotate(45deg);transform:translateY(0) rotate(45deg)}
header.scroll #nav_toggleInner .nav_hamburger span{background:#fff}
footer{position:relative;background:#fff;display:flex;flex-wrap:wrap;align-items:stretch;z-index:3}
footer:before{padding:2em 0;width:100%;height:26px;border-bottom:2px #e5e5e5 solid;background:url(/assets/svg/footer_bg.svg) repeat-x 0 / auto 20px;-webkit-animation:letstalk 10s ease-in-out infinite;animation:letstalk 10s ease-in-out infinite;content:""}
footer #contact_box{padding:3vmax 5vw;width:1%;background:url(/assets/images/img_contact_bg.webp) no-repeat 50% / cover;flex:1 1 auto}
footer #contact_box .title{margin-bottom:1em;line-height:1;font-weight:500;font-size:4.5em}
footer #contact_box form{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2em}
footer #contact_box form .item{border-bottom:1px #aeadad solid;display:flex;align-items:center}
footer #contact_box form .item *{color:#0f0f0f}
footer #contact_box form .item input{width:1%;flex:1 1 auto;background:none;border:0}
footer #contact_box form .item.large{grid-column:1 / 3}
footer #contact_box form .item.recaptcha{border-bottom:0}
footer #contact_box form .item.send{border-bottom:0;justify-content:flex-end}
footer #contact_box form .item.send button,#popup_form .item.send button{padding:.7em 1.5em;width:auto;background:none;border:4px #434343 solid;border-radius:2em;display:inline-flex;justify-content:center;align-items:center;font-weight:bold;font-size:1.1em;cursor:pointer}
footer #contact_box form .item.send button svg,#popup_form .item.send button svg{margin-left:.5em;width:18px;height:18px;fill:#434343}
footer #footer_box{padding-top:3vmax;width:100%;display:flex;flex-direction:column;justify-content:space-between}
footer #footer_box .item{padding:0 10vw 3em}
footer #footer_box .top_item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}
footer #footer_box .top_item .other_links{width:1%;flex:1 1 auto;display:flex;justify-content:flex-end;align-items:center}
footer #footer_box .top_item .other_links a{margin-left:1em;padding:.3em 1em;border:1px #3d3d3d solid;color:#3d3d3d}
footer #footer_box .aboutus_item{display:grid;grid-template-columns:220px 1fr 200px 320px;grid-gap:3em}
footer #footer_box .aboutus_item .row h3{margin-bottom:1em;font-size:1.5em;-webkit-transform:translateX(-1em);transform:translateX(-1em)}
footer #footer_box .aboutus_item .row ul li{margin-bottom:.5em;display:flex;flex-wrap:wrap;align-items:baseline}
footer #footer_box .call_links{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
footer #footer_box .call_links a{margin-bottom:1em;padding:.5em 1.5em;min-width:13em;background:#2e58ba;border-radius:2em;display:inline-flex;align-items:center}
footer #footer_box .call_links a.line{background:#39cd00}
footer #footer_box .call_links a:last-child{margin-bottom:0}
footer #footer_box .call_links a svg{width:24px;height:24px;fill:#fff}
footer #footer_box .call_links a font{margin-left:.5em;color:#fff}
footer #footer_box .partners{display:flex;justify-content:flex-end;align-items:center}
footer #footer_box .partners a{display:inherit}
footer #footer_box .copy_item *{font-weight:300;font-size:13px;color:#bbb}
footer #footer_box .copy_item>div{margin-right:.5em;display:flex;align-items:center}
footer #footer_box .copy_item{padding:0.5em 3vw;background:#000;display:flex;align-items:center;justify-content:center}
footer #footer_box .copy_item *{font-weight:300;font-size:10px;color:#bbb}
#fixcontact_btn{position:fixed;bottom:0;right:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:99}
#fixcontact_btn a{margin:0em 0.2em 0.5em;width:55px;height:55px;background:#2e58ba;border-radius:50%;display:flex;justify-content:center;align-items:center}
#fixcontact_btn a.line{background:#39cd00}
#fixcontact_btn a svg{width:28px;height:28px;fill:#fff}
@keyframes letstalk{0%,100%{background-position-x:0}
50%{background-position-x:10%}
}
@-webkit-keyframes letstalk{0%,100%{background-position-x:0}
50%{background-position-x:10%}
}
@media screen and (min-width:1501px){.workframe{width:80vw}
.wrapper:before,.wrapper:after{right:calc((100vw - 1500px) / 2)}
}
@media screen and (max-width:1500px){header .menu_box,header .contact_btn{margin-right:1em}
footer #footer_box .item{padding:0 11vw 3em}
.workframe,.workframe_s{position:relative;margin:0 auto;width:80vw;z-index:10}
}
@media screen and (min-width:1441px){.workframe_s{width:1280px}
}

@media screen and (max-width: 1280px){
	footer .info_box .item.txt_box p { width: 100%; }
    header .menu_box .menu_list li p{
    position: relative;
}
	header .menu_box .menu_list li b{right:0;position:absolute;padding-left: calc(100% - 30px);padding-top:10px;width:55px;height:55px;display:inline-block;text-align:center;line-height:41px;top:calc((100% - 60px) / 2);left: 0;cursor:pointer}
	header .menu_box .menu_list li b i{color:#fff;opacity:.5;width: 1em;height: 1em;display: block;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512' fill='%23fff'%3E%3Cpath d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32v144H48c-17.7 0-32 14.3-32 32s14.3 32 32 32h144v144c0 17.7 14.3 32 32 32s32-14.3 32-32V288h144c17.7 0 32-14.3 32-32s-14.3-32-32-32H256V80z'/%3E%3C/svg%3E") no-repeat right 50%;padding-top: 40px;}

	header .menu_box .menu_list li.action b i{background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512' fill='%23fff' %3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M432 256c0 17.7-14.3 32-32 32H48c-17.7 0-32-14.3-32-32s14.3-32 32-32h352c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E") no-repeat right 50%;}

footer #footer_box .aboutus_item{grid-template-columns:220px 1fr}
footer #footer_box .item{padding:0 5vw 3em}
header .menu_box .menu_list li .menu_body{position:relative;display: none;}
}
@media screen and (min-width:1281px){header .menu_box .menu_list li{position:relative;overflow:hidden}
header .menu_box .menu_list li:hover{overflow:visible}
header .menu_box .menu_list li .menu_body,header .menu_box .menu_list li .menu_body .subOption li ul{width:160px;left:calc(50% - 80px);z-index:1;opacity:0;-webkit-transition:all 0.2s ease-in-out;transform:translate(0,30px);position:absolute}
header .menu_box .menu_list li .menu_body ul{background:rgba(var(--black-rgb),.85);text-align:center;background-color: rgb(255 255 255);}
header .menu_box .menu_list li .menu_body ul li{padding:0}
header .menu_box .menu_list li .menu_body ul li a{width:100%;display:block;padding: 10px 10px;font-size: 1rem;text-align:center;transition:all 0.3s ease-in-out;-webkit-transition:all 0.3s ease-in-out;color:#565656}
header .menu_box .menu_list li .menu_body ul li:hover a{color:#b482ed}
header .menu_box .menu_list li:hover .menu_body{transform:ttranslate(0,10px)}
header .menu_box .menu_list li .menu_body .subOption li ul{position:absolute;top:0;right:70px}
.webBox header .menu_box .menu_list li .menu_body .subOption li ul{transform:translate(130px,0);-webkit-transform:translate(130px,0);-moz-transform:translate(130px,0);-ms-transform:translate(130px,0);-o-transform:translate(130px,0)}
.webBox header .menu_box .menu_list li .menu_body .subOption li:hover > ul{transform:translate(170px,0);-webkit-transform:translate(170px,0);-moz-transform:translate(170px,0);-ms-transform:translate(170px,0);-o-transform:translate(170px,0)}
header .menu_box .menu_list li .menu_body .subOption li >div a{padding:5px 15px;display:block;padding:10px;border-bottom:1px solid rgb(184 184 184 / 30%);font-size:15px;font-size:17px;text-align:center}
header .menu_box .menu_list li:hover .menu_body,header .menu_box .menu_list li .menu_body .subOption li:hover >ul{z-index:10;opacity:1;-webkit-transform:translate(0,0px)}
.webBox header .menu_box .menu_list li:hover .menu_body{-webkit-transform:translate(0,10px)}
}
@media screen and (min-width:1161px){#nav_toggleInner{display:none}
footer #footer_box .top_item .other_links a:hover{background:#3d3d3d;color:#fff}
}
@media screen and (max-width:1160px){header{background:#222;box-shadow:0 0 3em rgb(0 0 0 / 40%)}
header .web_logo svg{width:220px}
header .web_logo svg use{fill:#fff}
header .web_logo svg .circle_a{fill:#040404}
header #nav_toggleInner .nav_hamburger span{background:#fff}
header .menu_box nav{overflow-y:scroll;position:fixed;width: min(100%,350px);height:calc(100vh - 82px);top:82px;right:0;z-index:9998;pointer-events:none;}
header .menu_box nav::-webkit-scrollbar{width:0}
header .menu_box nav:before{position:absolute;width:100%;height: 1000vh;background:#222;opacity:0;top:0;left:0;content:"";-webkit-transform-origin:right;transform-origin:right;-webkit-transform:scaleX(.1);transform:scaleX(.1);-webkit-transition:-webkit-transform 500ms cubic-bezier(0.525,0.06,0.11,0.995);transition:transform 500ms cubic-bezier(0.525,0.06,0.11,0.995),-webkit-transform 500ms cubic-bezier(0.525,0.06,0.11,0.995)}
header .menu_box .menu_list{position:relative;padding: 0vh 0;flex-direction:column;align-items:stretch;opacity:0;-webkit-transform:translateY(4em);transform:translateY(4em);-webkit-transition:opacity 50ms linear,-webkit-transform 1ms 50ms linear;transition:opacity 50ms linear,transform 1ms 50ms linear,-webkit-transform 1ms 50ms linear}
header .menu_box .menu_list li a{padding:1em 2em;display:block;border-bottom:1px rgb(255 255 255 / 25%) solid;color:#fff}
	header .menu_box .menu_list li .subOption { padding-bottom: 20px; }
	header .menu_box .menu_list li .subOption li a{position: relative;padding: .8em 2em .8em 3em;border-bottom: 1px rgb(255 255 255 / 11%) solid;}

.menu-open header .menu_box nav{pointer-events:auto;/* background: #222; */}
.menu-open header .menu_box nav:before{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1);-webkit-transition:-webkit-transform 800ms cubic-bezier(0.525,0.06,0.11,0.995);transition:transform 800ms cubic-bezier(0.525,0.06,0.11,0.995),-webkit-transform 800ms cubic-bezier(0.525,0.06,0.11,0.995)}
.menu-open header .menu_box nav .menu_list{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition:opacity 400ms 400ms linear,-webkit-transform 800ms 400ms cubic-bezier(0.13,0.095,0.2,0.915);transition:transform 800ms 400ms cubic-bezier(0.13,0.095,0.2,0.915),opacity 400ms 400ms linear,-webkit-transform 800ms 400ms cubic-bezier(0.13,0.095,0.2,0.915)}
#main{-webkit-transition:-webkit-filter 500ms ease-in-out;transition:filter 500ms ease-in-out,-webkit-filter 500ms ease-in-out}
#main:before{position:absolute;width:100vw;height:100vh;background:#343434;opacity:0;pointer-events:none;top:0;left:0;z-index:9999;content:"";-webkit-transition:opacity 400ms linear;transition:opacity 400ms linear}
.menu-open #main{-webkit-filter:blur(1rem);filter:blur(1rem)}
.menu-open #main:before{opacity:.4;-webkit-transition:opacity 400ms linear;transition:opacity 400ms linear}
header .contact_btn{margin-right:0}
header.scroll .menu_box nav{height:calc(100vh - 60px);top: 65px;}
footer #contact_box .title{font-size:6vmax}
}
@media screen and (max-width:768px){footer #contact_box form .item.recaptcha{grid-column:1 / 3}
footer #contact_box form .item.send{grid-column:1 / 3;justify-content:center}
}
@media screen and (max-width:640px){footer #footer_box .aboutus_item{grid-template-columns:repeat(1,1fr);grid-gap:.5em}
footer #footer_box .partners{justify-content:flex-start}
}
@media screen and (max-width:550px){header .web_logo svg,header.scroll .web_logo svg,footer .web_logo svg{width:200px}
header .menu_box{margin-right:0}
header .contact_btn{display:none}
footer #contact_box form{grid-template-columns:repeat(1,1fr)}
footer #contact_box form .item.large,footer #contact_box form .item.recaptcha,footer #contact_box form .item.send{grid-column:auto}
footer #footer_box .item{padding:0 5vw 3vw}
footer #footer_box .top_item .web_logo{width:100%}
footer #footer_box .top_item .other_links{justify-content:flex-start}
footer #footer_box .top_item .other_links a{margin:1em 1em 1em 0}
footer #footer_box .aboutus_item .row{padding:1em 2em}
footer #footer_box .call_links{padding:0 1em 4vw}
footer #footer_box .partners{padding:0 1em}
footer #footer_box .copy_item{padding:3vw 5vw;display:flex;flex-direction:column}
footer #footer_box .copy_item>div{margin-right:0;margin-bottom:5px}
}