@charset "utf-8";
/* CSS Document index */ :root {
}

Body {
    font-family: "Microsoft JhengHei", -apple-system, BlinkMacSystemFont, "蘋果儷中黑", "微軟正黑體", "Segoe UI", "Helvetica Neue", Times New Roman, serif;
    line-height: 150%;
    font-size: 1.25em;
    font-weight: 600;
    color: #666666;
}

main {
    position: relative;
    width: 100%;
    min-height: 80vh;
    overflow: hidden;
}

a {
    text-decoration: none !important;
    transition: all .8s ease;
}

    a:hover {
        text-decoration: none !important;
    }

h2 {
    font-weight: 600;
}
/*無障礙頁首標示*/
a.sr-only {
    padding: 0.5rem;
    background-color: #348046;
    color: #fff;
    position: absolute;
    top: -3rem;
    left: 0;
    -webkit-transition: top 1s ease-out;
    transition: top 1s ease-out;
    z-index: 1031 !important;
}

    a.sr-only:focus {
        position: absolute;
        left: 0;
        top: 0;
        outline-color: transparent;
        -webkit-transition: top .1s ease-in;
        transition: top .1s ease-in;
        background: #156F4F;
        color: #fff;
        font-weight: 700
    }

.aa-logo {
    text-align: right;
}

#acc01 {
    font-size: 0.8em;
    text-decoration: none !important;
    line-height: 100%;
    color: #ccc;
    margin-top: 8px;
    margin-right: 5px;
}

#acc02, #acc03 {
    position: absolute;
    margin: -15px;
    font-size: 0.8em;
    text-decoration: none !important;
    line-height: 100%;
    color: #999898;
}

#acc02 {
    top: 135px;
    left: 18px;
    z-index: 1;
}

.container-1600 {
    width: 100%;
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
}

.container-1550 {
    width: 100%;
    max-width: 1550px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 15px;
    padding-left: 15px;
}

.container-1500 {
    width: 100%;
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
}

.container-1400 {
    width: 100%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}

.container-1200 {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.notice-blue {
    color: #003399;
}
/***主選單樣式調整****/
#mainMenu {
    display: flex;
    align-items: center;
}

.dropdown-toggle::after {
    display: none;
}
/*主選單底色*/
.bg-dark {
    background: linear-gradient(to bottom, #FFFFFF 17%, #ECECEC 100%);
    --bs-navbar-padding-y: 1px;
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, .25);
    height: 100px;
}

.navbar-brand > img {
    height: 54px;
    margin-bottom: 8px;
    transition: all .5s;
}

.navbar-brand.sub-plan > img {
    height: 42px;
    margin-top: 10px;
    margin-bottom: 0;
    transition: all .5s;
}
/*主選單文字靠右*/
.navbar-expand-lg .offcanvas .offcanvas-body {
    justify-content: space-evenly;
}

.nav-item {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    padding: 6px 10px;
    margin: 0;
    border-right: 1px solid #FFF;
}

    .nav-item.noline {
        border-right: 0;
    }

.nav-link {
    position: relative;
    text-align: center;
    margin: 0;
    border-radius: 0;
    white-space: nowrap;
}

    .nav-link i {
        font-size: 1.563rem;
        color: #156F4F;
    }

a.nav-link {
    color: #555;
    transition: all .5s;
}

    a.nav-link:hover {
        color: #156F4F;
        background-color: #ffffcc80;
        border-radius: 12px;
        transform: scale(1.1);
    }

.nav-link.dropdown-toggle.show:hover {
}

.nav-link.dropdown-toggle {
}

    .nav-link.dropdown-toggle.show {
    }

.nav-link:hover, .nav-link:focus {
}
/*下拉選單*/
.dropdown-item:hover, .dropdown-item:focus {
    color: #494946;
    background: #ffff99;
}

.dropdown-menu {
    --bs-dropdown-border-color: #ddd !important;
    text-align: center;
    font-weight: 600;
}

    .dropdown-menu a {
        font-weight: 600;
    }
/*LOGO區調整*/
.nav-logo-map {
    display: flex;
    align-items: center;
}

h1.nav-logo-map {
    margin-bottom: 0;
}
/*中央區調整*/
.navbar-expand-xxl .navbar-nav {
    width: 82%;
}
/*子計畫返回共同首頁*/
.back-portal {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 0.875rem;
    color: #FFF;
    background-image: url(../images/template/bg_back-portal.svg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100%;
    padding: 3px 1.5rem 3px 10px;
    transition: all .5s;
}

    .back-portal i {
        margin-right: 0.25rem;
    }

    .back-portal a {
        color: #FFF;
    }

    .back-portal:hover {
        transform: scale(1.05);
    }

    .back-portal a:hover {
        color: #ffff33;
    }
/*右上方區塊選單調整*/
.nav-other-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-right: auto;
    margin-left: auto;
}

    .nav-other-group div {
        margin: 3px auto;
    }

    .nav-other-group .link {
        font-size: 0.875rem;
        font-weight: 500;
        color: #333333;
    }

    .nav-other-group span {
        color: #33333380;
    }

    .nav-other-group .link a {
        padding: 0 15px;
        color: #333333;
        white-space: nowrap;
    }

        .nav-other-group .link a:hover {
            color: #156F4F;
        }

    .nav-other-group .search {
        text-align: center;
        position: relative;
    }

        .nav-other-group .search input {
            height: 26px;
            font-size: 0.875rem;
            width: 82%;
            border-radius: 3px;
            margin: auto;
            padding-right: 1.75rem;
        }

        .nav-other-group .search button {
            position: absolute;
            right: 9%;
            top: calc(50% - 16px);
            border: 0;
            background-color: transparent;
            font-size: 0.938rem;
            color: #999999;
            transition: all .5s;
        }

            .nav-other-group .search button:hover {
                color: #156F4F;
                transform: scale(1.25);
            }

