@charset "UTF-8";
/* -------------------------------------------------------------
  Sass CSS3 Mixins! The Cross-Browser CSS3 Sass Library
  By: Matthieu Aussaguel, http://www.mynameismatthieu.com, @matthieu_tweets

  List of CSS3 Sass Mixins File to be @imported and @included as you need

  The purpose of this library is to facilitate the use of CSS3 on different browsers avoiding HARD TO READ and NEVER
  ENDING css files

  note: All CSS3 Properties are being supported by Safari 5
  more info: http://www.findmebyip.com/litmus/#css3-properties

------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css?family=Oswald:700&display=swap");

/*注意撰寫邏輯為:行動裝置先行*/
body {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: fixed;
    font-size: 18px;
    line-height: 1.7;
    min-width: 320px;
    overflow-x: hidden;
    padding-top: 100px;
    font-family: "微軟正黑體", "Microsoft JhengHei", "新細明體", "PMingLiU", "細明體", "MingLiU", "標楷體", "DFKai-sb", sans-serif;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

button:focus {
    outline: none;
}

a:link {
    color: #405bb4;
}

/* 設定尚未點閱過的連結樣式 */
a:visited {
    color: #405bb4;
}

/* 設定過去曾經閱過的連結 */
a:hover {
    color: #405bb4;
}

/* 設定滑鼠游標指在連結位置上的樣式 */
a:active {
    color: #405bb4;
}

/* 設定上點擊過的連結樣式 */
.necessary-info {
    /*橘色星號*/
    color: #ff7e00;
    font-weight: bold;
}

/*-螢光綠-*/
.bitterLemon {
    color: #d6ff00;
}

/*-------------------------------
	公用遮罩
--------------------------------*/
.white-mask {
    /*白色*/
    width: 100%;
    height: 200%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9;
    background-color: rgba(255, 255, 255, 0.9);
    filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000, endcolorstr=#7F000000);
}

.black-mask {
    /*黑色*/
    width: 100%;
    height: 200%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    background-color: rgba(0, 0, 0, 0.9);
    filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000, endcolorstr=#7F000000);
}

/*-----------------------------
	標題
------------------------------*/
.subtitle {
    background-image: url(../../themes/frontend/rwd/images/title-bg_03.png);
    background-repeat: no-repeat;
    padding-left: 60px;
    font-size: 24px;
    font-weight: bolder;
}

/*-----------------------------
	內頁的刊登資訊
-----------------------------*/
.report-info {
    border-bottom: 1px solid #dcdcdc;
    box-shadow: -1px 11px 13px 0px #f5f5f5;
    padding-bottom: 15px;
    padding-left: 15px;
    padding-top: 15px;
    margin-bottom: 30px;
    margin-top: 5px;
}

/*-----------------------------
	大外層容器
------------------------------*/
.main-wrapper {
    padding: 0;
    margin: 0;
    background-color: #4a4a4a;
}

.title-banner {
    background-image: url();
    background-size: cover;
    background-repeat: no-repeat;
}

.dropdown-menu {
    border: none;
    background-color: #fff0;
    margin-top: -8px;
    padding-bottom: 0;
}

.dropdown-item {
    padding: 0.5rem 2rem;
}

.nav-item:first-child {
    border-top: none;
}

.nav-item a:link {
    color: #848484;
}

.nav-item a:visited {
    color: #848484;
}

.nav-item a:active {
    color: #848484;
}

.nav-item a:hover {
    color: #848484;
}

a.nav-link {
    font-weight: bolder;
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        margin-right: 0;
        padding-right: 0.45em;
        padding-left: 0.45em;
        font-size: 16px;
        position: relative;
    }

    .navbar-expand-lg .navbar-nav .nav-link:before {
        content: "";
        position: absolute;
        top: 15px;
        left: 0;
        width: 1px;
        height: 16px;
        background-color: rgba(0, 0, 0, 0.25);
    }

    .navbar-expand-lg .navbar-nav .nav-item:first-child .nav-link:before {
        display: none;
    }
}

@media (max-width: 1280px) and (min-width: 992px) {
    .navbar-expand-lg .navbar-nav {
        margin-left: -40px;
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        font-size: 1.275vw;
        margin-right: 0;
    }

    .navbar-expand-lg .navbar-nav .nav-link:before {
        top: 13px;
    }
}

.nav-item a i {
    width: 16px;
    margin-right: 15px;
}

@media (min-width: 992px) {
    .nav-item a i {
        width: 16px;
        margin-right: 8px;
    }
}

.nav-item.dropdown,
.nav-item {
    padding-left: 20vw;
}

@media (min-width: 992px) {
    .nav-item.dropdown,
    .nav-item {
        padding-left: 0;
    }
}

.dropdown-menu.show {
    padding-left: -33.333vw;
    background-color: none;
}

@media (min-width: 992px) {
    .dropdown-menu.show {
        background-color: #f8f9fa;
        margin-top: 15px;
    }
}

/*--內容--*/
.donate-stick {
    padding-top: 25px;
    padding-bottom: 25px;
    font-size: 13px;
    display: flex;
    color: #fff;
}

@media (min-width: 992px) {
    .donate-stick {
        font-size: 18px;
    }
}

.donate-stick .L-column {
    display: inline-flex;
    flex: 4;
    height: 100%;
    text-align: right;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}

.donate-stick .L-column:before {
    display: inline-flex;
    content: "";
    height: 38px;
    width: 0px;
}

.donate-stick .L-column .intro-text {
    height: 38px;
    max-height: 100%;
    width: 100%;
    vertical-align: middle;
    align-items: center;
    justify-content: center;
    display: table;
}

.donate-stick .R-column {
    display: inline-flex;
    flex: 1;
    padding-left: 15px;
    padding-right: 15px;
    align-items: center;
    justify-content: center;
}

/*-捐款固定stick-*/
.btn.btn-donate {
    color: #fff;
    background-color: #d61518;
    border-color: #961819;
}

/*-巨型廣告輪播秀-*/
.index-huge-banner {
    padding: 0;
}

/*--main-content--*/
.main-content {
    padding-top: 0;
}

/*-huge-banner-*/
.huge-banner {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/*-RWD YOUTUBE視頻播放器-*/
.video-player iframe {
    width: 100%;
    height: 350px;
}

@media (min-width: 576px) {
    .video-player iframe {
        width: 100%;
        height: 400px;
    }
}

@media (min-width: 768px) {
    .video-player iframe {
        width: 100%;
        height: 550px;
    }
}

@media (min-width: 992px) {
    .video-player iframe {
        width: 100%;
        height: 650px;
    }
}

@media (min-width: 1200px) {
    .video-player iframe {
        width: 100%;
        height: 650px;
    }
}

/*-list-style-*/
.list-type {
    border-bottom: 1px solid #dedede;
    padding-bottom: 5px;
    font-size: 16px;
    text-align: left;
    margin-bottom: 15px;
}

@media (min-width: 768px) {
    .list-type {
        font-size: 20px;
    }
}

.list-type a {
    color: #070b1b;
}

.list-type a:link {
    color: #070b1b;
}

.list-type a:visited {
    color: #070b1b;
}

.list-type a:active {
    color: #070b1b;
}

.list-type a:hover {
    color: #070b1b;
}

.list-type-date {
    text-align: left;
}

@media (min-width: 575px) {
    .list-type-date {
        text-align: center;
    }
}

.media-type {
    border-right: 3px solid #dedede;
    border-left: 3px solid #dedede;
}

.media-title {
    padding-top: 15px;
    padding-left: 15px;
}

@media (min-width: 575px) {
    .media-title {
        padding-top: 0;
        padding-left: 45px;
    }
}

@media (max-width: 960px) {
    .list-type {
        font-size: 16px;
    }
}

@media (max-width: 575px) {
    .list-type {
        margin-bottom: 10px;
    }

    .list-type-date {
        color: #d61518;
        flex: 0 0 100px;
        font-size: 14px;
        padding-right: 5px;
    }

    .list-type-date:after {
        content: "/";
        position: absolute;
        right: -5px;
        top: 0;
        color: #ccc;
    }

    .media-type {
        border-right: 0;
        border-left: 0;
        color: #707070;
        flex: 0 0 100px;
        padding: 0;
        text-align: left !important;
        font-size: 14px;
        padding-left: 12px;
    }

    .media-title {
        padding-top: 5px;
        padding-left: 15px;
    }
}

.news-paper-border {
    border: 3px solid #ffb9c2;
}

/*-表單設計-*/
legend.form-title {
    border-bottom: 3px solid #b17e84;
    margin-bottom: 35px;
    color: #b17e84;
}

.lh1-5 {
    line-height: 1.5;
}

/*-廠商合作-*/
.copli {
    padding-left: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 160px;
    background-position: top right;
    background-repeat: no-repeat;
}

.copli h3 {
    border-left: 5px solid #ff6c7e;
    padding-left: 10px;
}

.copli-1 {
    background-image: url(../../themes/frontend/rwd/images/coperation_07.jpg);
}

.copli-2 {
    background-image: url(../../themes/frontend/rwd/images/coperation_09.jpg);
}

.copli-3 {
    background-image: url(../../themes/frontend/rwd/images/coperation_13.jpg);
}

.copli-4 {
    background-image: url(../../themes/frontend/rwd/images/coperation_14.jpg);
}

.copli-5 {
    background-image: url(../../themes/frontend/rwd/images/coperation_17.jpg);
}

.copli-6 {
    background-image: url(../../themes/frontend/rwd/images/coperation_18.jpg);
}

.copli-7 {
    background-image: url(../../themes/frontend/rwd/images/coperation_21.jpg);
}

.copli-8 {
    background-image: url(../../themes/frontend/rwd/images/coperation_22.jpg);
}

.copli-9 {
    background-image: url(../../themes/frontend/rwd/images/coperation_25.jpg);
}

.copli-10 {
    background-image: url(../../themes/frontend/rwd/images/coperation_26.jpg);
}

/*-救援後續-*/
.case-li {
    margin-bottom: 20px;
}

.case-li img {
    background-color: #ffefef;
    width: 100%;
}

.case-title {
    width: 100%;
    height: 3.2rem;
    display: table;
    line-height: 1.1;
    font-size: 16px;
    background-color: #ffefef;
}

.case-title div {
    display: table-cell;
    margin-top: 10px;
    margin-bottom: 10px;
}

.case-donate {
    padding-bottom: 15px;
    padding-left: 5px;
    padding-right: 5px;
    background-color: #ffefef;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: none;
    flex-wrap: nowrap;
}

.case-donate .btn {
    width: calc(100% / 2 - 5px * 2);
    margin: 0 5px;
    padding: 0.375rem 5px;
}

.case-donate .btn-blue {
    color: #fff;
    background-color: #e67187;
    border-color: #bd5e70;
}

.btn-pink {
    color: #fff;
    background-color: #ff9986;
    border-color: #e88d7d;
}

/* 財務報告 */
.financial-image {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: none;
    flex-wrap: wrap;
    margin: 0 0 40px;
    border: 1px dotted #aaa;
    overflow: hidden;
}

.financial-image .item {
    width: 50%;
    padding: 15px;
    border-right: 1px dotted #aaa;
    border-bottom: 1px dotted #aaa;
    background-color: #fff;
    z-index: 1;
    position: relative;
    top: 1px;
}

.financial-image .item:nth-child(2n) {
    border-right: 0;
}

.financial-image .item img {
    width: 100%;
}

.financial-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: none;
    flex-wrap: nowrap;
    width: 100%;
    border-bottom: 1px solid #dedede;
    padding: 15px 0;
    color: #070b1b;
    font-size: 20px;
    line-height: 1.5;
    position: relative;
}

