@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap');

:root {
    --square-color1: #00B9E1;
    --square-color2: #FFA841;
    --square-color3: #65BCAC;
    --square-color4: #B41F03;
    --square-color5: #585858;
    
    --tag-color1: #00479d;
    --tag-color2: #eb6100;
    
    --pdf-color: #A40000;
    --border-bottom-color: #858a91;
    
    

}
*, *::before, *::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    list-style: none;
    list-style-type: none;
    text-decoration: none;
    line-height: 1.5 !important;
    letter-spacing: .12rem !important;
    word-spacing: .16rem !important;
}


/* scrollbar */                    
::-webkit-scrollbar {
  width: 7px;
}
::-webkit-scrollbar-button {
  background: transparent;
  border-radius: 4px;
}
::-webkit-scrollbar-track-piece {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.4);
  border: 1px solid slategrey;
}
::-webkit-scrollbar-track {
  box-shadow: transparent;
}
/* scrollbar */

a {
  text-decoration: none; 
  color: inherit; 
  background: none; 
  border: none; 
  outline: none; 
}

a:focus, a:hover, a:active, a:visited {
  text-decoration: none;
  color: inherit;
  outline: none;
}

/*
a {
  text-decoration: none;
} 
*/

button {
  -webkit-appearance: none;
  border-radius: 0;
  text-align: inherit;
  background: none;
  box-shadow: none;
  padding: 0;
  cursor: pointer;
  border: none;
  color: inherit;
  font: inherit;
}                          



html {
    font-size: smaller;                
}
body {
    font-family:Microsoft JhengHei, Noto Sans TC, sans-serif;
    font-size: 1rem;              
    color:#363636;            
}
.body_bg {
    background-image: url(../images/body_bg.png);
    background-repeat: repeat;
}
h1, h3, h5 {                  
    font-weight:bolder;
}
h1{
    width:fit-content;
    padding: 1rem 1rem 1rem 0;
}
h2 {
    font-size:1.4rem;
}
h3 {
    font-size:2.5rem;
    margin:0;
}
.fs-5 {
    font-size: 1.2rem !important;
}
.title_bg {
    background-size: cover;
    background-position: center;
    padding: 4% 0;
}
.news_bg {
    background-image: url(../images/news_bg.png);
}
/*
.title_bg {
    background-image: url(./images/highlight_bg.png);
}
*/
.project_bg {
    background-image: url(../images/project_bg.png);
}
.activity_bg {
    background-image: url(../images/activity_bg.png);
}
.card_bg {
    background-image: url(../images/card_bg.png);
}

