body { font-size:16px; text-align: center; font-family: "Arial","微軟正黑體","Microsoft JhengHei", serif; }
img { width:100%; }
html * { max-height: 9999999px; }

.mh10 { height:10px; overflow:hidden; }
.mh15 { height:15px; overflow:hidden; }
.mh20 { height:20px; overflow:hidden; }

.lineType1 { background-color:#cacaca; height:1px; overflow:hidden; }

/* 圖片cover */
.gbox { overflow: hidden; }
.gbox .wh { height:100% !important; width:auto !important; }
.gbox .ww { width:100% !important; height:auto !important; }

/* 正方形區塊 */
.SquareBase { position: relative; width:100%; padding-top:100%; }
.SquareBase .SquareArea { position: absolute; top:0px; left:0px; bottom:0px; right:0px; overflow: hidden; } 

.mtop { height:120px; }

/* topnb */
.topnb { position:fixed; top:40px; height:80px; left:0; right:0; transition: top 0.3s; z-index:5; }
/* .topnb .logo { position: absolute; height:60px; top:10px; z-index:100; } */
.topnb .menu { position: relative; z-index:10; text-align:left; padding:10px 0px; padding-left:20px;  overflow: hidden; background-color:#fff; border-radius: 10px; box-shadow: 0px 5px 10px rgba(51,63,72,0.2); }
.topnb .menu img {  max-height:60px; width:auto; }
.topnb .mask { position: absolute; width:100%; height:100vh; top:0; left:0; z-index:5; background-color:rgba(0,0,0,0.5); display: none; }
/* .topnb .menu { position: relative; } */

.topnb .menu .topbtn { position: absolute; top:0; right:0; width:160px; }
.topnb .menu .topbtn button { float:left; border:none; width:80px; height:80px; color:#ffffff;  border-radius: 0px; background-color: #95d600; }
.topnb .menu .topbtn .icon { font-size:1.2rem; }

.topnb .menu .navbar .nav-link { padding:0; padding-right:25px; }
.topnb .menu .navbar .sub1 { color:#474747; }
.topnb .menu .navbar .sub2 { color:#ababab; font-size:0.7rem; }
.topnb .menu .navbar .nav-link:hover > .sub1,
.topnb .menu .navbar .nav-link:hover > .sub2 { color: #ffa400 ; }


/* footer */
.footer { background-color:#333f48; color:#fff; padding:20px 0px; }
.footer .cont { display:flex; font-size:0.9rem; }
.footer .cont > div { flex:1; }
.footer .cont a { color:#fff; text-decoration: none; }
.footer .cont .notice { text-align: left; }
.footer .cont .notice a:hover { border-bottom:1px solid #fff; }
.footer .cont .design { text-align: right; }
.footer .cont .design a:hover { border-bottom:1px solid #fff; }

.fill { background-color: #333f48; }

/* sidebar */
.sidebar { position:fixed; right:-80px; top:50%; transform: translate(0,-50%); color:#fff; z-index:2; transition: right 0.3s; }
.sidebar > div:not(.totop) { background-color: rgba(0, 176, 228,0.8); }
.sidebar > div:not(.link) { width:80px; height:80px; }
.sidebar > div:hover { background-color: #ffa400; opacity: 0.7;  cursor: pointer; color:#ffffff; }
.sidebar > div:hover .num { color:#fff; background-color: #000; }
.sidebar .member, .sidebar .buycar { padding:16px 0px; }
.sidebar .icon { font-size:1.5rem; }
.sidebar .name { margin-top:5px; font-size:0.8rem; font-weight: bold; }
.sidebar .buycar { position: relative; }
.sidebar .buycar .num { position: absolute; top:3px; right:15px; width:24px; height:24px; line-height:24px; border-radius: 50%; color:#ffffff; background-color:#ffa400; font-size:0.8rem; }
.sidebar .totop { padding:28px 0px; }
.sidebar .totop { background-color: #474747; opacity: 0.7; color:#ffffff; }
.sidebar .totop:hover { background-color:#ffa400; color:#ffffff; opacity: 0.7; }
.sidebar .bd { width:20px; border-bottom:1px solid #d1d1d1; position: absolute; top:80px; left:30px; }

.sidebar .link { padding: 20px 0px; font-size:0.75rem; }
.sidebar .link .icon { height: 24px; }
.sidebar .link.up .icon , .bottombar .line { background: url("./images/icon_line.png") no-repeat center center; background-size:contain; }
/* .sidebar .link.up:hover > .icon , .bottombar .contact:hover > .line { background: url("./images/icon_line.png") no-repeat center center; background-size:contain; } */
/* .sidebar .link.down { padding-top: 10px; padding-bottom:20px; } */

.bottombar .contact .line { height: 16px; }

/* bottombar */
.ctlbar { transition: bottom .3s; /*transition-delay: .5s;*/ }
.bottombar { position:fixed; bottom:0px; width:100%; display:flex; z-index:2; }
.bottombar > button { flex:1; padding:12px 0px 4px 0px; border:none; color:#fff; background-color: rgba(0, 176, 228,0.8); }
.bottombar .name { padding-top:2px; font-size:0.8rem; }
.bottombar .icon { font-size:1rem; }
.bottombar .buycar .icon span { position: relative; }
.bottombar .buycar .num { position: absolute; top:-10px; right:-10px; width:16px; height:16px; line-height:16px; border-radius: 50%; color:#ffffff; background-color:#ffa400; font-size:0.7rem; font-weight:normal; }
.bottombar .totop { background-color:#474747; opacity: 0.7; color:#ffffff; padding:21px 0; }
.bottombar .totop:hover { background-color:#ffa400; color:#fff; opacity: 0.7; }
.bottombar > button:hover { background-color: #ffa400; cursor: pointer; color:#ffffff; }
.bottombar > button:hover .num { color:#fff; background-color:#333f48; }

/* modal */
.clickable { cursor: pointer; }
#searchModal .close { position: absolute; right:0px; top:-50px; color:#ffffff; text-shadow:none; opacity: 1; }
#searchModal .modal-dialog { margin:8rem auto; max-width:730px; }
#searchModal .modal-content { border-radius: 0; text-align: left; }
/* .modal .modal-body { padding:14px; } */
#searchModal .modal-body input { border:none; width:calc(100% - 40px); border-right:1px solid #c6c6c6; }
#searchModal .modal-body .fa-search { color:#95d600; width:30px; text-align: right; border:none; background-color:transparent; padding:0px; }
#searchModal .modal-body .fa-search:hover { color:#ffa400; width:30px; text-align: right; border:none; background-color:transparent; padding:0px; }

/* buy car modal */
#buyCarModal .modal-dialog { width:300px; position: absolute; right:0; height:100%; margin:0; border-radius: 0; }
#buyCarModal .modal-header { background-color: #95d600; border-top-left-radius: 0; border-top-right-radius: 0; }
#buyCarModal .modal-header .mTitle { margin:0 auto; color:#ffffff; }
#buyCarModal .closebc { position: absolute; left:-50px; color:#ffffff; border:none; background-color:transparent; font-size:0.8rem; }
#buyCarModal .closebc span { font-size:1.3rem; }
#buyCarModal .modal-content { height:100%; border-radius: 0; }
#buyCarModal .modal-body { position: relative; overflow-y:auto; }
#buyCarModal .bclist { padding:20px 0px; border-bottom:1px solid #f5ece3; }
#buyCarModal .bcimg { height:100%; float:left; }
#buyCarModal .bcimg img { height:64px; width:64px; }
#buyCarModal .bcdes { float:right; width:calc(100% - 64px); padding-left:10px; text-align: left; }
#buyCarModal .bcdes .pType { color:#aeaeae; font-size:0.9rem; padding-top:15px; }
#buyCarModal .bcdes .pSum { font-size:0.8rem; line-height:24px; padding-top:20px; font-family: "Helvetica"; }
#buyCarModal .pPrice { color:#ffa400; font-size:0.8rem; font-family: "Helvetica";  }
#buyCarModal .num { font-size:1rem; }
#buyCarModal .total { text-align:left; padding-top:20px; color:#898989; }
#buyCarModal .modal-footer { border-top:none; }
#buyCarModal .nolist { padding-top:20px; }
button.send { width:100%; border:none; border-radius: 5px; background-color:#333f48; color:#ffffff; padding:10px 0px; }
button.send:hover { background-color:#95d600; }

::-webkit-input-placeholder{ color:#777777; }
/* scrollbar */
.topnb .menu *::-webkit-scrollbar{ display:none; }
.top .topmenu .subject::-webkit-scrollbar { display:none; }

/* product */
.product .pd a { display: block; overflow: hidden; }
.product .pd a img { transition: all .2s ease-out; }
.product .pd a:hover img { transform: scale(1.1);  }

.line_btn_float { position:fixed; right:25px; bottom:100px; z-index:100; }
.line_btn_float .icon { background-color:#06c755; border-radius:50%; width:60px; height:60px; position:relative; cursor:pointer; }
.line_btn_float .icon img { width:36px; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); }

@media (min-width:1200px){
    .bottombar { display: none; }
    .topnb .menu .navbar { position: absolute; right:160px; top:20px; }
    .topnb .menu .topbtn button:hover > .icon { color:#333f48; }
}
@media (max-width:1199.98px){
    .mtop { height:80px; }
    .sidebar { display: none; }
    .topnb { top:0px; height:110px; }
    .topnb .container { max-width: 100%; padding:0px; }
    .topnb .menu { border-radius: 0px; padding-left:15px; overflow: visible; }
    .topnb .menu .nb { width:100%; }
    .topnb .menu .navbar { position: absolute; width:calc(100% - 80px); height:100vh; overflow-y:auto; left:-100%; top:0; background-color:#fff; transition:left 0.3s; align-items: flex-start; }
    .topnb .menu .navbar .submenu { padding:20px; border-bottom:1px solid #f1f1f1; font-size:1.5rem; }
    .topnb .menu .topbtn { width:240px; }
    .topnb .menu .topbtn .nbbtn { width:80px; height:80px; color:#fff; }
    .topnb .menu .topbtn .nbbtn.active { background-color:#333f48; }
    .topnb .menu .topbtn button:not(.nbbtn) { padding:20px 15px; width:80px; height:80px; color:#474747; background-color: #fff; }
    .topnb .menu .topbtn button .icon { font-size:2rem; }
}

@media (min-width:992px) and (max-width:1199.98px){

}

@media (min-width:768px) and (max-width:991.98px){

}

@media (min-width:768px){

    
}

@media (max-width:767.98px){
    .mtop { height:68px; }
    .topnb { top:0px; height:60px; }
    .topnb .container { max-width: 100%; padding:0px; }
    .topnb .menu { border-radius: 0px; padding:10px 0px; padding-left:15px; overflow: visible; }
    .topnb .menu img {  max-height:48px; }
    .topnb .menu .nb { width:100%; }
    .topnb .menu .navbar { position: absolute; width:calc(100% - 68px); height:100vh; overflow-y:auto; left:-100%; top:0; background-color:#fff; transition:left 0.3s; align-items: flex-start; }
    .topnb .menu .navbar .submenu { padding:15px 30px; border-bottom:1px solid #f1f1f1; }
    .topnb .menu .navbar .sub1 { font-size:1.25rem; }
    .topnb .menu .topbtn { width:168px; }
    .topnb .menu .topbtn .nbbtn { width:68px; height:68px; color:#fff; }
    .topnb .menu .topbtn button:not(.nbbtn) { padding:20px 15px; width:50px; height:68px; color:#474747; background-color: #fff; }
    .topnb .menu .topbtn button .icon { font-size:2.5rem; }
    

    .footer .cont { display:block; }
    .footer .cont .notice,
    .footer .cont .design { text-align: center; }
}


@media (max-width:767.98px) {

    
    .topnb .menu .topbtn button .icon { font-size:1.2rem; }

    .footer { padding:30px 0px; }
    .footer .cont > div:not(:last-child) { margin-bottom:5px; }

    .bottombar > div { padding:15px 0px; }
    .bottombar .icon { font-size:1rem; }
    .bottombar .name { font-size:0.7rem; }
    .bottombar .totop { padding:12px 0px; }
    .bottombar .buycar .num { top:-8px; right:-8px; width:16px; height:16px; line-height:16px; font-size:0.6rem; }

}