.nav-fun-tool {
}

.nav-search-block {
    top: 1px;
    right: 0;
    width: 55%;
    background-color: #348046;
    color: #FFF;
    font-size: 0.95rem;
    font-weight: 500;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    padding-right: calc(50vw - 830px);
    height: 33px;
}

    .nav-search-block li {
        padding: 0 25px;
    }

    .nav-search-block a {
        color: #F4F4F4;
    }

        .nav-search-block a:hover {
            color: #FFFF66;
        }

    .nav-search-block input::placeholder {
        color: #BFBFBF;
    }
    /*Google 搜尋*/
    .nav-search-block table tr td {
        padding: 0;
        background-color: transparent !important;
        border: 0 !important;
    }

    .nav-search-block id {
        border-bottom: 1px solid #348046 !important;
    }

    .nav-search-block .gsc-input {
        padding: 0 !important;
    }

    .nav-search-block .gsc-input-box {
        border: 0 !important;
        background: transparent;
        !important;
    }

    .nav-search-block .gsib_a input {
        width: 150px !important;
        background-color: #348046;
        border: 1px solid #ffffff50 !important;
    }

    .nav-search-block button {
        border: 0;
        border-left: 0;
        width: 40px;
        height: 28px;
        margin: 2px 0;
        border-radius: 0;
        padding: 1px;
        transition: all .4s;
        background-color: #348046;
    }

        .nav-search-block button:hover {
            background-color: #000;
        }

        .nav-search-block button svg {
            transform: scale(1.5);
        }
        /* 原版輸入與按鈕
.nav-search-block input {
  font-size: 0.9rem;
  border-radius: 0;
  border: 1px solid #FFF;
  background-color: transparent;
  color: #FFF;
  height: 28px;
  margin: 2px 0;
  color: #FFF;
  border: 1px solid #BFBFBF;
  border-radius: 0;
  border-right: 0;
}
.nav-search-block button {
  height: 20px;
  width: 40px;
  color: #FFF;
  font-size: 1rem;
  border: 1px solid #BFBFBF;
  border-left: 0;
  height: 28px;
  margin: 2px 0;
  border-radius: 0;
  padding: 1px;
  transition: all .4s;
}
.nav-search-block button:hover {
  color: #FFFF66;
  border: 1px solid #BFBFBF;
  border-left: 0;
  background-color: transparent;
  background-color: #000;
}
*/
        .nav-search-block button:active, .nav-search-block button:focus-visible {
            color: #FFFF66;
            border: 1px solid #BFBFBF;
            border-left: 0;
            background-color: #000;
        }
/*更改下拉選單樣式*/
.dropdown-menu {
    --bs-dropdown-padding-y: 0;
    --bs-dropdown-color: #000;
    --bs-dropdown-link-color: #555555;
    --bs-dropdown-link-active-color: #000;
    --bs-dropdown-link-hover-color: #000;
    --bs-dropdown-link-hover-bg: #ffff66;
    --bs-dropdown-link-active-bg: #ffff66;
    --bs-dropdown-item-padding-y: 0.4em;
    --bs-dropdown-border-radius: 5px;
    --bs-dropdown-font-size: 1.125rem;
    font-weight: 700 !important;
}

    .dropdown-menu i {
        font-size: 75%;
        margin-right: 0.5rem;
        margin-left: -0.25rem;
    }
/*第一層下拉箭頭*/
.dropdown-toggle::after {
    margin-left: 0.5em;
    vertical-align: 0.1em;
    border-top: 0.5em solid;
}
/***主要控制選單高度*****************************************************/
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
}
/*加上第三層選單*/
.dropdown-submenu {
    margin-left: 12px;
    margin-top: 5px;
    position: static;
}

.nested-dropdown-menu li {
    position: relative;
}
/*.nested-dropdown-menu li.dropdown::after*/
.dropend .dropdown-toggle::after {
    position: absolute;
    right: 15px;
    top: 15px;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.4em solid transparent;
    border-bottom: 0.4em solid transparent;
    border-right: 0;
    border-left: 0.6em solid rgba(38, 133, 158, .57);
}

.dropdown-hr {
    position: relative;
    margin-top: 1.25em;
}

.dropdown-hr-title {
    position: absolute;
    top: -1em;
    background-color: #FFF;
    padding: 0 10px;
}

