body { font-size:16px; text-align: center; background-color: #fff;/*font-family: "Arial", "微軟正黑體", "Microsoft JhengHei";*/font-family: '微軟正黑體', Helvetica, Arial, Heiti TC, "メイリオ", sans-serif;}
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; }*/
.SquareArea.gbox .wh{overflow:hidden;}
.SquareArea.gbox img.wh{transform:scale(1,1);transition: all 1s ease-out;}
.SquareArea.gbox img.wh:hover{transform:scale(1.2,1.2);}



/* 正方形區塊 */
.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:0; width:100%; }
.topnb .toparea { height:88px; text-align:left; background-color: #fff; position: relative; z-index:100; }
.topnb .toparea .logo { width:auto; height:52px; margin:18px 0px; }
.topnb .toparea .btns > div { display: inline-block; }
.topnb .toparea .btns .icon { color:#919191; padding-right:8px; }
.topnb .toparea .btns .content { color:#1294c6; }
.topnb .toparea .btns .lan { margin-left:45px; }
.topnb .toparea .btns .lan a { text-decoration: none; color:#fff; }
.topnb .toparea .btns .lan li:hover a { color: #ffffff;}
.topnb .toparea .btns .lan .content { font-size:0.875rem; }
.topnb .toparea .btns .lan .submenu { display:none; position: absolute; list-style-type: none; padding:0; }
.topnb .toparea .btns .lan img { width:auto; padding-left:5px; }
.topnb .toparea .btns .tel { margin-left:30px; }
.topnb .toparea .btns .tel .loc { color:#ababab; font-size:0.875rem; }
.topnb .toparea .btns .tel .content { font-size:1rem; text-decoration: none; }
.topnb .toparea .pattern { float:right; margin:28px 0px; }
.topnb .toparea .pattern i { width:32px; height:32px; background-color:#1294c6; border-radius: 25px; color:#fff; font-size:0.8rem; text-align: center; padding:10px 0px; margin-left: 10px; }
.topnb .toparea .pattern i:hover { background-color: #00507d;color: #fff;cursor: pointer;
    box-shadow: rgba(99, 99, 99, 0.3) 0px 2px 4px 0px;transition: all .3s; }

.topnb .menu { height:60px; background: linear-gradient(#b0e0ff, 15%, #1294c6); }
.topnb .menu .nb { width:100%; display:block; }
.topnb .menu .navbar-nav { width:100%; }
.topnb .menu .nav-item { flex:1; }
.topnb .menu .nav-item .nav-link { padding:16px 0px 17px 0px; color:#fff;  font-size:1.125rem; /*border-left:1px solid #3ac9d9; border-right:1px solid #1294c6;*/ white-space: nowrap;border-width: 1px;
border-style: solid;border-image: linear-gradient(to bottom,rgba(0, 0, 0, 0), #f9f9f9, rgba(0, 0, 0, 0)) 1 100%; }
.topnb .menu .nav-item .nav-link a { color:#fff; text-decoration: none; }a
.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 .mbtns { position: absolute; top:0px; right:0px; }
.topnb .mbtns button { width:88px; height:88px; font-size:1.5rem; border:none; padding:0px; background-color: transparent; border-radius: 0px; float:left; }
.topnb .mbtns .topbtn{  background: linear-gradient(#b0e0ff, 15%, #1294c6); color:#fff; }
.topnb .mbtns .topbtn.active { background-color:#00507d; color:#fff; }
.topnb .mbtns .mbtn { color:#ababab; width:100px; }

.topnb .menu .navbar .submenu ul {  list-style-type: none; padding:0; }
.topnb .menu .navbar .submenu a { text-decoration: none; color:#fff; }



/* footer */
.footer {background: url(./images/bg-body-0.png) repeat-y;background-position-y: 2.1em; background-color:#fff;}
.footer .fbg { height:80px; color:#ffffff; font-size:1.5rem; padding:155px 0px; background: url(./images/conact-0.jpg) no-repeat;background-size: cover; background-position: top 0px  center;display: flex;justify-content: center;align-items: center;}
.footer .contact { display: flex; padding:55px 15px; }
.footer .contact > div { flex:1; }
.footer .contact .icon { width:40px; height:40px; background-color:#fff; border-radius: 25px; color:#919191; border:1px solid #919191; text-align: center; vertical-align: middle; padding:12px 0px; }
.footer .contact td { vertical-align: top; text-align: left; }
.footer .contact td .loc,.footer .contact td .num { color:#1294c6; padding-left:20px; }
.footer .contact td .loc { font-size:0.875rem; color:#919191; }
.footer .contact td .num { font-size:1.5rem; display: block; text-decoration: none; }
.footer .contact .telno td .num:hover { color:#00507d; }
.footer .contact td .num1 { padding-bottom:20px; }
.footer .contact .email button { width:100%; border:none; background-color:#1294c6; border-radius: 40px; padding:10px 0px; color:#fff; }
.footer .contact .email button:hover {background-color: #00507d;color: #fff;cursor: pointer;box-shadow: rgba(99, 99, 99, 0.3) 0px 2px 4px 0px;transition: all .3s; }
.footer .contact .email div { color:#474747; font-size:0.875rem; }

.footer .bottombg { background-color:#f6f6f6; }
.footer .bottom { display: flex; padding:40px 15px; }
.footer .bottom > div { flex:1; }
.footer .bottom > div a { color:#fff; text-decoration: none; }
.footer .bottom .pos { text-align: left; }
.footer .bottom .pos .loc { margin-bottom:10px; color:#3ac9d9; }
.footer .bottom .pos .addr { font-size:0.875rem; margin-bottom:10px; color:#262626; }
.footer .bottom .pos .icon { display: flex; justify-content: flex-start; align-items:center; }
.footer .bottom .pos .pic { display: inline-block; width:32px; height:32px; color:#fff; background-color:#919191; padding:5px 0px; margin-right:5px; text-align: center; border-radius:50px; font-size:1.25rem; }
.footer .bottom .pos .pic:hover { background-color: #00507d; color:#1294c6; }
.footer .bottom .pos .lineImg { background: url("./images/line.png")no-repeat center center; background-size:20px; background-color:#666666;transition: all 0.5s 0s ease; }
.footer .bottom .pos .lineImg:hover { background:url("./images/line.png")no-repeat center center; background-size:20px; background-color:#00507d; }
.footer .bottom .doc { text-align: right; font-size:0.875rem; color:#919191; }
.footer .bottom .doc > div { margin-bottom:5px; }
.footer .bottom .doc a { color:#474747; text-decoration: none; }
.footer .bottom .doc a:hover { color:#00507d; }

/* .footer { background-color:#66493d; font-size:0.875rem; color:#ffffff; padding:20px 0px; }
.footer .content { position: relative; }
.footer .content .design a { color:#ffffff; text-decoration: none; }
.footer .notice { position: absolute; top:0px; right:60px; }
.footer .notice a { color: #ffffff; text-decoration: none; }
.footer .content a:hover { color:#bd9f77; cursor: pointer; } */

/* sidebar */
.sidebar { position:fixed; right:-80px; top:70%;/* background-color: rgba(255,255,255,0.8);*/ color:#66493d; z-index:2; transition: right 0.3s; }
.sidebar > div { width:60px; height:60px; margin-right: 8px;}
.sidebar > div:hover { background-color: #00507d;color: #fff;cursor: pointer;box-shadow: rgba(99, 99, 99, 0.3) 0px 2px 4px 0px;transition: all .3s; }
/* .sidebar .buycar:hover { color:#66493d; } */
/* .sidebar > div:hover .num { color:#bd9f77; 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:#bd9f77; font-size:0.8rem; } */
.sidebar .buycar,.sidebar .totop { padding:18px 0px; }
.sidebar .totop { background-color: #9d9d9d; opacity: 1; color:#ffffff; border-radius: 50%;}

.sidebar .line_btn { margin-top:20px; }
.sidebar .line_btn .icon { background-color:#06c755; border-radius:50%; width:60px; height:60px; position:relative; cursor:pointer; }
.sidebar .line_btn .icon img { width:36px; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); }
.sidebar .line_btn:hover { background-color:transparent; box-shadow: none; }

/* 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:8px 0px 6px 0px;  color:#fff; background-color: rgba(67,67,67,0.8); border-right: solid 1px #fff ;border:none;}
.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:24px; height:24px; line-height:24px; border-radius: 50%; color:#ffffff; background-color:#bd9f77; font-size:1rem; font-weight:normal; } */
.bottombar .totop { background-color:#1294c6; color:#fff; padding:21px 0px; }
.bottombar > button:hover { background-color: #00507d; cursor: pointer; color:#fff; }
.bottombar .totop:hover { color:#FFF; }
/* .bottombar .buycar:hover { color:#66493d; } */
/* .bottombar > button:hover .num { color:#bd9f77; background-color:#ffffff; } */

/* modal */
#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:#1294c6; width:30px; text-align: right; border:none; background-color:transparent; padding:0px; }
#searchModal .modal-body .fa-search:hover { color:#00507d; width:30px; text-align: right; border:none; background-color:transparent; padding:0px; }

::-webkit-input-placeholder{ color:#777777; }
/* scrollbar */
.topnb .menu *::-webkit-scrollbar{ display:none; }
.top .topmenu .subject::-webkit-scrollbar { display:none; }
/*
.line_btn_float { position:fixed; right:8px; bottom:80px; 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 .toparea .btns .content:hover { color:#00507d; cursor: pointer; }
    .topnb .toparea .btns .lan:hover > .submenu { display:block; }
    .topnb .toparea .btns .lan .submenu { background-color: #00507d; color:#fff; z-index:1; text-align:center; }
    .topnb .toparea .btns .lan .submenu li { padding:10px 30px; border-bottom:1px solid #1294c6; }
    .topnb .toparea .btns .lan .submenu li:hover { background-color:#002c56; color:#ffffff; #1294c6 solid 1px; cursor: pointer; }

    .topnb .menu .nav-item .submenu .nav-link { padding:0px; border: none; display: flex; font-size:1rem; justify-content: space-between; }
    .topnb .menu .navbar-nav {/*border-left:1px solid #5bade1; border-right:1px solid #3ac9d9;*/ }
    .topnb .menu .navbar-nav > .nav-item { position: relative; }
    .topnb .menu .navbar .submenu { text-align:left; background-color: #002c56; color:#fff; }
    
    .topnb .menu .navbar .nav-item .submenu .icon { padding:5px 0px; padding-left:20px; color:rgba(255,255,255,0.4); font-size:0.75rem; }
    .topnb .menu .navbar .nav-item .submenu { display: none; position: absolute; left:0; }
    .topnb .menu .navbar .nav-item .submenu1 { background-color: #00507d; }
    .topnb .menu .navbar .nav-item .submenu2 { left:100%; top:0; background-color:#002c56; }
    .topnb .menu .navbar .nav-item .submenu3 { left:100%; top:0; background-color:#000; }

    .topnb .menu .navbar .bdb { display: none; position: absolute; left:0; right:0; bottom:0px; height:3px; background-color:#00507d; z-index:2; }
    .topnb .menu .navbar .nav-item:hover > .submenu { display: block; }
    .topnb .menu .navbar .marea .nav-item > .submenu { display: block; }
    .topnb .menu .navbar .nav-item:hover > .bdb { display: block; }
    .topnb .menu .navbar .submenu li { min-width:221.5px; padding:10px 20px; border-bottom:1px solid #1294c6; transition: all .3s;}

    .topnb .menu .navbar li:hover { cursor: pointer;background: linear-gradient(to top, #eff0f1, #fff); }
    .topnb .menu .navbar li:hover > .nav-link > a { color:#00507d; transition: all .3s;}
    .topnb .menu .navbar .submenu li:hover { background-color:#002c56; border-bottom:1px solid #1294c6; cursor: pointer; }
    .topnb .menu .navbar .submenu2 li:hover { background-color:#000; border-bottom:1px solid #002c56; }
    .topnb .menu .navbar .submenu3 li:hover { background-color:#000; border-bottom:1px solid #002c56; }
}

@media (max-width:1199.98px){
    .topnb button.mbtn.toplan {background-color:#fff;color: #1294c6;}
    .topnb button.mbtn.toplan:hover {background-color:#00507d;color: #fff;}
    .sidebar > div { display: none; width:40px; height:40px; }
    .sidebar > .line_btn { display:block; }
    .sidebar { top:auto; bottom:70px; }
    .sidebar .line_btn { margin-right:10px; margin-top:0px;  }
    .sidebar .line_btn .icon { width:40px; height:40px; }
    .sidebar .line_btn .icon img { width:24px; }
    
    .topnb .menu { background:transparent; height:0; }
    .topnb .toparea { height:60px;box-shadow: rgba(0, 0, 0, 0.35) 0px 0px 10px;}
    .topnb .toparea .logo { height:40px; margin:10px 0px; position: absolute; left:30px; }
    .topnb .mbtns button { width:60px; height:60px; font-size:1.5rem; }
    .topnb .mbtns .mbtn { width:60px; font-size:1.5rem; }
    .topnb .menu .navbar { position: absolute; width: 100%; left:0; background-color:#1294c6; z-index:10; }
    .topnb .menu .navbar .navbar-nav { text-align:left; padding-bottom:40px; overflow-y:auto; height:calc(100vh - 60px); }
    .topnb .menu .navbar .nav-link { padding:30px 0px; font-size:2.5rem; border:none; }
    .topnb .menu .navbar .icon { margin-right:25px; padding:10px 0px; }
    .topnb .menu .navbar .submenu { display: none; }
    .topnb .menu .nav-item { flex:none; }
    .topnb .menu .navbar .nav-item .nav-link { padding:20px 0px; margin:0px 60px; font-size:1.5rem; border-bottom:1px solid #70c4f9; display:flex; justify-content: space-between; align-items: center; }
    .topnb .menu .navbar .nav-item .nav-link a:hover { color:#ffffff; }
    .topnb .menu .navbar .nav-item .nav-link.active { border-bottom:none; }

    .topnb .menu .navbar .submenu1 {  background-color:#00507d; }
    .topnb .menu .navbar .submenu2 { background-color:#002c56; }
    
    .topnb .mnav { display:none; position: absolute; background-color:#1294c6; width:100%; padding:60px 30px; text-align: left; }
    .topnb .mtel .tel { font-size:1.5rem; background-color: #1294c6; padding:10px 15px; border-radius:40px; }
    /* .topnb .mtel .tel:first-child { margin-bottom:40px; } */
    .topnb .mtel .tel .icon,.topnb .mtel .tel .loc { color:#00507d; }
    .topnb .mtel .tel .icon { padding-right:10px; }
    .topnb .mtel .tel .content { color:#fff; }

    .topnb .toparea .btns .lan .submenu { display:block; }
    .topnb .toparea .btns .lan .submenu { background-color: #1294c6; color:#fff; z-index:1; text-align:center; }
    .topnb .toparea .btns .lan .submenu li { padding:10px 30px; }
    .topnb .toparea .btns .lan .submenu li:hover { background-color:#00507d; color:#fff; border-bottom:none; cursor: pointer; }

    .topnb .mlan .lan { display: block; color:#fff; padding:15px 0px; font-size:1.5rem; border-bottom: 1px solid #20ace1; text-decoration: none; }
}

@media (max-width:1199.98px){
     .footer .fbg {height: 0px;font-size: 1.25rem;padding: 85px 0px;background-position: top 0px center;}
}
@media (min-width:992px) and (max-width:1199.98px){
   
}

@media (min-width:768px) and (max-width:991.98px){
    .footer .contact td .loc, .footer .contact td .num {padding-left: 20px;padding-right: 20px;}
    .footer .contact td .num {font-size: 1.25rem;}
    .topnb .toparea .btns .lan,.topnb .toparea .btns .tel { margin-left:10px; }
    .topnb .toparea .btns .icon { font-size:0.875rem; }
    .topnb .toparea .btns .tel .loc { font-size:0.8rem; }
    .topnb .toparea .btns .tel .content { font-size:0.875rem; }
    .topnb .menu .nb .nav-item .nav-link { font-size:1.25rem; padding:19.5px 0px; } */

    
    .footer .contact .telno,.footer .contact .faxno { flex:3; }
    .footer .contact .email { flex:2; }

    .footer .bottom .pos { padding-right:20px; }
    .footer .bottom .pos .pic { margin-right:3px; }
}

@media (max-width:767.98px){
    
    .footer .fbg {font-size: 1rem;padding: 60px 0px;background-position: top 0px center;}
    .topnb .mlan .lan { padding:15px 0px; font-size:1rem; }
    
    .topnb .toparea { height:60px; }
    .topnb .toparea .logo { left:5px; }
    .topnb .mbtns button { width:60px; height:60px; font-size:1.2rem; }
    .topnb .mbtns .mbtn { width:60px; }
    .topnb .menu .navbar .navbar-nav { padding-bottom:40px; height:calc(100vh - 60px); }
    .topnb .menu .navbar .nav-link { padding:20px 0px; font-size:1.25rem; }
    .topnb .menu .navbar .icon { float:right; }

    .topnb .menu .navbar .icon { margin-right:10px; padding:4.5px 0px; }
    .topnb .menu .navbar .submenu { display: none; }
    .topnb .menu .navbar .nav-item .nav-link { display: block; margin:0px 30px; font-size:1.25rem; }

    
    .topnb .mnav { padding:30px 15px; }
    .topnb .mtel .tel { font-size:1rem; padding:10px 15px; }
    
    .footer .contact, .footer .bottom { display: block; }
    .footer .bottom .pos .icon { justify-content: center; }
    .footer .contact .telno,.footer .contact .faxno { display: flex;justify-content: center; }
    .footer .bottom .pic { font-size:1.5rem;  }
    .footer .bottom .pic:not(.last) { margin-right:10px; }
    .footer .bottom .pos { margin-bottom:40px; }
    .footer .bottom  div { text-align: center; }
    

    .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:-10px; right:-10px; width:18px; height:18px; line-height:18px; font-size:0.7rem; }

    .modal .modal-dialog { margin:8rem auto; max-width:540px; width:90%; }
}