@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('/css/contentBuilder.css');
@import url('root.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100;200;300;400;500;600;700;800;900&family=Noto+Sans+TC:wght@100;200;300;400;500;600;700;800;900&family=Jost:wght@100;200;300;400;500;600;700;800;900&display=swap');

*, ::after, ::before {margin: 0;padding: 0;box-sizing: border-box;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;-webkit-transition: all .5s linear;-moz-transition: all .5s linear;-webkit-transition: all 0.5s;transition: all 0.5s;}
*:focus { outline:  none; }

body {overflow-x: hidden;overflow-y: overlay;margin: 0;min-height: 100vh;}
body::-webkit-scrollbar { width: 13px; }
body::-webkit-scrollbar-track { background: none; }
body::-webkit-scrollbar-thumb { border-radius: 8px; border: 4px solid transparent; background-clip: content-box; background-color: var(--g_200); }
body::-webkit-scrollbar-thumb:hover { background-color: var(--g_300); }

header , footer , div , nav , article , hr , p , form , label , input , button , 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: var(--font-family), sans-serif; font-size: 16px; color: var(--info); }

h1, h2, h3, h4, h5, h6 { word-wrap: break-word; word-break: break-word; line-height: 1.7; font-family: var(--font-family), sans-serif; color: var(--info); }
h1 *, h2 *, h3 *, h4 *, h5 *, h6 * { font-size: inherit; }
h1, .h1 { font-weight: bold; font-size: 2em; }
h2, .h2 { font-weight: bold; font-size: 1.5em; }
h3, .h3 {font-size: 1.17em;}
h4, .h4 { font-weight: bold; font-size: 1em; }
h5, .h5 { font-weight: bold; font-size: .83em; }
h6, .h6 { font-weight: bold; font-size: .67em; }

ul , ol { list-style: none; }

fieldset { border: 0; }
input , select , textarea { padding: .5em 1em; width: 100%; background-color: white; background-clip: padding-box; border: 1px solid var(--g_200); border-radius: .2em; box-shadow: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select { 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; }
button { background: none; border: 0; box-shadow: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; cursor: pointer; }
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; }
input[type="radio"] , input[type="checkbox"] { width: auto; -webkit-appearance: auto; -moz-appearance: auto; appearance: auto; }

/* img */
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; }

/* general class set */
.txt_clamp { overflow: hidden; height: 1.5em; 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; }