.flex-cc {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ll-hide {
    display: none;
}

.ss-hide {
    display: block;
}
/*首頁:共用元件*********/
.index-title-group {
    display: flex;
    border-bottom: 1px solid #999999;
}

.index-title {
    color: #156F4F;
    font-size: 2.5rem;
    line-height: 1.5;
    letter-spacing: 0.125rem;
}

    .index-title.plan {
        font-size: 2.25rem;
    }

.index-more {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    align-items: flex-end;
    padding-bottom: 15px;
}

    .index-more a {
        color: #666666;
    }

        .index-more a:hover {
            color: #156F4F;
        }

    .index-more i {
        margin-left: 0.25rem;
        margin-top: 0.25rem;
        font-size: 85%;
    }

.index-content-group {
    margin: 30px 0;
    padding: 0px 4%;
}
/*首頁banner區塊****************************/
/*上下頁silck*/
.index-banner-area {
    position: relative;
    margin-top: 120px;
    padding: 0;
}

.index-banner {
    position: relative;
    padding-bottom: 45%;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border: 0;
    border-radius: 15px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, .25);
    margin: 10px 0;
    overflow: hidden;
}

    .index-banner img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover; /* 關鍵：模仿 background-size: cover */
        object-position: center;
    }
/**主Banner區的slick 前後兩項縮小*********/
.slick_banner .slick-slide {
    transform: scale(0.8);
    opacity: 0.75;
    border-collapse: collapse;
}

.slick_banner .slick-current {
    transform: scale(1);
    opacity: 1;
}

.center_1_prev {
    left: 18%;
}

.center_1_next {
    right: 18%;
}

.center_1_prev, .center_1_next {
    border: 0;
    background-color: transparent;
    position: absolute;
    top: calc(50% - 25px);
    z-index: 15;
    opacity: .8;
    transition: all .5s;
}

    .center_1_prev > img, .center_1_next > img {
        width: 50px;
        transition: all .4s;
    }

        .center_1_prev > img:hover, .center_1_next > img:hover {
            transform: scale(1.2);
        }
/***********/
.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    background-color: #348046;
    border: 1px solid #FFF;
    height: 12px;
    width: 30px;
    opacity: 0.20;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    height: 12px;
    width: 30px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}

    .slick-dots li button {
        border: 0;
        background: transparent;
        display: block;
        height: 20px;
        width: 20px;
        outline: none;
        line-height: 0px;
        font-size: 0px;
        color: transparent;
        padding: 5px;
        cursor: pointer;
    }

.slick-dots {
    position: absolute;
    bottom: 20px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    width: 100%;
}
/****首頁 main icon 區塊*****/
.main-icon-area {
    padding: 50px 0;
}

.main-icon-box {
    margin: 15px;
    width: 90%;
    border: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: 15px;
    box-shadow: 2px 2px 15px 0 rgba(0, 0, 0, .2);
    border: 1px solid #FFFFFF50;
    overflow: hidden;
    transition: all .5s;
    height: 23rem; /* 自己微調數字 */
}

    .main-icon-box:hover {
        transform: scale(1.02);
        box-shadow: 2px 2px 10px 0 rgba(0, 204, 255, .5);
    }

    .main-icon-box .photo {
        position: relative;
        width: 100%;
        padding-bottom: 50%;
        background-repeat: no-repeat;
        /*background-size: cover;*/
        background-position: center center;
        background-color: #FFF;
        transition: all .5s;
        /*height: 320px;*/

        background-size: contain; /* ✅ 關鍵：完整呈現 */
        background-color: #fff; /* ✅ 留白不突兀 */
    }

        .main-icon-box .photo:after {
            position: absolute;
            font-family: Arial;
            content: 'READ MORE';
            width: 100%;
            height: 100%;
            font-size: 2rem;
            color: #fff;
            letter-spacing: 1px;
            display: flex;
            justify-content: center;
            flex-wrap: nowrap;
            font-weight: 600;
            text-shadow: 1px 1px 4px #00000090;
            align-items: center;
            background-color: #701ce940;
            transition: all .4s;
            opacity: 0;
        }

        .main-icon-box .photo:hover:after {
            opacity: 1;
        }

    .main-icon-box .title {
        font-weight: 800;
        font-size: 1.1rem;
        padding: 15px 0 10px;
    }

    .main-icon-box .date {
        font-weight: 600;
        font-size: 1rem;
        color: #555555;
        padding: 0 0 20px;
    }
/*三區塊顏色*/
#CITD-cover.main-icon-box {
    background-color: #EDFFF6;
}

#CITD-cover .title {
    color: #008080;
}

#ACGE-cover.main-icon-box {
    background-color: #EEFCFB;
}

#ACGE-cover .title {
    color: #005581;
}

#RDBC-cover.main-icon-box {
    background-color: #F7F3FF;
}

#RDBC-cover .title {
    color: #2C0084;
}
/****首頁 最新消息 區塊*****/
.news-area {
    padding: 50px 0;
}

.first-news-box {
    background-color: #EEFFFF99;
    padding: 2rem;
    display: flex;
    font-weight: 600;
}

    .first-news-box .content {
        padding: 2rem;
        flex: 1 1 55%;
    }

        .first-news-box .content .plan-date {
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: 1rem;
            color: #333;
            padding: 0 0 10px;
        }

.tag-CITD, .tag-ACGE, .tag-RDBC {
    line-height: 1;
    font-size: 1.25rem;
    padding: 5px 15px;
    color: #156F4F;
    background-color: #ECFFE3;
}

.tag-ACGE {
    color: #005581;
    background-color: #EEFCFB;
}

.tag-RDBC {
    color: #2C0084;
    background-color: #F7F3FF;
}

.first-news-box .content .title {
    color: #156F4F;
    font-size: 1.875rem;
    line-height: 1.5;
    height: 92px; /*設定資料高度*/
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2; /*設定資料顯示行數*/
    padding: 0 0 15px;
}

