@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url("./public/googlefont/MaterialIcons-Regular.eot"); /* For IE6-8 */
    src: local('Material Icons'),
        local('MaterialIcons-Regular'),
        url("./public/googlefont/MaterialIcons-Regular.ttf") format('truetype');
}

.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;  /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    vertical-align: middle;
  
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
  
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
  
    /* Support for IE. */
    font-feature-settings: 'liga';
}


body { background-color:#f3f5f7; font-size:16px; text-align: center; font-family: "Arial","微軟正黑體","Microsoft JhengHei", serif; }
img { width:100%; }
html * { max-height: 9999999px; }
a { color:#262626; text-decoration: none; }
a:hover { color:#f77f00; text-decoration: none; }
.Title1 a { color:#002855; }
.Title1 a:hover { color:#f77f00; }
button { border:none; background:transparent; }
ul,li { margin:0; padding:0; list-style-type:none; }

/* 自定義區塊 */
.BaseBD { position: relative; width:100%; }
.BaseImgS { padding-top:46.85%; }
.BaseBnr { padding-top:56.327%; }
.Base169 { padding-top:56.25%; }
.Base11 { padding-top:100%; }
.BaseArea { position: absolute; top:0px; left:0px; bottom:0px; right:0px; overflow: hidden; }

/* 圖片cover */
.imgCoverBox { overflow: hidden; }
.imgCoverBox .wh { height:100% !important; width:auto !important; }
.imgCoverBox .ww { width:100% !important; height:auto !important; }

.PageTitle { position: relative; display: inline-block; font-size:2rem; color:#002855; padding-bottom:15px; }
.TitleBD { position: absolute; left:50%; transform: translate(-50%,0px); bottom:0px; width:74px; height:4px; background-color:#002855; }

.main { width:100%; text-align:left; }
.Title1 { color:#002855; font-size:1.5rem; }
.Date1 { font-size:0.875rem; color:#9daeb6; }
.Date2 { font-size:0.875rem; color:#68838d; }
.Desc1,.Cls1 { color:#68838d; }
.FontType1 { font-family: "Tahoma"; }
/* .Truncate { text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp:2; -webkit-box-orient: vertical; overflow: hidden; } */

.HashTag { display: inline-block; color:#00b4d8; font-size:0.9375rem; margin-right:14px; }
/* 圖片標記 */
.Mark { font-size:0.875rem; position: absolute; left:0; top:0; background-color:#6bb226; color:#fff; padding:0px 10px; }
.Mark.intxt { position: relative; display: inline-block; top:-5px; margin-right:10px; }

/* icon */
.CenterArea { display: inline-flex; justify-content: center; align-items:center; }
.IconArea { vertical-align: middle; height:24px; }
.IconArea .material-icons { float:left; }
.LineIcon img { width:16px; }

.RowItems .ColBD { margin-top:40px; text-align:left; }
.RowItems .ColItem .BaseBnr { margin-bottom:20px; }
.RowItems .ColItem .ItemInfo { display: flex; justify-content: space-between; padding:7px 2px; margin-bottom:20px; border-top:1px solid #9daeb6; border-bottom:1px solid #9daeb6; }
.RowItems .ColItem .ItemInfo .Cls1 { font-size:0.9375rem; }
.RowItems .ColItem .Title1 { margin-bottom:10px; }
.RowItems .ColItem .Desc1 { margin-bottom:15px; }

.LinkType1 { font-size:1.125rem; display: inline-flex; align-items:center; padding:6px 25px; color:#fff; background-color:#00b4d8; border-radius: 25px; }
.LinkType1._BG2 { background-color:#0096c7; }
.LinkType1._BG3 { background-color:#c6c6c6; }
a.LinkType1:hover { background-color:#f77f00; color:#fff; }

.nodata { text-align: center; padding:40px 0px; color:#919191; font-size:1.5rem; }
.nodata .emotion { font-size:6rem; padding-bottom:60px; }

/* 高度設定 */
.mh3 { height:3px; overflow:hidden; }
.mh5 { height:5px; overflow:hidden; }
.mh8 { height:8px; overflow:hidden; }
.mh10 { height:10px; overflow:hidden; }
.mh15 { height:15px; overflow:hidden; }
.mh20 { height:20px; overflow:hidden; }
.mh30 { height:30px; overflow:hidden; }
.mh40 { height:40px; overflow:hidden; }
.mh60 { height:60px; overflow:hidden; }
.mh80 { height:80px; overflow:hidden; }
.mh_index_top { height:50px; }
.mh_index_bottom { height:120px; }

.BD1 { border-bottom:1px solid #aebbc2; }
.BD2 { border-bottom:1px solid #9daeb6; }

.BG1 { background-color:#0096c7; }
.BG2 { background-color:#004a86; }
.BG3 { background-color:#002855; }

/* button.send { width:160px; font-size:1.125rem; border:none; border-radius: 10px; background-color:#004a86; color:#fff; padding:10px 0px; }
button.send:hover { background-color:#f77f00; }
button.back { float:right; padding:10px 20px; background-color:#3e6679; color:#fff; border-radius:5px; width:160px; border:none; }
button.back:hover { background-color:#8026a6; color:#fff; }
button.back i { font-size:1.5rem; float:left; } 
button#change { border:none; color:#00b4d8; background:transparent; margin:7px 0px; } */

/* form element */
form label { color:#004a86; font-size:1rem; margin-bottom:8px; }
form .form-group { margin-bottom:1.5rem; }
form .form-control { border-radius:0; background-color:#f6f6f6; }
form .form-control:focus { box-shadow:none; border-color:#303030; }
form .form-control:disabled, .form-control[readonly] {
    background-color: #919191;
    border:none;
    color:#fff;
}
form .birth { position: absolute; right:25px; top:42px; color:#474747; border:none; background-color:transparent; }
form .change { margin-top:8px; margin-left:15px; }
/* form .space { margin-bottom:25px; } */
/* input,select,textarea { font-size:0.875rem; width:100%; background-color:#fff; border:1px solid #c6c6c6; padding:10px 10px; } */
input::-webkit-input-placeholder { font-size:0.875rem; }
input::-moz-placeholder { font-size:0.875rem; }
#SecurityImg { width:auto; height:38px; vertical-align: top; }
#change { color:#004a86; }
button.send { width:100%; background-color:#0096c7; color:#fff; border-radius: 50px; padding:8px 0px; }
button.send:hover { background-color:#f77f00; }

/* checkbox basic */
.check { display: inline-block; position: relative; padding-left: 30px; margin-bottom: 0px; cursor: pointer; font-size: 1rem; color:#004a86; overflow:hidden; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.check.type2 { color:#474747; font-size:1rem; }
.check input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; display:none; }/* Hide the browser's default checkbox */
.checkmark { position: absolute; top: 4px; left: 4px; height: 18px; width: 18px; background-color: #eee; border-radius:3px; }/* Create a custom checkbox */
.check:hover input ~ .checkmark { background-color: #ccc; }/* On mouse-over, add a grey background color */
.check input:checked ~ .checkmark { background-color: #004a86; }/* When the checkbox is checked, add a blue background */
.checkmark:after { content: ""; position: absolute; display: none; }/* Create the checkmark/indicator (hidden when not checked) */
.check input:checked ~ .checkmark:after { display: block; }/* Show the checkmark when checked */
.check .checkmark:after { left: 5px; top: 0px; width: 7px; height: 13px; border: solid white; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }/* Style the checkmark/indicator */

input[type="number"] { -moz-appearance: textfield; }
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button { -webkit-appearance: none; margin:0; }

.search::-webkit-input-placeholder{ color:#474747; font-size:0.9375rem; }

/* select 改變按鈕圖示 */
select { -webkit-appearance: none; -moz-appearance: none; background: url("./images/arrow.png") no-repeat center center; background-position:calc(100% - 20px) 50%; background-color:#fff; }
select.none { background-image:none; }
/* ie remove arrow */
select::-ms-expand { display: none; }

/* scrollbar */
.EditContent::-webkit-scrollbar { width: 16px; } /* this targets the default scrollbar (compulsory) */
.EditContent::-webkit-scrollbar-track { background-color: #e6e6e6; } /* the new scrollbar will have a flat appearance with the set background color */
.EditContent::-webkit-scrollbar-thumb { background-color: #666666; } /* this will style the thumb, ignoring the track */
.EditContent::-webkit-scrollbar-button { background-color: transparent; display: none; } /* optionally, you can style the top and the bottom buttons (left and right for horizontal bars) */

/* header */
header .topnav { height:64px; display: flex; justify-content: space-between; }
header .topnav.active { background-color:#fff; }
header .logo { margin-left:40px; padding-top:11px; }
header .logo img { width:auto; height:42px; }
header .topInfo { display: flex; align-items:center; }
header .topInfo a { margin-right:25px; }
header .topInfo button { color:#fff; height:64px; padding:0px 15px; }
header .topInfo button:hover { background-color:#f77f00; }
header .topInfo button:not(.BG3) span { margin-right:6px; }
header .topInfo button.menu { width:64px; z-index:10; }
header .topInfo button.menu span { font-size:2rem; }

header .menuMask { display: none; position: fixed; left:0; right:0; top:0; bottom:0; background-color:rgba(0,0,0,0.8); z-index:5; }
header .menuMask.active { display: block; }
header .topmenu { display: none; text-align:left; position: absolute; top:0px; right:64px; width:700px; background-color:#fff; z-index:10; max-height:100vh; overflow:auto; }
header .topmenu .area1 { padding:10px 25px; font-size:1.25rem; border-bottom:1px solid #e2e2e2; }
header .topmenu .area1.menuLogo { padding:15px 25px; }
header .topmenu .area1 img { height:30px; width:auto; }
header .topmenu .area2 { padding:35px 25px; border-bottom:1px solid #e2e2e2; }
header .topmenu .area2 .CenterArea .material-icons { margin-right:5px; }
header .topmenu .area2 form { margin-bottom:20px; padding:5px; background-color:#f6f6f6; border:1px solid #c6c6c6; }
header .topmenu .area2 form input { border:none; background-color:#f6f6f6; width:calc(100% - 50px); }
header .topmenu .area2 form button { vertical-align: middle; height:26px; color:#004a86; }
header .topmenu .area2 .keyword { color:#919191; font-size:0.9375rem; margin-bottom:5px; }
header .topmenu .area2.footerLink a { display: inline-block; margin-bottom:25px; }

footer { background-color:#000; }
footer .area1 { padding:40px 0px; border-bottom:1px solid #262626; }
footer .area2 { padding:30px 0px; color:#fff; font-size:0.9375rem; }
footer form { display: flex; justify-content: center; align-items:center; text-align:left; }
footer form label { color:#fff; margin-right:10px; font-size:1.125rem; }
footer form input { width:500px; background:transparent; border:none; padding:18px 20px; border-bottom:1px solid #00b4d8; color:#fff; }
footer form input::-webkit-input-placeholder { color:#e2e2e2; }
footer form .submit { width:60px; height:60px; border:1px solid #00b4d8; color:#00b4d8; border-radius: 50px; margin-left:20px; }
footer form .submit:hover { background-color:#00b4d8; color:#fff; }
footer form .cancel { padding:17px 20px; margin-left:50px; border:1px solid #919191; color:#919191; border-radius: 50px; }
footer form .cancel:hover { background-color:#919191; color:#fff; }

footer .info { text-align:left; color:#fff; }
footer .info a { color:#fff; }
footer .info > div:not(:last-child) { margin-bottom:5px; }
footer .link { display: inline-flex; justify-content: flex-end; text-align:left; margin-right:30px; border-left:1px solid #262626; }
footer .link > div { margin-left:80px; }
footer .link a { display: inline-block; color:#fff; margin-bottom:5px; }
footer .link a:hover { color:#f77f00; }

.sidebar { position: fixed; right:30px; bottom:20vh; }
.sidebar .totop { width:48px; height:48px; padding:12px; background-color:#004a86; color:#fff; border-radius:25px; }
.sidebar .totop:hover { background-color:#f77f00; }

.bottombar { display: none; }

.modal .closeButton { position: absolute; right:0px; top:-40px; color:#ffffff; text-shadow:none; opacity: 1; font-size:1rem; font-weight: normal; }
.modal .closeButton .material-icons { float:left; font-size:22px; }
.modal-backdrop.show { opacity: .8; }

#searchModal .modal-dialog { margin:8rem auto; max-width:730px; }
#searchModal .modal-content { border: none; border-radius: 0; background-color:transparent; text-align: left; }
#searchModal .modal-body { padding:0; }
#searchModal .modal-body form { background-color:#fff; padding:1rem; }
#searchModal .modal-body input { border:none; width:calc(100% - 45px); padding:0; }
#searchModal .modal-body .IconArea { color:#004a86; }
#searchModal .modal-body .keyword { color:#919191; font-size:1rem; margin-right:15px; width:100px; white-space: nowrap; }

.loginModal .modal-dialog { margin-top:8rem; max-width:560px; }
.loginModal form input { border:1px solid #919191; background-color:#f6f6f6; }
.loginModal button.send { background-color:#262626; }
.loginModal .forgetPage { display: none; }
.loginModal .loginPage .title { text-align:center; display:flex; background-color:#fff; }
.loginModal .loginPage .title a ,
.loginModal .forgetPage .title { text-align:center; flex:1; padding:15px; color:#fff; background-color:#262626; font-size:1.25rem; }
.loginModal .loginPage .title .active { cursor: default; background-color:#fff; color:#262626; }
.loginModal .loginPage .login,
.loginModal .loginPage .join,
.loginModal .forgetPage .forget { padding:30px; text-align: left; max-height:75vh; overflow: auto; }
.loginModal .loginPage .check { margin-top:8px; }

.loginModal .bottomLink { margin-top:20px; }
.loginModal .bottomLink a { color:#004a86; }

.loginModal .loginPage .join { display: none; }
.loginModal .loginPage .content { margin-bottom:30px; color:#474747; }
.loginModal .loginPage .join .mhjoin { height:10px; }

#ContentModal .modal-dialog { margin-top:8rem; }
#ContentModal .modal-dialog .modal-header { font-size:1.5rem; justify-content: center; }
#ContentModal .modal-dialog .modal-body { max-height:60vh; overflow: auto; }
#ContentModal .modal-dialog .modal-footer form { max-width:350px; margin-left:auto; margin-right:auto; }

/************************** map rwd **************************/
.map-responsive{
    overflow:hidden;
    padding-bottom:480px; /* map height */
    position:relative;
    height:0;
}
.map-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

@media ( max-width:1399.98px ){
    header .topInfo a { margin-right:15px; }
    header .topInfo button { padding:0px 10px; }
}

@media ( max-width:1199.98px ){
    .topInfo .topLink { display: none; }
    header .logo { margin-left:15px; }
    header .topInfo button:not(.menu) { display: none; }

    footer .link { margin-right:10px; }
    footer .link > div { margin-left:25px; }

    .sidebar { display: none; }
    .bottombar { display: flex; position: fixed; bottom:0; left:0; right:0; }
    .bottombar > button { flex:1; padding:10px 0px; color:#fff; }
}

@media ( max-width:991.98px ){
    .RowItems .ColItem .ItemInfo { margin-bottom:10px; }
    .RowItems .ColItem .Desc1 { margin-bottom:10px; }

    footer form { display: block; }
    footer form input { width:calc(100% - 180px); padding:0px; }
    footer form .submit { width:40px; height:40px; margin-left:10px; }
    footer form .cancel { padding:0px 10px; margin-left:10px; }
}

@media ( max-width:767.98px ){
    .PageTitle { font-size:1.5rem; }
    .PageTitle .TitleBD { width:45px; height:2px; }

    .mh_index_top { height:30px; }
    .mh_index_bottom { height:100px; }

    .Title1 { font-size:1.125rem; }
    .LinkType1 { font-size:1rem; }
    .Mark.intxt { top:-2px; }

    header .logo { padding-top:17px; }
    header .logo img { height:30px; }

    header .topmenu { width:calc(100% - 64px); }
    header .topmenu .area1 { padding:10px 15px; }
    header .topmenu .area2 { padding:35px 15px; }

    .RowItems .ColBD { margin-top:30px; }
    .RowItems .ColItem .ItemInfo { font-size:0.875rem; }
    .RowItems .ColItem .Title1 { font-size:1.25rem; }

    footer .area1 { padding:20px 0px; }
    footer .foot-logo { max-width:80%; }
    footer .info { margin-top:20px; }

    .bottombar button .icon { height:24px; }
    .bottombar button .name { font-size:0.875rem; }
}

@media ( max-width:575.98px ){}

@media ( min-width:576px ){}

@media ( min-width:768px ){}

@media ( min-width:992px ){
    footer .foot-logo { padding:0px 20px; }
}

@media ( min-width:1200px ){}

@media ( min-width:1400px ){
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl { 
        max-width: 1320px;
    }
}