
::-moz-selection
{
	background-color: #66afd4;
    color:#fff;
}
::selection
{
	background-color: #66afd4;
    color:#fff;
}
::-moz-selection  
{
	background-color: #66afd4;
    color:#fff;
}



.owl-carousel{padding: 0 50px;}



/* cookie style */
.cookie-banner .banner{
    margin-bottom: 0;
}
.gdpr-banner{
    padding: 30px;
    margin: auto;
    background: linear-gradient(180deg, rgb(41, 41, 41,0.8), rgb(27, 27, 27,0.8));
    text-align: center;
    font-family: 微軟正黑體;
    color: #c2c2c2;
}
.gdpr-banner button.btn.m-1{
    display: inline-block;
    border: none;
    border-radius: 25px;
    text-decoration: none;
    background-color: rgb(238, 246, 255);
    background-size: 100% 200%;
    background-image: linear-gradient(to bottom, transparent 50%, rgb(255, 255, 255) 50%);
    color: rgb(54, 54, 54);
    margin: auto;
    padding: 10px 37px;
    min-width: auto;
    box-shadow: 0px 4px 16px 8px rgb(224, 224, 224) 33;
    transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease-out 0s, background-color 0.5s ease-out;
    cursor: pointer;
}
.gdpr-banner button:hover{
    background-color: rgb(179, 188, 201);
    background-position: -100% 100%;
}
.gdpr-banner a{
    color: #fff;
}
.gdpr-banner a:hover{
    color: #999;
}





.necessary{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 0 50px;
    margin-top: 50px;
    border-bottom: solid 1px #c2c2c2;
}
.back{
    /* position: relative; */
    /* display: block; */
    text-align: center;
    margin-left: 10px;
}
.back a,
.contact form input[type='button']{
    position: relative;
    display: inline-block;
    width: 150px;
    color: #2aa283;
    font-size: 16px;
    font-weight: bold;
    border: solid #2aa283 1px;
    padding: 10px 20px;
    z-index: 0;
}
.back a:hover{
    color: #fff;
}
.back a::before{
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    background-color: #2aa283;
    z-index: -1;
    transition: height .2s linear;
}
.back a:hover::before{height: 100%;}

input[type=checkbox]:checked {
    color: yellow;
    background-color: #444;
}

/* header */
.logo-row {
    width: 100%;
}
.logo-img {
    height: 75px;
}
.logo-2, .header.no-transparent .logo-2,
header.affix .logo-2{
    padding: 17px 0 16px 28px
}
.affix.black-header .header-wrapper {
    height: 95px;
}

#main-menu .sub{
    padding: 0;
    top: 108px;

}
#main-menu .sub a{
    color: #fff;
    padding: 9px 20px;
}
#main-menu .sub a:hover{
    padding-left: 20px;
}
#main-menu .sub li,
#main-menu .navbar .nav li a,
#main-menu .sub .parent:hover > a{
    font-size: 16px;
    /* color: #2a343c; */
}
#main-menu .navbar .nav > li > a,
.affix.header-1 #main-menu .navbar .nav > li > a,
.header-1 #main-menu .navbar .nav > li.current > a,
.affix.header-1 #main-menu .navbar .nav > li.current > a{
    /* padding: 38px 18px 35px 18px;
    margin: 0 12px; */
    padding: 8px 18px;
    margin: 35px 12px;
}
.header-1 #main-menu .navbar .nav > li.current > a,
.affix.header-1 #main-menu .navbar .nav > li.current > a{
    color: #2aa283;
    border-color: #2aa283;
}
#main-menu .navbar .nav > li > a,
.affix.header-1 #main-menu .navbar .nav > li > a,
#main-menu .navbar .nav .open-sub:before{
    color: #2a343c;
}
.black-header #main-menu .navbar .nav > li.current > a,
.affix.header-1.black-header #main-menu .navbar .nav > li.current > a{
    border-color: #66afd4;
}