.financial-item a {
    color: #070b1b;
    font-size: 18px;
    display: block;
}

.financial-item a:hover {
    text-decoration: none;
    color: #d61518;
}

.financial-item__col {
    padding: 0 15px;
    position: relative;
    display: block;
}

.financial-item__arrow {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 7px;
    border-color: transparent transparent transparent #070b1b;
}

.financial-item__col:nth-child(1) {
    width: calc(100% - 180px);
    padding-left: 25px;
}

.financial-item__col:nth-child(2) {
    width: 180px;
    text-align: center;
    border-left: 3px solid #dedede;
}

.financial-item__download {
    margin-left: 12px;
    width: 28px;
    height: 28px;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin-top: -5px;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABZVJREFUeNrsW0FoFGcUfjsUdcNiyCFNtzTQCDabQ3IoWJSioLRWvTRHQ2rTgwHpoTaIEkqRYg+VliLpoYSaQxeb6rEnE6gkEC2VeCkJNImCKURY00DVshhTaNPvNW/0zZ+Z3Zn5Z6O79IOP7M7Mvnnf///zv/e/f5L6tfEFShhbwJ3gHrAVzIHNYAZMyzXLYBFcAGfBOXACvA4+inKztt8LJc8/l5CoOrATPALuBTeXuT4tbARfVcdXwHHwAvgD+NDWMVuBWfAUeFR6yBbcMAeE3MND4OdgIa7BVMwhWg+eAY+Bm0pcxz1wE7wFPhCnSRqDbWwHX5EREIS/wEHwtNiINETjCOwCz4FNPuf+Aa+AI+AYOA2ulmtksB3cBx4E3wAdn+sWwT7wYqUEZqQlu33O3QUHwLzNcFLDvgc8Dvo5NywjpxhGoBPypi3gDR9x98SRbeDZBMSR2DgrNo/LPTS6xZeWMMbCCOwAf5LpXiMvYeArmfaTxrLYbpV7aeTEpw5bgWzgqgwbF0V5Dt8Dl6jyWJJ7dalJyh3KV2eez3bEFchDYBTcqo7dAV8DL9HG45Lc+446xr6NQmRLVIE8oVw2eo4zjl3gDD09zIgPs0ZPXobITBSBg8Yzx632ptF6cbBXaAM/X3LicyiBXcZsyeN+fwLiPpLYOCafbUXuN57JbvRiVzmB9RLENXoTGpZvB3y2Ga69xrFzEFlfSuAZI0PJJzihbA74bDvx6BDSJBp8BWYlQ9BB/CQ9+zhpJAPH0ItZP4GnjMT5kw2Kc1ZAqrYkvrrYJFo8AutkyaNzy/NUPTgvPrs4il6s0wI7jfXcQIXSr0r14rL4rON4pxZ4xFjy5Kn6kBffSWtypIaig++VhFYFG92LBfH9cVKBYbrFkQKRnrZHqHoxYoSinY5UvzTGqlig6fseR9ZbuoYyXcUCp8lbiWt1jKT6ZogayrP8HK6KhsdJOAtsVgduUfVDa2h2jPj3oAYEag0ZFpg2lkbVDq0h7VCNwzFSskwNaNIalh2jS+trQKDWUGSBC+rA9phGuar1Ma1tmtjiLbHVEvP3WsMCC9QVKt4ISUU0yDtU18BPJVXqtxDHvx0VW9co4u4Xcs+UaHAxywLn1AFeQ7XHGPMvqu+fxRTZL791wTa3RrTRTt6dqjkWOGFctC+i0fu0VmInC5GmOMY34B8RfTF9n2CBvG28og4ejNH6H9L6umRYkX7ivgffj+GH9p01XWeBvCc+rk7w/lw2ouFVcSiqyCBx74J/R3z+suK7i3Hkpo/cQH/BiI09MVovqsjExAl6yFtE+0+TuwHKD+aiCpJcwNkWsy7DM9nX5C1BklQJsj6frcTxBih6j9PN2/Rkw5RjexPOPXTUOnBI/Y4v7I051Qf1ZDbgs23Pkfiqd4OHWJzuQfemv9GT2ug9WQzHrY0G9SQlLK5RQl2DfOeXFl6WGo1nzBaMVucffGERtIN6MklxJD42qO+DrjhTIOO0PIv6wT1cIZFJiDtsTIiLooGCBPJisc84xlXjtgRETqpjvyQgro3WV9/70HueRXvQayTfkXePkPfjdpH9HuEJ+fulpZ2XwJ/lr4thiHtn3UQQIJDDxQ2jIMVJeRK7vJSAuB99fNsBgUW/BW/Qsv8QeSvcOWm1tqcork18yBmT4yE/caUEMuZlffen0XqTlhOPzYQyaQxL9u0AxM2XKlmUwhS42+hJHr78vti3EoMqjUa510WjHME+7Ya4qXI1GQoh8nVjYeyGEA6wH5C3MpcU0mJ7zic3nhWfpsIUncKAh8AOWnsRjoxkYEDywP4YqxA/ZMXWbbHdYJwfFl/mQ6VT/79OGVy5qtkXYs3hlOQrzWaoKvtKc1LviwahIMOmSTKfUaP8ERUrYqNbbPaR5W5zqtb/reBfAQYA8JqQZDsTIK8AAAAASUVORK5CYII=);
    background-repeat: no-repeat;
    background-size: contain;
}

.landing-statistics {
    font-size: 16px;
    text-align: center;
    background-color: #f8f4eb;
    height: 350px;
    padding-top: 50px;
    position: relative;
}

.landing-statistics .container {
    padding: 0 50px;
    max-width: 1100px;
}

.landing-statistics .item {
    padding: 0 5px;
}

.landing-statistics .image {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    margin-bottom: 10px;
}

.landing-statistics img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.landing-statistics .text-block {
    margin-bottom: 5px;
    line-height: 1.5;
}

.landing-statistics .main-text {
    font-size: 20px;
    font-weight: 700;
    color: #d72c2c;
    margin-bottom: 15px;
}

.landing-statistics .btn-row {
    text-align: center;
}

.landing-statistics .btn {
    font-size: 14px;
    line-height: 36px;
    height: 38px;
    width: 90px;
    color: #333;
    border: 1px solid #999;
    padding: 0;
    background-color: #f8f4eb;
}

.landing-statistics .btn:hover,
.landing-statistics .btn:active {
    color: #fff;
    border: 1px solid #961819;
    background-color: #d61518;
}

.landing-statistics__bg-1 {
    position: absolute;
    bottom: 0;
    left: calc(50% - 880px);
    pointer-events: none;
}

.landing-statistics__bg-2 {
    position: absolute;
    bottom: 0;
    right: calc(50% - 950px);
    pointer-events: none;
}

.landing-statistics .swiper-button-disabled {
    display: none;
}

.landing-statistics .swiper-pagination {
    display: none;
    width: 100%;
}

.landing-statistics .swiper-pagination {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -khtml-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 15px;
    width: 100%;
}

.landing-statistics .swiper-pagination-bullet {
    position: relative;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    background-color: #ccc;
    opacity: 1;
}

.landing-statistics .swiper-pagination-bullet-active {
    width: 10px;
    height: 10px;
    top: 0;
    background-color: #d61518;
}

.landing-statistics .swiper-button-prev,
.landing-statistics .swiper-button-next {
    width: 35px;
    height: 35px;
    background-color: #aaa;
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
    margin-top: -17.5px;
    z-index: 2;
}

.landing-statistics .swiper-button-prev {
    background-image: url(../../themes/frontend/rwd/images/icon-arrow-left.svg);
    left: 0;
}

.landing-statistics .swiper-button-next {
    background-image: url(../../themes/frontend/rwd/images/icon-arrow-right.svg);
    right: 0;
}

@media (max-width: 1440px) {
    .landing-statistics__bg-1 {
        left: -5%;
        width: 20%;
    }

    .landing-statistics__bg-2 {
        right: -5%;
        width: 20%;
    }
}