.first-news-box .content .intro {
    color: #555;
    font-size: 1.125rem;
    line-height: 1.75;
    height: 100px; /*設定資料高度*/
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 3; /*設定資料顯示行數*/
    padding: 12px 8px;
    margin-bottom: 25px;
}

.icon-more-detail {
    font-size: 1.125rem;
    color: #888888;
    padding: 2px 5px;
    border: 1px solid #888888;
    transition: all .3s;
    letter-spacing: 2px;
}

    .icon-more-detail:hover {
        color: #FFFFFF;
        background-color: #888888;
    }

.first-news-box .photo {
    flex: 1 1 45%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
}

    .first-news-box .photo img {
        width: 100%;
    }

.news-list {
    padding: 0 15px;
}

.news-line {
    position: relative;
    display: flex;
    min-height: 68px;
    border-bottom: 1px solid #CCC;
}

    .news-line:nth-child(even) {
        background-color: rgba(221, 221, 221, .1);
    }

    .news-line div {
        display: flex;
        align-items: center;
    }

    .news-line > .date {
        flex: 1 1 12%;
        padding: 0 5px;
        justify-content: center;
    }

        .news-line > .date span {
            line-height: 1;
            font-size: 1rem;
            letter-spacing: 2px;
            padding: 5px 15px;
            color: #555;
            white-space: nowrap;
            background-color: #F4EFE9;
        }

    .news-line > .plan {
        flex: 1 1 15%;
        padding: 0 5px;
        justify-content: center;
    }

    .news-line > .title {
        position: relative;
        flex: 0 1 73%;
        padding: 0 5px;
    }

        .news-line > .title a {
            display: flex;
            align-items: center;
            color: #666666;
            width: 100%;
            height: 100%;
            padding-right: 2rem;
            transition: all .5s;
        }

            .news-line > .title a:hover {
                color: #156F4F;
                background-color: #ffffcc80;
                transform: translateX(10px);
            }

        .news-line > .title:after {
            content: "";
            position: absolute;
            right: 1rem;
            top: calc(50% - 15px);
            width: 18px;
            height: 30px;
            background-image: url(../images/icon/icon_news-arrow.svg);
            background-repeat: no-repeat;
            background-position: center center;
            background-size: cover;
            transition: all 0.8s;
        }

        .news-line > .title:hover:after {
            transform: translateX(15px);
        }
/****首頁 計畫影音 區塊*****/
.video-area {
    padding: 30px 0 30px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../images/index/bg_video.jpg);
}

.video-block {
    padding-bottom: 75px;
    margin-bottom: 50px;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    background-image: url(../images/index/bg_video-block.png);
}

.video-box {
    padding: 15px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 3px 3px 12px #00000060;
}
/****首頁 計畫成果 區塊*****/
.result-area {
    padding: 30px 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../images/index/bg_result.jpg);
}

.result-box {
    margin: 0 0 15px;
    display: flex;
    flex-direction: column;
}

    .result-box .photo {
        width: 100%;
        padding-bottom: 45%;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: auto 100%;
    }

    .result-box .number {
        text-align: center;
        padding: 25px 0px;
        font-size: 200%;
        letter-spacing: 1px;
        color: #F2DC1D;
        font-family: poppins;
        text-shadow: 1px 1px 4px #00000050;
    }

        .result-box .number span:nth-child(2) {
            padding: 25px 0;
            font-size: 50%;
            color: #F2DC1D;
            font-family: "蘋果儷中黑", "微軟正黑體", "Segoe UI", "Microsoft JhengHei";
        }

    .result-box .title {
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        width: 100%;
        height: 75px;
        color: #FFF;
        font-size: 100%;
        text-shadow: 1px 1px 3px #00000050;
        line-height: 150%;
    }
/****首頁 成果彙編 區塊*****/
.ebook-area {
    padding: 30px 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../images/index/bg_ebook.jpg);
}

.ebook-box {
    margin: 20px;
}

    .ebook-box .photo img {
        box-shadow: 3px 3px 15px 0 #00000060;
        transition: all .5s;
    }

        .ebook-box .photo img:hover {
            transform: scale(1.1) translateY(-10px);
            box-shadow: 2px 2px 25px 0 rgba(0, 204, 255, .5);
        }

    .ebook-box .title {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 15px;
        color: #000;
        padding: 5px;
    }

.ebook-group > div:nth-child(odd) > .ebook-box > .title {
    border-left: 8px solid #FFFF66;
}

.ebook-group > div:nth-child(even) > .ebook-box > .title {
    border-left: 8px solid #98CBFF;
}
/*Page Top 組件
******************************************/
.index-page-top {
    color: #FFF;
    background-color: #156F4F;
    position: fixed;
    right: 20px;
    opacity: .55;
    bottom: 20px;
    width: 80px;
    height: 80px;
    padding: 10px;
    border-radius: 15px;
    border: 2px solid #FFF;
    transition: all .5s ease-out;
    box-shadow: 2px 2px 4px 0 #00000070;
    z-index: 1000;
    font-weight: 500;
    font-family: poppins;
    line-height: 100%;
}

    .index-page-top:hover {
        opacity: 1;
    }