/* 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; transition: none; }
.fancybox-infobar__body span { font-size: inherit; color: currentcolor; vertical-align: initial; }

/* webBox */
.webBox {position: relative;width: 100%;min-height: 100vh;overflow: hidden;}
.webBox .wrapper {position: relative;background: #f7f0e5;z-index: 2;}

/* slick */
.webBox .slick-dotted.slick-slider { margin-bottom: 0; min-width: 100%; }
.webBox .slick-dotted .slick-track { min-width: 100%; }
.webBox .slick-dotted .slick-dots { bottom: 20px; }
.webBox .slick-dotted .slick-dots li { width: auto; height: auto; display: inline-flex; justify-content: center; align-items: center; }
.webBox .slick-dotted .slick-dots li button { width: 1em; height: 1em; background: var(--g_200); outline: 2px transparent solid; border-radius: 50%; }
.webBox .slick-dotted .slick-dots li.slick-active button { background: transparent; outline-color: var(--primary); }
.webBox .slick-dotted .slick-dots li button:before { content: ""; }

/* workframe */
.workframe { margin: 0 auto; width: min(95vw, var(--width-xxl)); }
.workframe_s { margin: 0 auto; width: min(95vw, var(--width-xl)); }

/* header */
header {position: fixed;padding: 1.6em 6vw;width: 100vw;background: #f7f0e5;display: flex;justify-content: space-between;align-items: center;top: 0;left: 0;z-index: 999;}
header #cis a{width: 13vw;}
header #webmenu nav a {margin: 0 .5em;padding: .7em .9em;display: block;font-size: 18px;color: var(--secondary);font-weight: 300;letter-spacing: 2px;}
header #topbtns { display: flex; justify-content: flex-end; align-items: center; gap: .3em 1em; }
header #topbtns .btn { padding: .5em .2em; cursor: pointer; }
header #topbtns .btn svg,header #topbtns .btn img {width: 24px;height: 24px;aspect-ratio: 1 /1;object-fit: contain;}
header #topbtns .dropdown {position: relative;}
header #topbtns .dropdown .dropdown_menu {position: absolute;width: 7em;display: flex;flex-direction: column;background: #fff;box-shadow: 0 0 10px rgb(142 142 142 / 20%);left: 50%;-webkit-transform: translate(-50%, -.5em);transform: translate(-50%, -.5em);opacity: 0;z-index: -1;pointer-events: none;}
header #topbtns .dropdown .dropdown_menu[data-type="1"] { -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); opacity: 1; z-index: 999; pointer-events: auto; }
header #topbtns .dropdown .member_list a { padding: .5em; border-bottom: 1px var(--g_200) solid; display: block; text-align: center; }
header #topbtns .dropdown .order_list { padding: 1em; width: 300px; right: 0; left: auto; -webkit-transform: translate(0, -.5em); transform: translate(0, -.5em); }
header #topbtns .dropdown .order_list[data-type="1"] { -webkit-transform: translate(0, 0); transform: translate(0, 0); }
header #topbtns .dropdown .order_list tr >* { padding: .3em 0; border-bottom: 1px var(--g_200) dashed; text-align: center; font-size: 13px; }
header #topbtns .dropdown .order_list tr a { font-size: 1em; }
header #topbtns .dropdown .order_list tr .name { width: 6em; }
header #topbtns .dropdown .order_list tr .name a { margin-bottom: .1em; padding: 0 .5em; height: 1em; display: -webkit-box; line-height: 1; }
header #topbtns .dropdown .order_list tr .image { width: 30px; }
header #topbtns .dropdown .order_list tr .image img { width: 100%; aspect-ratio: 1/1; }
header #topbtns .dropdown .order_list tr .shape , header #topbtns .dropdown .order_list tr .total { width: 5em; }
header #topbtns .dropdown .order_list .btn { margin-top: 1em; padding: .3em .2em; background: var(--primary); display: block; text-align: center; color: white; }
header #topbtns .dropdown .order_list .order_empty { height: 4em; display: flex; justify-content: center; align-items: center; font-size: 13px; color: var(--g_500); }
header #topbtns #openshop { position: relative; }
header #topbtns #openshop b { position: absolute; width: 1.5em; height: 1.5em; background: var(--primary); border-radius: 50%; display: flex; justify-content: center; align-items: center; font-weight: 400; font-size: .7em; line-height: 1.3; color: white; top: .1em; left: 1.3em; }
header #topbtns #openshop font {display: inline-flex;color: var(--g_800);display: none;}
header #topbtns #openshop font:before { margin: 0 10px 0 13px; display: inline-block; color: var(--g_800); content: "/"; }

/* hSearch */
#hSearch {position: fixed;margin-top: 1.5em;padding: 0 1em;width: 240px;background-color: #ffffff;box-shadow: 0 0 10px rgb(142 142 142 / 20%);display: flex;align-items: center;border-radius: 2em;right: -300px;opacity: 0;z-index: -1;}
#hSearch[data-type="2"] { right: 5vw; opacity: 1; z-index: 10; }
#hSearch input {margin-right: .5em;padding: .3em 0;background-color: #ffffff;border: 0;}
#hSearch a { line-height: 1; }
#hSearch font { line-height: 1; }
#hSearch svg {width: 18px;height: 18px;fill: var(--info);}

/* footer */
footer {padding: 3vmax 0 1vmax;background-color: #96a185;position: relative;}
footer .workframe{width:89vw}
footer:before{content:'';position:absolute;width:100%;background:#f7f0e5;height:1px;right:0;bottom:70px;opacity:.3}
footer *{color:#f7f0e5;font-size:20px;letter-spacing:1px}
footer .footerTop{display:grid;grid-template-columns:100px 1fr;gap:7%;align-items:start}
footer .top_box{display:flex;align-items:center;justify-content:space-between}
footer #f_logo img{width:min(100%,88px)}
footer .business_info{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:30px}
footer #f_info{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.4em;width:60%}
footer .business_info .nav-m{display:none}
footer #f_info p {display: flex;flex-wrap: wrap;flex-direction: row;align-items: center;gap: 5px;font-weight: 300;}
footer #f_info p a{vertical-align: baseline;}
footer #f_info p >* { display: inline-block; }
footer #f_info p font:first-child {/* font-size: .9em; */}
footer #f_nav {margin-left: 5%;width: 30%;display: grid;grid-template-columns: repeat(4, 1fr);grid-gap: .5em;}
footer #f_other {display: flex;align-items: center;justify-content: flex-start;gap: 5px;}
footer #f_other * {font-weight: 300;font-size: 14px;color: #f7f0e5;opacity: .8;letter-spacing: 1px;}
footer .more_btn {padding: 20px 1.7em;gap: 50px;background: linear-gradient(90deg, var(--primary), var(--secondary));color: var(--white);font-weight: 400;display: inline-flex;align-items: center;border-radius: 50px;}
footer .more_btn:hover{background: linear-gradient(45deg, var(--primary), var(--secondary));}
footer .more_btn span{display:inline-block;width: 7px;aspect-ratio: 1/1;background: white;border-radius: 50px;}
footer .more_btn:hover span{border:1px solid #fff;background:none}
footer .bottom_box{display:flex;flex-wrap: wrap;justify-content: center;align-items: center;margin-top: 30px;padding-top: 30px;}
footer .footerBottom{margin-left:0}
footer .footerBottom .footerLink{display:flex;gap:20px}
footer .footerBottom .footerLink li a{display:flex;gap:20px;align-items:center;color:var(--secondary);background-color:var(--yellow);padding:10px 25px}
footer .footerBottom .footerLink li a svg{width:20px;height:20px;fill:var(--secondary)}

/* contactBox */
#contactBox{background: url(/images/01/img-c-bg.webp) var(--secondary) no-repeat 100% 0;padding: 6vw 0 2vw;align-items: center;position: relative;}
#contactBox:before{content:'';position: absolute;width: 100%;background: var(--secondary);height: 30%;right: 0;bottom: 0;z-index: 0;}
#contactBox .area_title {position: relative;letter-spacing: .1em;font-weight: 200;line-height: 140%;text-transform: uppercase;font-size: 3.8em;color: var(--primary);}
#contactBox .h2_title{font-size:1.6em;color:var(--primary);letter-spacing:2px}
#contactBox .MapBox{background:var(--yellow);padding:4vw;display:grid;grid-template-columns:52% 40%;align-items:center;position:relative;margin:auto;width:90%;justify-content:space-between}
#contactBox .Map iframe{height:54vh}
#contactBox .sub_title {font-weight: 500;display: flex;align-items: center;gap: 10px;font-family: "Poppins", sans-serif;font-size: 20px;}
#contactBox .sub_title:before{content:url(/images/01/icon-sun.svg);-webkit-filter: contrast(0) brightness(150%);filter: contrast(0) brightness(200%);width: 30px;}
#contactBox .MapBox .box p{font-size:22px;margin:30px 0 0 0;font-weight:300;letter-spacing:1px;line-height:180%}
#contactBox #community_box{width:100%;margin: 120px 0 0;display: flex;gap: 28px;}
#contactBox svg{fill: var(--secondary);width: 40px;height: 40px;}
#contactBox .info{position:relative;display: grid;grid-template-columns: 1fr 40px;align-items: center;padding: 25px 0;border-bottom: 1px solid rgb(255 255 255 / 30%);}
#contactBox .info p{font-size:18px;display: flex;align-items: center;gap: 40px;letter-spacing: 2px;font-weight: 300;}
#contactBox .info p b{font-size:20px;font-family: "Poppins", sans-serif;font-weight: 400;letter-spacing: 0;}
#contactBox .info a{position:absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 2;}

/* webSeo */
#webSeo { overflow: hidden; width: 100vw; margin-top: 2em; white-space: nowrap; box-sizing: border-box; }
#webSeo .seo { padding-left: 100%; font-weight: 100; line-height: 1; font-size: 13px; color: var(--g_400); -webkit-animation: marquee 100s linear infinite; animation: marquee 100s linear infinite; }

/* gotop */
#gotop {position: fixed;width: 45px;aspect-ratio: 1/1;background: var(--primary);display: flex;justify-content: center;align-items: center;border-radius: 50%;right: 1vw;bottom: 5vh;opacity: 0;z-index: 9999;}
#gotop[data-type="1"] { opacity: 1; }
#gotop svg { width: 50%; aspect-ratio: 1/1; fill: white; }

/* follow */
.follow{position:fixed;display: flex;flex-direction: column;align-items: center;gap: 10px;right: 1vw;bottom: 13vh;z-index: 999;}
.follow a{width:45px;aspect-ratio:1 / 1;background: var(--primary);display:flex;justify-content:center;align-items:center;border-radius:50%}
.follow a img{width:20px;height: 20px;}
.follow a svg{width:20px;height: 20px;fill: #fff;}
.follow a img{-webkit-filter: contrast(0) brightness(150%);filter: contrast(0) brightness(200%);}

/* animation */
@-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); } }

@media screen and (max-width: 1440px) {
	#contactBox .area_title{font-size:3.1em}
	footer *{font-size:18px}
	footer .business_info{gap:10px}
}
@media screen and (max-width: 1280px) {
    #contactBox .area_title{font-size:2.8em}
	header #webmenu nav a{padding:.2em 0}
	footer .workframe{width:90vw}
	#contactBox .MapBox .box p{font-size:16px}
	footer *{font-size:17px}
	footer .footerTop{gap:4%}
	footer #f_info{width:57%}
}
@media screen and (min-width: 1161px) {
	header #webmenu {margin: 0 0%;width: 1%;flex: 1 1 auto;}
	header #webmenu nav >ul {display: flex;justify-content: flex-end;align-items: center;}
	header #webmenu nav ul li { position: relative; }
	header #webmenu nav ul li b { display: none; }
	header #webmenu li .menu_body * {color: var(--info);}
	header #webmenu li .menu_body , header #webmenu li .subOption ul {position: absolute;width: 140px;right: calc((100% - 140px) / 2);z-index: -1;opacity: 0;pointer-events: none;}
	header #webmenu li .menu_body { -webkit-transform: translateY(30px); transform: translateY(30px); }
	header #webmenu li .menu_body ul { background: white; box-shadow: 0 0 2em .4em rgb(149 149 149 / 12%); }
	header #webmenu li .subOption li { overflow: hidden; }
	header #webmenu li .subOption li>div a {margin: 0;padding: .7em .4em;display: block;border-bottom: 1px rgba(0, 0, 0, .1) solid;text-align: center;font-size: 16px;}
	header #webmenu li .subOption .sub2Option , header #webmenu li .subOption .sub3Option { top: 0; right: -160px; -webkit-transform: translateX(-30px); transform: translateX(-30px); }
	header #webmenu li .subOption .sub4Option { -webkit-transform: translateY(-30px); transform: translateY(-30px); }
	header #webmenu nav>ul>li:hover , header #webmenu li .subOption li:hover { overflow: visible; }
	header #webmenu nav>ul>li:hover .menu_body { -webkit-transform: translateY(0); transform: translateY(0); }
	header #webmenu li .subOption li:hover .sub2Option , header #webmenu li .subOption li:hover .sub3Option { -webkit-transform: translateX(0); transform: translateX(0); }
	header #webmenu li .subOption li:hover .sub4Option { -webkit-transform: translateY(0); transform: translateY(0); }
	header #webmenu nav>ul>li:hover .menu_body , header #webmenu li .subOption li:hover>ul { z-index: 2; opacity: 1; pointer-events: auto; }
	header #webmenu li:last-child .subOption .sub2Option , header #webmenu li:last-child .subOption .sub3Option { right: auto; left: -170px; }
	header #topbtns {width: 170px;}
	header #menu_btn { display: none; }
	header.scroll {-webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);padding: 1em 6vw;}
	header #topbtns .dropdown .member_list a:hover {background: var(--secondary);border-color: var(--secondary);color: white;}
	header #topbtns .dropdown:hover .dropdown_menu[data-type="0"] { -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); opacity: 1; z-index: 999; pointer-events: auto; }
	header #topbtns .dropdown:hover .order_list[data-type="0"] { -webkit-transform: translate(0, 0); transform: translate(0, 0); }
	#gotop:hover{opacity:.8}
}
@media screen and (max-width: 1160px) {
    footer #f_info{width:100%;}
    footer #f_nav{width:100%;margin: 20px 0 0;display: flex;flex-wrap: wrap;}
   header{
    padding: 1.2em 6vw;
}
    header #cis a{
    width: 22vw;
}
	header #cis { margin-right: 5%; width: 1%; flex: 1 1 auto; }
	header #webmenu { overflow-y: scroll; position: fixed; padding: 120px 10vw 10vh; width: 100vw; height: 100vh; background: white; top: 0; left: 0; opacity: 0; z-index: 998; pointer-events: none; }
	header #webmenu::-webkit-scrollbar { width: 0; }
	header #webmenu nav { opacity: 0; -webkit-transform: translateY(-50px); transform: translateY(-50px); }
	header #webmenu nav a { margin: 0; padding: 10px 50px 8px 10px; border-bottom: 1px rgba(0, 0, 0, .1) solid; }
	header #webmenu nav p , header #webmenu nav ul li .bo { position: relative; }
	header #webmenu nav b { position: absolute; width: 50px; height: 100%; display: flex; justify-content: center; align-items: center; top: 0; right: 0; }
	header #webmenu nav b i{color: var(--secondary);}
header #webmenu nav b i:before, header #webmenu nav b i:after {width: 15px;height: 1px;background: var(--secondary);display: block;content: "";}
header #webmenu nav b i:after { -webkit-transform: translateY(-1px) rotate(90deg); transform: translateY(-1px) rotate(90deg); -webkit-transition: all .2s linear; transition: all .2s linear; }
header #webmenu nav b i.fa-minus:after { -webkit-transform: translateY(-1px) rotate(0deg); transform: translateY(-1px) rotate(0deg); }

    header #webmenu nav >ul { flex-direction: column; }
	header #webmenu li .menu_body , header #webmenu li .subOption ul { display: none; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
	header #webmenu li .menu_body ul { margin: 0 0 0 .5em; }
	header #webmenu nav .menu_body .subOption a { font-size: 16px; color: #6c6c6c; }
	header #webmenu[data-type="2"] { opacity: 1; pointer-events: auto; }
	header #webmenu[data-type="2"] nav { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); -webkit-transition-delay: .2s; transition-delay: .2s; }
	header #menu_btn { margin-left: 10px; width: 25px; height: 25px; display: flex; flex-direction: column; justify-content: space-evenly; align-items: flex-end; transition: transform .35s ease, height .35s ease; z-index: 999; }
	header #menu_btn span {margin-bottom: 5px;width: 95%;height: 2px;background-color: var(--secondary);display: block;transition: all .35s ease;}
	header #menu_btn span:nth-child(2) {width: 60%;background-color: var(--secondary);}
	header #menu_btn span:last-child { margin-bottom: 0; }
	header #menu_btn[data-type="2"] span:nth-child(1) { -webkit-transform: translate(0, 10px) rotate(45deg); transform: translate(0, 10px) rotate(45deg); }
	header #menu_btn[data-type="2"] span:nth-child(2) { opacity: 0; }
	header #menu_btn[data-type="2"] span:nth-child(3) { -webkit-transform: translate(0, -8px) rotate(-45deg); transform: translate(0, -8px) rotate(-45deg); }
    footer .footerTop{gap:40px}
	footer .footerTop,footer #f_info{grid-template-columns:1fr}
	footer .top_box{display:flex;justify-content:center}
	footer #f_logo a{text-align:center}
	footer .business_info .nav-p{display:none}
	footer .business_info .nav-m{display:block}
	footer .footerBottom{margin:auto;width:100%}
	footer .footerBottom .footerLink{display:flex;justify-content:center;margin-top:20px}
	footer .footerBottom .footerLink li a{padding:10px 16px}
	footer #f_info{width:auto}
	#contactBox svg{width:30px;height:30px}
	#contactBox .MapBox{grid-template-columns:52% 44%}
}
@media screen and (max-width: 768px) {
    #contactBox{padding: 8vw 7vw 7vw;}
	footer #f_nav { margin: 1rem 0; width: 100%; }
	footer #f_nav a { margin-left: 0; }
    #contactBox .MapBox{grid-template-columns:1fr;gap:30px;width:100%;padding:0 0 10vw 0}
	#contactBox .area_title,#contactBox .h2_title,#contactBox .MapBox .box p{text-align:center}
	#contactBox #community_box{margin:30px 0 0;display:flex;justify-content:center;gap:22px}
	footer #f_logo img{width:min(100%,60px)}
    header{padding:1.1em 6vw}
	header #cis a{width:35vw}
	header #topbtns .btn svg,header #topbtns .btn img{width:24px;height:24px}
	header #topbtns{gap:.2em .5em}
	footer .footerBottom .footerLink li a{font-size:14px;padding:8px 12px;gap:8px}
	footer .footerBottom .footerLink li a svg{width:15px;height:15px}
}
@media screen and (max-width: 550px) {
	header #topbtns #openshop font { display: none; }
	header #topbtns .dropdown .order_list { position: fixed; }
    #contactBox{padding: 0;}
    #contactBox .h2_title{font-size: 21px;margin-bottom: 30px;}
    #contactBox .Map iframe{height:40vh}
	#contactBox .area_title{font-size:2.4em}
	footer:before{bottom:70px}
	footer .business_info{justify-content:center}
    footer .bottom_box{display:flex;flex-direction: column;align-items: flex-start;}
    footer {padding: 6vmax 0 3vmax;}
    footer .more_btn{display:none;}
	footer #f_info {grid-template-columns: 1fr;}
}