@media (max-width: 1080px) {
    .landing-statistics {
        padding-top: 35px;
    }

    .landing-statistics__bg-1 {
        left: -10%;
        width: 30%;
    }

    .landing-statistics__bg-2 {
        right: -10%;
        width: 30%;
    }

    .landing-statistics .container {
        max-width: 740px;
    }

    .landing-statistics .swiper-pagination {
        display: block;
    }

    .landing-statistics .swiper-button-disabled {
        display: block;
    }
}

@media (max-width: 992px) {
    .financial-item__col:nth-child(1) {
        width: calc(100% - 100px);
        padding-left: 25px;
    }

    .financial-item__col:nth-child(2) {
        width: 100px;
        font-size: 16px;
    }

    .financial-item__download {
        display: block;
        margin: 0 auto;
    }

    .financial-item a {
        font-size: 12px;
        line-height: 30px;
    }

    .case-donate .btn {
        width: calc(100% / 2 - 2px * 2);
        margin: 0 2px;
        padding: 0.375rem 0;
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .landing-statistics .container {
        max-width: 500px;
    }
}

@media (max-width: 767px) {
    .financial-image .item {
        width: 100%;
        border-right: 0;
        padding: 10px;
    }
}

@media (max-width: 575px) {
    .landing-statistics {
        padding-top: 20px;
        height: 320px;
    }

    .landing-statistics__bg-1 {
        width: 45%;
    }

    .landing-statistics__bg-2 {
        width: 45%;
    }

    .landing-statistics .swiper-pagination {
        bottom: 10px;
    }
}

.charitySale {
    position: relative;
    width: calc(100% - 20px * 2);
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 55px;
    padding-bottom: 70px;
}

.charitySale__inner {
    position: relative;
}

.charitySale a {
    text-decoration: none;
}

.charitySale .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: none;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    margin-bottom: 55px;
}

.charitySale .list .item {
    width: 220px;
    border-radius: 50%;
    border: 2px solid #ff5722;
    margin: 0 22px;
    overflow: hidden;
}

.charitySale img {
    width: 100%;
    max-width: 100%;
}

.charitySale .box {
    border: 1px solid #d0d0d0;
    border-radius: 10px;
    position: relative;
    padding: 20px 40px 40px;
    background-color: #fff;
    font-size: 18px;
}

.charitySale .heading {
    position: relative;
    font-weight: 700;
    color: #f84848;
    margin-bottom: 15px;
    font-size: 20px;
}

.charitySale .heading img {
    position: absolute;
    left: -53px;
    top: -2px;
    width: 40px;
}

.charitySale .img {
    position: absolute;
    bottom: calc(100% - 10px);
    max-width: 226px;
    width: 22.6%;
    pointer-events: none;
}

.charitySale .img-1 {
    left: 0;
}

.charitySale .img-2 {
    right: 0;
}

@media (max-width: 640px) {
    .charitySale {
        padding-top: 20px;
        padding-bottom: 40px;
    }

    .charitySale .list {
        margin-bottom: 20px;
        display: block;
    }

    .charitySale .list .item {
        width: 150px;
        border: 1px solid #ff5722;
        margin: 0 auto 15px;
    }

    .charitySale .img {
        width: 30%;
    }
}

/*聯合國永續發展目標 (SDGs)*/
.SDGs {
    max-width: 1110px;
    margin: 60px auto;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0.025em;
    width: calc(100% - 15px * 2);
}

.SDGs p {
    text-align: justify;
    margin: 0;
}

.SDGs p + p {
    margin: 30px 0 0;
}

.SDGs img {
    width: 100%;
    max-width: 100%;
    display: block;
}

.SDGs-intro {
    margin-bottom: 30px;
    color: #000;
}

.SDGs-logo {
    width: 220px;
    margin: 0 auto 30px;
}

.SDGs-intro__line {
    margin-bottom: 6px;
}

.SDGs-intro__content {
    background-color: #efefef;
    padding: 35px;
}

.SDGs-intro__inner {
    max-width: 948px;
    margin: 0 auto;
}

.SDGs-intro .heading {
    margin-bottom: 30px;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
}

.SDGs-intro .heading span {
    display: inline-block;
}

.SDGs-section {
    display: flex;
    flex-wrap: nowrap;
    position: relative;
}

.SDGs-section + .SDGs-section {
    margin-top: 25px;
}

.SDGs-section.reverse {
    flex-direction: row-reverse;
}

.SDGs-section.align-center {
    align-items: center;
}

.SDGs-section.reverse .SDGs-section__border {
    left: inherit;
    right: calc(41.44% / 2);
}

.SDGs-section__border {
    position: absolute;
    top: 0;
    left: calc(41.44% / 2);
    width: calc(100% - 41.44% / 2);
    height: 100%;
    border: 3px solid #efefef;
}

.SDGs-section__image {
    width: 41.44%;
    margin: 30px 0;
    position: relative;
}

.SDGs-section__content {
    width: calc(100% - 41.44%);
    padding: 30px 40px;
    position: relative;
}

