.text-tc {

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

}



.footer .footer-body p {

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

    line-height: 1.8;

}



.header .top-header .top-menu .collapse li a {

    font-weight: 400;

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important

}



@media (min-width: 992px) {



    .header nav .nav li:before,

    .header nav .nav li:last-child:after {

        width: 1px;

        height: 20px;

    }

}



.main_a a {

    padding: 16px 45px 18px 45px;

}



@media (max-width: 767px) {

    .main_a a {

        padding: 12px 25px 13px 25px;

        font-size: 14px;

    }

}



.header .top-header .top-menu .collapse li a:hover,

.header .top-header .top-menu .collapse li.active a,

.header .top-header .top-menu .collapse li:hover>a {

    color: #ffffffcc;

}



@media (max-width: 991px) {

    .header .logo img {

        transform: scale(0.6);

        position: relative;

        left: -25px;

    }

}



@media (max-width: 991px) {



    .header .top-header .top-menu .navbar-toggler,

    .header nav .navbar-toggler {

        background-color: transparent;

    }



    .header .top-header .top-menu .navbar-toggler .icon-bar {

        background-color: #a39baa;

    }

}



.footer .cpyright p {

    color: #a39baa;

}



@media (max-width: 767px) {

    .footer .cpyright p {

        font-size: 12px;

    }

}



@media (max-width: 767px) {

    .footer .ft_logo img {

        opacity: 0;

    }

}



/*------------------------------*/



.index_s1 p {

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

    line-height: 1.8;

}



.index_s2-txt {

    padding-top: 0px;

}



@media (max-width: 991px) {

    .index_s2-txt {

        padding-bottom: 50px;

    }



    .index_s2-txt .ver-item {

        justify-content: center;

    }

}



@media (max-width: 767px) {



    .index_s2,

    .index_s3 {

        padding: calc(35px + 5vmin) 0;

    }

}



.index_s1,

.services_top-bg {

    background-color: #302738;

    background-image: url(../images/s_top_bg.png);

    -webkit-background-size: 100% 100%;

    -moz-background-size: 100% 100%;

    background-size: cover;

}

/* 

.index_s3-item:hover {

    filter: brightness(1.5);

    transition: all 0.4s ease;

    -moz-transition: all 0.4s ease;

    -webkit-transition: all 0.4s ease;

} */



/*------------------------------*/



.services_top p {

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

    line-height: 1.8;

}



.services_cont-title,

.services_cont-item1-title,

.services_cont-item2-title,

.services_cont-item3-title {

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

}



/*-----------contact------------*/



.contact-section {

    background-color: #2F2337;

    color: white;

}



.contact-header {

    padding: 50px 0;

    border-bottom: 1px solid #ffffff88;

}



.contact-s2 p {

    color: #ffffff;

    font-weight: 300;

}



.address-des {

    padding: 30px 0;

}



.map-container {

    position: relative;

    width: 100%;

    /* 讓地圖寬度填滿容器 */

    padding-top: 56.25%;

    margin-bottom: 40px;

}



@media (max-width: 991px) {

    .map-container {

        padding-top: 100%;

    }

}



.map-container iframe {

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    border: 0;

}



.accordion-header {

    position: relative;

}



.accordion-button {

    background-color: transparent;

    color: white;

    border: none;

    padding: 0;

    text-align: left;

    font-size: 18px;

    font-weight: 300;

    font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

}



.accordion-button::after {

    content: "\f078";

    /* Font Awesome 下箭頭 */

    font-family: "Font Awesome 5 Free";

    font-weight: 900;

    color: white;

    transition: transform 0.2s;

    position: absolute;

    right: 0px;

}



.accordion-button:not(.collapsed)::after {

    /*content: "\f077";*/

    transform: rotate(180deg);

}



.accordion-button:focus {

    box-shadow: none;

    border: none;

    outline: dotted 0px;

    outline: -webkit-focus-ring-color auto 0px;

}



.accordion-item {

    border: none;

    /* padding: 20px 0; */

    border-bottom: 1px solid #ffffff88;

    /* margin-bottom: 30px; */

}



.accordion-item h2 {

    margin-bottom: 0;

}



.accordion-item .accordion-button {

    padding: 20px 0;

    width: 100%;

    display: block;

}



.accordion-button:not(.collapsed) {

    color: #fff;

    background-color: transparent;

}



.accordion-body {

    /*background-color: #3b2b47;*/

    background-color: transparent;

}



.address-box {

    padding: 30px 0;

}



.contact-s3 p {

    color: #ffffff;

    font-weight: 300;

}



.contact-s3 .address-box {

    padding: 0px 0;

    padding-bottom: 30px;

}



.contact-s4 .main_a a {

    border: 1px solid #dadadb;

    color: #dadadb;

}



.contact-s4 {

    padding: 70px 0;

}



.accordion-body a.line-link {

    color: #ddd4e5dd;

}



.accordion-body a.line-link:hover {

    color: #8e82c5;

}



/*----------------about----------------*/



.about-section {

    background-color: #2F2337;

    color: white;

}



.about-s1,