/********* 頁尾 footer-nav 與 Footer 區塊 *********/
.footer-nav {
    position: relative;
    background-color: #156F4F;
    padding: 1rem;
    line-height: 1;
}

    .footer-nav ul {
        max-width: 1450px;
        padding-bottom: 0;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.125rem;
    }

        .footer-nav ul li {
            list-style: none;
            text-align: center;
            flex: 1 1 auto;
            border-left: 1px solid #FFFFFF90;
        }

            .footer-nav ul li:nth-child(1) {
                border-left: 0;
            }

            .footer-nav ul li a {
                color: #FFFFFF;
            }

                .footer-nav ul li a:hover {
                    color: #ffff66;
                }
/*下方聯繫資訊*/
.footer-area {
    position: relative;
    color: #666666 !important;
    background-color: #FFFFFF;
    line-height: 175%;
    font-size: 0.8em;
    font-weight: 500;
    padding: 30px 15px 0;
}

.footer-link {
    position: relative;
}

.footer-area a {
    font-weight: 600;
    color: #0033BB;
    text-decoration: underline !important;
    transition: all .3s ease;
}

    .footer-area a:hover {
        color: #339999;
        text-decoration: underline !important;
    }

.footer-logo {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 50px auto;
    margin-bottom: 20px;
}

    .footer-logo:nth-child(1) img {
        height: 41px;
        margin: 10px;
    }

    .footer-logo:nth-child(2) img {
        height: 35px;
        margin: 20px 10px;
    }

.footer-contact-info {
    color: #156F4F;
    font-weight: 600;
}

    .footer-contact-info i {
        margin-right: 0.5rem;
        font-size: 1.125rem;
        margin-bottom: -0.5rem;
    }

.footer-cright {
    padding: 2.5rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 2;
    text-align: center;
    color: #555555;
    font-weight: 500;
}

.aa-logo {
    display: flex;
    align-items: center;
    justify-content: center;
}
/*共用網站導覽*/
.sitemap-box {
    border-radius: 20px;
    overflow: hidden;
    margin: 1.5rem;
}

    .sitemap-box .title {
        padding: 10px 1.5rem;
        font-size: 1.375rem;
        color: #FFF;
        background-color: #156F4F;
        letter-spacing: 1px;
    }

        .sitemap-box .title a {
            color: #FFF;
            border-bottom: 1px solid #EEE;
        }

            .sitemap-box .title a:hover {
                color: #ffff66;
                border-bottom: 0;
            }

    .sitemap-box .content {
        padding: 10px 10px 25px;
        color: #555;
        background-color: #F4F4F4;
        line-height: 2;
        letter-spacing: 2px;
    }

        .sitemap-box .content .main-unit {
            font-size: 1.25rem;
        }

        .sitemap-box .content .sub-unit {
            font-size: 1.125rem;
        }

        .sitemap-box .content a {
            color: #156F4F;
            border-bottom: 1px solid #156F4F;
        }

            .sitemap-box .content a:hover {
                color: #555;
                border-bottom: 0;
            }

    .sitemap-box > .content > .item {
        padding: 10px 1.5rem;
    }

        .sitemap-box > .content > .item:nth-child(even) {
            background-color: #FFF;
        }

        .sitemap-box > .content > .item:nth-child(odd) {
            background-color: transparent;
        }