@media (max-width: 640px) {
    .SDGs {
        margin: 40px auto;
    }

    .SDGs-logo {
        width: 160px;
    }

    .SDGs-intro__content {
        padding: 30px 20px;
    }

    .SDGs-section {
        display: block;
    }

    .SDGs-section.reverse .SDGs-section__border {
        left: 0;
        right: 0;
    }

    .SDGs-section__border {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .SDGs-section__image {
        width: calc(100% - 20px * 2);
        margin: 0 20px;
    }

    .SDGs-section__content {
        width: 100%;
        padding: 20px;
    }
}

/*貓狗認養區*/
.stray-adoption {
    max-width: 1110px;
    margin: 60px auto;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0.025em;
    width: calc(100% - 15px * 2);
}

.stray-adoption img {
    width: 100%;
    max-width: 100%;
    display: block;
}

.stray-list {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin: -15px;
}

.stray-list .item {
    margin: 15px;
    width: calc(100% / 4 - 15px * 2);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.stray-list .image {
    position: relative;
    overflow: hidden;
}

.stray-list .image:before {
    content: "";
    position: relative;
    padding-top: 100%;
    display: block;
}

.stray-list .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stray-list .content {
    text-align: center;
    background-color: #fff;
    padding: 25px 20px 20px;
    position: relative;
    box-shadow: 0 -10px 5px rgba(0, 0, 0, 0.2);
}

.stray-list .icon {
    position: absolute;
    top: -24px;
    left: calc(50% - 24px);
    width: 48px;
    height: 48px;
    box-shadow: 0 -10px 5px rgba(0, 0, 0, 0.2);
    overflow: hidden;
    background-color: #fff;
    border-radius: 50%;
}

.stray-list a {
    color: #000;
    text-decoration: none;
}

.stray-list a:hover img,
.stray-list a:active img {
    filter: brightness(1.1);
}

.stray-list .main-text {
    font-size: 20px;
    font-weight: 700;
}

.stray-list .sub-text {
    font-size: 16px;
}

@media (max-width: 767px) {
    .stray-list .item {
        width: calc(100% / 2 - 15px * 2);
    }
}

@media (max-width: 640px) {
    .stray-adoption {
        margin: 40px auto;
    }
}

@media (max-width: 480px) {
    .stray-list .item {
        width: calc(100% - 15px * 2);
    }
}

.stray-detail {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}

.stray-detail__content {
    width: calc(100% - 255px);
    padding-right: 30px;
}

.stray-detail__side {
    width: 255px;
}

.stray-detail__side .section {
    width: 100%;
    border-radius: 10px;
    border: 2px solid #e0e0e0;
    margin-bottom: 25px;
    padding: 30px 15px 15px;
}

.stray-detail__content .section {
    margin-bottom: 30px;
    font-size: 16px;
    line-height: 24px;
    padding: 0 80px;
    position: relative;
}

.stray-detail__content .section p {
    text-align: justify;
}

.stray-detail .main {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin-bottom: 45px;
    padding-top: 30px;
}

.stray-detail .main .bg {
    position: absolute;
}

.stray-detail .main .bg-1 {
    width: 440px;
    top: -40px;
    left: -20px;
    z-index: -1;
}

.stray-detail .main .bg-2 {
    width: 70px;
    top: 160px;
    left: 30px;
    z-index: 1;
}

.stray-detail .main .bg-3 {
    width: 70px;
    top: 235px;
    left: 290px;
    z-index: 1;
}

.stray-detail .main .image {
    width: 255px;
    height: 255px;
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.stray-detail .main .image:before {
    content: "";
    position: relative;
    padding-top: 100%;
    display: block;
}

.stray-detail .main .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stray-detail .main .image i {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    color: #fff;
    font-size: 36px;
    line-height: 40px;
    margin-top: -20px;
    text-align: center;
    opacity: 0;
    transition: 0.5s ease;
}

.stray-detail .main a:hover i,
.stray-detail .main a:active i {
    opacity: 1;
}

.stray-detail .main .content {
    width: calc(100% - 255px);
    padding-left: 30px;
    position: relative;
    padding-top: 60px;
    padding-bottom: 60px;
    letter-spacing: 0.1em;
}

.stray-detail .main .main-text {
    font-size: 32px;
    line-height: 44px;
    font-weight: 700;
    color: #000;
}

.stray-detail .main .sub-text {
    font-size: 18px;
    line-height: 30px;
    color: #404040;
    margin-top: 10px;
}

.stray-detail .main .action {
    position: absolute;
    bottom: 0;
    right: 80px;
}

.stray-detail .main .btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    position: relative;
    background-color: #d61547;
    color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    width: 164px;
    height: 48px;
    line-height: 48px;
    padding: 0;
}

.stray-detail .main .btn:hover,
.stray-detail .main .btn:active {
    filter: brightness(1.1);
}

.stray-detail .main .btn img {
    width: 32px;
    margin-right: 8px;
}

.stray-detail .heading {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 10px;
    display: flex;
}

.stray-detail .heading img {
    width: 32px;
    margin-right: 5px;
}

.stray-detail .item {
    margin: 0 auto;
    width: 100%;
    max-width: 180px;
}

.stray-detail .item .image {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.stray-detail .item .image:before {
    content: "";
    position: relative;
    padding-top: 100%;
    display: block;
}

.stray-detail .item .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stray-detail .item .content {
    text-align: center;
    padding: 25px 0 35px;
    position: relative;
}

.stray-detail .item .icon {
    position: absolute;
    top: -24px;
    left: calc(50% - 24px);
    width: 48px;
    height: 48px;
    box-shadow: 0 -10px 5px rgba(0, 0, 0, 0.2);
    overflow: hidden;
    background-color: #fff;
    border-radius: 50%;
}

.stray-detail .item a {
    color: #000;
    text-decoration: none;
}

.stray-detail .item a:hover img,
.stray-detail .item a:active img {
    filter: brightness(1.1);
}

.stray-detail .item .main-text {
    font-size: 20px;
    font-weight: 700;
}

.stray-detail .item .sub-text {
    font-size: 16px;
}

.stray-detail .section .swiper-pagination {
    bottom: 0;
}

.stray-detail .section .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #e5e5e5;
    opacity: 1;
}

.stray-detail .section .swiper-pagination-bullet-active {
    background-color: #d61518;
}

.stray-detail .album .content {
    position: relative;
}

.stray-detail .album .swiper-slide {
    width: 85px;
}

.stray-detail .album .swiper-button-prev,
.stray-detail .album .swiper-button-next {
    width: 32px;
    height: 32px;
    margin-top: -16px;
    background: none;
}

.stray-detail .album .swiper-button-prev,
.stray-detail .album .swiper-button-next {
    width: 32px;
    height: 32px;
    margin-top: -16px;
    background: none;
}

.stray-detail .album .swiper-button-prev {
    left: -45px;
}

.stray-detail .album .swiper-button-next {
    right: -45px;
}

.stray-detail .album .swiper-button-next::after,
.stray-detail .album .swiper-button-prev::after {
    display: none;
}

.stray-detail .swiper-button-prev:hover,
.stray-detail .swiper-button-prev:active {
    filter: brightness(1.2);
}

.stray-detail .swiper-button-next:hover,
.stray-detail .swiper-button-next:active {
    filter: brightness(1.2);
}

.stray-album-swiper {
    padding: 0;
    width: 100%;
    margin-left: 0;
    overflow: hidden;
}

.stray-album-swiper .image {
    position: relative;
    width: 75px;
    height: 75px;
    border-radius: 5px;
    overflow: hidden;
    margin: 0 5px;
}

.stray-album-swiper .image:before {
    content: "";
    position: relative;
    padding-top: 100%;
    display: block;
}

.stray-album-swiper .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stray-album-swiper .image i {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    color: #fff;
    font-size: 24px;
    line-height: 30px;
    margin-top: -15px;
    text-align: center;
    opacity: 0;
    transition: 0.5s ease;
}

.stray-album-swiper a:hover i,
.stray-album-swiper a:active i {
    opacity: 1;
}

@media (max-width: 1080px) {
    .stray-detail__content .section {
        padding: 0 45px;
    }

    .stray-detail .main .bg-1 {
        left: -55px;
        top: -55px;
    }

    .stray-detail .main .bg-2 {
        left: -5px;
        top: 130px;
    }

    .stray-detail .main .bg-3 {
        left: 255px;
        top: 205px;
    }

    .stray-detail .main .action {
        right: 45px;
    }
}

@media (max-width: 940px) {
    .stray-detail {
        display: block;
    }

    .stray-detail__content {
        width: 100%;
        padding-right: 0;
        margin-bottom: 40px;
    }

    .stray-detail__side {
        width: 100%;
    }

    .stray-detail__side .section {
        max-width: 300px;
        margin: 0 auto 25px;
    }

    .stray-detail .main .content {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .stray-detail .main .main-text {
        font-size: 28px;
        line-height: 36px;
    }
}

@media (max-width: 640px) {
    .stray-detail .main .bg-1 {
        left: calc(50% - 440px / 2);
        top: -55px;
    }

    .stray-detail .main .bg-2 {
        left: calc(50% - 225px + 60px);
        top: 130px;
    }

    .stray-detail .main .bg-3 {
        left: calc(50% + 225px / 2 - 70px / 2);
        top: 205px;
    }

    .stray-detail .main {
        display: block;
        text-align: center;
    }

    .stray-detail .main .image {
        margin: 0 auto;
    }

    .stray-detail .main .content {
        width: 100%;
        padding-left: 0;
        padding-top: 30px;
        padding-bottom: 20px;
    }

    .stray-detail .main .action {
        position: relative;
        bottom: 0;
        right: 0;
        width: 100%;
    }

    .stray-detail .main .btn {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .stray-detail__content .section {
        padding: 0 30px;
    }

    .stray-detail .album .swiper-button-prev {
        left: -40px;
    }

    .stray-detail .album .swiper-button-next {
        right: -40px;
    }
}

/*徵中途家庭*/
.fosters {
    width: calc(100% - 20px * 2);
    max-width: 1110px;
    margin: 0 auto;
    padding: 60px 0;
    font-size: 18px;
    line-height: 32px;
}

.fosters a {
    color: #405bb4;
}

.fosters img {
    width: 100%;
}

.fosters-group {
    display: flex;
    flex-wrap: wrap;
}

.fosters-image {
    width: 36%;
}

.fosters-content {
    width: calc(100% - 36%);
    padding-right: 50px;
}

.fosters .heading {
    position: relative;
    color: #d61518;
    font-size: 30px;
    line-height: 36px;
    font-weight: 700;
    margin-bottom: 35px;
}

.fosters .heading:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    top: 50%;
    margin-top: -1px;
    background-color: #d61518;
    display: block;
}

.fosters .heading span {
    position: relative;
    z-index: 1;
    background-color: #fff;
    padding-right: 15px;
    display: inline-flex;
}

.fosters .heading br {
    display: none;
}

.fosters .blockquote {
    position: relative;
    text-align: center;
    padding: 25px 20px;
    background-color: #f5f5f5;
    margin-bottom: 30px;
    font-weight: 700;
    font-size: 20px;
    line-height: 36px;
}

.fosters .blockquote p {
    margin: 0;
    text-align: center;
}

.fosters .blockquote span {
    display: inline-block;
}

.fosters-content p {
    text-align: justify;
    line-break: anywhere;
}

.fosters .blockquote:before,
.fosters .blockquote:after {
    position: absolute;
    font-size: 72px;
    font-weight: 700;
    line-height: 1;
    font-family: arial;
    color: #aaa;
}

.fosters .blockquote:before {
    content: "“";
    position: absolute;
    top: -12px;
    left: 10px;
}

.fosters .blockquote:after {
    content: "”";
    position: absolute;
    bottom: -48px;
    right: 10px;
}

@media (max-width: 640px) {
    .fosters {
        width: calc(100% - 15px * 2);
        padding: 40px 0 0;
    }

    .fosters .heading {
        font-size: 24px;
        text-align: center;
    }

    .fosters .heading br {
        display: block;
    }

    .fosters .heading span {
        padding: 0 16px;
    }

    .fosters-image {
        width: 100%;
    }

    .fosters-content {
        width: 100%;
        padding-right: 0;
        margin-bottom: 40px;
    }

    .fosters .blockquote {
        padding: 25px 15px;
        font-size: 18px;
        line-height: 32px;
    }

    .fosters .blockquote:before,
    .fosters .blockquote:after {
        color: #aaa;
    }
}

.cases {
    padding: 45px 0;
}

.cases-title {
    font-size: 1.75rem;
    text-align: left;
    font-weight: 500;
    margin-bottom: 40px;
    border-left: 8px solid #ff6c7e;
    padding-left: 10px;
}

.cases-title span {
    display: inline-block;
}

.cases-grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.cases-grid .grid-brand {
    width: 50%;
    padding-right: 40px;
}

.cases-grid .grid-video {
    width: 50%;
    padding-left: 40px;
    border-left: 1px dotted #000;
}

.cases-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -20px;
}

.cases-list .item {
    width: calc(100% / 2 - 20px * 2);
    position: relative;
    margin: 20px;
}

.cases-list .item a {
    text-decoration: none;
    color: #000;
    transition: 0.5s;
}

.cases-list .image {
    position: relative;
    margin: 0 auto 10px;
    background-color: #f0f0f0;
    position: relative;
    overflow: hidden;
}

.cases-list .image:before {
    content: "";
    padding-top: 56.25%;
    display: block;
}

.cases-list .image img {
    display: block;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.cases-list .main-text {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 0;
}

.cases-list .sub-text {
    font-size: 16px;
    text-align: center;
}

.cases-list--video .main-text {
    text-align: left;
    font-weight: 400;
}

.cases-list--video .image img {
    object-fit: cover;
}

.cases-list--video .image:after {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    width: 32px;
    height: 32px;
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,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);
}

@media (max-width: 767px) {
    .cases {
        padding: 25px 0;
    }

    .cases-title {
        font-size: 24px;
        margin-bottom: 15px;
    }

    .cases-grid .grid-brand {
        width: 100%;
        padding-right: 0;
        margin-bottom: 30px;
    }

    .cases-grid .grid-video {
        width: 100%;
        padding-left: 0;
        border-left: 0;
        border-top: 1px dotted #000;
        padding-top: 30px;
        padding-bottom: 20px;
    }

    .cases-list {
        margin: -10px;
    }

    .cases-list .item {
        width: calc(100% / 2 - 10px * 2);
        margin: 10px;
    }

    .cases-list--brand .image:before {
        padding-top: 100%;
    }
}

@media (max-width: 640px) {
    .cases-list .main-text {
        font-size: 18px;
    }

    .cases-list .sub-text {
        font-size: 16px;
    }

    .cases-list--video .item {
        width: calc(100% - 10px * 2);
        margin: 10px;
    }

    .cases-list--video .image:after {
        top: 8px;
        left: 8px;
        width: 24px;
        height: 24px;
    }
}

/* 為毛孩發聲的文創精品《不完美的寶貝》 ｜繪本 x 桌遊 = 多元的深度救援體驗 */
.animalprotection {
    position: relative;
    z-index: 0;
    overflow: hidden;
}

.animalprotection img {
    width: 100%;
    max-width: 100%;
    display: block;
}

.animalprotection-kv {
    background-size: auto 100%;
    background-image: url(../../themes/frontend/rwd/images/animalprotection_bg.jpg);
}

.animalprotection .sm-view {
    display: none;
}

.animalprotection-section {
    width: calc(100% - 15px * 2);
    max-width: 1110px;
    margin: 0 auto;
}

.animalprotection-sticky {
    position: fixed;
    bottom: 10px;
    right: 10px;
    width: 132px;
}

.animalprotection-sticky.change-bottom {
    position: absolute;
}

@media (max-width: 750px) {
    .animalprotection .lg-view {
        display: none;
    }

    .animalprotection .sm-view {
        display: block;
    }

    .animalprotection-section {
        width: 100%;
    }

    .animalprotection-sticky {
        bottom: 5px;
        right: 5px;
        width: 90px;
    }
}

.carousel-indicators {
    bottom: -5px;
}

/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules)
   You need this once per page no matter how many menu trees or different themes you use.
-------------------------------------------------------------------------------------------*/
.sm {
    box-sizing: border-box;
    position: relative;
    z-index: 9999;
    -webkit-tap-highlight-color: transparent;
}

.sm,
.sm ul,
.sm li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    direction: ltr;
}