legend {
    float: initial;
    text-align:center;
}
/* 導覽列 */
.xunjia_nav {
    position: sticky;
    top: 0;
    z-index: 3;
    padding:0 4.5%;
} 
.nav_top {
    position:relative;
}         
.nav-link {
    text-align:center;
}
.navbar-nav .nav-link div{
    text-wrap:nowrap;
    font-size:1.25rem;
    font-weight:bolder !important;

}                         
.navbar-nav {
    width:100%;
    justify-content: flex-end;
    
}
.navbar {
    position: absolute;
    width: 100%;
    z-index:3;
    background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important;
    top: 80%;
    
}
.pc_link {
    display:none;
}
.pc_link a{
    color:#000 !important;
}
/* 導覽列 */
.xunjia_index_container, .xunjia_container , .firm_agree{
    width:90%;      
    /*padding:5px;*/
    margin:auto;
    overflow: hidden;    
}
.xunjia_container {
    margin:6.5% auto 100px;
    border-radius: 1.3rem;    
    
}                     
.xunjia_container a {
    color: inherit;
    text-decoration: inherit;
}
.xunjia_container a:hover {
    color: inherit;                  
}
.xunjia_container table{
    width:100%;
    border: 1px solid #a7a7a7;
    vertical-align: middle;
    border-collapse: collapse;
    overflow-wrap: anywhere;
}
.xunjia_container table tr:nth-child(odd) {
    background: #f8f8f8;
}
.xunjia_container table tr:nth-child(even) {
    background: #fff;
}
.xunjia_container table th {  
    color: #000;
    text-align: left;
    text-wrap: nowrap;
    border-right: 1px solid #a7a7a7;
    
}                      
.xunjia_container table tr:hover td {
    background: #fff3e3;
}
.xunjia_container table th, .xunjia_container table td {
    border-bottom: 1px solid #a7a7a7;
    padding: 10px 10px;     
}                    
.xunjia_container table tr:nth-last-child(1) th, .xunjia_container table tr:nth-last-child(1) td {
    border-bottom: 0px;
}
.xunjia_container > .border, .page_members_container > .border {
    border-radius: 1.3rem;
}
.activity_container table th{
    width:10%;
}
.activity_container .card {
    border-radius: 1.3rem;
    overflow:hidden;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
.card-img_container {
    overflow:hidden;
}
.activity_container .card, .activity_container .card img {
    transition:0.7s;
}

.activity_container .card:hover {
    transform: translateY(-10px);
    box-shadow:rgba(0, 0, 0, 0.12) 0px 3px 8px;
}


.activity_container .card:hover img {
    transform: scale(1.1);
}
.activity_container .card-title {
    min-height:48px;
    font-weight:bolder;
}                             
.noteTag{
    color:#858a91;
}
.noteTag_BT {
    color:#b5bac1;
    border-top:1px solid #f5f5f5;
    padding-top: 1rem;
} 
.fix_members_container, .page_members_container {
    max-width:400px;
    width:90%;
    margin:auto;
    
}
.fix_members_container {
    background: white;
    border-radius:1.3rem;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    box-shadow: rgba(0, 0, 0, 0.7) 5px 5px 8px;
    
}
.fix_members_container > div{
    border:0px !important;
}
.fix_background {
    display:none;
    width:100%;
    height:100vh;
    position: fixed;
    z-index: 5;
    top:0;
    background: #00000054;
}
.page_members_container {
    margin:40px auto 100px; 
    background-color: #fff;
}

.members_features {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    border-bottom: 1px solid var(--bs-gray-500);
    padding-bottom:10px;
}
.members_features_content {
    max-height:750px;
    overflow: auto;
    height: 60vh;
}                   
.members_features_content > div {
    margin-top: var(--bs-gutter-y);
}
.members_features .title{
    font-size:1.8rem;
    font-weight:bolder;
}

.detail_container {
    border: 1px solid #a7a7a7;
    background-color: #fff;
}

.auth_imageTD_group {
    height:115px;   
    display:flex;
    flex-direction: column;
}
.auth_imageTD_group img{
    border:1px solid #ced4da;
    border-radius: 0.25rem;
}
.refresh_code {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width:200px;         
}
.refresh_code > a{
    padding-top:10px;
}

/* footer */
.footer_line1 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.footer_line1 .fs-5 {
    width: 630px;
}
/*
.footer_info {
    padding-left: 84px;
}
*/


.fix_button {
    position: fixed;
    bottom: 15%;
    right: 5%;
}
.fix_button i{ 
    font-size: 3rem;
} 
/* footer */
/* 通用 */
.text_justify {
    text-align: justify; /* bootstrap沒有 */
}
.section_title {
    margin-bottom:2rem;
}
.section_title > *{
    margin:auto;
    width:fit-content;
    position: relative;
}
.section_title > *:before, .section_title > *:after {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.section_title > *:before {
    left:-2rem;
    background:var(--square-color1);
}
.section_title > *:after {
    right:-2rem;
    background:var(--square-color2);
}
.normal_title {
    padding: 4% 0 0;
}
.bg_w {
    background-color: #fff;
}
.fa-user-o {
    font-size:1.8rem;
    position: relative;
}
.close_icon {
    position: absolute;
    font-size: 2rem !important;
    right: -7px;
    top: -14px;
    cursor:pointer;
}

.view_eye_group {
    position:relative;
}
.open_eye, .close_eye{       
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    width: 1.2rem;
    height: 1.2rem;
    padding:15px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.xunjia_lineClamp{
    display: -webkit-box;
    -webkit-line-clamp: 2; 
    -webkit-box-orient: vertical;  
    overflow: hidden;
}      
.width_fit {
    width:fit-content !important;
}
.chlid_con {
    border-radius: 10px;
    text-align: center;
    padding: 25px 15px;
}
.circle_con {
    padding: 15px 45px;
    width: fit-content;
    border-radius: 60px;
    margin: auto;
}
.square_con {
    padding: 2.5px 11px;
}

.tag_color1 {
    background-color: var(--tag-color1);
}
.tag_color2 {
    background-color: var(--tag-color2);
}     
.btn-secondary, .btn-primary, .btn-success, .btn-warning, .btn-danger, .btn-pdf {
    color: #000;
    background-color: #fff;
    border-width: 2px;
}
.btn-warning:hover {
    color: #fff;
}
.btn-pdf {
    border-color: var(--pdf-color);
}
.btn-pdf:hover {
    border-color: var(--pdf-color);
    background-color: var(--pdf-color);
    color: #fff !important;
}

.fa-angle-left, .fa-angle-right {
    font-size:1.2rem;
    padding: 1.5px 10px;
    background: black;
    border-radius: 50%;
    color: white;                    
}
.action_btn {
    font-size: 1.1rem;
    max-width: 270px;
    color: #fff !important;
    font-weight: bolder;
    text-align: center;
    padding: 0.5em 1rem;
}
.icon_btn {
    cursor: pointer;
    background-color: #fff;
    border: 2px solid;
    font-size: 1.1rem;
    max-width: 270px;
    font-weight: bolder;
    text-align: center;
    padding: 0.5em 1rem;
    border-radius: .25rem;
    
}
.more_btn {
    display:inline-block;
    border:1px solid black;
    padding: 0.5rem 1.2rem;
}
.pagination .disabled {
    pointer-events: none;
}


.affidavit_content {
    background-color: #fff;
    max-height:500px;
    overflow: scroll;
    overflow-x: hidden;
    border: 1px solid #000;
    padding: 1rem;
}            
.ul_1 > li{
    list-style: decimal !important;
    list-style-type: decimal !important;
}
.ul_2{
    counter-reset: my-counter; 
    list-style: none; 
    padding-left: 0;
}
.ul_2 > li, .ul_4 > li{
    counter-increment: my-counter; 
    position: relative;
    padding-left: 1.5rem; 
}
.ul_2 > li::before, .ul_4 > li::before {
    
    position: absolute;
    left: 0;
}
.ul_3 > li{
    list-style: lower-alpha;
}
.ul_4{
    counter-reset: my-counter; 
    list-style: none; 
    padding-left: 0;
}
.ul_2 > li::before {
    content: "(" counter(my-counter) ")"; 
}
.ul_4 > li::before {
    content: "(" counter(my-counter, lower-alpha) ")";
}
.ul_trad {
    padding-left: 3.5rem;
}
.ul_trad > li{
    list-style: trad-chinese-informal;
}
/* 通用 */

/**/
.div_table_border{
    border: 1px solid #a7a7a7;
}                                                           
.div_tr, .div_td  .d-flex {
    flex-direction: column;
}
.div_tr {
    display:flex;
    border-bottom: 1px solid #a7a7a7;
    padding: 1rem;
}                     
.div_td{
    flex-grow:1;
}
.div_td_img {
    max-width:100%;
}
.div_td_content{
    margin-left:0;
    margin-top: 1rem;
    flex-grow: 1;
}

.div_tr:not(:first-child) {
    margin-top:40px;
}
.pagination .page-item {
    min-width: 2rem;
    text-align: center;
}
.pagination .page-item ~ .active {
    border-bottom: 3px solid;
} 



/**/
                 
@media (min-width: 350px) { 
    .auth_imageTD_group {
        height:50px;
        flex-direction: row;
    }
    .refresh_code {
        align-items: flex-end;
    }
    .refresh_code > a{
        padding-top:inherit;
    }
}                 
@media (min-width: 400px) {
    html {
        font-size: medium;
    }
    .fix_members_container {
        
    }
    /*
    .auth_imageTD_group {
        height:50px;
        flex-direction: row;
    }
    */

}
@media (min-width: 768px) {
    h1 {
        padding:1rem;
    }        
    /*
    .xunjia_index_container, .xunjia_container {
        width:70%;
    }
    */
    .pc_link {
        font-size: 1.2rem;font-weight: 700;
        display:block;
    }
    .xunjia_container {
        margin:6.5% auto 100px;
    }    
    .div_td_img {
        max-width: 200px;
        min-width: 200px;
    }
    .div_td_content{
        margin-left:1rem;             
        margin-top: 0rem;
    }
                                      
}               
@media (min-width: 992px) {
    h2 {
        font-size:1.5rem;
    }                     
    .xunjia_nav {
        position: relative;
    } 
    .nav_top .navbar-toggler, .nav_hid {
        display:none;
    }
    .navbar {
        position: relative;
        top:0;
    }
    .navbar-nav .nav-link div{
        min-height: 45px;
        display: flex;
        align-items: center;
    }
    .fa-user-o {
        margin-top:-5px;
    }
    

    .members_features_content {
    
        height: 80vh;
    }        
}   

@media (min-width: 1200px){
    .xunjia_index_container, .xunjia_container {
        width:70%;
    }          
} 
   
@media (max-width: 1300px){
    
    .navbar-nav .nav-link div{
        font-size:1.1rem;
        font-weight:bolder !important;
    } 
}
@media (max-width: 1232px) {
    .footer_info {
        padding-left: 0px !important;
    }
}    
@media (max-width: 768){
    .action_btn {
        width: fit-content;
    }
}
.bg_initial {
    background: initial !important;
}