@media only screen and (max-width: 1499.98px) {
    #mainMenu {
        padding-right: 10px;
        padding-left: 10px;
    }

    .nav-search-block {
        padding-right: 10px;
    }
}
/*1399-1199.98**********************************************************************************************************************************************/
@media only screen and (max-width: 1399.98px) {
    .navbar-brand > img {
        height: 45px;
    }

    .navbar-brand.sub-plan > img {
        height: 32px;
        margin-top: 15px;
    }

    .back-portal {
        font-size: 0.75rem;
        padding: 2px 1.25rem 2px 5px;
    }
    /*主選單按鈕*/
    #mainMenu {
        justify-content: space-between;
    }

    .bg-dark {
        height: 75px;
    }
    /*無障礙相關標示*/
    #acc02 {
        top: 90px;
    }
    /*側拉選單****************************************/
    .offcanvas {
        width: 80vw;
        max-width: 380px;
    }

    .offcanvas-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 15px;
        background-color: #348046;
    }

        .offcanvas-header .btn-close {
            background-image: url(../images/icon/icon-X.svg);
        }

    .dropdown-toggle::after {
        display: inline-block;
    }

    .navbar-expand-xxl .navbar-nav {
        width: 100%;
    }

    .navbar-nav .nav-item {
        padding: 6px 0;
    }

    .navbar-nav .nav-link {
        width: 100%;
        font-size: 1.125rem;
        letter-spacing: 2px;
        position: relative;
        color: #494946;
        margin: 0;
        padding: 15px 0 !important;
        border-radius: 0;
        border: 0;
        border-bottom: 1px solid #CCC;
        transition: all .5s;
    }

    a.nav-link:hover {
        color: #156F4F;
        background-color: #fbf8ae50;
        border-radius: 0;
        transform: scale(1);
    }

    .navbar-nav .nav-link br {
        display: none;
    }

    #portal-nav.navbar-nav .nav-link br {
        display: unset;
    }

    #portal-nav.navbar-nav .nav-link {
        text-align: center;
        white-space: wrap;
        letter-spacing: 0;
    }

    .nav-other-group {
        width: 100%;
    }

        .nav-other-group .link, .nav-other-group .search {
            width: 100%;
            font-size: 1.125rem;
            font-weight: 600;
            text-align: center;
            margin: 0;
            padding: 15px 0 !important;
            border-radius: 0;
            border: 0;
            border-bottom: 1px solid #CCC;
            transition: all .5s;
        }

        .nav-other-group .search {
            border-bottom: 0;
        }

            .nav-other-group .search input {
                height: auto;
                font-size: 1rem;
                width: 90%;
                border-radius: 3px;
                margin: auto;
                padding-right: 2.25rem;
                border-bottom: 1px solid #CCC;
            }

            .nav-other-group .search button {
                margin-bottom: 2px;
            }

    .offcanvas-title {
        color: #fff;
        font-weight: 500;
        letter-spacing: 2px;
    }

    .offcanvas-body {
        background-image: url("../images/template/bg_offcanvas-word.svg");
        background-position: bottom right;
        background-repeat: no-repeat;
        background-size: auto 50%;
    }

    .dropdown-item {
        background-color: #EEEEEE90;
        text-align: center;
        font-size: 95%;
        border: 1px solid #FFF;
    }

    .dropdown-menu {
        width: 100%;
        border: 0;
    }

    .nested-dropdown-menu li.dropdown > a.dropdown-item {
        background-color: #8acde230 !important;
    }

    .dropdown-item:hover {
        background-color: #8acde230 !important;
        border: 1px solid #FFF;
    }
    /*更改下拉選單樣式*/
    .dropdown-menu {
        --bs-dropdown-border-color: #ddd;
        --bs-dropdown-border-radius: 0;
    }

        .dropdown-menu > li:hover > .dropdown-submenu {
            display: flex;
        }

    .dropdown-submenu {
        position: absolute;
        border: 1px solid #fff;
    }

        .dropdown-submenu, .dropdown-submenu[data-bs-popper] {
            left: 100%;
            margin-left: 0;
            margin-top: 0;
            top: -7px;
            font-size: 95%;
            text-align: center;
            display: flex;
            flex-wrap: wrap;
        }

            .dropdown-submenu > li, .dropdown-submenu[data-bs-popper] > li {
                flex: 0 1 33%;
            }

            .dropdown-submenu.show {
                /*   display: none;*/
            }

    .dropend .dropdown-toggle::after {
        position: absolute;
        right: 15px;
        top: 15px;
        vertical-align: 0.255em;
        content: "";
        border-left: 0.4em solid transparent;
        border-right: 0.4em solid transparent;
        border-bottom: 0;
        border-top: 0.6em solid rgba(38, 133, 158, .57);
    }
    /*入口網頁上方banner 1400*/
    .index-banner-area {
        margin-top: 90px;
    }
    /*最新消息*/
    .index-content-group {
        margin: 30px 0;
        padding: 0px 15px;
    }
    /*Footer聯絡資訊*/
    .footer-nav ul {
        font-size: 1rem;
    }
}