.sm-rtl,
.sm-rtl ul,
.sm-rtl li {
    direction: rtl;
    text-align: right;
}

.sm > li > h1,
.sm > li > h2,
.sm > li > h3,
.sm > li > h4,
.sm > li > h5,
.sm > li > h6 {
    margin: 0;
    padding: 0;
}

.sm ul {
    display: none;
}

.sm li,
.sm a {
    position: relative;
}

.sm a {
    display: block;
}

.sm a.disabled {
    cursor: default;
}

.sm::after {
    content: "";
    display: block;
    height: 0;
    font: 0px/0 serif;
    clear: both;
    overflow: hidden;
}

.sm *,
.sm *::before,
.sm *::after {
    box-sizing: inherit;
}

.sm-blue {
    background: transparent;
    text-align: center;
    font-size: 18px;
    line-height: 36px;
    font-weight: 400;
}

.sm-blue a:hover,
.sm-blue a:focus,
.sm-blue a:active {
    color: #e60012;
}

.sm-blue a:hover:before,
.sm-blue a:focus:before,
.sm-blue a:active:before {
    opacity: 1;
}

.sm-blue a.current {
    color: #e60012;
}

.sm-blue a.disabled {
    color: #a1d1e8;
}

.sm-blue > li > a {
    padding: 0 12px;
    color: #000;
    font-weight: 500;
    line-height: 36px;
    text-decoration: none;
}

.sm-blue > li > a:hover,
.sm-blue > li > a:focus,
.sm-blue > li > a:active {
    color: #000;
}

.sm-blue > li > a:before {
    content: "";
    position: absolute;
    bottom: -25px;
    left: 0;
    width: 100%;
    height: 6px;
    background: #e60012;
    opacity: 0;
}

.sm-blue > li > a .sub-arrow {
    display: none;
}

.sm-blue .sub-arrow {
    position: absolute;
    top: 50%;
    margin-top: -5px;
    left: 17px;
    width: 14px;
    height: 11px;
    overflow: hidden;
    background-position: center center;
    background-size: contain;
    background-image: url(../../themes/frontend/rwd/images/menu-arrow.svg);
    background-repeat: no-repeat;
}

.sm-blue ul {
    background: #fff;
    border-radius: 9px;
}

.sm-blue ul ul {
    display: block !important;
}

.sm-blue ul ul a {
    color: #000;
    font-size: 18px;
    font-weight: 400;
}

.sm-blue ul ul a:hover,
.sm-blue ul ul a:focus,
.sm-blue ul ul a:active {
    color: #eab651;
}

.sm-blue a.highlighted {
    font-weight: 700;
    text-decoration: none;
    color: #e60012;
}

.sm-blue a.highlighted:before {
    opacity: 1;
}

.sm-blue a.highlighted:hover,
.sm-blue a.highlighted:focus,
.sm-blue a.highlighted:active {
    color: #e60012;
}

.sm-blue ul a.current {
    color: #eab651;
}

.sm-blue ul a.disabled {
    color: #b3b3b3;
}

.sm-blue ul .has-submenu {
    position: relative;
    padding-left: 44px !important;
    text-align: left;
    font-weight: 700;
}

.sm-blue ul .highlighted {
    color: #eab651;
}

.sm-blue ul ul {
    padding-left: 45px;
    text-align: left;
}

.sm-blue ul ul li {
    padding: 6px 0;
    border-top: 1px solid #c8c8c8;
    margin-right: 25px;
}

.sm-blue ul ul li a {
    padding: 0;
}

.sm-blue .text-small {
    font-size: 12px;
}

@media (min-width: 1024px) {
    .sm-blue {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: nowrap;
        -moz-flex-wrap: nowrap;
        -ms-flex-wrap: none;
        flex-wrap: nowrap;
    }

    .sm-blue ul {
        position: absolute;
        padding: 0;
        background: #fff;
        min-width: 100% !important;
        max-width: 149px !important;
        width: 149px !important;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
    }

    .sm-blue > li > a {
        padding: 0 20px;
    }

    .sm-blue > li > a > .sub-arrow {
        display: none;
    }

    .sm-blue > li > ul {
        margin-top: 25px !important;
        left: 50% !important;
        transform: translateX(-50%);
    }

    .sm-blue ul ul {
        background: #fff;
        border-top: 0;
        position: static;
        margin: 0 !important;
    }

    .sm-blue ul a {
        padding: 8px 15px;
        color: #000;
    }

    .sm-blue > li {
        position: relative;
    }

    .sm-blue > li:before {
        content: "";
        position: absolute;
        top: 10px;
        left: 0;
        width: 1px;
        height: 20px;
        background: #000;
        opacity: 0.3;
    }

    .sm-blue > li:first-child:before {
        display: none;
    }

    .sm-blue > li > ul {
        padding: 20px 0;
    }

    .sm-blue > li > ul:before {
        content: "";
        position: absolute;
        top: -13px;
        left: calc(50% - 37px / 2);
        width: 37px;
        height: 27px;
        overflow: hidden;
        background-position: center center;
        background-size: contain;
        background-image: url(../../themes/frontend/rwd/images/site-menu-arrow.svg);
        background-repeat: no-repeat;
    }
}

@media (max-width: 1023px) {
    .sm-blue {
        max-width: 100%;
        margin: 0 auto;
    }

    .sm-blue .sub-arrow {
        margin-top: -7px;
    }

    .sm-blue > li {
        margin-bottom: 0;
    }

    .sm-blue > li > a {
        margin-bottom: 0;
        display: block;
        padding: 8px 0;
        border-bottom: 1px solid #ccc;
    }

    .sm-blue > li > a:before {
        bottom: -1px;
        height: 3px;
        display: none;
    }

    .sm-blue > li > ul {
        padding: 8px 0;
        background-color: #f2f2f2;
    }

    .sm-blue > li > ul > li > a {
        line-height: 24px;
        padding: 8px 0;
    }

    .sm-blue ul ul {
        margin-bottom: 12px;
    }
}

@media (max-width: 1280px) and (min-width: 1024px) {
    .sm-blue > li > a {
        padding: 0 10px;
        font-size: 16px;
    }
}

.sd-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
    z-index: 20;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
}

.sd-header:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #e60012;
}

.sd-header ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sd-header li {
    position: relative;
    margin: 0;
    padding: 0;
}

.sd-header a {
    text-decoration: none;
    color: #000;
}

.sd-header__container {
    position: relative;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}

.sd-header__logo {
    position: absolute;
    top: 25px;
    left: 20px;
    width: 128px;
    z-index: 10;
}

.sd-header__logo img {
    width: 100%;
}

.sd-header__top {
    position: absolute;
    top: 0;
    right: 20px;
    background-color: #e60012;
    height: 33px;
    border-radius: 0 0 10px 10px;
    padding: 0 15px;
}

.sd-header__top ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
}

.sd-header__top ul li + li {
    margin-left: 12px;
}

.sd-header__top a {
    font-size: 12px;
    line-height: 32px;
    font-weight: 500;
    color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
}

.sd-header__top a:active {
    opacity: 0.8;
}

@media (hover: hover) {
    .sd-header__top a:hover {
        opacity: 0.8;
    }
}

.sd-header__top .icon {
    width: 16px;
    height: 16px;
    margin-right: 5px;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-flex;
    vertical-align: middle;
}

.sd-header__top .icon-donate {
    background-image: url(../../themes/frontend/rwd/images/icon-donate.svg);
}

.sd-header__top .icon-podcast {
    background-image: url(../../themes/frontend/rwd/images/icon-podcast.svg);
}

.sd-header__top .icon-charity {
    background-image: url(../../themes/frontend/rwd/images/icon-charity.svg);
}

.header-sticky {
    padding-top: 100px;
}

.site-main-menu {
    position: absolute;
    top: 40px;
    right: 0;
    z-index: 0;
    margin: 0;
    padding: 0;
}

.menu-trigger {
    display: block;
    position: fixed;
    top: 20px;
    right: 20px;
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 40px;
    height: 40px;
    font-size: 0;
    text-indent: 100%;
    white-space: nowrap;
    appearance: none;
    cursor: pointer;
    z-index: 2;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: none;
    background-image: url(../../themes/frontend/rwd/images/menu-toggle.png);
}

.menu-close {
    display: block;
    position: fixed;
    top: 20px;
    right: 20px;
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 40px;
    height: 40px;
    font-size: 0;
    text-indent: 100%;
    white-space: nowrap;
    appearance: none;
    cursor: pointer;
    z-index: 11;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../../themes/frontend/rwd/images/menu-close.png);
    display: none;
}