#main-menu .sub, 
#main-menu .parent .sub, 
#main-menu .parent:hover .sub{
    background-color: #2aa283;
}
.affix.black-header .header-wrapper{
    background-color: #fff;
}
#main-menu .sub .parent:hover > a,
#main-menu .sub a:hover{
    color: #2a343c;
    background-color: #fff;
}
.cd-header-buttons {
    top: 27px;
}
.cd-search input{
    font-size: 18px;
    font-weight: 500;
}
.cd-search-trigger span::before, .cd-search-trigger span::after {
    width: 20px;
    margin-top: -2px;
}
.cd-search-trigger::before {
    width: 15px;
    height: 15px;
    left: 12px;
    top: 10px;
}
.cd-search-trigger::after {
    width: 10px;
    bottom: 17px;
    right: 11px;
}

/* slider */
.tparrows.preview4:after{
    /* font-size: 28px; */
    color: #fff;
    background-color: #2aa283;
}
.tparrows.preview4 .tp-arr-titleholder{
    color: #fff;
    background: #2aa283;
}

/* breadcrumb -------------------------------- */
nav.breadcrumb-nav{display: none; opacity:0; visibility: hidden;}

/* page-header */
.page-title{
    color: #2aa283;
    font-weight: bold;
}
.breadcrumbs{}
.page-sub-title,
.breadcrumbs a,
.breadcrumbs .slash-divider,
.breadcrumbs .bread-current{
    color: #2a343c;
    font-size: 14px;
}
.breadcrumbs .bread-current{
    color: #2a343c;
    padding: 5px 10px 7px;
    border-bottom: solid 2px #2aa283;
}
.breadcrumbs a:hover{
    color: #2aa283;
}
.breadcrumbs .slash-divider{

}



/*title*/
.about .section-title,
.about .sub-title,
.news .section-title,
.news .sub-title {
    display: none;
    opacity: 0;
    visibility: hidden;
}



