@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

html,
html *:not(i),
body,
body *:not(i) {
    font-family:
        "Roboto",
        "Noto Sans TC",
        "Open Sans",
        "新微軟正黑體",
        "Microsoft JhengHei",
        "微軟正黑體",
        sans-serif;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

header .logo a {
    padding: 5px 0 10px 0;
}

.header_sticky .logo a {
    padding: 5px 0 10px 0;
}

header .logo img {
    max-height: 80px;
}

.header_sticky .logo a img {
    max-height: 60px;
}

.header_style_15 .header_bottom {
    background-color: transparent;
}

.header_sticky {
    background-color: rgb(255 255 255 / 90%);
}

.header_style_15 .header_top {
    border: unset;
}

.owl-pagination .owl-dot.active {
    border-color: var(--main-color-3);
}

#pre_loading .loading_images_layer {
    background-size: 150px auto;
}

#pre_loading .background_color_layer {
    background-image: url(/userfiles/images/common/loading_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.link_list ul {
    list-style: none;
    padding: 0;
    margin: 0 -5px;
    display: flex;
}

.link_list ul li {
    list-style: none;
    margin: 0;
    padding: 0 5px;
}

.link_list ul li a {
    font-size: 14px;
    text-decoration: none;
    letter-spacing: 0.5px;
    font-weight: 500;
    line-height: normal;
    color: #ffffff;
}

.footer_layout_16 .footer_bottom {
    padding: 0 0 20px 0;
    background-color: transparent;
}

.footer_layout_16 .footer_bottom hr {
    border-color: #ffffff;
    background-color: #ffffff;
    margin: 0 0 20px 0;
}

.footer_layout_16 .social_info ul {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.footer_layout_16 .social_info ul li {
    text-align: right;
}

.footer_layout_16 .social_info ul li:first-of-type {
    width: 100%;
}

.footer_layout_16 .social_info ul li i {
    display: none;
}

.footer_layout_16 .copy_right {
    text-align: left;
    font-size: .9rem;
    opacity: 90%;
}

.footer_layout_16 .social_icon ul {
    margin: 0 -8px;
}

.footer_layout_16 .social_icon ul li {
    padding: 0 8px;
    margin-bottom: 0;
}

.footer_layout_16 .social_icon ul li a {
    font-size: 22px;
    border: unset;
    width: auto;
    height: auto;
    opacity: 80%;
}

.footer_layout_16 .social_icon ul li a:hover {
    color: #ffffff !important;
    background-color: transparent !important;
    opacity: 100%;
}

.footer_layout_16 .link_list ul {
    justify-content: flex-end;
}

.header_fixed .nav-toggler .toggler-btn .line {
    background-color: #208b7b;
    height: 1.5px;
}

header.dropdown .mobile_wrap {
    background: #208B7B;
    background: linear-gradient(135deg, rgba(32, 139, 123, 95%) 0%, rgba(46, 84, 245, 95%) 100%);
}

.toggler-btn .line:nth-of-type(1) {
    top: 1.5px;
}

.toggler-btn .line:nth-of-type(3) {
    top: calc(100% - 1.5px);
}

.header_mobile_navbar .header_mobile_menu .menu,
.header_mobile_navbar .header_mobile_menu .menu>.m_1 {
    color: var(--bs-white);
}

.header_mobile_navbar .header_mobile_menu .submenu {
    background-color: rgb(13 37 125 / 20%);
}

.header_mobile_navbar .header_mobile_menu .submenu .m_2 {
    color: var(--bs-white);
}

.owl-carousel .owl-nav button.owl-prev {
    left: -55px;
}

.owl-carousel .owl-nav button.owl-next {
    right: -55px;
}

.top_section .navigation-field>li>a {
    padding: 15px 25px 14px 25px;
    font-size: 1.1rem;
}

.banner-content {
    padding: 160px 0 160px 0 !important;
    position: relative;
    z-index: 1;
    height: 42vh;
}

.breadcrume_section {
    padding: 15px 0 0 0;
    background-color: transparent;
}

.banner-content h2 {
    letter-spacing: 5px;
    font-size: 2.8rem;
    color: #011d5c;
    margin-top: 2px;
}

.image_header.inner_banner_mask:after {
    opacity: 0;
}

.swiper-container .swiper-slide::before,
.image_header::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgb(255, 255, 255);
    background: linear-gradient(180deg, rgb(255 255 255 / 80%) 0, rgba(255, 255, 255, 0) 100%);
    z-index: 1;
}

.swiper-container .swiper-slide::before {
    height: 50%;
    background: linear-gradient(180deg, rgb(255 255 255 / 90%) 0, rgba(255, 255, 255, 0) 100%);
    z-index: 2;
}

.swiper-fade .swiper-slide {
    height: 90vh !important;
}

.swiper-content {
    padding: 120px 0 55px 0;
    z-index: 5;
    max-width: 1440px;
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    border-color: var(--bs-white);
    opacity: 60%;
    width: 18px;
    height: 18px;
    border-width: 2px;
    margin: 0 10px;
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet-active,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet-active {
    background-color: var(--bs-white);
    opacity: 100%;
}

.swiper-button-prev,
.swiper-button-next {
    color: var(--bs-white);
    background-color: transparent;
    border: 2px solid var(--bs-white);
    width: 55px;
    height: 55px;
    font-size: 20px;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
    color: var(--bs-dark);
    background-color: var(--bs-white);
    border-color: var(--bs-white);
}

.page_pages .pageMain {
    padding: 3rem 0;
}

.banner-text-shadow {
    text-shadow: unset;
}


.main-ttl-box-2 .more-btn-box .btn-default {
    padding: 11px 12px 10px 14px;
}

.custom-wrap-box>.more-btn-box .btn-default {
    padding: 16px 40px 15px 40px;
    font-size: 1.1rem;
}

footer[class*=footer_layout] {
    background-color: var(--bs-gray-300);
}

.footer_layout_16 .footer_logo .logo_item:not(:first-child) {
    margin-left: 15px;
}

.footer_layout_16 .footer_logo .logo_item:first-child img {
    max-height: 80px;
}

.footer_layout_16 .footer_logo .logo_item:nth-child(2) img {
    max-height: 72px;
}

.footer_layout_16 .footer_bottom hr {
    border-color: var(--bs-dark);
    background-color: var(--bs-dark);
}

footer[class*=footer_layout] .copy_right {
    color: var(--bs-dark);
}

.footer_layout_16 .link_list ul li a {
    color: var(--bs-dark);
}

.foot-info-cont {
    margin-bottom: 20px;
}

.foot-info-cont h3 {
    font-size: 1.25rem;
    color: var(--bs-dark);
    margin: 0 0 10px 0;
    letter-spacing: 1px;
    line-height: normal;
}

.foot-info-cont ul {
    list-style: none;
}

.foot-info-cont ul li {
    font-size: .95rem;
    letter-spacing: .5px;
    line-height: 1.5;
}

.foot-info-cont ul li:not(:last-child) {
    margin-bottom: 5px;
}

.custom_link_section_16 .snip {
    border-radius: 15px;
}

.custom_link_section_16 .snip .image img {
    transition: 0.35s ease-in-out;
}

.custom_link_section_16 .snip:hover .image img {
    transform: scale(1.2);
}

.custom_link_section_16 .snip .image::before {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    opacity: 50%;
    top: 0;
    left: 0;
    background: linear-gradient(227deg, rgb(40 102 200) 0%, rgb(26 72 64) 100%);
    z-index: 1;
}

.custom_link_section_16 .snip figcaption {
    height: 146px;
    background-color: transparent;
    padding: 2rem;
}

.custom_link_section_16 .snip h3 {
    font-size: 1.5rem;
    margin: 0;
}

.custom_link_section_16 .snip p {
    font-size: 2rem;
    font-weight: 800;
    opacity: 1;
}

.custom_link_section_16 .snip:hover figcaption {
    height: 146px;
}

.custom_link_section_16 .snip .read-more {
    display: none;
}

.page_about .editor-area .nav-tabs {
    justify-content: center;
}

.page_about .editor-area .tab .tab-content {
    padding-top: 2rem;
}

.page_about .editor-area .nav-tabs .nav-item {
    min-width: 180px;
    margin: 0;
}

.page_about .editor-area .nav-tabs .nav-link {
    padding: 9px 15px 11px 16px;
    font-weight: 500;
    width: 100%;
    border-radius: 40px;
}

.table-style-1 {
    width: 100%;
    margin-bottom: 2rem;
}

.table-style-1 th,
.table-style-1 td {
    padding: 12px;
    font-size: 1rem;
    line-height: 1.5rem;
    letter-spacing: 1px;
    border: 1px solid #e2e2e2;
}

.table-style-1 th {
    font-weight: 600;
    background-color: #208b7b;
    color: #fff;
}

.table-style-1 tbody tr:nth-child(even) td {
    background-color: #f5f5f5;
}

.main_title_widget h1::after {
    background-color: #208b7b;
}

.timeline {
    position: relative;
    padding: 0;
    margin: 2rem auto;
    max-width: 800px;
    padding: 1.5rem 1.5rem 0rem 1.5rem;
    border-radius: .9vw;
    box-shadow: 0 0 2vw rgba(0, 0, 0, 5%);
}

.timeline:before {
    content: '';
    position: absolute;
    top: calc(7px + 1.5rem);
    left: calc(135px + 1.5rem);
    bottom: calc(1.6rem);
    width: 0.1rem;
    background: #dee2e6;
}

.timeline:after {
    content: "";
    display: table;
    clear: both;
}

.entry-figure {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
}

.entry-figure .figure-head {
    position: relative;
    width: 135px;
    text-align: right;
    padding-right: 30px;
    margin-bottom: 0.5em;
}

.entry-figure .figure-head:before {
    content: '';
    position: absolute;
    box-sizing: content-box;
    width: 8px;
    height: 8px;
    border: 0.1rem solid #637ff9;
    background-color: #fff;
    border-radius: 100%;
    top: 6px;
    right: -6px;
    z-index: 99;
}

.entry-figure .figure-head h3 {
    font-size: 1.1rem;
    line-height: 1.6rem;
    letter-spacing: 1px;
    margin: 0;
    padding: 0;
}

.entry-figure .figure-head p {
    font-size: .9rem;
    line-height: 1.6rem;
    letter-spacing: 1px;
    margin: 0;
    padding: 0;
}

.entry-figure .figure-body {
    margin: 0 0 1.1rem 0;
    padding-left: 30px;
    width: 100%;
    flex: 1;
}

.entry-figure .figure-body p {
    font-size: .9rem;
    line-height: 1.6rem;
    letter-spacing: 1px;
    margin: 0;
    padding: 0;
}

.entry-figure .figure-body p:first-child {
    margin-top: 0;
    font-weight: 400;
}

.entry-figure .figure-body ul {
    color: #aaa;
    padding-left: 0;
    list-style-type: none;
}

.entry-figure .figure-body ul li:before {
    content: "–";
    margin-right: 0.5em;
}

.backBox {
    margin: 2.5rem 0 0 0
}

.backBox .btn-default {
    padding: 14px 24px 14px 24px;
    border-radius: 40px;
}

.editor-area .img-fluid {
    margin-bottom: 1rem;
}

div[class*=news-list-style2] .list-snip {
    border-radius: .5vw;
}

div[class*=news-list-style2] .list-snip .snip-content {
    background-color: #f2f3f5;
    padding: 1.4rem;
}

form .btn-default {
    padding: 14px 24px 14px 24px;
}

@media (max-width:1620px) {
    .swiper-content {
        padding: 95px 100px 95px 100px;
        max-width: 100%;
    }
}

@media (max-width: 1500px) {
    .owl_custom [data-owl-buttons=true] {
        padding: 0 60px;
    }

    .owl-carousel .owl-nav button.owl-prev {
        left: 10px;
    }

    .owl-carousel .owl-nav button.owl-next {
        right: 10px;
    }
}

@media (max-width:1199px) {
    .header_fixed .header_mobile {
        background-color: rgb(255 255 255 / 90%);
    }

    header .logo a img {
        max-height: 60px;
    }

    .swiper-content {
        padding: 90px 100px 45px 100px;
    }

    .swiper-fade .swiper-slide {
        height: 50vh !important;
    }

    .owl_custom [data-owl-buttons=true] {
        padding: 0 60px;
    }

    .owl-carousel .owl-nav button.owl-prev,
    .owl-carousel .owl-nav button.owl-next {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }

    .owl-carousel .owl-nav button.owl-prev {
        left: 10px;
    }

    .owl-carousel .owl-nav button.owl-next {
        right: 10px;
    }

    .header_fixed .header_mobile {
        background-color: transparent;
    }

    .banner-content {
        padding: 130px 0 110px 0 !important;
        position: relative;
        z-index: 1;
        height: 38vh;
    }

    .banner-content h2 {
        font-size: 2rem;
    }

    .image_header::before {
        background: linear-gradient(180deg, rgb(255 255 255 / 100%) 0, rgba(255, 255, 255, 0) 100%);
    }
}

@media (max-width: 991px) {
    .swiper-content {
        padding: 90px 30px 45px 30px;
    }

    .footer_layout_16 .copy_right {
        text-align: left;
        margin-top: 10px;
    }
}

@media (max-width: 767px) {
    .footer_layout_16 .footer_top {
        padding: 30px 0 10px 0;
    }

    .footer_layout_16 .social_info ul {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .footer_layout_16 .social_info ul li {
        text-align: left;
        padding: 0;
    }

    .footer_layout_16 .link_list ul {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    header .logo a img {
        max-height: 60px;
    }

    #pre_loading .loading_images_layer {
        background-size: 120px auto;
    }

    .swiper-content {
        padding: 90px 15px 45px 15px;
    }

    .owl_custom [data-owl-buttons=true] {
        padding: 0 40px;
    }

    .banner-content {
        padding: 100px 0 90px 0 !important;
        position: relative;
        z-index: 1;
        height: 33vh;
    }

    .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
    .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet,
    .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
    .swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 0 8px;
        width: 16px;
        height: 16px;
    }

    .page_about .editor-area .nav-tabs .nav-item {
        width: 100%;
    }

    .backBox .btn-default {
        padding: 12px 16px 12px 16px;
    }

}

@media (min-width:1200px) {

    .theme_light .header_style_15 .header_menu .menu .m_1 {
        color: var(--bs-dark);
    }

    .theme_light .header_style_15 .header_menu .menu:hover .m_1 {
        color: var(--main-color-1);
    }

    .header_style_15 .header_menu .menu {
        margin: 0px 12px;
        padding: 14px 0;
    }

    .header_style_15 .header_menu .menu .m_1 {
        font-size: 17px;
        font-weight: 500;
        padding: 15px 0;
        letter-spacing: 1.5px;
    }

    .theme_light .header_style_15 .header_menu .menu:hover .m_1 {
        background-color: transparent;
    }

    .header_style_15 .header_menu .menu .m_1::before {
        height: 3px;
    }
}