@media (max-width: 1023px) {
    body {
        padding-top: 86px;
    }

    .menu-close {
        display: block;
    }

    .menu-trigger {
        display: block;
    }

    .sd-header {
        height: 86px;
    }

    .sd-header__logo {
        top: 18px;
        left: 15px;
    }

    .sd-header__top {
        position: relative;
        top: 0;
        right: 0;
        background-color: transparent;
        height: auto;
        border-radius: 0;
        padding: 0;
    }

    .sd-header__top ul {
        margin: -4px;
    }

    .sd-header__top ul li {
        margin: 4px;
    }

    .sd-header__top ul li + li {
        margin-left: 4px;
    }

    .sd-header__top a {
        font-size: 12px;
        line-height: 18px;
        padding: 8px;
        padding-right: 12px;
        border-radius: 20px;
        background-color: #e60012;
    }

    .menu-panel {
        display: none;
        background-color: #fff;
    }

    .menu-panel.is-toggle {
        display: block;
        padding: 86px 0 40px;
        overflow: auto;
        overflow-x: hidden;
        width: 100%;
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 6;
    }

    .menu-panel.is-toggle:before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 86px;
        background-color: #fff;
        z-index: 2;
        border-top: 3px solid #e60012;
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.16);
    }

    .menu-panel.is-toggle .main-menu li {
        -moz-animation: fadeInUp 0.3s both;
        -webkit-animation: fadeInUp 0.3s both;
        animation: fadeInUp 0.3s both;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(1) {
        animation-delay: 0.1s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(2) {
        animation-delay: 0.2s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(3) {
        animation-delay: 0.3s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(4) {
        animation-delay: 0.4s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(5) {
        animation-delay: 0.5s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(6) {
        animation-delay: 0.6s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(7) {
        animation-delay: 0.7s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(8) {
        animation-delay: 0.8s;
    }

    .menu-panel.is-toggle .main-menu li:nth-child(9) {
        animation-delay: 0.9s;
    }

    .menu-panel.is-toggle .menu-close {
        -moz-animation: fadeInDown 0.3s both;
        -webkit-animation: fadeInDown 0.3s both;
        animation: fadeInDown 0.3s both;
    }

    .site-main-menu {
        position: relative;
        top: 0;
        right: 0;
        width: 100%;
        margin-bottom: 40px;
        z-index: 0;
    }
}

@media (max-height: 480px) {
    .menu-panel {
        display: none;
    }

    .menu-panel.is-toggle {
        display: block;
    }

    .main-menu {
        padding: 70px 0;
    }
}

.sd-footer {
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
}

.sd-footer img {
    width: 100%;
    max-width: 100%;
}

.sd-footer__container {
    position: relative;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}

.sd-footer__top {
    border-top: 4px solid #e60012;
    padding: 40px 20px;
}

.sd-footer__top .sd-footer__container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
}

.sd-footer__logo {
    width: 127px;
    margin: 0 auto 20px;
}

.sd-footer__logo a {
    display: block;
}

.sd-footer__menu {
    width: calc(100% - 127px - 60px);
    margin-left: 60px;
}

.sd-footer__info {
    padding: 30px 0;
    width: calc(100% - 20px * 2);
    max-width: 1400px;
    margin: 0 auto;
    border-top: 1px solid #afafaf;
}

.sd-footer__info .sd-footer__container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
}

.sd-footer__bottom {
    background-color: #d0d0d0;
    padding: 20px 10px;
    text-align: center;
    margin: 0;
    font-size: 16px;
    color: #212529;
}

.sd-footer__bottom img {
    max-width: 300px;
}

.sd-footer p {
    margin: 0;
}

.sd-footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sd-footer li {
    position: relative;
    margin: 0;
    padding: 0;
}

.sd-footer a {
    text-decoration: none;
    color: #000;
}

.sd-footer .icon {
    width: 36px;
    height: 36px;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-flex;
    vertical-align: middle;
}

.sd-footer .icon-line {
    background-image: url(../../themes/frontend/rwd/images/icon-line.svg);
}

.sd-footer .icon-facebook {
    background-image: url(../../themes/frontend/rwd/images/icon-facebook.svg);
}

.sd-footer .icon-youtube {
    background-image: url(../../themes/frontend/rwd/images/icon-youtube.svg);
}

.sd-footer .footer-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    border-right: 1px solid #afafaf;
    font-size: 16px;
    line-height: 24px;
}

.sd-footer .footer-info__left {
    border-right: 1px solid #afafaf;
    padding: 0 50px 0 20px;
}

.sd-footer .footer-info__right {
    padding: 0 50px 0 50px;
}

.sd-footer .social-menu ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
}

.sd-footer .social-menu ul li + li {
    margin-left: 12px;
}

.sd-footer .social-menu a {
    opacity: 0.6;
}

.sd-footer .social-menu a:active {
    opacity: 0.5;
}

@media (hover: hover) {
    .sd-footer .social-menu a:hover {
        opacity: 0.5;
    }
}

.sd-footer .menu-section-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    margin: -20px;
}

.sd-footer .menu-section {
    font-size: 18px;
    line-height: 24px;
    color: #000;
    margin: 20px;
    width: calc(100% / 5 - 20px * 2);
}

.sd-footer .menu-section a {
    color: #000;
    font-size: 18px;
    line-height: 24px;
}

.sd-footer .menu-section a:active {
    color: #e60012;
}

@media (hover: hover) {
    .sd-footer .menu-section a:hover {
        color: #e60012;
    }
}

.sd-footer .menu-section__header {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 12px;
    font-weight: 700;
}

.sd-footer .menu-section__content li + li {
    margin-top: 8px;
}

.sd-footer .menu-section__content a {
    color: #444;
    font-size: 16px;
    font-weight: 500;
}

@media (max-width: 1200px) and (min-width: 768px) {
    .sd-footer__top {
        padding: 40px 15px;
    }

    .sd-footer .footer-info__left {
        padding: 0 30px 0 0;
    }

    .sd-footer .footer-info__right {
        padding: 0 30px 0 30px;
    }

    .sd-footer .social-menu {
        padding: 0 0 0 30px;
    }

    .sd-footer .menu-section {
        width: calc(100% / 3 - 20px * 2);
    }
}

@media (max-width: 767px) {
    .sd-footer__top {
        padding: 20px;
    }

    .sd-footer__top .sd-footer__container {
        display: block;
    }

    .sd-footer__logo {
        width: 127px;
        margin: 0 auto 40px;
    }

    .sd-footer__menu {
        width: 100%;
        margin-left: 0;
    }

    .sd-footer__info {
        padding: 20px 0;
    }

    .sd-footer__info .sd-footer__container {
        display: block;
    }

    .sd-footer .footer-info {
        display: block;
        border-right: 0;
        border-bottom: 1px solid #afafaf;
        margin-bottom: 20px;
        font-size: 13px;
        line-height: 21px;
    }

    .sd-footer .footer-info__left {
        border-right: 0;
        border-bottom: 1px solid #afafaf;
        padding: 0 0 20px;
    }

    .sd-footer .footer-info__right {
        padding: 20px 0;
    }

    .sd-footer .menu-section-group {
        margin: -10px;
    }

    .sd-footer .menu-section {
        width: calc(100% / 2 - 10px * 2);
        margin: 10px;
        min-width: inherit;
    }
}

.landing-feature {
    background-color: #f3f3f3;
    padding: 40px 0;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
}

.landing-feature__container {
    width: calc(100% - 20px * 2);
    max-width: 1200px;
    margin: 0 auto;
}

.landing-feature .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -15px;
}

.landing-feature .item {
    width: calc(100% / 6 - 15px * 2);
    margin: 15px;
}

.landing-feature .image {
    border: 2px solid #000;
    position: relative;
    border-radius: 50%;
    margin: 0 auto 8px;
    width: 90px;
    height: 90px;
}

.landing-feature .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.landing-feature .main-text {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 500;
    text-align: center;
    color: #000;
}

.landing-task {
    background-color: #fff;
    padding: 75px 0;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
}

.landing-task__container {
    width: calc(100% - 20px * 2);
    max-width: 1000px;
    margin: 0 auto;
}

.landing-task .heading {
    font-size: 30px;
    line-height: 40px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 50px;
    color: #000;
}

.landing-task .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -20px;
}

.landing-task .item {
    width: calc(100% / 4 - 20px * 2);
    margin: 20px;
    background-color: #f32b56;
    background: linear-gradient(180deg, #ff3f68 0%, #f85578 13%, #ea1543 65%);
    border-radius: 20px;
    border: 8px solid #f45779;
    padding: 20px 10px;
    text-decoration: none;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700;
    text-align: center;
    color: #fff;
    box-shadow:
        0 3px 6px rgba(0, 0, 0, 0.3),
        0 0 25px rgba(161, 0, 35, 0.4) inset;
}

.landing-task .item:active {
    filter: brightness(1.1);
}

@media (hover: hover) {
    .landing-task .item:hover {
        filter: brightness(1.1);
    }
}

.landing-task .image {
    margin: 0 auto 8px;
    max-width: 160px;
}

.landing-task .image img {
    width: 100%;
    -webkit-filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
}

.landing-task .main-text {
    min-height: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
}

@media (max-width: 1023px) {
    .landing-feature .list {
        margin: -10px;
    }

    .landing-feature .item {
        width: calc(100% / 3 - 10px * 2);
        margin: 10px;
    }

    .landing-task .list {
        margin: -10px;
    }

    .landing-task .item {
        width: calc(100% / 2 - 10px * 2);
        margin: 10px;
    }
}

@media (max-width: 640px) {
    .landing-feature .list {
        margin: -8px;
    }

    .landing-feature .item {
        width: calc(100% / 2 - 8px * 2);
        margin: 8px;
    }

    .landing-feature .main-text {
        font-size: 18px;
    }

    .landing-task {
        padding: 40px 0;
    }

    .landing-task .heading {
        margin-bottom: 40px;
    }

    .landing-task .list {
        margin: -8px;
    }

    .landing-task .item {
        width: calc(100% / 2 - 8px * 2);
        margin: 8px;
        padding: 12px 8px;
        font-size: 18px;
        line-height: 25px;
        border: 6px solid #f45779;
    }

    .landing-task .image {
        max-width: 120px;
    }

    .landing-task .main-text {
        min-height: 50px;
    }
}

.sponsors {
    padding: 40px 0 0px;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
    font-size: 18px;
    line-height: 30px;
}

.sponsors .lg-view {
    display: block;
}

.sponsors .sm-view {
    display: none;
}

.sponsors .container {
    max-width: 1200px;
    margin: 0 auto;
}

.sponsors p {
    text-align: justify;
}

.sponsors img {
    width: 100%;
}

.sponsors .sponsors-section + .sponsors-section {
    margin-top: 60px;
}

.sponsors .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    margin: -20px;
}

