﻿/*【reset.min.css】*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

    blockquote:before, blockquote:after, q:before, q:after {
        content: '';
        content: none
    }

table {
    border-collapse: collapse;
    border-spacing: 0
}

/*【header.css】*/
/* colors */
/* clearBoth */
/* breakpoints */
/* font */
header {
    padding: 30px 0;
    background-color: #315280;
    position: relative;
    z-index: 2;
}

@media (max-width: 768px) {
    header {
        padding: 18px 0;
    }

        header .gv_logo {
            margin-left: 60px;
        }
}

@media (max-width: 600px) {
    header .gv_logo {
        width: 85px;
        margin-left: 45px;
    }
}

.flexColum {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

    .flexColum .cna_logo {
        width: 80px;
        margin-right: 10px;
    }

        .flexColum .cna_logo svg {
            width: 80px;
            display: block;
        }

        .flexColum .cna_logo path {
            fill: #ffffff;
        }

    .flexColum .gv_logo {
        width: 140px;
    }

@media (max-width: 768px) {
    .flexColum .cna_logo {
        position: absolute;
        right: 35px;
        width: 60px;
    }

        .flexColum .cna_logo svg {
            width: 60px;
        }

    .flexColum .gv_logo {
        width: 100px;
    }
}

@media (max-width: 600px) {
    .flexColum .cna_logo {
        width: 50px;
        right: 30px;
    }

        .flexColum .cna_logo svg {
            width: 50px;
        }
}

/* menu */
.slideMenu {
    width: 1100px;
    position: relative;
    margin: 0 auto;
}

@media (max-width: 1435px) {
    .slideMenu {
        width: 960px;
    }
}

@media (max-width: 1024px) {
    .slideMenu {
        width: 700px;
    }
}

@media (max-width: 768px) {
    .slideMenu {
        display: none;
    }
}

.scrollNavi {
    width: 960px;
    margin: 0 auto;
    overflow: auto;
    scrollbar-width: none;
}

    .scrollNavi::-webkit-scrollbar {
        display: none;
    }

@media (max-width: 1600px) {
    .scrollNavi {
        width: 960px;
    }
}

@media (max-width: 1366px) {
    .scrollNavi {
        width: 860px;
    }
}

@media (max-width: 1024px) {
    .scrollNavi {
        width: 650px;
    }
}

.menuScroller {
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.gft {
    position: absolute;
    top: 50%;
    margin-top: -13px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    width: 26px;
    height: 26px;
    left: 0;
    background-image: url("../img/menu_prev.svg");
}

    .gft.dsabled {
        opacity: 0.6;
    }

@media (max-width: 768px) {
    .gft {
        display: none;
    }
}

.grt {
    position: absolute;
    top: 50%;
    margin-top: -13px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    width: 26px;
    height: 26px;
    right: 0;
    background-image: url("../img/menu_next.svg");
}

    .grt.dsabled {
        opacity: 0.6;
    }

@media (max-width: 768px) {
    .grt {
        display: none;
    }
}

.menuToggle {
    transition: none;
    display: none;
}

@media (max-width: 768px) {
    .menuToggle {
        display: block;
        position: absolute;
        left: 0;
        top: 3px;
        background-image: url("../img/menu_toggle.svg");
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        width: 30px;
        height: 30px;
    }
}

.rightSide a {
    display: inline-block;
    vertical-align: middle;
}

.menuItem {
    padding: 5px 10px;
    margin: 0 10px;
    font-weight: bold;
    font-size: 22px;
}

    .menuItem:link {
        color: #eef0f3;
    }

    .menuItem:active {
        color: #eef0f3;
    }

    .menuItem:visited {
        color: #eef0f3;
    }

    .menuItem:hover {
        background-color: #eef0f3;
        color: #315280;
    }

    .menuItem.active {
        background-color: #eef0f3;
        color: #315280;
    }

/* mobileMenu */
.mobileMenu {
    background-color: #ffffff;
    padding: 0 28px;
    position: absolute;
    width: 100%;
    box-sizing: border-box;
    z-index: 11;
    display: none;
    overflow: auto;
    height: 100%;
}

.vScrollCont {
    margin: 44px 0;
    padding: 0 0 50px 0;
}

.mbMenuItem {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 12px 50px;
    border-bottom: 0.5px solid #677991;
}

    .mbMenuItem:first-child {
        border-top: 0.5px solid #677991;
    }

    .mbMenuItem:link {
        color: #315280;
    }

    .mbMenuItem:active {
        color: #315280;
    }

    .mbMenuItem:visited {
        color: #315280;
    }

    .mbMenuItem:hover {
        background-color: #315280;
        color: #ffffff;
    }

    .mbMenuItem.active {
        background-color: #315280;
        color: #ffffff;
    }

.menuOverlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: rgba(35, 35, 35, 0.8);
}

.menuOpen .menuOverlay {
    display: block;
}

.menuOpen .mobileMenu {
    display: block;
}

.menuOpen .menuToggle {
    background-image: url("../img/menu_close.svg");
}

/* search */
.searchBlock {
    display: none;
    position: absolute;
    right: 0;
    bottom: -50px;
}

    .searchBlock input {
        width: 300px;
        outline: none;
        border: none;
        background-color: #eef0f3;
        padding: 10px;
        display: block;
        box-sizing: border-box;
        font-size: 16px;
    }

    .searchBlock.open {
        display: block;
    }

@media (max-width: 768px) {
    .searchBlock {
        right: -30px;
        bottom: -78px;
    }

        .searchBlock input {
            width: 100vw;
            padding: 20px 30px;
            font-size: 18px;
        }
}

@media (max-width: 600px) {
    .searchBlock {
        right: -15px;
    }

        .searchBlock input {
            padding: 20px 10px;
        }
}

.searchIcon {
    width: 15px;
}

@media (max-width: 768px) {
    .searchIcon {
        width: 30px;
    }
}

@media (max-width: 600px) {
    .searchIcon {
        width: 20px;
        margin-top: -10px;
    }
}

.enter {
    position: absolute;
    top: 5px;
    right: 0;
    background-image: url("../img/search_enter.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #eef0f3;
    width: 34px;
    height: 26px;
}

@media (max-width: 768px) {
    .enter {
        right: 30px;
        top: 14px;
        height: 30px;
    }
}

@media (max-width: 600px) {
    .enter {
        right: 10px;
    }
}


/*【style.css】*/
@charset "UTF-8";
/* colors */
/* clearBoth */
/* breakpoints */
/* font */
* {
    box-sizing: border-box;
}

html {
    font-size: 16px;
    touch-action: auto;
}

body {
    background-color: #ffffff;
    font-family: "Microsoft JhengHei", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 100%;
    line-height: 1.4;
    font-size: 18px;
    color: #232323;
    text-rendering: optimizeLegibility;
}

    body.menuOpen, body.unsupportBrowser {
        overflow: hidden;
        height: 100%;
        width: 100%;
        position: fixed;
    }

@media screen and (max-width: 768px) {
    body.videoPage .container {
        padding: 0 0 35px 0;
    }
}

body.videoPage.sp {
    background-color: #EEF0F3;
}

    body.videoPage.sp .KVPlayer {
        background-color: #ffffff;
        padding: 66px 0 40px;
    }

    body.videoPage.sp .container {
        background-color: #f6f6f6;
    }

body.videoTopic.sp .container {
    background-color: #eef0f3;
}

@media screen and (max-width: 768px) {
    body.videoPage.sp .KVPlayer {
        padding: 15px 0 0;
    }
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
}

h1 {
    font-family: "Microsoft JhengHei", sans-serif;
    margin: 0 auto;
    padding: 0;
    font-size: 35px;
}

@media screen and (max-width: 768px) {
    h1 {
        font-size: 30px;
    }
}

@media screen and (max-width: 600px) {
    h1 {
        font-size: 28px;
    }
}

@media screen and (max-width: 320px) {
    h1 {
        font-size: 24px;
    }
}

h2 {
    font-family: "Microsoft JhengHei", sans-serif;
    margin: 0 auto;
    padding: 0;
    font-size: 20px;
}

@media screen and (max-width: 600px) {
    h2 {
        font-size: 18px;
    }
}

h3 {
    font-family: "Microsoft JhengHei", sans-serif;
    margin: 0 auto;
    padding: 0;
    font-size: 1.25rem;
}

@media screen and (max-width: 600px) {
    h3 {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 320px) {
    h3 {
        font-size: 1rem;
    }
}

h4 {
    font-family: "Microsoft JhengHei", sans-serif;
    margin: 0 auto;
    padding: 0;
    font-size: 1.125rem;
}

@media screen and (max-width: 600px) {
    h4 {
        font-size: 0.875rem;
    }
}

h5 {
    font-family: "Microsoft JhengHei", sans-serif;
    margin: 0 auto;
    padding: 0;
    font-size: 1rem;
}

@media screen and (max-width: 320px) {
    h5 {
        font-size: 0.875rem;
    }
}

h6 {
    font-family: "Microsoft JhengHei", sans-serif;
    margin: 0 auto;
    padding: 0;
    font-size: 0.875rem;
}

img {
    max-width: 100%;
    height: auto;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}

figure {
    margin: 0;
    padding: 0;
}

input {
    border-radius: 0;
    -webkit-appearance: none;
}

ul,
li,
p {
    list-style: none;
    margin: 0;
    padding: 0;
}

a {
    transition: all 0.3s ease-in;
    text-decoration: none;
}

    a:link {
        color: #232323;
    }

    a:active {
        color: #232323;
    }

    a:visited {
        color: #232323;
    }

    a:hover {
        color: #595959;
    }

img {
    max-width: 100%;
    max-height: 100%;
    display: block;
    margin: 0 auto;
}

/* =======================
basic
======================= */
.container {
    position: relative;
    padding: 0 0 66px 0;
}

@media screen and (max-width: 768px) {
    .KVPlayer .wrapper-b {
        width: 100%;
    }
}

.wrapper-b {
    width: 1435px;
    margin: 0 auto;
    position: relative;
    clear: both;
    zoom: 1;
}

    .wrapper-b:after {
        visibility: hidden;
        display: block;
        font-size: 0;
        content: " ";
        clear: both;
        height: 0;
    }

@media screen and (max-width: 1440px) {
    .wrapper-b {
        width: calc(100% - 60px);
    }
}

@media screen and (max-width: 600px) {
    .wrapper-b {
        width: calc(100% - 30px);
    }
}

.wrapper {
    width: 1280px;
    margin: 0 auto;
    position: relative;
    clear: both;
    zoom: 1;
}

    .wrapper:after {
        visibility: hidden;
        display: block;
        font-size: 0;
        content: " ";
        clear: both;
        height: 0;
    }

@media screen and (max-width: 1280px) {
    .wrapper {
        width: calc(100% - 60px);
    }
}

@media screen and (max-width: 600px) {
    .wrapper {
        width: calc(100% - 30px);
    }
}

.MarketFlex {
    margin: 30px auto;
}

    .MarketFlex.twin {
        width: 640px;
    }

        .MarketFlex.twin div:first-child {
            margin-right: 40px;
        }

.MarketPC {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .MarketPC {
        display: none;
    }
}

.MarketPAD {
    display: none;
}

@media screen and (max-width: 768px) {
    .MarketPAD {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

@media screen and (max-width: 600px) {
    .MarketPAD {
        display: none;
    }
}

.MarketMB {
    display: none;
}

@media screen and (max-width: 600px) {
    .MarketMB {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

.newMarketDesktop {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .newMarketDesktop {
        display: none;
    }
}

.newMarketMobile {
    display: none;
}

@media screen and (max-width: 768px) {
    .newMarketMobile {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

.modulePC {
    display: block;
}

@media screen and (max-width: 768px) {
    .modulePC {
        display: none;
    }
}

.modulePAD {
    display: none;
}

@media screen and (max-width: 768px) {
    .modulePAD {
        display: block;
    }
}

@media screen and (max-width: 600px) {
    .modulePAD {
        display: none;
    }
}

.moduleMB {
    display: none;
}

@media screen and (max-width: 600px) {
    .moduleMB {
        display: block;
    }
}

.moduleDesktopNew {
    display: block;
}

@media screen and (max-width: 768px) {
    .moduleDesktopNew {
        display: none;
    }
}

.moduleMobileNew {
    display: none;
}

@media screen and (max-width: 768px) {
    .moduleMobileNew {
        display: block;
    }
}

/* =======================
component
======================= */
.KVPlayer {
    padding: 66px 0 40px;
    background: #f6f6f6;
    background: linear-gradient(180deg, #f6f6f6 0%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f6f6f6",endColorstr="#ffffff",GradientType=1);
}

    .KVPlayer .mainGroup {
        margin: 0;
    }

@media screen and (max-width: 768px) {
    .KVPlayer {
        padding: 0;
    }
}

.index .KVPlayer .time {
    display: none;
}

.mainVideo {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin-bottom: 50px;
}

    .mainVideo h1 {
        color: #004E98;
        line-height: 1.3;
        margin: 10px 0;
        font-weight: bold;
    }

@media screen and (max-width: 768px) {
    .mainVideo {
        display: block;
    }
}

@media screen and (max-width: 600px) {
    .mainVideo {
        margin-bottom: 30px;
    }
}

.nextVideo {
    position: absolute;
    bottom: 16px;
    right: 16px;
    width: 310px;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    transition: all 0.3s ease-in;
    opacity: 0;
    z-index: -1;
}

    .nextVideo.show {
        opacity: 1;
        z-index: 2;
    }

    .nextVideo .wrap {
        width: 100px;
        height: 56px;
    }

    .nextVideo .title {
        width: calc(100% - 110px);
        margin-left: 10px;
        font-size: 14px;
    }

@media screen and (max-width: 768px) {
    .nextVideo {
        right: 8px;
    }
}

@media screen and (max-width: 600px) {
    .nextVideo.show {
        opacity: 0;
        z-index: -1;
    }
}

.closeNext {
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0;
    right: 8px;
}

    .closeNext svg {
        width: 10px;
        height: 10px;
    }

.videoCover {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
}

    .videoCover:before {
        content: '';
        display: block;
        background-image: url("../img/icon-play.svg");
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        left: 8px;
        bottom: 8px;
        z-index: 10;
        width: 60px;
        height: 60px;
    }

.trangle {
    width: 100%;
    font-size: 14px;
    margin-bottom: 5px;
}

    .trangle::after {
        content: '';
        display: block;
        position: absolute;
        left: 75px;
        top: 13px;
        width: 0;
        height: 0;
        border-bottom: 7px solid transparent;
        border-top: 7px solid transparent;
        border-left: 7px solid #4d596a;
        clear: both;
    }

.videoWrap {
    position: relative;
    width: 996px;
    height: 560px;
    margin-right: 33px;
    overflow: hidden;
}

    .videoWrap img {
        max-width: inherit;
        max-height: inherit;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center;
    }

@media screen and (max-width: 1280px) {
    .videoWrap {
        width: 610px;
        height: 342px;
    }

        .videoWrap iframe {
            width: 610px !important;
            height: 342px !important;
        }
}

@media screen and (max-width: 1024px) {
    .videoWrap {
        width: 400px;
        height: 224px;
    }

        .videoWrap iframe {
            width: 400px !important;
            height: 224px !important;
        }
}

@media screen and (max-width: 768px) {
    .videoWrap {
        width: 100%;
        height: calc((100vw - 60px)*0.6);
        margin-right: 0;
        margin-bottom: 40px;
    }

        .videoWrap iframe {
            width: 100% !important;
            height: calc((100vw - 60px)*0.6) !important;
        }
}

@media screen and (max-width: 600px) {
    .videoWrap {
        margin-bottom: 10px;
    }
}

.videoDesc {
    width: calc(100% - 1029px);
}

    .videoDesc .desc {
        line-height: 1.8;
        /*margin-bottom: 15px;*/
        overflow-wrap: break-word;
    }

    .videoDesc .published {
        font-size: 16px;
    }

        .videoDesc .published time {
            padding-right: 15px;
        }

    .videoDesc .shareBtn {
        margin: 15px 0 0 0;
    }

        .videoDesc .shareBtn a {
            display: inline-block;
            vertical-align: middle;
            margin: 0 20px 0 0;
        }

    .videoDesc .related {
        overflow-wrap: break-word;
    }

        .videoDesc .related div {
            font-size: 16px;
            font-weight: bold;
            margin-bottom: 10px;
            color: #4d596a;
        }

        .videoDesc .related a {
            display: block;
            font-size: 16px;
            margin-bottom: 10px;
            padding: 0 0 0 10px;
            position: relative;
        }

            .videoDesc .related a::before {
                content: '';
                display: block;
                border-radius: 100%;
                width: 5px;
                height: 5px;
                background-color: #232323;
                position: absolute;
                left: 0;
                top: 10px;
            }

    .videoDesc .published ~ .related {
        margin-top: 40px;
    }

@media screen and (max-width: 1280px) {
    .videoDesc {
        width: calc(100% - 610px - 33px);
    }
}

@media screen and (max-width: 768px) {
    .videoDesc {
        width: calc(100% - 60px);
        margin: 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .videoDesc {
        width: calc(100% - 30px);
    }

        .videoDesc .published {
            padding-bottom: 15px;
        }
}

.duration {
    background-color: #232323;
    opacity: 0.8;
    color: #ffffff;
    font-size: 14px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 2;
    padding: 3px 5px;
}

.LIVE {
    color: #ec555a;
    border: 2px solid #ec555a;
    font-size: 20px;
    padding: 2px 5px 2px 28px;
    margin: 0 15px 0 0;
    position: relative;
    font-weight: bold;
}

    .LIVE::before {
        content: '';
        display: block;
        background-image: url("../img/LIVE.svg");
        background-repeat: no-repeat;
        background-size: contain;
        width: 21px;
        height: 15px;
        position: absolute;
        left: 5px;
        top: 8px;
    }

@media screen and (max-width: 768px) {
    .LIVE {
        font-size: 18px;
    }
}

.aboveVideo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.cate {
    font-size: 16px;
    font-weight: bold;
    color: #4D596A;
    margin: 0 15px 0 0;
}

.location {
    font-size: 16px;
    color: #232323;
    margin: 0 15px 0 0;
    padding: 0 0 0 18px;
    position: relative;
    font-weight: bold;
}

    .location::before {
        content: '';
        display: block;
        background-image: url("../img/location.svg");
        background-repeat: no-repeat;
        background-size: contain;
        width: 20px;
        height: 21px;
        position: absolute;
        left: 0;
        top: 1px;
    }

@media screen and (max-width: 768px) {
    .scroller {
        overflow: auto;
        margin: 0 0 30px 0;
    }

        .scroller .mainGroup {
            width: 1340px;
            margin: 0;
        }

        .scroller:last-child {
            margin: 0;
        }
}

@media screen and (max-width: 768px) {
    .mobileScroller {
        overflow: auto;
        margin: 0 30px 30px 30px;
    }

        .mobileScroller .mainGroup {
            width: 1340px;
            margin: 0;
        }
}

@media screen and (max-width: 600px) {
    .mobileScroller {
        margin: 0 15px 30px 15px;
    }
}

@media screen and (max-width: 768px) {
    .KVPlayer .mobileScroller .mainGroup {
        width: 1000px;
    }

    .KVPlayer .mobileScroller .itemVideo {
        width: 320px;
    }

        .KVPlayer .mobileScroller .itemVideo:last-child {
            display: none;
        }
}

.mainName {
    font-weight: bold;
    font-size: 24px;
    margin-bottom: 25px;
    min-height: 64px;
}

    .mainName a:link {
        color: #004E98;
    }

    .mainName a:active {
        color: #004E98;
    }

    .mainName a:visited {
        color: #004E98;
    }

    .mainName a:hover {
        color: #004E98;
    }

    .mainName .txt {
        /*color: #677991;*/
        color: #4d596a;
        font-size: 18px;
        padding-top: 5px;
    }

    .mainName ~ .mainGroup {
        border-bottom: 1px solid rgba(103, 121, 145, 0.5);
        padding: 0 0 30px 0;
    }

    .mainName ~ .scroller .mainGroup {
        border-bottom: 1px solid rgba(103, 121, 145, 0.5);
        padding: 0 0 15px 0;
    }

.mainGroup {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 0 0 45px 0;
}

    .mainGroup.flexBetween {
        justify-content: space-between;
    }

.itemVideo {
    position: relative;
    width: calc(25% - 20px);
}

    .itemVideo h2 {
        margin-top: 10px;
    }

    .itemVideo .itemTitle {
        margin-top: 10px;
        font-size: 20px;
    }

    .itemVideo .time {
        font-size: 14px;
        padding-top: 5px;
    }

@media screen and (max-width: 600px) {
    .itemVideo .itemTitle {
        font-size: 18px;
    }
}

.itemWrap {
    position: relative;
    background-color: #eef0f3;
    width: 300px;
    height: 168px;
}

    .itemWrap img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center;
    }

    .itemWrap:before {
        content: '';
        display: block;
        background-image: url("../img/icon-play.svg");
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        left: 8px;
        bottom: 8px;
        z-index: 10;
        width: 32px;
        height: 32px;
    }

    .itemWrap.style2 {
        width: 338px;
        height: 190px;
    }

@media screen and (max-width: 1435px) {
    .itemWrap.style2 {
        width: calc((100vw - 120px)/4);
        height: calc((100vw - 120px)/4 *0.56);
    }
}

@media screen and (max-width: 1280px) {
    .itemWrap {
        width: calc((100vw - 140px)/4);
        height: calc((100vw - 140px)/4 * 0.56);
    }

        .itemWrap.style2 {
            width: calc((100vw - 140px)/4);
            height: calc((100vw - 140px)/4 * 0.56);
        }
}

@media screen and (max-width: 768px) {
    .itemWrap {
        width: calc((100vw - 120px)/2);
        height: calc((100vw - 120px)/2 * 0.56);
    }

        .itemWrap.style2 {
            width: 320px;
            height: 179px;
        }

        .itemWrap.style3 {
            width: 320px;
            height: 179px;
        }
}

@media screen and (max-width: 600px) {
    .itemWrap {
        width: calc(100vw - 30px);
        height: calc((100vw - 30px) * 0.56);
    }
}

.marginGroup .itemVideo {
    margin-bottom: 35px;
}

.mainGroup.rwdItems {
    margin-bottom: 0;
}

    .mainGroup.rwdItems:first-child {
        margin-top: 70px;
    }

    .mainGroup.rwdItems .itemVideo {
        margin-bottom: 45px;
        margin-right: calc(80px / 3);
    }

        .mainGroup.rwdItems .itemVideo:nth-child(-n + 2) {
            display: none;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(4n+2) {
            margin-right: 0;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(4n+1) {
            margin-right: calc(80px / 3);
        }

@media screen and (max-width: 768px) {
    .mainGroup.rwdItems:first-child {
        margin-top: 30px;
    }

    .mainGroup.rwdItems .itemVideo {
        width: calc(50% - 20px);
        margin-bottom: 35px;
        margin-right: 40px;
    }

        .mainGroup.rwdItems .itemVideo:nth-of-type(-n + 2) {
            display: block;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(4n+1) {
            margin-right: inherit;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(2n) {
            margin-right: 0;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(2n+1) {
            margin-right: 40px;
        }
}

@media screen and (max-width: 600px) {
    .mainGroup.rwdItems .itemVideo {
        width: 100%;
        margin-bottom: 35px;
    }

        .mainGroup.rwdItems .itemVideo:nth-child(1) {
            display: block;
        }

        .mainGroup.rwdItems .itemVideo:nth-child(2) {
            display: none;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(2n) {
            margin-right: inherit;
        }

        .mainGroup.rwdItems .itemVideo:nth-of-type(2n+1) {
            margin-right: inherit;
        }
}

@media screen and (max-width: 768px) {
    .VideoCollect .mainGroup {
        padding: 0 14px;
        margin: 0;
    }

    .VideoCollect .itemVideo {
        width: calc(50% - 20px);
        margin: 0 0 35px 0;
    }

    .VideoCollect ~ .MarketFlex {
        margin: 0 auto 30px;
    }
}

@media screen and (max-width: 600px) {
    .VideoCollect .mainGroup {
        padding: 0;
    }

    .VideoCollect .itemVideo {
        width: 100%;
        margin: 0 0 35px 0;
    }
}

/* acordTab */
@media screen and (max-width: 768px) {
    .acordTab {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}

.acordCont {
    max-height: 227px;
    overflow: hidden;
    transition: max-height 0.35s ease-in-out;
}

.acordContWrapper {
    position: relative;
}

    .acordContWrapper:after {
        position: absolute;
        content: '';
        bottom: 0;
        left: 0;
        width: 100%;
        height: 80%;
        background: linear-gradient(0deg, rgba(250, 250, 250, 1), rgba(250, 250, 250, 0.4) 40%, rgba(250, 250, 250, 0) 50%, rgba(250, 250, 250, 0) 100%);
        display: none;
    }

.acordContBtn {
    text-align: center;
    position: relative;
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    top: -2px;
    max-width: 50px;
    margin: 0 auto;
}

    .acordContBtn > svg {
        cursor: pointer;
    }

.showBtn .acordContBtn {
    pointer-events: auto;
    opacity: 1;
}

.showBtn .acordContWrapper:after {
    display: block;
}

.open .acordContWrapper:after {
    display: none;
    content: '';
}

.open .acordContBtn {
    transform: rotate(180deg);
}

/* seemore */
.seemore {
    width: 120px;
    margin: 0 auto;
    border: 1px solid #315280;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
    font-size: 20px;
    font-weight: bold;
}

    .seemore:link {
        color: #315280;
    }

    .seemore:active {
        color: #315280;
    }

    .seemore:visited {
        color: #315280;
    }

    .seemore:hover {
        color: #ffffff;
        background-color: #315280;
    }

/* topic swiper */
.SwiperList {
    position: relative;
    padding: 0 0 25px 0;
    margin: 0 0 25px 0;
    border-bottom: 1px solid rgba(103, 121, 145, 0.5);
}

@media screen and (max-width: 600px) {
    .SwiperList {
        padding: 0 20px 20px 20px;
        margin: 0 0 25px 0;
    }
}

.swiper {
    width: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    /* Center slide text vertically */
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
}

.swiperBox {
    display: block;
    width: 100%;
    height: 100%;
}

    .swiperBox .swiperTitle {
        text-align: left;
        margin-bottom: 5px;
        font-size: 20px;
        min-height: 56px;
    }

    .swiperBox .time {
        font-size: 14px;
        text-align: left;
    }

@media screen and (max-width: 600px) {
    .swiperBox .swiperTitle {
        font-size: 18px;
    }
}

.swiperWrap {
    position: relative;
    margin-bottom: 5px;
    background-color: #eef0f3;
    /*background:linear-gradient(-45deg, #eef0f3, lightgray, #eef0f3, lightgray);
  animation: gradient 5s ease infinite;*/
    background-size: 400% 400%;
    width: 100%;
    height: 167px;
    overflow: hidden;
}

    .swiperWrap img {
        display: block;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }

    .swiperWrap:before {
        content: '';
        display: block;
        background-image: url("../img/icon-play.svg");
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        left: 8px;
        bottom: 8px;
        z-index: 10;
        width: 32px;
        height: 32px;
    }

@media screen and (max-width: 1280px) {
    .swiperWrap {
        width: calc((100vw - 120px)/4);
        height: calc((100vw - 120px)/4 *0.56);
    }
}

@media screen and (max-width: 1024px) {
    .swiperWrap {
        width: calc((100vw - 70px)/2);
        height: calc((100vw - 70px)/2*0.56);
    }
}

@media screen and (max-width: 600px) {
    .swiperWrap {
        width: calc(100vw - 30px);
        height: calc((100vw - 30px)*0.56);
    }
}

.s-next {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 30%;
    z-index: 3;
    background-image: url("../img/turn_right.png");
    right: -20px;
}

    .s-next.swiper-button-disabled {
        opacity: 0.6;
    }

@media screen and (max-width: 600px) {
    .s-next {
        right: 0;
        width: 48px;
        height: 48px;
    }
}

.s-prev {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 30%;
    z-index: 3;
    background-image: url("../img/turn_left.png");
    left: -20px;
}

    .s-prev.swiper-button-disabled {
        opacity: 0.6;
    }

@media screen and (max-width: 600px) {
    .s-prev {
        left: 0;
        width: 48px;
        height: 48px;
    }
}

.topicDesc {
    margin-bottom: 30px;
}

/* breadcrumb */
.breadcrumb {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 25px 0 25px 0;
}

    .breadcrumb a {
        font-size: 18px;
        font-weight: bold;
    }

        .breadcrumb a:link {
            color: #4d596a;
        }

        .breadcrumb a:active {
            color: #4d596a;
        }

        .breadcrumb a:visited {
            color: #4d596a;
        }

        .breadcrumb a:hover {
            color: #4d596a;
        }

    .breadcrumb span {
        padding: 0 5px;
    }

/* different page */
.videoPage .modulePC {
    margin-top: 70px;
}

.videoPage .KVPlayer .mainVideo {
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .videoPage .KVPlayer .mainVideo {
        padding-bottom: 15px;
    }
}

.videoTopic .mainName h2 {
    font-size: 24px;
}

.videoTopic .mainName * {
    display: block;
}

@media screen and (max-width: 600px) {
    .videoTopic .mainName {
        padding: 0;
    }
}

@media screen and (max-width: 600px) {
    .videoTopic .s-next {
        right: -15px;
    }
}

@media screen and (max-width: 600px) {
    .videoTopic .s-prev {
        left: -15px;
    }
}

@media screen and (max-width: 600px) {
    .videoTopic .SwiperList {
        padding: 0 0 20px 0;
    }
}

/* unsupport */
.unsupportBrowser .unsupport {
    display: flex;
    -ms-display: flex;
}

.unsupport {
    display: none;
    align-items: center;
    justify-content: center;
    -ms-align-items: center;
    -ms-justify-content: center;
    font-size: 48px;
    z-index: 999;
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background-color: #ffffff;
}

/* 隱私權 & 語系偵測 */
.fixedBottom {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 999;
}

.privacy-bar {
    background-color: #eef0f3;
}

.privacy-bar {
    display: none;
    padding: 10px 0;
    position: relative;
    text-align: center;
}

    .privacy-bar.need {
        display: block;
    }

    .privacy-bar div.default-status {
        display: none;
    }

    .privacy-bar .closeBtn {
        position: absolute;
        right: 10px;
        top: 14px;
        background-image: url("../img/cross.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        width: 12px;
        height: 12px;
    }

@media screen and (max-width: 1024px) {
    .privacy-bar > div.default-status {
        display: block;
    }

    .privacy-bar > div.scroll-status {
        display: none;
    }

    .privacy-bar > div {
        width: 83%;
        text-align: left;
        margin: 0 auto;
        font-size: 14px;
    }
}

.privacy-link {
    border-bottom: 1px solid #004e98;
    font-weight: 600;
}

    .privacy-link:link {
        color: #004e98;
    }

    .privacy-link:visited {
        color: #004e98;
    }

    .privacy-link:hover {
        color: #004e98;
    }

    .privacy-link:active {
        color: #004e98;
    }

/*@keyframes gradient {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}*/


/*【footer.css】*/
/* colors */
/* clearBoth */
/* breakpoints */
/* font */
footer {
    background-color: #315280;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 0;
    color: #eef0f3;
}

    footer a {
        display: inline-block;
        vertical-align: middle;
    }

        footer a:link {
            color: #eef0f3;
        }

        footer a:active {
            color: #eef0f3;
        }

        footer a:visited {
            color: #eef0f3;
        }

        footer a:hover {
            color: #eef0f3;
        }

.footerBox {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .footerBox {
        display: block;
        align-items: inherit;
        justify-content: inherit;
    }
}

.BrandLogo {
    margin: 0 100px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .BrandLogo .cna_logo {
        width: 70px;
        margin-right: 15px;
    }

    .BrandLogo .gv_logo {
        width: 130px;
        margin-top: -5px;
    }

@media screen and (max-width: 1024px) {
    .BrandLogo {
        margin: 0 25px 0 0;
    }
}

@media screen and (max-width: 768px) {
    .BrandLogo {
        justify-content: flex-start;
        margin: 0 0 20px 0;
    }
}

.websitemap {
    font-size: 14px;
}

@media screen and (max-width: 600px) {
    .websitemap {
        font-size: 16px;
    }
}

.websitemap .fcol {
    width: 120px;
    font-weight: bold;
}

.websitemap .inlinemap {
    width: calc(100% - 120px);
}

.websitemap .fhint {
    margin-right: 15px;
    margin-bottom: 8px;
}

@media screen and (max-width: 600px) {
    .websitemap .fhint {
        padding: 0 0 10px 0;
        display: inline-block;
    }
}

.websitemap li {
    margin-bottom: 20px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}

    .websitemap li:last-child {
        margin-bottom: 0;
    }

@media screen and (max-width: 600px) {
    .websitemap .fcol {
        width: 100px;
    }

    .websitemap .inlinemap {
        width: calc(100% - 100px);
    }
}