.about-s3 {

    padding: calc(50px + 5vmin) 0;

}



.about-s1 p,

.about-s3 p {

    color: #ddd4e5;

    line-height: 3;

    font-weight: 300;

}



.about-s2 {

    background-color: #D6D6D6;

    padding: calc(50px + 5vmin) 0;

}



.about-s2 p {

    color: #333333;

    line-height: 3;

    font-weight: 300;

}



@media(max-width: 768px) {



    .about-s1 p,

    .about-s2 p,

    .about-s3 p {

        margin-top: 50px;

    }

}



/*--------------menu懸停中文--------------*/



@media (min-width: 992px) {

    .menu-link span {

        /* 預設中文 */

        position: absolute;

        left: calc(50% - 36px);

        right: 0;

        opacity: 0;

        transition: opacity 0.3s ease;

        white-space: nowrap;

        color: #a39baa;

        font-weight: 400;

        font-size: 16px;

        text-transform: uppercase;

        font-family: 'Noto Serif TC', 'Noto Sans TC', 'Microsoft JhengHei', sans-serif !important;

    }



    .header .top-header .top-menu .collapse li a:hover span {

        color: #ffffffcc;

        opacity: 1;

    }



    .header .top-header .top-menu .collapse li a:hover {

        color: transparent;

        /* 將原本的英文隱藏 */

    }



    .menu-link {

        position: relative;

        display: inline-block;

        transition: color 0.4s ease;

    }

}



@media (max-width: 991px) {

    .menu-link span {

        display: none;

    }

}



/*-----------------側邊按鈕------------------*/



.floating-buttons {

    position: fixed;

    right: 20px;

    bottom: 20px;

    z-index: 1000;

}



/* 單個按鈕樣式 */

.floating-buttons .btn {

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 10px;

    border-radius: 100%;

    width: 40px;

    height: 40px;

    line-height: 40px;

    text-align: center;

    font-size: 18px;

    background-color: #7C7086;

    border: 0px solid #ffffff;

    box-shadow: 0px 5px 20px #00000052;

}



/* Top按鈕的特殊樣式 */

.btn-top {

    background-color: #007bff;

    color: white;

}



.floating-buttons .btn img {

    width: 100%;

    height: 100%;

    object-fit: contain;

    transform: scale(1.2);

}



.floating-buttons .btn-top img {

    transform: scale(1.4);

}



.floating-buttons .type-social {

    background-color: #302738;

}



.floating-buttons .btn:hover {

    filter: brightness(1.2);

    transition: all 0.4s ease;

    -moz-transition: all 0.4s ease;

    -webkit-transition: all 0.4s ease;

}



.floating-buttons .type-social:hover {

    filter: brightness(1.5);

    transition: all 0.4s ease;

    -moz-transition: all 0.4s ease;

    -webkit-transition: all 0.4s ease;

}



/*-----------------手機選單--------------------*/



@media (max-width: 991px) {

    .header .top-header .top-menu .navbar-toggler.yes {

        background-color: transparent;

    }



    .header .top-header .top-menu .navbar-collapse .nav li a {

        color: #a39cab;

        font-weight: 600;

        padding: 20px 15px;

    }



    .header .top-header .top-menu nav .navbar-collapse.show {

        top: 0px;

        /* background: #000000cc; */

        padding-top: 15px;

        z-index: 999;

    }



    .header nav .nav {

        text-align: center;

        height: 75vh;

    }



    .header nav .nav li:before,

    .header nav .nav li:after {

        content: '';

        background: #a39cab;

        width: 1px;

        height: 25px;

        display: block;

        position: absolute;

        top: 0;

        bottom: 0;

        margin: auto;

    }



    .header nav .nav li:before {

        left: calc(50% - 85px);

    }



    .header nav .nav li:after {

        left: calc(50% + 85px);

    }

}



@media (max-width: 991px) {

    .floating-buttons {

        right: calc(50vw - 168.7px);

        display: flex;

        justify-content: center;

        flex-wrap: wrap;

        width: 337.4px;

        bottom: calc(35vh - 135px);

    }



    .floating-buttons .btn {

        width: 60px;

        height: 60px;

        margin: 15px 15px;

    }



    .floating-buttons .btn img {

        transform: scale(0.9);

    }



    .floating-buttons .btn.type-social img {

        transform: scale(1.25);

    }



    .floating-buttons .btn-top {

        display: none;

    }

}



/*------------------寬限版----------------------*/



/*@media (min-width: 1360px) {

    body {

        padding-top: 0px;

        width: 1360px;

        margin: auto;

        background: rgb(52, 46, 56);

        box-shadow: rgba(0, 0, 0, 0.314) 0px 0px 40px;

    }



    .header.sticker.stick {

        width: 1360px;

    }

}*/



/*-----------------------------------*/



@media (max-width: 767px) {

    .index_s2-txt p {

        font-size: 14px;

    }

}



@media (max-width: 767px) {

    .services_top p {

        font-size: 14px;

        line-height: 2;

    }

}



@media (max-width: 767px) {

    .about-section .txt-18 {

        font-size: 14px;

    }

}