.sponsors .list .item {
    width: calc(100% / 2 - 20px * 2);
    margin: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    align-items: flex-start;
}

.sponsors .list .image {
    width: 130px;
    border: 2px solid #d92728;
    border-radius: 50%;
}

.sponsors .list .content {
    width: calc(100% - 130px);
    padding-left: 20px;
}

.sponsors .list .main-text {
    font-size: 20px;
    font-weight: 700;
}

.sponsors .list .sub-text {
    text-align: justify;
}

.sponsors .graph {
    max-width: 760px;
    margin: 40px auto;
}

@media (max-width: 767px) {
    .sponsors {
        padding: 40px 0 100px;
    }

    .sponsors .lg-view {
        display: none;
    }

    .sponsors .sm-view {
        display: block;
    }

    .sponsors .list {
        display: block;
        margin: 0;
    }

    .sponsors .list .item {
        width: 100%;
        margin: 0 auto;
        display: block;
    }

    .sponsors .list .item + .item {
        margin-top: 40px;
    }

    .sponsors .list .image {
        margin: 0 auto 20px;
    }

    .sponsors .list .content {
        width: 100%;
        padding-left: 0;
    }

    .sponsors .list .main-text {
        text-align: center;
    }
}

.lifeEducation {
    padding: 40px 0 100px;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
    color: #000;
}

.lifeEducation .container {
    width: calc(100% - 20px * 2);
    max-width: 1200px;
    margin: 0 auto;
}

.lifeEducation p {
    text-align: justify;
}

.lifeEducation img {
    width: 100%;
}

.lifeEducation a {
    color: #e60012;
}

.lifeEducation .lifeEducation-section {
    margin-left: auto;
    margin-right: auto;
}

.lifeEducation .lifeEducation-section + .lifeEducation-section {
    margin-top: 60px;
}

.lifeEducation-top {
    max-width: 960px;
}

.lifeEducation-top .group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.lifeEducation-top .group .image {
    width: 45.106382978%;
}

.lifeEducation-top .group .content {
    padding-right: 35px;
    width: calc(100% - 45.106382978%);
}

.lifeEducation-top .list {
    font-size: 18px;
    line-height: 30px;
    padding: 0;
    margin: 0;
    list-style: none;
    margin-bottom: 20px;
}

.lifeEducation-top .list li {
    position: relative;
    padding-left: 20px;
}

.lifeEducation-top .list li:before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 12px;
    height: 12px;
    background-color: #e60012;
}

.lifeEducation-cases .heading {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    position: relative;
    margin-bottom: 50px;
}

.lifeEducation-cases .heading:before {
    content: "";
    position: absolute;
    bottom: -14px;
    left: calc(50% - 44px / 2);
    width: 44px;
    height: 4px;
    background-color: #e60012;
}

.lifeEducation-cases .cases-grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: none;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    min-height: 400px;
}

.lifeEducation-cases .grid-photo {
    width: 50%;
    padding-right: 40px;
}

.lifeEducation-cases .grid-video {
    width: 50%;
    padding-left: 40px;
    border-left: 1px dotted #000;
}

.lifeEducation-cases .shelter-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -10px;
}

.lifeEducation-cases .item {
    width: calc(100% / 2 - 20px);
    position: relative;
    margin: 10px;
}

.lifeEducation-cases .image {
    padding-top: 58%;
    position: relative;
    margin-bottom: 10px;
}

.lifeEducation-cases .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.lifeEducation-cases .main-text {
    font-size: 18px;
    line-height: 30px;
    font-weight: 500;
}

.lifeEducation-cases a {
    text-decoration: none;
    color: #000;
}

.lifeEducation-cases .shelter-list--video .image:after {
    content: "";
    position: absolute;
    top: calc(50% - 48px / 2);
    left: calc(50% - 48px / 2);
    width: 48px;
    height: 48px;
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../../themes/frontend/rwd/images/lifeEducation-play.png);
}

@media (max-width: 767px) {
    .lifeEducation-top .group {
        display: block;
    }

    .lifeEducation-top .group .image {
        width: 100%;
        margin-bottom: 20px;
    }

    .lifeEducation-top .group .content {
        padding-right: 0;
        width: 100%;
    }

    .lifeEducation-top .list {
        margin: 0 0 20px;
    }

    .lifeEducation-top .list li {
        width: 100%;
        margin: 0;
    }

    .lifeEducation-cases .heading {
        font-size: 24px;
    }

    .lifeEducation-cases .cases-grid {
        display: block;
    }

    .lifeEducation-cases .grid-photo {
        width: 100%;
        padding-right: 0;
        margin-bottom: 30px;
    }

    .lifeEducation-cases .grid-video {
        width: 100%;
        padding-left: 0;
        border-left: 0;
        border-top: 1px dotted #000;
        padding-top: 40px;
    }

    .lifeEducation-cases .shelter-list {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: -10px;
    }

    .lifeEducation-cases .item {
        width: calc(100% - 20px);
    }
}

.mascot {
    padding: 40px 0 100px;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
    color: #000;
}

.mascot .container {
    width: calc(100% - 20px * 2);
    max-width: 1200px;
    margin: 0 auto;
}

.mascot p {
    text-align: justify;
}

.mascot img {
    width: 100%;
}

.mascot a {
    color: #e60012;
}

.mascot .mascot-section {
    margin-left: auto;
    margin-right: auto;
    max-width: 940px;
}

.mascot .mascot-section + .mascot-section {
    margin-top: 60px;
}

.mascot .heading {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    position: relative;
    margin-bottom: 50px;
}

.mascot .heading:before {
    content: "";
    position: absolute;
    bottom: -14px;
    left: calc(50% - 44px / 2);
    width: 44px;
    height: 4px;
    background-color: #e60012;
}

.mascot .list {
    font-size: 18px;
    line-height: 30px;
    padding: 0;
    margin: 0;
    list-style: none;
    margin: -5px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
}

.mascot .list li {
    position: relative;
    padding-left: 20px;
    width: calc(100% / 2 - 5px * 2);
    margin: 5px;
}

.mascot .list li:before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 12px;
    height: 12px;
    background-color: #e60012;
}

.mascot-story p {
    margin-bottom: 0;
}

.mascot-story .item + .item {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 1px solid #8d8d8d;
}

.mascot-story .group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    align-items: flex-start;
    margin-bottom: 60px;
}

.mascot-story .group .image {
    width: 308px;
    position: relative;
}

.mascot-story .group .content {
    width: calc(100% - 308px);
    padding-left: 40px;
}

.mascot-story .main-text {
    position: absolute;
    bottom: -24px;
    left: calc(50% - 146px / 2);
    width: 146px;
    height: 48px;
    border: 2px solid #000;
    text-align: center;
    border-radius: 48px;
    font-size: 28px;
    font-weight: 700;
    line-height: 44px;
    background-color: #fff;
    letter-spacing: 0.1em;
}

.mascot-products .list {
    max-width: 800px;
    margin: 0 auto 40px;
}

.mascot-products .list li {
    width: calc(100% / 5 - 5px * 2);
}

@media (max-width: 767px) {
    .mascot .container {
        width: 100%;
    }

    .mascot .heading {
        font-size: 24px;
    }

    .mascot .list li {
        width: calc(100% - 5px * 2);
    }

    .mascot-story .item + .item {
        margin-top: 40px;
        padding-top: 40px;
    }

    .mascot-story .group {
        display: block;
        margin-bottom: 40px;
    }

    .mascot-story .group .image {
        width: 240px;
        margin: 0 auto 50px;
    }

    .mascot-story .group .content {
        width: 100%;
        padding-left: 0;
    }

    .mascot-products .list {
        margin: -5px -5px 40px;
    }

    .mascot-products .list li {
        width: calc(100% / 2 - 5px * 2);
    }
}

.studentClub {
    padding: 40px 0 100px;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
    font-size: 18px;
    line-height: 30px;
    color: #000;
}

.studentClub .lg-view {
    display: block;
}

.studentClub .sm-view {
    display: none;
}

.studentClub .container {
    max-width: 1200px;
    margin: 0 auto;
}

.studentClub p {
    text-align: center;
}

.studentClub img {
    width: 100%;
}

.studentClub a {
    color: #e60012;
}

.studentClub .studentClub-section {
    margin-left: auto;
    margin-right: auto;
}

.studentClub .studentClub-section + .studentClub-section {
    margin-top: 60px;
}

.studentClub .section-top {
    max-width: 940px;
}

.studentClub-info .list .item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    align-items: flex-start;
}

.studentClub-info .list .item + .item {
    margin-top: 40px;
}