@media only screen and (max-width: 1199.98px) {
    .nav-link {
        font-size: 90%;
        padding: 4px 20px !important;
    }

        .nav-link:before {
            left: 0.4em;
        }
    /*六項主按鈕*/
    .main-icon-box .photo {
    }

    .main-icon-box .title {
        font-size: 1.25rem;
    }

    .main-icon-box .date {
        font-size: 1rem;
    }
    /*計畫時程*/
    .t-first, .t-second {
        margin: 0 10%;
    }

        .t-second .timetable-step {
            display: block;
        }

        .t-first > div:first-child, .t-second > div:first-child {
            padding-left: 0;
            padding-right: 2px;
        }
    /*最新消息*/
    .first-news-box {
        padding: 15px;
    }

        .first-news-box .content, .first-news-box .photo {
            padding: 15px;
        }

            .first-news-box .content .title {
                font-size: 1.5rem;
                height: 70px;
            }

    .news-line {
        padding: 10px;
        flex-wrap: wrap;
    }

        .news-line > .date {
            flex: 0 1 auto;
            font-size: 1.15rem;
            justify-content: flex-start;
            padding-right: 1rem;
        }

        .news-line > .plan {
            flex: 1 1 70%;
            padding: 0 5px;
            justify-content: start;
            font-size: 1.15rem;
        }

        .news-line > .title {
            flex: 1 0 100%;
            min-height: 50px;
        }
}
/*991.98*****************************************************************************************************************************************************/
@media only screen and (max-width: 991.98px) {
    #con-menu {
        left: 0;
        margin-top: 0;
        width: 100%;
    }

        #con-menu > li > .dropdown-item {
            background-position: 10px center;
            background-repeat: no-repeat;
            background-size: auto 60%;
            padding: 5px 0 5px 50px;
        }
    /*首頁banner區塊 992*/
    .index-banner {
    }
    /*最新消息*/
    .first-news-box {
        flex-direction: column;
    }

        .first-news-box .content .title {
            height: auto;
            -webkit-line-clamp: unset;
        }
    /*Footer快速選單區*/
    .stitle-hr {
        display: none;
    }

    .accordion-nav-box > .stitle {
        font-size: 1.25rem;
        margin: 10px 0 25px;
        font-weight: 600;
        border-bottom: 1px dashed #EEEEEE85;
        width: 95%;
        padding-bottom: 10px;
    }
    /*Footer聯絡資訊*/
    .footer-nav ul li {
        display: none;
    }

    .footer-logo {
        display: inline;
    }

        .footer-logo img {
            height: 40px;
            width: auto;
        }

    .footer-contact-info {
        margin-top: 2rem;
    }

    .aa-logo {
        text-align: left;
        padding-bottom: 15px;
    }
}
/*767.98*****************************************************************************************************************************************************/
@media only screen and (max-width: 767.98px) {
    .ll-hide {
        display: block;
    }

    .ss-hide {
        display: none;
    }

    .nav-logo-map img {
        height: 45px;
    }
    /*第三層選單底色--本次只使用兩層
  .dropdown-submenu > .dropdown-menu {
    background-color: #EEE !important;
  }
  .dropdown-submenu > .dropdown-menu {
    max-height: 28vh;
  }
  .dropdown-submenu > a:after {
    display: block;
    content: " ";
    float: right;
    width: 20px;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 10px 0px 10px 10px;
    border-left-color: #4e24b5 !important;
    margin-top: 10px;
    margin-right: -10px;
  }
  */
    /*上下頁silck*/
    .center_1_prev, .center_1_next {
        top: calc(50% - 20px);
    }

        .center_1_prev > img, .center_1_next > img {
            width: 40px;
        }
    /*Footer*/
    .footer-items > div {
        padding: 25px;
    }

        .footer-items > div:nth-child(2) {
            border-left: 0;
            border-top: 1px solid #FFFFFF;
        }

    .footer-contactus {
        font-size: 175%;
        font-weight: 700;
        letter-spacing: 2px;
        margin-bottom: 15px;
    }
}
/****************************************************************************************************************************************************************


行動版面開始


*****************************************************************************************************************************************************************/
/* 桌面版面: 576px 最大*/
@media only screen and (max-width: 575.98px) {
    #acc01 {
        font-size: 0.8em;
        margin-top: -5px;
    }

    .nav-link {
        font-size: 1.1em;
        border-bottom: 1px solid #ccc;
        padding: 20px 15px;
    }

    .navbar-brand > img {
        height: 45px;
    }

    .navbar-brand.sub-plan > img {
        height: 32px;
    }
    /*Search的部分,包含google search*/
    .nav-search-block {
        top: 50px;
        font-size: 0.8rem;
    }

    .nav-search-block {
        align-items: center;
        height: auto;
    }

    form.gsc-search-box {
        margin: 0;
    }

    .offcanvas {
        width: 80vw;
        max-width: 300px;
    }

    footer {
        line-height: 200%;
        font-size: 1em;
        padding: 15px 0;
    }

    .footer-cright {
        padding: 1rem 0;
        line-height: 1.75;
    }

    .index-page-top {
        font-size: 70%;
        font-weight: 500;
        opacity: .8;
        right: 10px;
        width: 50px;
        height: 50px;
    }
    /*首頁Banner輪播 576*/
    .index-banner {
        padding-bottom: 55%;
        width: calc(100% - 20px);
        margin: 10px;
    }
    /*首頁共用項目*/
    .index-title {
        color: #156F4F;
        font-size: 2.25rem;
        line-height: 1.2;
        letter-spacing: 0.125rem;
    }

        .index-title.plan {
            font-size: 2.125rem;
        }

    .index-more {
        width: 120px;
    }

    .icon-more-detail {
        font-size: 1rem;
    }
    /*首頁Banner控制器*/
    .center_1_prev {
        left: -10px;
    }

    .center_1_next {
        right: -10px;
    }
    /*首頁六大按鈕區*****************/
    .main-icon-area {
        padding: 0;
    }

    .main-icon-box {
        margin: 15px 0;
        width: 100%;
        border: 0;
    }

        .main-icon-box:hover {
            transform: scale(1);
            box-shadow: 2px 2px 25px 0 rgba(0, 204, 255, .5);
        }

        .main-icon-box .photo {
        }

        .main-icon-box .title {
        }

        .main-icon-box .date {
            font-size: 0.95rem;
        }
    /*最新消息*/
    .first-news-box .content .plan-date {
        flex-direction: column;
        align-items: flex-start;
    }

    .first-news-box .content, .first-news-box .photo {
        padding: 5px;
    }

        .first-news-box .content .plan-date span:nth-child(2) {
            padding: 1rem;
        }

    .index-content-group {
        padding: 0;
    }

    .first-news-box {
        padding: 0;
    }

    .news-list {
        padding: 0;
    }

    .news-line > .plan {
        flex: 1 1 50%;
    }

    .news-line > .title {
        padding: 10px;
    }

        .news-line > .title:after {
            right: 0;
        }
    /*計畫影音*/
    .video-block {
        padding-bottom: 15px;
        margin-bottom: 40px;
    }

    .video-box {
        padding: 0;
        border-radius: 10px;
    }
    /*推動成果*/
    .result-box .number {
        text-align: center;
        padding: 5px 0px;
        font-size: 125%;
        letter-spacing: 0;
        color: #F2DC1D;
        font-family: poppins;
        text-shadow: 1px 1px 4px #00000050;
    }

        .result-box .number span:nth-child(2) {
            font-size: 75%;

            .ebook-box {
                margin: 0;
            }
        }
    /*************動畫庫*****************/
    @keyframes move-right {
        0% {
            transform: translateX(0);
        }

        50% {
            transform: translateX(10px);
        }

        100% {
            transform: translateX(0);
        }
    }

    @keyframes border-shining {
        0% {
            outline: 1px solid #FFFF00;
            box-shadow: 0 0 15px 0 #FFFF00;
        }

        50% {
            outline: 1px solid rgba(150, 150, 150, 1);
            box-shadow: 0 0 0 0 #FFFF00;
        }

        100% {
            outline: 1px solid #FFFF00;
            box-shadow: 0 0 10px 0 #FFFF00;
        }
    }

    @keyframes zoom-s {
        0% {
            transform: scale(1);
            opacity: 1;
        }

        30% {
            transform: scale(1.04);
            opacity: .8;
        }

        100% {
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes zoom-m {
        0% {
            transform: scale(1);
            opacity: 1;
        }

        30% {
            transform: scale(1.15);
            opacity: .8;
        }

        100% {
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes shine13 {
        0% {
            transform: scale(1);
            opacity: 1;
        }

        30% {
            transform: scale(1.01);
            opacity: .6;
        }

        100% {
            transform: scale(1);
            opacity: 1;
        }
    }

    @keyframes orange-arrow {
        0% {
            transform: translateX(50px);
            opacity: 0;
        }

        50% {
            transform: translateX(0);
            opacity: 1;
        }

        100% {
            transform: translateX(0);
            opacity: 1;
        }
    }

    @keyframes rotate-right {
        0% {
            transform: rotate(0deg);
        }

        100% {
            transform: rotate(360deg);
        }
    }

    @keyframes rotate-left {
        0% {
            transform: rotate(0deg);
        }

        100% {
            transform: rotate(-360deg);
        }
    }

    @keyframes zoom-out {
        0% {
            transform: scale(1);
        }

        80% {
            transform: scale(4);
            opacity: 0;
        }

        100% {
            transform: scale(4);
            opacity: 0;
        }
    }

    @keyframes rotate-right {
        0% {
            transform: rotate(0deg);
        }

        100% {
            transform: rotate(360deg);
        }
    }
}

/* ===== CITD-nav新增 ===== */

#CITD-nav {
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
}

    #CITD-nav > .nav-item {
        padding: 0;
        margin: 0;
        list-style: none;
    }

        #CITD-nav > .nav-item.noline {
            border-right: 0;
        }

    #CITD-nav .nav-link {
        position: relative;
        margin: 0;
        color: #555;
        border-radius: 0;
        transition: all .5s;
    }

        #CITD-nav .nav-link i {
            font-size: 1.563rem;
            color: #156F4F;
        }

    #CITD-nav .dropdown-menu {
        --bs-dropdown-border-color: #ddd !important;
        font-weight: 600;
    }

        #CITD-nav .dropdown-menu a {
            font-weight: 600;
        }

    #CITD-nav .dropdown-item:hover,
    #CITD-nav .dropdown-item:focus {
        color: #494946;
        background: #ffff99;
    }