/* index */
.index-about .container-p-75-2,
.index-product .container-p-75-2{
    padding: 100px 75px;
}
.index-about .main-title,
.index-product .main-title,
.news .main-title h3,
.products .title,
.product .main-title h3,
.contact .main-title h3{
    font-size: 27px;
    font-weight: bold;
}
.index-about .main-title span,
.index-product .main-title span,
.index-product span a,
.news .main-title span,
.products .title span,
.product .main-title span,
.products .product-cf a,
.products .product-content .product-cf a,
.contact .main-title span{
    font-size: 15px;
    color: #2aa283;
    font-weight: bold;
}
/*.products .product-img img{width: 100%}*/
.index-about h3{text-align: justify;}
.index-product .main-title{
    text-align: left;
    padding: 0 0 20px;
}
.index-product span a:hover,
.products .product-cf a:hover,
.products .product-content .product-cf a:hover{color: #787877;}
.index-product .port-grid{}



/* footer */
.logo-footer {max-height: 55px;}
footer{background-color: #787877;}
footer a{color: #fff;}
footer .widget{margin-bottom: 30px;}
footer .footer-2-copy-cont,
footer .footer-copyright,
footer .widget ul li a,
footer .widget h4,
footer .right a,
footer .footer-2-copyright a{
    font-size: 15px;
    color: #fff;
}
/* footer menu */
footer .widget h4{
    display: block;
    padding-bottom: 10px;
    margin: 0;
    margin-bottom: 10px;
    text-align: center;
}
.footer-menu{
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.footer-menu .widget{
    width: calc( 100% / 4 );
}
.footer-menu .widget h4{
    color: #fff;
    border-left: solid 1px #999;
    border-right: solid 1px #999;
    transition: all .3s ease 0s;
}
footer .footer-2-copy-cont p,
footer .footer-2-copy-cont a{
    font-size: 12px;
    margin-bottom: 0;
}
footer .footer-menu .widget h4:hover
footer .widget ul li a:hover,
footer .footer-2-copy-cont a:hover,
footer .right a:hover,
footer ul.links-list li a:hover{
    color: #35b594;
}

/* footer-info */
footer .footer-info{display: flex; justify-content: center;}
footer .footer-info .info{display: flex;}
footer .footer-info .info,
footer .footer-info .info a{ font-size: 14px;}
footer .footer-info .info a:hover{ color: #35b594;}
footer .footer-info .info ul{margin-bottom: 0;}
footer .footer-info .info ul:last-child{padding-left: 50px;}
footer .follow{width: 150px;}
footer .follow .follow-icon{
    display: flex;
    justify-content: center;
    width: 100%;
    padding-top: 10px;
}
footer .follow h4{color: #999; margin: 0;}
footer .follow .follow-icon a{
    text-align: center;
    margin: 0 10px;
}
footer .follow .follow-icon svg{
    width: 20px;
    fill: #ddd;
    transition: all .3s ease 0s;
}
footer .follow .follow-icon svg:hover{
    fill: #35b594;
}
/* footer .footer-2-text-cont{
    padding-top: 30px;
} */
footer ul.links-list li{
    text-align: center;
}
footer ul li:not(:last-child){
    padding-bottom: 0px;
}
footer ul li:nth-child(2){
    color: #fff;
}



/* news */
.news-info article:not(:last-child){
    padding-bottom: 50px;
}
.news-info .entry-top{display: flex; align-items: center; padding-bottom: 10px;}
.news-info .entry-meta{font-size: 21px; text-align: center; padding-right: 20px;}
.news-info .entry-meta span{font-size: 21px; padding-bottom: 0px;}
.news-info .entry-links .entry-cf{line-height: 1;}
.news-info .entry-links .entry-cf > a,
.news-content .news-cf > a{color: #787877;}
.news-info .entry-links h3.entry-title,
.news-content .news-title{font-size: 20px; font-weight: bold; margin: 0;}
.news-info .entry-links h3.entry-title a,
.news-info .entry-bottom .read-more:hover,
.news-content .news-title{color: #2aa283;}

.news-info .entry-links h3.entry-title a:hover{color: #2a343c;}
.news-info .entry-bottom{display: block; text-align: right;}
.news-info .entry-bottom .read-more{position: relative;}
.news-info .entry-bottom .read-more::before{
    content: '';
    position: absolute;
    top: 9px;
    left: -80px;
    display: inline-block;
    width: 60px;
    height: 2px;
    background-color: #2aa283;
    margin-right: 20px;
    transition: all .3s ease 0s;
}
.news-info .entry-bottom .read-more:hover::before{
    width: 75px;
}
/* news-content */
.news-content .news-meta{font-size: 21px;padding-bottom: 10px;}
.news-content .news-cf{margin-bottom: 20px;}



/* product */
.container.product {padding-top: 110px; padding-bottom: 110px;}
.news .main-title h3,
.product .main-title h3,
.contact .main-title h3{
    display: inline-block;
    margin: 0;
    margin-bottom: 20px;
}
.news .product-title,
.product .product-title{
    text-align: center;
    padding-bottom: 30px;
    overflow:hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
}

/* news/product > leftside */
.news .leftside .widget-title .widget,
.product .leftside .widget-title .widget{margin-bottom: 60px}
.news .leftside .widget-title ,
.product .leftside .widget-title {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    color: #2a343c;
    margin: 0;
}
.news .leftside .sidebar,
.product .leftside .sidebar{
    border-left: solid 2px #2aa283;
    padding-left: 0px;
}
.news .leftside .widget-title > button,
.product .leftside .widget-title > button{ 
    position: relative;
    background-color: transparent;
    display: inline-block;
    width: 100%;
    text-align: left;
    padding: 7px;
    padding-left: 30px;
}
.news .leftside .widget-title > button:hover,
.product .leftside .widget-title > button:hover{ 
    color: #fff;
}
.news .leftside .widget-title > button::before,
.product .leftside .widget-title > button::before{ 
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    background-color: #2aa283;
    z-index: -1;
    transition: height .2s linear;
}
.news .leftside .widget-title > button:hover::before,
.product .leftside .widget-title > button:hover::before{ 
    height: 100%;
}

/* product-content */
.product .product-title,
.product .product-content .product-title,
.products .product-content .accordion .card-title{
    color: #2a343c;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.5;
    text-align: left;
    padding-bottom: 0;
    margin: 0;
    margin-top: 10px;
}
.product .product-content .product-cf{
    padding-bottom: 10px;
}
/* product-content > accordion */
.products .product-content .accordion {
}
.products .product-content .accordion .card-title{
    position: relative;
    display: inline-block;
    left: 70px;
    text-align: center;
    line-height: 1;
    /* padding: 10px; */
    margin: 0;
    /* transform: translateX(-50%);*/
    transition: all .3s ease 0s;
}
/* .products .product-content .accordion .card-title:hover{
    padding: 10px 20px 10px 50px;
} */
.products .product-content .accordion .card-title::before{
    content: '';
    position: absolute;
    top: 17px;
    left: -70px;
    display: inline-block;
    width: 60px;
    height: 2px;
    background-color: #2aa283;
    margin-right: 20px;
    transition: all .3s ease 0s;
}
.products .product-content .accordion .card-title:hover::before{
    width: 75px;
}
/* .products .product-content .accordion .card-title::after{
    content: '';
    position: absolute;
    top: 17px;
    right: -50px;
    display: inline-block;
    width: 50%;
    height: 2px;
    background-color: #2aa283;
    margin-left: 10px;
} */
.products .product-content .accordion .card-title a{display:inline-block; padding: 10px;}
.products .product-content .accordion .card-title a:hover{
    color: #2aa283;
}
.owl-carousel .product.ed-style .product-body{margin-bottom: 0;}
.owl-carousel .product.ed-style .product-body .product-cf{text-align: left;}
.owl-theme .owl-controls .owl-buttons div{
    color: #2aa283;
    font-size: 48px;
    background: transparent;
    box-shadow: none;
    -webkit-box-shadow:none;
    border-radius: 0;
    padding: 10px 0px;
    opacity: 1;
}



/* contact */
.contact form input[type='button']{
    position: relative;
    left: 50%;
    display: inline-block;
    color: #fff;
    background-color: #2aa283;
    margin-top: 10px;
    transform: translateX(-50%);
}
.contact form input[type='button']:hover{color: #2aa283; background-color: #fff;}



/* copyright */
footer .footer-2-copy-cont{padding-top: 0;}
footer .copyright{
    position: relative;
    display: flex; 
    justify-content: space-between;
    border-top: solid 1px #ddd;
    padding: 20px 0px 10px;
    margin: 0;
}
footer .copyright,
footer .copyright p{
    font-size: 13px;
}
footer .copyright p{margin-bottom: 0;}
/* footer .copyright .footer-2-copyright{
    padding-left: 10px;
} */



.news-content .necessary{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 0px;
    margin-top: 50px;
    border-bottom: 0;
}
.news-pages{
    display: flex;
    position: relative;
}
.news-prev a, .news-next a{
    display: flex;
    align-items: center;
}
.news-prev span, .news-next span{
    position: relative;
    display: block;
    font-size: 16px;
    padding: 0 5px;
}

.news-prev span{
    padding-left: 15px;
}
.news-next span{
    padding-right: 15px;
}

/* .news-prev span::before,
.news-next span::before {
    content: '';
    position: absolute;
    top: 5px;
    width: 0;
    height: 0;
    border-style: solid;
}
.news-prev span::before{
    left: 5px;
    border-width: 7px 4px 7px 0;
    border-color: transparent #ed7322 transparent transparent;
}
.news-next span::before{
    right: 5px;
    border-width: 7px 0 7px 4px;
    border-color: transparent transparent transparent #ed7322;
} */
.news-prev i, .news-next i{
    font-size: 24px;
    font-weight: bold;
}
.news-pages .back a{
    color: #2aa283;
    /* background-color: #66afd4; */
    padding: 10px 20px 10px 15px;
    transition: all .2s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.news-pages .back a:hover{
    color: #fff;
}
.news-pages .back span{
    font-size: 16px;
}





/* back to top */
#back-top {
    bottom: 65px;
    font-weight: bold;
    padding-bottom: 3px;
}
#back-top a{
    color: #2a343c;
}
#back-top a:hover{
    color: #2aa283;
}
#back-top span{
    font-size: 16px;
}
#back-top span::before{
    content: url('/uploads/others/images/btt.png');
    position: absolute;
    left: 0px;
    bottom: 20px;
    display: inline-block;
    width: 30px;
    height: auto;
}


/* ------------------ pagination ---------------------*/
.page-link{
    color: #2a343c;
    width: 45px;
    height: 30px;
    border: 0;
    border-radius: 0;
}
.page-item.active .page-link{
    color: #2a343c;
    background-color: transparent;
    border-bottom: solid 2px #2aa283;
    padding: 4px;
}
.pagination>.page-item.active >a:hover{
    background-color: #2aa283;
    border-bottom: solid 2px #2aa283;
}
.page-item:first-child .page-link, .page-item:last-child .page-link{
    border-radius: 0;
    margin-right: 0;
}
.page-item:last-child .page-link{
    margin-left: 0;
}
.page-link.page-link-prev, .page-link.page-link-next{
    padding-left: 0;
    padding-right: 0;
    min-width: 40px;
}
.page-link:hover, 
.page-link:focus{
    color: #ddd;
    background-color: #2aa283;
}
.page-link.page-link-next i{
    margin-left: 0;
}
.pd-pagination{
    text-align: center;
}
.pagination>li>a, 
.pagination>li>span{
    border: 0;
}
.pagination>li>a:hover{color: #fff; background-color: #2aa283;}



/* ------------------ search-result ---------------------*/
.search-result{
    padding: 80px 0;
}
.search-result p{
    color: #c1272d;
}
.search-result p,
.search-result .search-item .search-title{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
.search-result p::before,
.search-result p::after{
    content: '-';
}
.search-result p::before,
.search-result .keyword-title .keyword::before{
    padding-right: 5px;
}
.search-result p::after,
.search-result .keyword-title .keyword::after{
    padding-left: 5px;
}
.search-result .keyword-title{
    color: #313131;
    font-size: 21px;
    font-weight: bold;
}
.search-result .keyword-title .keyword{
    padding: 0 10px;
}
.search-result .keyword-title .keyword::before{
    content: '「';
}
.search-result .keyword-title .keyword::after{
    content: '」';
}
.search-result .search-bar{
    position: relative;
    display: block;
    width: 100%;
    margin: 10px 0 30px;
}
.search-result .search-bar input{
    position: relative;
    width: 100%;
    padding-right: 50px;
}
.search-result .search-bar input::placeholder{color: #ddd;}
.search-result .search-bar button{
    position: absolute;
    right: 0;
    display: inline-block;
    width: 40px;
    height: 40px;
    background-color: #ddd;
    border-radius: 50%;
    outline: none;
}
.search-result .search-bar button:hover{
    background-color: #55A266;
}
.search-result .search-bar button svg{
    position: absolute;
    display: inline-block;
    top: 8px;
    left: 10px;
    width: 20px;
    height: 20px;
    color: #313131;
}
.search-result .search-bar button:hover svg{
    color: #fff;
}
.search-result .search-item{
    padding: 20px 0;
}
.search-result .search-item .search-cf{
    padding: 5px 10px;
    background: #f2f2f2;
}
.search-result .search-item .search-title a:hover{
    color: #c1272d;
}
.search-result .search-item .search-title{
    padding: 10px 10px 10px 20px;
}
.search-result .search-item .search-title a{
    color: #55A266;
}

/* search-pagination */
.search-result .pd-pagination{
    text-align: center;
    margin-right: 0px;
}
.search-result .pd-pagination li {
    display: inline-block;
    margin-right: 5px;
}
.search-result .pd-pagination li .page-link{
    color: #313131;
    font-size: 16px;
    font-weight: bold;
    width: 35px;
    height: 35px;
    border: 0;
    border-radius: 50%;
    border-color: transparent;
    padding: 6px 12px;
    text-align: center;
}
.search-result  .pd-pagination li.active .page-link{
    color: #c1272d;
    background-color: transparent;
    border: solid 1px #c1272d;
}
.search-result .pd-pagination li.active .page-link:hover{
    background-color: #55A266;
    border-color: #55A266;
    cursor: pointer;
}
.search-result .pd-pagination li:first-child .page-link, 
.search-result .pd-pagination li:last-child .page-link{
    /* border-radius: 0; */
    margin-right: 0;
}
.search-result .pd-pagination li:last-child .page-link{
    margin-left: 0;
}
.search-result .pd-pagination li .page-link:hover, 
.toolbox .pd-pagination li .page-link:focus{
    color: #fff;
    background-color: #55A266;
}



.grecaptcha-badge {
        display: none !important;
        visibility: hidden;
}



.YoutubeStyle {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}

.YoutubeStyle iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.YoutubeStyle embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}