.studentClub-info .list .reverse {
    -webkit-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.studentClub-info .list .reverse .content {
    padding-left: 0;
    padding-right: 40px;
}

.studentClub-info .list .image {
    width: 47.5%;
    width: 570px;
    margin: 0 auto;
}

.studentClub-info .list .content {
    width: calc(100% - 47.5%);
    width: calc(100% - 570px);
    padding-left: 40px;
}

.studentClub-info .top-text {
    font-size: 15px;
    margin-bottom: 15px;
    font-weight: 700;
    position: relative;
}

.studentClub-info .top-text:before {
    content: "";
    position: absolute;
    top: -5px;
    left: 35px;
    width: 1px;
    height: 94px;
    background-color: #000;
    transform: rotateZ(45deg) scale(1);
}

.studentClub-info .item-header {
    margin-bottom: 30px;
}

.studentClub-info .main-text {
    font-size: 24px;
    font-weight: 700;
    padding-left: 40px;
    margin-bottom: 0;
}

.studentClub-info .text-lg {
    font-size: 24px;
}

.studentClub-info .link-list {
    position: absolute;
    top: 400px;
    right: 0;
    width: 47.5%;
    width: 570px;
    padding-top: 16px;
    font-size: 18px;
    line-height: 30px;
}

.studentClub-info .link-list ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.studentClub-info .link-list li {
    position: relative;
    padding-left: 20px;
}

.studentClub-info .link-list li:before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 12px;
    height: 12px;
    background-color: #e60012;
}

.studentClub-info .link-list span {
    max-width: calc(100% - 6.5em);
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
    margin-right: 0.25em;
    vertical-align: top;
}

.studentClub-info .link-list a {
    color: #000;
    text-decoration: none;
}

.studentClub-info .link-list a:active {
    color: #e60012;
}

@media (hover: hover) {
    .studentClub-info .link-list a:hover {
        color: #e60012;
    }
}

.club-assistance .heading {
    text-align: center;
    font-size: 28px;
    font-weight: 700;
    position: relative;
    margin-bottom: 50px;
}

.club-assistance .heading:before {
    content: "";
    position: absolute;
    bottom: -14px;
    left: calc(50% - 44px / 2);
    width: 44px;
    height: 4px;
    background-color: #e60012;
}

.club-assistance .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    margin: -12px;
}

.club-assistance .item {
    width: calc(100% / 4 - 12px * 2);
    margin: 12px;
    text-align: center;
    font-size: 20px;
}

.club-assistance .image {
    border: 1px solid #909090;
    margin: 0 auto 10px;
}

.club-assistance .main-text {
    font-weight: 700;
}

@media (max-width: 767px) {
    .studentClub {
        padding: 40px 0 100px;
    }

    .studentClub .lg-view {
        display: none;
    }

    .studentClub .sm-view {
        display: block;
    }

    .studentClub-info .list .item {
        display: block;
    }

    .studentClub-info .list .reverse .content {
        padding-left: 0;
        padding-right: 0;
    }

    .studentClub-info .list .image {
        width: 100%;
        margin-bottom: 20px;
    }

    .studentClub-info .list .content {
        width: 100%;
        padding-left: 0;
    }

    .studentClub-info .link-list {
        position: relative;
        top: 0;
        right: 0;
        width: 100%;
    }

    .club-assistance .heading {
        font-size: 24px;
    }

    .club-assistance .item {
        width: calc(100% / 2 - 12px * 2);
    }
}

.financialReport {
    padding: 40px 0;
    font-family: "Noto Sans TC", "Microsoft JhengHei", "微軟正黑體", Arial, Helvetica, sans-serif, "Microsoft YaHei";
    color: #000;
}

.financialReport .financialReport-grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: none;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    min-height: 400px;
}

.financialReport .financialReport-grid__left {
    width: 50%;
    padding-right: 40px;
}

.financialReport .financialReport-grid__right {
    width: 50%;
    padding-left: 40px;
    border-left: 1px dotted #000;
}

.financialReport .title {
    font-size: 24px;
    font-weight: 700;
    position: relative;
    margin-bottom: 20px;
}

.financialReport .list {
    font-size: 18px;
    line-height: 30px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.financialReport .list a {
    color: #000;
    text-decoration: none;
}

.financialReport .list a:active {
    color: #e60012;
}

@media (hover: hover) {
    .financialReport .list a:hover {
        color: #e60012;
    }
}

.financialReport .list li {
    position: relative;
    padding-left: 20px;
}

.financialReport .list li + li {
    margin-top: 6px;
}

.financialReport .list li:before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 12px;
    height: 12px;
    background-color: #e60012;
}

.financialReport .btn-info {
    width: 148px;
    margin: 0 auto;
}

@media (max-width: 767px) {
    .financialReport .financialReport-grid {
        display: block;
    }

    .financialReport .financialReport-grid__left {
        width: 100%;
        padding-right: 0;
        margin-bottom: 40px;
    }

    .financialReport .financialReport-grid__right {
        width: 100%;
        padding-top: 40px;
        padding-left: 0;
        border-left: 0;
        border-top: 1px dotted #000;
    }
}

.landing-sdgs {
    padding: 35px 0 45px;
    background: white;
    background: linear-gradient(0deg, #ffffff 30%, #f8f4eb 100%);
}

.landing-sdgs__container {
    width: calc(100% - 20px * 2);
    max-width: 1000px;
    margin: 0 auto;
}

.landing-sdgs .heading {
    font-size: 26px;
    line-height: 40px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 5px;
    color: #000;
}

.landing-sdgs .text {
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    margin-bottom: 20px;
    color: #000;
}

.landing-sdgs a {
    display: block;
    text-decoration: none;
    max-width: 626px;
    margin: 0 auto;
}

.landing-sdgs a:hover {
    opacity: 0.8;
}

.landing-sdgs .image {
    width: 100%;
    max-width: 626px;
    margin: 0 auto;
}

.landing-sdgs .image img {
    width: 100%;
    display: block;
}

.landing-sdgs + .px-0 {
    display: none;
}

@media (max-width: 767px) {
    .landing-sdgs {
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .landing-sdgs .heading {
        font-size: 24px;
        line-height: 36px;
    }

    .landing-sdgs .text {
        font-size: 16px;
    }
}
.savedogs-Tnvr {
    position: relative;
    padding: 50px 0;
    font-size: 18px;
    line-height: 1.6666;
    margin: 0 auto;
    text-align: justify;
}
.savedogs-Tnvr .container {
    max-width: 1070px;
}
.savedogs-Tnvr p {
    margin: 0;
}
.savedogs-Tnvr p + p {
    margin-top: 30px;
}
.savedogs-Tnvr img {
    width: 100%;
}
.savedogs-Tnvr .Tnvr-section + .Tnvr-section {
    margin-top: 40px;
}
.savedogs-Tnvr .Tnvr-title {
    color: #af0a0f;
    font-size: 36px;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 36px;
    text-align: center;
}
.savedogs-Tnvr .map {
    margin: 30px 0;
}
.savedogs-Tnvr .Tnvr-layer1 {
    display: flex;
    margin: 30px 0;
}
.savedogs-Tnvr .Tnvr-layer1 .content {
    width: calc(100% - 340px);
    padding-right: 48px;
}
.savedogs-Tnvr .Tnvr-layer1 .image {
    width: 340px;
}
.savedogs-Tnvr .Tnvr-layer2 {
    display: flex;
    margin: 30px -15px;
}
.savedogs-Tnvr .Tnvr-layer2 .image {
    width: calc(100% / 2 - 15px * 2);
    margin: 0 15px;
}
.savedogs-Tnvr .Tnvr-layer3 {
    display: flex;
    margin: 0;
    padding: 20px 30px;
}
.savedogs-Tnvr .Tnvr-layer3 .image {
    width: 180px;
}
.savedogs-Tnvr .Tnvr-layer3 .content {
    width: calc(100% - 180px);
    padding-left: 48px;
}
.savedogs-Tnvr .Tnvr-layer3 h3 {
    font-size: 24px;
    font-weight: 700;
}
.savedogs-Tnvr .Tnvr-layer3 p {
    margin: 0;
}
.savedogs-Tnvr .Tnvr-sticky {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 120px;
    z-index: 10;
    border-radius: 50%;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}
.savedogs-Tnvr .Tnvr-sticky a {
    display: block;
}
.savedogs-Tnvr .Tnvr-sticky.change-bottom {
    position: absolute;
}

@media (max-width: 992px) {
    .savedogs-Tnvr .Tnvr-title {
        text-align: justify;
    }
    .savedogs-Tnvr .Tnvr-layer1 {
        display: block;
        margin: 30px 0;
    }
    .savedogs-Tnvr .Tnvr-layer1 .content {
        width: 100%;
        padding-right: 0;
        margin-bottom: 30px;
    }
    .savedogs-Tnvr .Tnvr-layer1 .image {
        width: 100%;
    }
    .savedogs-Tnvr .Tnvr-layer2 {
        display: block;
        margin: 30px 0;
    }
    .savedogs-Tnvr .Tnvr-layer2 .image {
        width: 100%;
        margin: 0;
    }
    .savedogs-Tnvr .Tnvr-layer2 .image + .image {
        margin-top: 30px;
    }
    .savedogs-Tnvr .Tnvr-layer3 {
        display: block;
        padding: 20px 0;
    }
    .savedogs-Tnvr .Tnvr-layer3 .image {
        width: 150px;
        margin: 0 auto 20px;
    }
    .savedogs-Tnvr .Tnvr-layer3 .content {
        width: 100%;
        padding-left: 0;
    }
    .savedogs-Tnvr .Tnvr-layer3 h3 {
        text-align: center;
    }
    .savedogs-Tnvr .Tnvr-layer3 h3 span {
        display: block;
    }
}
@media (max-width: 480px) {
    .savedogs-Tnvr {
        padding: 50px 0 25px;
    }
    .savedogs-Tnvr .Tnvr-layer3 .image {
        width: 120px;
    }
    .savedogs-Tnvr .Tnvr-sticky {
        bottom: 10px;
        right: 10px;
        width: 100px;
    }
    .savedogs-Tnvr .Tnvr-sticky.change-bottom {
        position: static;
        right: calc(50% - 100px / 2);
        margin: 0 auto;
        width: 120px;
    }
}