.nav-other-group {
    flex: 0 0 auto;
    white-space: nowrap;
    margin-left: 16px;
}

/* ===== 桌機Menu ≥ 1400px===== */
@media (min-width: 1400px) {

    #CITD-nav {
        display: flex;
        align-items: stretch;
    }

        #CITD-nav > .nav-item {
            display: flex;
            flex: 1 1 auto;
            width: auto;
            min-width: 0;
        }

        #CITD-nav .nav-link {
            text-align: center;
            white-space: nowrap;
        }

        #CITD-nav a.nav-link:hover {
            color: #156F4F;
            background-color: #ffffcc80;
            border-radius: 12px;
            transform: scale(1.1);
        }

    .navbar #CITD-nav .nav-item.dropdown {
        position: relative;
    }

    .navbar #CITD-nav .dropdown-menu {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
        min-width: 180px;
        margin-top: 8px;
        padding: 0.5rem 0;
        z-index: 1050;
    }

        .navbar #CITD-nav .dropdown-menu .dropdown-item {
            display: block;
            text-align: center;
            white-space: nowrap;
        }
}

/* ===== 手機側邊 Menu < 1400px ===== */
@media (max-width: 991.98px) {

    .offcanvas #CITD-nav {
        display: block;
    }

        .offcanvas #CITD-nav > .nav-item {
            display: block;
            width: 100%;
            border-right: 0 !important;
        }

        .offcanvas #CITD-nav .nav-link {
            display: block;
            width: 100%;
            text-align: center;
            white-space: normal;
            padding: 1rem 0.75rem;
            transition: background-color .3s, color .3s;
        }

        .offcanvas #CITD-nav a.nav-link:hover {
            color: #156F4F;
            background-color: #ffffcc80;
            border-radius: 0;
            transform: none;
        }

        .offcanvas #CITD-nav .nav-item.show > .nav-link {
            color: #156F4F;
            background-color: #ffffcc80;
            border-radius: 0;
        }

        .offcanvas #CITD-nav .nav-item.dropdown {
            position: static;
        }

        .offcanvas #CITD-nav .dropdown-menu {
            position: static !important;
            left: 0 !important;
            transform: none !important;
            float: none;
            width: 100%;
            min-width: 0;
            margin-top: 0;
            padding: 0;
            border: 0;
            border-radius: 0;
            box-shadow: none;
            text-align: left;
            background: transparent;
        }

            .offcanvas #CITD-nav .dropdown-menu .dropdown-item {
                display: block;
                width: 100%;
                text-align: center;
                white-space: normal;
                padding: 12px 0;
                background: #f5f5f5;
                border-bottom: 1px solid #fff;
            }

                .offcanvas #CITD-nav .dropdown-menu .dropdown-item:hover {
                    background: #ffff99;
                }

    .offcanvas .nav-other-group {
        margin-left: 0;
        margin-top: 20px;
        white-space: normal;
    }
}