/*
@font-face {
    font-family: 'huninn';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('./public/font/jf-openhuninn-2.0.ttf') format('truetype');
}
*/

body { font-size:16px; text-align: center; font-family: "Arial", "Noto Sans TC", "微軟正黑體","Microsoft JhengHei", serif;/* background: url("./images/bg_bubble.png") repeat left top fixed;*/ }
img { width:100%; }
html * { max-height: 9999999px; }

/* 圖片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; } 

/* topnb */
.topnb { position:fixed; top:0px; height:auto; background-color:#fff; width:100%; z-index:10; transition: top 0.3s;/*box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 7px;*/ }
.topnb .logo { position: absolute; z-index:100; left:30px; 
/*background: url(./images/bg_logo.png) no-repeat top center;*/
background-size:contain; transition: 0.5s; background-position-y: -1rem; }

/*.topnb .logo img {padding-top: 10px;width: 5.5rem;}*/
/*.topnb .logo img {padding-top: 10px;width:auto;}*/

/* .topnb.inside { background-color:#fdd000; } */
/* .topnb .logo { position: absolute; left:120px; height:60px; margin:10px 0px; width:auto; z-index:5; display: none; } */
.topnb.inside .logo { display: block; }
.topnb .menu { position: relative; }
.topnb .menu .navbar { margin-left: 260px; margin-right:160px; }
.topnb .menu .navbar-nav { font-weight:600; }
.topnb .menubd { position: absolute; width:100%; height:1px; background-color:#c6c6c6; bottom:0; z-index:5; }
.topnb .mlan { position: absolute; background-color:transparent; display: none; }
.topnb .mlan .lan { display:block; padding:10px 20px; color:#1d2088; text-decoration: none; font-size:0.875rem; }
/* .topnb .mlan .lan:hover { background-color:#1d2088; color:#fdd000; } */

/* dropdown menu */
.topnb .menu .nav-item .dp_menu { display:none; position: absolute; text-align:left; background-color:#342f2f; min-width:3rem; padding:0px; }
.topnb .menu .nav-item .dp_menu li { list-style-type: none; padding:10px 15px; }
.topnb .menu .nav-item .dp_menu a { text-decoration: none; color:#303030; cursor: pointer; }


.topnb .menu .topbtn { float:left; padding:0px; margin:0px; width:80px; height:80px; display: none; }
.topnb .menu .submenu { }
.topnb .menu .submenu .nav-link { color:#303030; padding:28px 15px; }
/*.topnb .menu .submenu .nav-link:hover { color:#1d2088; }*/

.topnb .menu .submenu .subitem { position:relative; display:none; }
.topnb .menu .submenu .subitem .ii { position:absolute; top:0; left:0; background-color:#bd2148; padding: 15px 15px; 
    border-bottom-left-radius: 5px;  
    border-bottom-right-radius: 5px;
}
.topnb .menu .submenu .subitem a { color:#fff; text-decoration:none; white-space: nowrap; }
.topnb .menu .submenu .subitem a:hover { color:#ffff88; }

.topnb .menu .dropdown .dropdown-toggle::after { display:none; } /* delete dropdown arrow */

.topnb .mbtns { position: absolute; top:0px; right:0px; z-index:5; }
.topnb .mbtns .mbtn.inside { background-color:#fdd000; }

.topnb .mbtns .dropdown .dropdown-menu { margin:0; padding:0; border-radius: 0; background-color:#342f2f; border:none; box-shadow:0 4px 8px 0 rgba(0,0,0,0.2); min-width:3rem; }
.topnb .mbtns .dropdown .dropdown-menu .dropdown-item { padding:10px 15px; color:#474747; }
.topnb .mbtns .dropdown .dropdown-menu .dropdown-item:hover { background-color: #8a7457; }
.topnb .mbtns .dropdown:hover { background-color: #342f2f; }
/*.topnb .mbtns .mbtn,
.topnb .mbtns .dropdown { float:left; color:#bd2148; border:none; width:50px; height:80px; padding:0px; margin:0px; background-color:transparent; }*/

.topnb .mbtns .mbtn,.topnb .mbtns .dropdown {float: left;color: #bd2148;border: none;padding: 0.65rem;margin: 0px;background-color: transparent;border: solid 1px #bd2148;border-radius: 99em;display: flex;margin: 1.25rem .65rem; }

.topnb .mbtns .mbtn:hover{color:#ffffff; background-color: #bd2148;-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);
    -webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;}
/*.topnb .mbtns .mbtn:hover{color:#ffffff; background-color: #bd2148;border-radius: 99em;width: 50px;height: 50px;margin-top: 1rem;-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);
    -webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;}*/

/* footer */
.footer { background-color:#fff; padding:40px 0px; }
.footer .name { color:#bd2148; text-align:left; font-size:1.25rem; margin-bottom:20px; }
.footer .cont { font-size:0.875rem; color:#474747; } /* display:flex; */
/* .footer .cont > div { flex:1 0 auto;  } */
.footer .cont > div div { margin-bottom:10px; }
.footer .cont .notice { text-align: left; }
.footer .cont .notice a:hover { border-bottom:1px solid #fff; }
.footer .cont .notice .num { font-family: "Helvetica"; color:#474747; text-decoration: none; }
.footer .cont .notice .num.tel:hover { color:#1d2088; }
/* .footer .cont .design { text-align: right; } */
.footer .cont .design a { color:#474747; text-decoration: none; border-bottom:1px solid #474747; }
.footer .cont .design .isun { border-bottom: none; }
.footer .cont .design a:hover { color:#1d2088; border-bottom:1px solid #1d2088; }
.footer .cont .design .isun:hover { border-bottom:none; }

.footer .icon { display: flex; align-items: center; }
.footer .icon a { width:46px; height:46px; border-radius: 50px; background-color:#ffffff; color:#bd2148; padding-top:10px; font-size:1.5rem; margin:0px 5px;border: solid 1px #bd2148; }
.footer .icon a:hover { background-color:#bd2148; color:#ffffff;border: solid 1px #bd2148; }
.footer .icon a:hover{-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;-webkit-transition-property: color, background-color;
transition-property: color, background-color;}
.footer .icon .lineImg { background:url("./images/icon_line.png") no-repeat center center; background-size:24px; background-color:#fff; }
.footer .icon .lineImg:hover { background:url("./images/icon_line-b.png") no-repeat center center; background-size:24px; background-color:#bd2148; }

.footer .icon a {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
  background: #ffffff;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.footer .icon a:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /*background: #bd2148;*/
  border-radius: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}


.footer .icon a:hover, .footer .icon a:focus, .footer .icon a:active {
  color: white;
}

.footer .icon a:hover:before, .footer .icon a:focus:before,.footer .icon a:active:before
 {
  -webkit-transform: scale(2);
  transform: scale(2);
}



/* .fill { background-color: #66493d; } */

/* sidebar */                                                                                           
.sidebar { position:fixed; right:0px; top:50%;background-color: rgba(184,28,34,0.8); color:#ffffff; z-index:2; transition: right 0.3s;border-radius:99em; }
.sidebar > div { width:80px; height:80px;border-radius: 99em; }
.sidebar > div:hover { background-color: rgba(184,28,34,0.8); cursor: pointer; color:#ffffff; }
/*.sidebar > div:hover { background-color: #1d2088; opacity: 0.8; cursor: pointer; color:#fdd000; }*/
/* .sidebar .buycar:hover { color:#1d2088; } */
.sidebar > div:hover .num { background-color: #ffffff; }
.sidebar .member { padding:16px 0px; }
.sidebar .icon { font-size:1.5rem; }
.sidebar .member .name { font-size:0.8rem; font-weight: bold; }
.sidebar .buycar { position: relative; }
.sidebar .buycar .num { position: absolute; top:13px; right:15px; width:24px; height:24px; line-height:24px; border-radius: 50%; color:#ffffff; background-color:#000000; font-size:0.8rem; }
.sidebar:hover .buycar .num{color: #ffffff;background-color: #000000;}
.sidebar .buycar,.sidebar .totop { padding:28px 0px; }
/*.sidebar .totop { background-color: #fdd000; opacity: 0.8; color:#1d2088; }*/
.sidebar .totop { background-color: #e07f13; opacity: 0.8; color:#ffffff; }
.sidebar .member .bd { width:20px; border-bottom:1px solid #d1d1d1; position: absolute; top:80px; left:30px;display:none; }
.sidebar .totop {color: #ffffff;opacity:1.0;}

/* bottombar */
.ctlbar { transition: bottom .3s; /*transition-delay: .5s;*/ }
.bottombar { position:fixed; bottom:0px; width:100%; display:flex; z-index:2; }
.bottombar > button { flex:1 0 auto; padding:12px 0px 4px 0px; border:none; color:#bd2148; background-color: rgba(255,255,255,0.8); }
.bottombar > button.totop { flex:0 0 12%; }
.bottombar .name { padding-top:2px; font-size:0.8rem; }
.bottombar .icon { font-size:1rem; }
.bottombar .lineme .icon .line { display:inline-block; width:20px; height:16px; background:url(images/icon_line.png) no-repeat center center/auto 16px; }
.bottombar .lineme:hover .icon .line { background-image:url(images/icon_line-b.png); }
.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:#000000; font-size:0.7rem; font-weight:normal; }
.bottombar .totop { background-color:#e07f13; color:#ffffff; padding:21px 0; }
.bottombar > button:hover { background-color: #bd2148; opacity: 0.8; cursor: pointer; color:#ffffff; }
.bottombar .buycar:hover { color:#ffffff; }
.bottombar > button:hover {-webkit-transform: perspective(1px) translateZ(0);transform: perspective(1px) translateZ(0);-webkit-transition-duration: 0.3s;transition-duration: 0.3s;-webkit-transition-property: color, background-color;transition-property: color, background-color;}
.bottombar > button:hover .num { background-color:#000000;/*border: solid 1px #fdd000;*/color:#ffffff;}

/* 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:#1d2088; width:30px; text-align: right; border:none; background-color:transparent; padding:0px; }
#searchModal .modal-body .fa-search:hover  { color:#83b938; }

/* buy car modal */
#buyCarModal .modal-dialog { width:300px; position: absolute; right:0; height:100%; margin:0; border-radius: 0; }
#buyCarModal .modal-header { background-color: #e07f13; 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 #f7f0e7; }
#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.875rem; padding-top:15px; }
#buyCarModal .bcdes .pSum { font-size:0.75rem; line-height:24px; padding-top:20px; font-family: "Helvetica"; }
#buyCarModal .pPrice { color:#2e2b2b; font-size:0.75rem; 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: solid 1px #bd2148; border-radius: 5px; background-color:#ffffff; color:#bd2148; padding:10px 0px; }
button.send:hover { background-color:#bd2148; color:#ffffff; }
button.send:hover { -webkit-transform: perspective(1px) translateZ(0);transform: perspective(1px) translateZ(0);-webkit-transition-duration: 0.3s;transition-duration: 0.3s;-webkit-transition-property: color, background-color;transition-property: color, background-color; }

::-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);  }



.topnb .logo img {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  width: 14rem;
  padding-top: 10px;
}

.topnb .logo img:hover , .topnb .logo img:focus , .topnb .logo img:active {
 -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

.line_btn_float { position:fixed; right:8px; 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 .mbtns { right:30px; }
    .topnb .mbtns .btnlan:hover { background:url("./images/img_lan.png") no-repeat center bottom; }
    .topnb .mbtns .btnlan:hover > .mlan { display: block; }
    .topnb .menu .nb { width:100%; display:block; }
    .topnb .menu .dropdown:hover .dropdown-menu { display:block; }
    .topnb .menu .nav-item ul { padding:0px; }
    /* .topnb .menu .navbar-nav > .nav-item:hover > .dp_menu { display:block; } */
    .topnb .menu .nav-item .dp_menu .dp_menu { white-space: nowrap; left:100%; top:0; }
    .topnb .menu .nav-item .dp_menu li:hover { background-color: #8a7457; }
    .topnb .menu .nav-item:hover > .nav-link { color:#1d2088; }
    .topnb .mbtns .menuno { display: none; }

    .topnb .mlan { right:125px; top:80px; transform:translate(+50%); }
    .topnb .mlan .lan { display:block; padding:10px 20px; color:#1d2088; text-decoration: none; font-size:0.875rem; }
    .topnb .mlan .lan:hover { background-color:#1d2088; color:#fdd000; }

    .topnb .menu .submenu .nav-link:hover {background-color: #bd2148;color: #ffffff;-webkit-transform: perspective(1px) translateZ(0);transform: perspective(1px) translateZ(0);-webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;-webkit-transition-property: color, background-color;transition-property: color,background-color;}
    
    .topnb .menu .submenu:hover .subitem { display: block; }
    .topnb .menu .submenu:hover .subitem .ii { }
    .topnb .menu .submenu.active { background-color: #bd2148;color: #ffffff; }
    .topnb .menu .submenu.active .subt a.nav-link { color:#fff; } 

}

@media (max-width:1399.98px){
    /*
    .topnb .logo { left:30px; }
    .topnb .mbtns { right:30px; }
    */
}

@media (max-width: 991.98px) {
    .topnb .logo { left:15px; }
}

@media (max-width:1199.98px){
    .topnb .menu .navbar { margin-left: 0px; margin-right:0px; }
    .sidebar { display: none; }
    /* .topnb .logo img {  height:40px; margin:10px 0px; } */

    .topnb { height:80px; }
    .topnb .mbtns .mbtn { width:80px; height:80px; border-radius: 0px; background-color:#fff; color:#474747; font-size:1.5rem;display: block;margin: 0;border: none; }
 .topnb .mbtns .mbtn:hover {border: none; }
    


    .topnb .menu { -ms-overflow-style: none; }
    .topnb .container { max-width:100%; padding:0px; }
    .topnb .nb { display:none; position: absolute; width:100%; height:100vh; left:0px; top:0px; background-color:#fff; }
    .topnb .menu .navbarItems { position: absolute; left:0px; width:100%; height:100vh; padding-bottom:60px;  transition-property:left,right; transition-duration:.3s; overflow-y:auto; overflow-x:hidden; }
    .topnb .menu .navbarItems .nav-link { padding:0px; display: inline-block; }
    .topnb .menu .navbarItems .nav-item { font-size:1.5rem; padding:22px 0px; margin:0px 60px; border-bottom:1px solid #cccccc; text-align:left;  }
    .topnb .menu .navbarItems .nav-item .dp_menu { display:block; position: absolute; top:0px; width:100%; height:90vh; background-color:#fff; z-index:1; overflow-x:hidden; padding-bottom:100px; }
    .topnb .menu .navbarItems .nav-item .dp_menu ul { padding:0px; }
    .topnb .menu .navbarItems .nav-item .dp_menu li:not(.bk) { font-size:1.5rem; margin:0px 60px; padding:22px 0px; border-bottom:1px solid #cccccc; text-align:left; }
    .topnb .menu .navbarItems .nav-item .dp_menu .bk { font-size:1.5rem; margin:0px 60px; padding:22px 0px; }
    .topnb .menu .navbarItems .nav-item .dp_menu .bk:hover { cursor: pointer; }
    .topnb .menu .navbarItems .nav-item .dp_menu .bk .back a { color:#ababab; }
    /* .topnb .menu .navbarItems .nav-item .dp_menu li a { display:block; }  */

    .topnb .mlan { top:80px; left:0; right:0px; }
    .topnb .mlan .lan { padding:20px; font-size:1rem; }

    .topnb .menu .submenu .icon { float:right; font-size:2rem; padding-right:30px; }
    .topnb .menu .submenu .icon:hover { cursor: pointer; }
    .topnb .menu .submenu .name { color:#8a7457; font-size:1.7rem; }
    .topnb .menu .submenu .pn { font-family:"Helvetica"; }
    .topnb .menu .submenu .date { color:#ababab; font-size:1.2rem; }
    
}

@media (min-width:992px) and (max-width:1199.98px){
    /* .topnb .logo img {  max-height:54px; margin:3px 0px; } */
}

@media (min-width:768px) and (max-width:991.98px){
    .logo img { padding:10px; }
    /* .topnb .logo img {  max-height:30px; margin:15px 0px; } */
    /* .topnb .menu .submenu .nav-link { padding:28px 10px;  } */
    /* .footer .cont .notice > div { padding-right:20px; } */
}


@media (min-width:768px){
    

    /* .footer .content .design { display:none; } */
    .footer .content .design { text-align: right; margin-right:60px; }
}

@media (max-width:767.98px) {
    .topnb { height:60px; }
    .topnb .logo { left:10px; }
    .topnb .logo img {width: 10.5rem; padding-top:8px; }
    
    .topnb .menu .topbtn { height:60px; width:60px; }
    .topnb .mbtns .mbtn,
    .topnb .mbtns .dropdown { height:60px; width:60px; font-size:1.5rem; }

    .topnb .mlan { top:60px; }

    .topnb .menu .submenu .icon { font-size:1.5rem; padding:3px 0px; padding-right:15px; }
    .topnb .menu .submenu .name { font-size:1rem; }
    .topnb .menu .submenu .date { font-size:1rem; }
    .topnb .menu .navbarItems { padding-bottom:60px; }
    .topnb .menu .navbarItems .nav-item { font-size:1.25rem; padding:15px 0px; margin:0px 30px;  }
    .topnb .menu .navbarItems .nav-item .dp_menu li:not(.bk) { font-size:1.25rem; margin:0px 30px; padding:15px 0px; }
    .topnb .menu .navbarItems .nav-item .dp_menu .bk { height:60px; font-size:1rem; margin:0px 30px; padding:18px 0px; }

    .bottombar > div { padding:15px 0px; }
    .bottombar .icon { font-size:1rem; }
    .bottombar .name { font-size:1rem; }
    .bottombar .totop { padding:12px 0px; }
    .bottombar .buycar .num { top:-8px; right:-8px; width:16px; height:16px; line-height:16px; font-size:0.6rem; }

    .modal .modal-dialog { margin:8rem auto; max-width:540px; width:90%; }

    .footer { padding:30px 0px; }
    .footer .name { margin-bottom:10px; }
    /*
    .footer .cont { display:block; }
    .footer .cont .design { text-align: center; }
    */
    .footer .cont > div:not(:last-child) { margin-bottom:20px; }
}