@charset "UTF-8";

/* ================================================
- Basic
================================================ */

body {
    color: #333;
    font: 13px/1.6em "Century Gothic", Arial, "Microsoft JhengHei", "蘋果儷中黑", "儷黑 Pro", "新細明體", "sans-serif";
    /* background: url("../images/bg.jpg") top center repeat-y; */
    background-color: #fff6ec;
    /* min-width: 1200px; */
}
a {
    display: block;
    text-decoration: none;
}
:focus {
    outline: none;
}
i {
    font-style: normal;
}
.header, .footer {
    text-align: center;
    background: #fff;
    position: relative;
    z-index: 9;
}
.hd_pc {
    /* max-width: 1200px; */
    width: 100%;
}
.hd_m {
    display: none;
}
.pc_mode {
    display: block
}
.m_mode {
    display: none
}
.M_menu_wrap {
    display: none;
}

.wrapper {
    /* background: url("../images/kv_bg.png") top center no-repeat, url("../images/bg.jpg") top center repeat-y #fff6ec; */
    /* background: url("../images/kv_bg.jpg") top center no-repeat, url("../images/bg.jpg") top center repeat-y #fff6ec; */
    /* background: url("../images/bg.jpg") center 790px repeat-y #fff6ec; */
    background: url("../images/bg.jpg") center 657px repeat-y #fff6ec;
    width: 100%;
    height: auto;
    overflow: hidden;
    overflow-y: hidden;
    overflow-x: hidden;
}

.all_bg_move {
    background: url("../images/bg_move.png") no-repeat center;
    background-size: contain;
    /* position */
    position: fixed;
    top: 0; bottom: 0;
    left: 0; right: 0;
    z-index: 1;
}
    .all_bg_move:before {
        content: ' ';
        display: block;
        background: url("../images/bg_move_left.png") no-repeat center right;
        background-size: contain;
        width: 150px;
        height: 210px;
        margin: auto;
        /* position */
        position: absolute;
        top: 0; bottom: 0;
        left: 2%;
        z-index: 1;
    }
    .all_bg_move:after {
        content: ' ';
        display: block;
        background: url("../images/bg_move_right.png") no-repeat center left;
        background-size: contain;
        width: 250px;
        height: 200px;
        margin: auto;
        /* position */
        position: absolute;
        top: 0; bottom: 0;
        right: 3%;
        z-index: 1;
    }
.main {
    /* background: url("../images/bg.jpg") center repeat-y #fff6ec; */
    background: none !important;
    width: 100%;
    /* min-height: 100vh; */
    margin: auto;
    z-index: 1;
    /* overflow: hidden; */
    overflow: initial !important;
    overflow-y: initial !important;
    overflow-x: initial !important;
}
.display_pc {
    display: block;
}

.display_m {
    display: none;
}

.txt-link {
    font-size: 16px;
    line-height: 1.3em;
    color: white;
    display: inline-block;
    background-color: #035381;
    padding: .4em 1em;
    border-radius: 5px;
    transition: all .5s;
}
    .txt-link:hover {
        background-color: #0378af;
        transform: translateX(5px);
    }

.text-link {
    color: #035381;
    text-decoration: underline;
}
    .text-link:hover {
        color: #1f6dc7;
    }

/* ================================================
- 主視覺 kv
================================================ */

.kv_bg {
    cursor: default;
    /* background: url('../images/20221219v2_ok_index.jpg') no-repeat top center; */
    /* background: url('../images/kv_bg.jpg') repeat-x top center; */
    background: url('../images/kv_bg.png') repeat-x top center;
    /* background-color: #fff6ec; */
    max-width: 1960px;
    width: 100%;
    margin: auto;
    position: relative;
    z-index: 2;
}
    .kv_bg img {
        width: 100%;
        max-width: 100%;
    }
    .kv_bg:before {
        content: ' ';
        display: block;
        background: url("../images/kv_float_left.png") no-repeat center;
        background-size: contain;
        width: 740px; height: 410px;
        /* position */
        position: absolute;
        top: 22.6%;
        left: 5.8%;
        z-index: 3;
    }
    .kv_bg:after {
        content: ' ';
        display: block;
        background: url("../images/kv_float_right.png") no-repeat center;
        background-size: contain;
        width: 345px; height: 600px;
        /* position */
        position: absolute;
        top: 5.5%;
        right: 4.7%;
        z-index: 3;
    }

.kv {
    width: 98%;
    max-width: 1200px; /* 寬度 */
    /* height: 600px; */
    height: 541px;
    margin: auto;
    position: relative;
    z-index: 2;
}

/* 展示商品 */
.kv_prod {
    width: 77%;
    max-width: 929px;
    margin: auto;
    /* position */
    position: absolute;
    top: 6%; bottom: 2.6%;
    right: 0.2%;
    z-index: 3;
}
    /* .kv_prod:before {
        content: ' ';
        display: block;
        background: url("../images/kv_bao_right.png") no-repeat;
        background-size: contain;
        width: 100%;
        max-width: 515px;
        height: 170px;
        position: absolute;
        bottom: 0;
        right: 13%;
    } */
    .kv_prod:before {
        content: ' ';
        display: block;
        background: url("../images/kv_bao_right1.png") no-repeat;
        background-size: contain;
        width: 100%;
        max-width: 154px;
        height: 154px;
        /* position */
        position: absolute;
        bottom: 0;
        right: 13%;
    }
    .kv_prod:after {
        content: ' ';
        display: block;
        background: url("../images/kv_bao_right2.png") no-repeat;
        background-size: contain;
        width: 100%;
        max-width: 58px;
        height: 58px;
        /* position */
        position: absolute;
        bottom: 0;
        left: 31.5%;
    }
/* 文案 */
.slogan {
    text-align: center;
    width: 43%;
    max-width: 515px;
    margin: auto;
    /* position */
    position: absolute;
    top: 6.5%;
    left: -3%;
    z-index: 2;
}
    .slogan img {
        width: 100%;
        max-width: 100%;
    }
    .slogan:before {
        content: ' ';
        display: block;
        background: url("../images/kv_bao_left.png") no-repeat;
        background-size: contain;
        width: 101px;
        height: 101px;
        /* position */
        position: absolute;
        bottom: 2%;
        left: 4%;
    }

/* END kv */

/* ================================================
- 活動
================================================ */

.event_wrapper {
    box-sizing: border-box;
    /* background: url("../images/event_bg.png") no-repeat center; */
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative;
    z-index: 6;
}
    .event_wrapper:before {
        content: ' ';
        display: block;
        background: url("../images/event_bg_left.png") no-repeat center;
        background-size: contain;
        width: 360px; height: 301px;
        margin: auto;
        /* position */
        position: absolute;
        top: 25%;
        left: -3%;
        z-index: 1;
    }
    .event_wrapper:after {
        content: ' ';
        display: block;
        background: url("../images/event_bg_right.png") no-repeat center;
        background-size: contain;
        width: 360px; height: 301px;
        margin: auto;
        /* position */
        position: absolute;
        top: 25%;
        right: -3%;
        z-index: 1;
    }
.events {
    box-sizing: border-box;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 98%;
    max-width: 1200px;
    /* height: 185px; */
    margin: auto;
    position: relative;
    z-index: 9;
}
    .events img {
        width: 100%;
        /* max-width: 100%; */
        max-width: 400px;
        margin: auto;
    }
        .events .event1 {}
        .events .event2 {}
        .events .event3 {
            display: flex;
            align-content: center;
            justify-content: center;
            align-items: center;
            background: url("../images/event_item03.png") no-repeat center top;
            background-size: contain;
            overflow: hidden;
        }
    /* .events a:hover */
    .events .event1 a:hover,
    .events .event2 a:hover
    {
        filter: brightness(110%);
        transform: translateY(-10px);
    }
    .event-img {}
    .event-item {
        box-sizing: border-box;
        width: 33%;
        height: 185px;
        padding: 0;
        position: relative;
    }
        .event-item a {
            font-size: 28px;
            line-height: 30px;
            display: block;
            width: auto;
            height: auto;
            transition: all .5s;
            filter: brightness(100%);
            transform: translateY(0);
        }
        .events .event-item + .event-item {
            margin-left: -25px;
        }

    .bank_wrapper {
        overflow: hidden;
    }
        .bank_wrapper .swiper-slide img {
            max-width: 260px;
        }
        .swiper-pagination-bullet { background: transparent; box-shadow: inset 0 0 0 2px #002a49; }
        .swiper-pagination-bullet.swiper-pagination-bullet-active { background:#002a49; }

/* ================================================
- 商品區塊
================================================ */

.title_temp {
    max-width: 1200px;
    margin: auto;
}

.pro_temp {
    display: none
}

.prod_wrapper {
    position: relative;
    padding-top: 20px;
    padding-bottom: 0;
}

    .prod_container {
        padding-bottom: 150px;
        position: relative;
        overflow: hidden;
    }

    .ProductList {
        /* max-width: 1200px; */
        margin: auto;
        position: relative;
        z-index: 9;
        /* overflow: hidden; */
    }

/** title **/
    .tit {
        display: none;
        margin: auto;
    }
    .group {}
    .group .tit {
        display: block !important;
        background: url("../images/title_bg.png") left 83px no-repeat;
        max-width: 1200px;
        height: 115px;
        position: relative;
        z-index: 2;
    }
        .group .tit:before {
            content: ' ';
            display: block;
            background: url("../images/bg_move_right_bao.png") no-repeat center;
            background-size: contain;
            width: 122px; height: 120px;
            /* position */
            position: absolute;
            top: -40%;
            right: -2%;
        }
        .group .tit:after {
            content: ' ';
            display: block;
            background: url("../images/bg_move_left_bao.png") no-repeat center;
            background-size: contain;
            width: 136px; height: 110px;
            /* position */
            position: absolute;
            top: 340%;
            left: -23%;
        }
        .group .tit > div {
            color: #fff;
            font-size: 45px;
            line-height: 64px;
            font-weight: bold;
            text-align: center;
            box-sizing: border-box;
            background: url("../images/group_tit.png") no-repeat center;
            background-size: contain;
            max-width: 810px;
            height: 110px;
            /* padding-top: 0.35em; */
            margin: auto;
            position: relative;
            cursor: default;
        }
            .group .tit > div span {
                color: #ffecc4;
                /* font-weight: bold; */
                display: block;
                font-weight: normal;
                /* padding-top: 0.35em; */
                padding-top: 0.55em;
                padding-bottom: 0.35em;
                padding-right: 1.6em;
                -webkit-text-stroke: 1px #ffecc4;
                text-shadow: 0 5px 10px rgb(0 0 0 / 30%);
            }
            .group .tit a {
                color: transparent;
                font-size: 20px;
                line-height: 34px;
                background: url("../images/group_tit_more.png") no-repeat center transparent;
                display: inline-block;
                width: 123px; height: 50px;
                padding: 0 20px;
                /* margin: auto; */
                margin-top: 38px;
                border-radius: 30px;
                position: absolute;
                top: 0; /*bottom: 0;*/ bottom: 0.65em;
                right: 45px;
            }
            .tit_img {
                max-width: 125px;
                margin-bottom: -10px;
            }

/** 商品區塊 **/
    .group {
        box-sizing: border-box;
        max-width: 1200px;
        width: 98%;
        padding-top: 50px;
        padding-bottom: 70px;
        margin: 0 auto;
        /* margin: 30px auto 0; */
        position: relative;
    }
        .group:before {
            content:'';
            background: url("../images/border.png") no-repeat center transparent;
            background-size: 100% 100%;
            /* background-color: transparent; */
            width: 110%;
            margin: auto;
            /* position */
            position: absolute;
            top: 60px; bottom: 0;
            right: 0; left: -9%;
            z-index: 1;
        }

/** 商品 **/
    .ProductList {
        width: initial;
        overflow: initial;
    }
        .ProductList .item {
            /* width: 220px; */ /* 5品一行 */
            width: 260px; /* 4品一行 */
            border-radius: 10px;
        }
        .ProductList .item > a {
            border-radius: 10px;
            position: relative;
            z-index: 9;
        }
        .ProductList .ProductImg {
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            /* width: 220px; height: 220px; */ /* 5品一行 */
            /* width: 260px; height: 260px; */ /* 4品一行 */
            border-radius: 10px;
            /* transition: all 1s; */
        }
            .ProductList .ProductImg:hover {
                /* background-size: 150% 150%; */
            }
        .ProductImg .tab {
            color: #ffffff;
            font-size: 18px;
            font-weight: bold;
            display: inline-block;
            background-color: #e04d34;
            padding: 10px 20px;
            border-radius: 0 0 10px 10px;
            box-shadow: rgb(0 0 0 / 35%) 2px 2px 3px;
            position: absolute;
            top: 0;
            left: 10px;
            z-index: 4;
        }
        .ProductList .ProductDesc {
            /* background: linear-gradient(90deg, #e04d34 0%, #e04d34 0%, #ffb02c 100%); */
            background: linear-gradient(90deg, #e04d34 0%, #ffb02c 100%);
        }

    .item {
        text-align: center;
        float: left;
        
        /* width: 220px; */ /* 5品一行 */
        /* margin-right: 4px; margin-left: 4px; */
        
        width: 260px; /* 4品一行 */
        margin-right: 10px; margin-left: 10px;

        margin-bottom: 15px;
    }
        .item > a {
            display: block;
            background: #fff;
            padding-top: 5px;
            -webkit-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.45);
            -moz-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.45);
            box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.45);
            
            -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
            -webkit-transition-duration: 0.1s;
            transition-duration: 0.1s;
            overflow: hidden;
        }
            .item > a:hover, .item > a:focus, .item > a:active {
                transform: translateY(-5px)
            }
        .item .ProductImg {
            position: relative;
            overflow: hidden;
            margin: 0 auto;
            width: 100%;
            /* max-width: 220px; height: 220px; */ /* 4品一行 */
            /* max-width: 260px; height: 260px; */ /* 4品一行 */
            max-width: 250px; height: 250px; /* 4品一行 留空 */
        }
            .item .ProductImg img {
                /* position: absolute;
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                margin: auto;
                max-width: 100%;
                max-height: 100%; */
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        .item .ProductDesc {
            overflow: hidden;
            padding: 0 5px;
            height: 36px;
            color: #fff;
            font-weight: bold;
            font-size: 15px;
            line-height: 36px;
            background: linear-gradient(90deg, #173c68 0%, #0378af 100%);
            width: 90%;
            margin: 2px auto;
            border-radius: 50px;
        }
        .item .ProductName {
            overflow: hidden;
            padding: 4px 5px;
            height: 38px;
            color: #000;
            text-align: center;
            font-size: 16px;
            line-height: 21px;
        }
        .item .ProducPrice, .item .Event_Condition {
            padding: 7px 10px 0 10px;
            height: 45px;
            color: crimson;
            /*  background: url("../images/buy_bg.png") right center no-repeat #000;
            background-size: cover;*/
            position: relative;
            margin-top: 3px;
        }
            .item .ProducPrice label {
                cursor: pointer;
            }
            .item .ProducPrice i em span {
                margin: 0 10px 0 0;
                font-weight: 100;
                font-size: 13px;
            }
            .item .ProducPrice span, .item .Event_Condition i span {
                margin: 0 2px 0 2px;
                font-weight: 500;
                font-size: 33px;
                line-height: 37px;
                font-weight: bold;
            }
            .item .ProducPrice i em {
                color: #747474;
                text-decoration: line-through;
                font-style: normal;
            }
            .item .ProducPrice .price_txt {
                color: crimson;
                font-size: 15px;
                line-height: 26px;
            }        
    /**tag wfe******************/
    .tag_wfe {
        position: relative;
        top: -5px;
        display: inline-block;
        width: 20px;
        height: 20px;
        background: url("//www.payeasy.com.tw/pezlib/images/tag_wfe_s.png") left;
        background-size: cover;
    }
        .tag_wfe:before {
            display: inline-block;
            height: 100%;
            content: '';
            vertical-align: text-bottom;
        }
        .tag_wfe .brief:after {
            position: absolute;
            top: 10px;
            left: -10px;
            width: 0;
            height: 0;
            border-color: transparent #E36E1A transparent transparent;
            border-style: solid;
            border-width: 5px;
            content: '';
            font-size: 0;
            line-height: 0;
        }
    .tag_wfe.checked {
        background-position: right;
    }
        .tag_wfe.checked:hover .brief {
            display: none;
        }
    .tag_wfe .brief {
        position: absolute;
        top: -5px;
        left: 25px;
        z-index: 10;
        display: none;
        width: 64px;
        background: #E36E1A;
        color: #f6f6f6 !important;
        text-align: center;
        font-size: 12px !important;
        line-height: 16px !important;
    }
        .tag_wfe:hover .brief {
            display: block;
        }

/* ================================================
- 右側懸浮 float
================================================ */

.gotop {
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-size: 22px;
    line-height: 60px;
    text-align: center;
    height: 60px;
    position: fixed;
    left: calc(50% + 620px);
    width: 60px;
    border-radius: 30px;
    bottom: 250px;
    z-index: 900;
    display: none;
    cursor: pointer;
}

.NavArea {
    display: none;
}
@media screen and (min-width: 769px) {

    /** float **/
    .NavArea {
        display: none;
        width: 140px;
        position: fixed;
        top: 50px;
        right: 0;
        z-index: 250;
    }

    .Nav-slide.active {
        color: #fff;
        background: #09506c;
        text-shadow: #000 0 0 1em;
    }
    

    .float_tit {
        text-align: center;
    }

    /* .float_tit span {
        color: white;
        font-size: 140%;
        font-weight: bold;
        text-shadow: 0px 1px 2px rgb(0 0 0 / 30%);
        display: block;
        background: #d2a868;
        padding: 5px 0;
        margin-top: 10px;
    } */

    .float_main {
        width: 138px;
        opacity: 0.9;
        filter: alpha(opacity=90);
    }

    .go_top {
        display: block;
        cursor: pointer;
    }

    .Nav-wrapper {
        /* background: #267ba2; */
        background-color: rgb(38 123 162 / 82%);
        width: 130px;
        margin: -8px auto 0;
        padding-top: 10px;
        border-top-right-radius: 10px;
        border-top-left-radius: 10px;
        border-bottom-right-radius: 10px;
        border-bottom-left-radius: 10px;
        /* overflow: hidden; */
    }

    .Nav-wrapper li {
        font-size: 15px;
        line-height: 15px;
        text-align: center;
        background: transparent;
        margin: 5px auto;
        padding: 5px 0;
        position: relative;
    }

    .Nav-wrapper li.highlight0 {
        font-size: 24px;
        line-height: 26px;
        border-radius: 20px 0 0 0;
        padding-top: 20px;
        padding-left: 2px;
        color: #fff;
        font-weight: bold;
    }

    .Nav-wrapper li.highlight1 {
        padding-left: 2px;
    }

    .Nav-wrapper li.highlight2 {
        font-size: 24px;
        border-radius: 0 0 20px 20px;
        padding-bottom: 20px;
        padding-left: 2px;
    }
        .Nav-wrapper li.go_top:before {
            content: ' ';
            display: block;
            background: url("../images/float_bottom.png");
            position: absolute;
            width: 126px;
            height: 116px;
            bottom: -85px;
            right: -20px;
            z-index: 251;
        }

    .Nav-wrapper li a {
        color: #fff;
        font-weight: bold;
        cursor: pointer;
        display: block;
        padding: 2px 0;
        position: relative;
        z-index: 500;
    }

    .Nav-wrapper li a:hover,
    .Nav-wrapper li a:focus,
    .Nav-wrapper li a:active {
        color: #fff;
        text-shadow: #29ceff 0 0 1em;
    }

    .Nav-wrapper li:after {
        background: #36d8ed;
        box-shadow: #29ceff 0 0 1em;
        height: 2px;
        position: absolute;
        right: 51%; left: 51%;
        bottom: 0;
        z-index: 1;
        content: "";
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
        -webkit-transition-duration: 0.3s;
        transition-duration: 0.3s;
        -webkit-transition-property: left, right;
        transition-property: left, right;
    }

    .Nav-wrapper li:hover:after,
    .type_leftmenu li:focus:after,
    .type_leftmenu li:active:after,
    .type_leftmenu li.active:after,
    .type_leftmenu li.Nav-slide.active:after {
        right: 10%;
        left: 10%;
    }

    .Nav-wrapper li.highlight0:after {
        background: transparent;
    }
}

/* ================================================
- 底部選單
================================================ */

.M_menu_wrap {
	display: none;
}
.M_menu_block {
    background: rgba(85,85,85,0.85);
    background: -moz-linear-gradient(0deg, rgba(85,85,85,0.85) 0%, rgba(17,17,17,0.85) 100%);
    background: -webkit-linear-gradient(0deg, rgba(85,85,85,0.85) 0%, rgba(17,17,17,0.85) 100%);
    background: linear-gradient(0deg, rgba(85,85,85,0.85) 0%, rgba(17,17,17,0.85) 100%);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
@media screen and (max-width:768px) {
    .M_menu_wrap { display:block; font-size: 15px; position: fixed; bottom: 0; z-index: 200; }
    .M_menu_block { position: fixed; bottom:0; /**background: rgba(0,0,0,1)**/; width: 100%; z-index: 200; }
    .M_menu_block ul li { width: 39vw; box-sizing: border-box; text-align: center; float: left; height: 50px; cursor: pointer; border-top: 1px solid #999; border-right: 1px solid #666; border-left: 1px solid #222; }
    .rule .M_menu_block ul li /* - 活動說明頁 : 規則頁 rule */ { width: 26vw; }
    .M_menu_block ul li.M_menu_gotop  { background: linear-gradient(0deg, #173c68 0%, #0378af 100%); width: 22vw; }
    /**.M_menu_block ul li:last-child {border:none;}**/
    .M_menu_block ul li:before {content:''; display: inline-block; vertical-align: middle; height: 100%; }
    .M_menu_block ul li a { display: inline-block; width: 100%; color: #fff; font-size: 15px; line-height: 16px; vertical-align:middle; }
    .M_menu_block ul li a b { display: inline-block; text-shadow: 0 0 2px black; box-sizing: content-box; background: #e04d34; padding: 5px; width: 1em; height: 1em; border-radius: 100px; }
    .M_menu_block ul li.best a { color: yellow; }
    .M_menu_filter { display: none; position: fixed; bottom:60px; width: 95%; margin: auto; left: 0; right: 0; background: #fefefe; border-radius: 10px;z-index: 200; }
    .M_menu_filter:after { content:''; display: inline-block; width: 0; height: 0; border-width:7px; border-color:#fefefe transparent transparent transparent ; border-style:solid; position: absolute; left: 0; right: 0; bottom:-14px; margin: auto; }
    .M_menu_filter ul li { /*width: 33.3%;*/ box-sizing: border-box; text-align: center; float: left; height: 50px; padding: 5px; }
    .M_menu_filter ul li a { background: darkred;  display: block; font-size: 14px; height: 35px; color: #fff;vertical-align: middle; border-radius: 20px; }
    .M_menu_filter ul li a:before { content:''; display: inline-block; vertical-align: middle; height: 100%; }
    .bk_mask { display: none; position: fixed; width: 100vw; height: 100vh; background: rgba(0,0,0,.8); top:0;z-index: 100; }   
}

/* ================================================
- 活動說明頁 : 規則頁 rule
================================================ */

.rule {
    /* background: url("../images/rule_kv.png") no-repeat top center,  url("../images/bg.jpg") repeat-y center 657px #fff6ec; */
}
    .rule_bg_move {
        display: none;
        /* background: url("../images/bg_pro.png") no-repeat;
        position: fixed;
        top: 0; bottom: 0;
        left: 0; right: 0; */
    }
        .rule_bg_move:before { left: 6%; }
        .rule_bg_move::after { right: 5%; }

    .rule .kv_bg {
        /* background: none;
        height: 550px; */
    }
        /* .rule .kv_bg:after, .rule .kv_bg:before { display: none; } */

.terms_container {
    background: url("../images/rule_border.png") no-repeat center;
    background-size: 100% 100%;
    max-width: 1200px;
    padding-top: 5em;
    padding-bottom: 6em;
    margin: auto;
    position: relative;
}
    .terms_container:before {
        content: ' '; display: block;
        background: url("../images/rule_border-center.png") no-repeat left center;
        width: 70px;
        height: 290px;
        margin: auto;
        position: absolute;
        top: 0; bottom: 0;
        left: -1%;
        z-index: 2;
    }
    .terms_container:after {
        content: ' '; display: block;
        background: url("../images/rule_border-center.png") no-repeat right center;
        width: 70px;
        height: 290px;
        margin: auto;
        position: absolute;
        top: 0; bottom: 0;
        right: -1%;
        z-index: 2;
    }
.terms_container .title {
    text-align: center;
    display: block;
    width: 100%;
    margin: auto;
    position: absolute;
    left: 0; right: 0;
    top: -2%;
}
.terms_content {
    background-color: rgba(255, 255, 255, 0.5);
    width: 85%;
    margin: auto;
}
.go-back-btn {
    text-align: center;
    /* padding-top: 35px; */
    padding-bottom: 35px;
    position: relative;
    z-index: 4;
}
    .go-back-btn a,
    .go-back-btn img {
        width: 80%;
        max-width: 315px;
        margin: auto;
    }

/* 規則頁 : 內文編輯區 */
.terms_container h3 {
    /* background: linear-gradient(90deg, #8d31ff, #4631ff); */
    background: linear-gradient(90deg, #5e20ed 0%, #6e69e9 50%, #36d8ed 100%);
    border-radius: 20px;
    font-size: 22px;
    line-height: 30px;
    font-weight: bold;
    padding: 5px 20px;
    display: inline-block;
    margin: 10px 0;
    color: #fff;
}

.terms_content h3 strong {
    /* color: #00ffcb; */
    margin-right: 3px;
}

.terms_content h4 {
    font-weight: bold;
    font-size: 18px;
    color: #d0e4ff;
}

.terms_dflex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.terms_content ol li {
    margin: 0 30px 7px 40px;
    list-style-type: decimal;
}

.terms_content li strong {
    color: #4631ff;
}

.terms_content a {
    display: inline-block;
    font-weight: bold;
    font-size: 18px;
    margin: 5px 3px;
    border-radius: 10px;
    color: #fff;
    background-color: #4631ff;
    padding: 5px 20px;
    transition: transform .35s;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.terms_content a:hover {
    -webkit-transform: translate(10%, 0);
    transform: translate(10%, 0);
}

.terms_content a.over {
    background-color: lightgray;
}

.terms_content a.over:hover {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.terms_container p {
    padding-left: 18px;
    margin-bottom: 5px;
}

.box1 .gift {
    width: 100%;
    max-width: 385px;
}

.bottom-btn {
    text-align: center;
    /* margin-top: 8%; margin-bottom: 8%; */
    /* margin-bottom: 40px; */
}
    .bottom-btn a {
        display: inline-block;
        background-color: transparent;
        transition: transform 1s;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    .bottom-btn a:hover {
        -webkit-transform: translate(5%, 0);
        transform: translate(5%, 0);
    }

.terms_prize_list th,
.terms_prize_list td {
    border: 2px solid #116ca7;
    text-align: center;
}

/**rule_wrapper**/
.rule_wrapper {
    /* background: url("../images/rule_box-top.png") no-repeat top center; */
    /* width: 1100px; */
    width: 1200px;
    margin: 0px auto 70px;
    position: relative;
    top: 0px;
    z-index: 3;
}
    .rule_wrapper:after {
        content: ' ';
        display: block;
        background: url("../images/rule_box-bottom.png") no-repeat top center;
        width: 100%;
        height: 31px;
        position: absolute;
        bottom: -30px;
        left: 0; right: 0;
    }

.rule_container {
    /* background-color: #fff; 
    border: solid 3px #fff;  
    border-radius: 20px; */
}

/**rule_content**/
.rule_content {
    font-size: 15px;
    line-height: 25px;
    background: url("../images/rule_box-main.png") repeat-y top center;
    /* border-radius: 20px;
    background: #fff; */
    width: 90%;
    margin: auto;
    padding: 30px;
}

    .rule_photo {
        text-align: center;
        background: url("../images/rule_event_photo.png") no-repeat center;
        background-size: 100% 100%;
    }

        .rule_photo img {
            width: 100%;
            max-width: 876px;
        }

    .rule_wrapper .title1 {
        color: #fff;
        font-size: 32px;
        line-height: 35px;
        font-weight: 800;
        text-align: center;
        background: linear-gradient(135deg, #49ddea 0%, #3a5287 80%);
        padding: 20px 0 20px;
        border-radius: 20px 20px 0 0;
        width: 94%;
        margin: auto;
    }

    .rule_wrapper .h2 {
        color: white;
        /* color: #ffea00; */
        font-size: 18px;
        font-weight: bold;
        display: inline-block;
        text-align: center;
        background: #035381;
        margin: 10px 0;
        padding: 5px 20px;
        border-radius: 20px;
    }

    .rule_wrapper h3 {
        color: #035381;
        font-weight: bold;
        font-size: 18px;
        line-height: 23px;
        margin-top: 20px;
    }

    .rule_wrapper li {
        margin-left: 25px;
        padding: 2px 0;
        list-style-type: disc;
    }
    .list-decimal, .list-decimal li {
        list-style: decimal;
    }
    .rule_content a {
        color: #1f6dc7;
        text-decoration: underline;
        transition: all .5s;
    }
    .rule_content a:hover {
        color: red;
    }
.rule a {
    display: inline-block;
}

    a.btn_back {
        display: block;
        margin: auto;
        padding: 10px 20px;
        width: 100px;
        border-radius: 50px;
        background-color: darkred;
        color: #fff;
        text-align: center;
        text-decoration: none;
        font-size: 24px;
        transition: linear .2s;
        cursor: pointer;	
    }

            a.btn_back:hover, a.btn_back:focus, a.btn_back:active {
                background-color: tomato;
            }

    a.btn {
        display: inline-block;
        padding: 5px 15px;
        border-radius: 50px;
        background-color: #892315;
        color: #ffea00;
        text-align: center;
        text-decoration: none;
        font-size: 16px;
        transition: linear .2s;
        cursor: pointer;
        font-weight: bold;	
        margin-top: 5px;
    }

        a.btn:hover, a.btn:focus, a.btn:active {
            background-color: #ffea00;
            color: #892315;
            transform: translateX(10px);
        }

/* Table */
table {
    background: white;
    border-collapse: collapse;
    margin: 15px 0;
    width: 100%;
    border: 2px solid #116ca7;
}

    table tr,
    table th,
    table td {
        border: none;
        border-bottom: 1px solid #e4ebeb;
    }

    table th,
    table td {
        padding: 10px 12px;
        text-align: left;
    }

    table th {
        background: #116ca7;
        color: #ffffff;
        text-transform: uppercase;
    }

    table tr td {
        background: #f5f5f5;
    }

    table tr:nth-of-type(2n+2) td {
        background: #ffffff;
    }

table.bt {}

    table.bt tfoot th,
    table.bt tfoot td,
    table.bt tbody td {
        font-size: 14px;
        padding: 0;
    }

    table.bt tfoot th:before,
    table.bt tfoot td:before,
    table.bt tbody td:before {
        background: #989898;
        color: white;
        margin-right: 10px;
        padding: 10px 10px 0;
    }

    table.bt tfoot th .bt-content,
    table.bt tfoot td .bt-content,
    table.bt tbody td .bt-content {
        display: inline-block;
        padding: 10px 5px 0;
    }

    table.bt tfoot th:first-of-type:before,
    table.bt tfoot th:first-of-type .bt-content,
    table.bt tfoot td:first-of-type:before,
    table.bt tfoot td:first-of-type .bt-content,
    table.bt tbody td:first-of-type:before,
    table.bt tbody td:first-of-type .bt-content {
        padding-top: 10px;
    }

    table.bt tfoot th:last-of-type:before,
    table.bt tfoot th:last-of-type .bt-content,
    table.bt tfoot td:last-of-type:before,
    table.bt tfoot td:last-of-type .bt-content,
    table.bt tbody td:last-of-type:before,
    table.bt tbody td:last-of-type .bt-content {
        padding-bottom: 10px;
    }

/* ================================================
- 至適應
================================================ */

@media screen and (max-width: 1440px) {
    .event_wrapper:before, .event_wrapper:after { display: none; }
}

@media screen and (max-width: 1280px) {
    .kv_bg {
        /* height: 490px; */
    }
        .kv {
            height: 450px;
        }
        .kv_bg:before {
            top: 12%;
            left: -18%;
            z-index: 1;
        }
        .kv_bg:after {
            top: 3%;
            right: -10%;
            z-index: 1;
        }
    
    .event_wrapper {
        padding: 0;
    }
        .event-item {
            align-items: flex-start;
        }
        .events .event3 {
            align-items: flex-start;
        }
        .bank_wrapper {
            width: 72%;
            margin-top: 20px;
        }

    .prod_wrapper {
        padding-top: 0;
    }
        .ProductList > .group:nth-child(1) {
            padding-top: 10px;
        }
        
    .group {
        width: 100%;
        max-width: initial;
    }
        .group:before {
            width: 125%;
            /* width: 100%;
            left: 0; */
        }
        .group #group_title_1.tit:before { top: 0 !important; }

    .ProductList .item {
        width: 24vw;
        margin-right: 0.5vw;
        margin-left: 0.5vw;
        /* margin-right: 5px;
        margin-left: 5px; */
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
        /* .kv_bg:before {
            background: url("../images/kv_beach_w1200.png") no-repeat top center;
            background-size: cover;
        } */
        /* 展示商品 */
        .kv_prod {
            top: initial;
        }
    .event-item {
        height: 155px;
    }
}

@media screen and (max-width: 768px) {

    .ProductList:before, .ProductList:after { display: none; }
    
    body {
        width: 100vw;
        min-width: inherit;
    }
    
    * { box-sizing: border-box; }
    .header {
        width: 100vw;
        /* position: fixed; */
        /* position: absolute; */
        position: relative;
        top: 0;
        left: 0; right: 0;
        z-index: 9999;
    }
    .footer, .drift { display: none; }
    .hd_pc { display: none; }
    .hd_m { display: block; }
    .pc_mode { display: none }
    .m_mode { display: block }
    .display_m { display: block !important; }
    .display_pc { display: none !important; }
    .inline-block_m { display: inline-block !important; }

    .wrapper {
        /* background: url("../images/bg.jpg") top center repeat-y #fff6ec; */
    }

    .main {
        /* background: url(../images/bg_all_m.jpg) top center repeat-y #fff6ec; background-size: 100%; */
    }
        .rule .main {
            padding-bottom: 0;
        }

    /** kv **/
    .kv_bg {
        /* background: url("../images/kv_bg.jpg") top center no-repeat; background-size: 275vw; */
        /* background: url("../images/kv_bg_m.png") center 50px no-repeat; */
        background: url("../images/kv_bg_m.png") center top no-repeat;
        background-size: contain;
        width: 100vw;
        /* padding-top: 50px; */
    }
        .kv_bg:after, .kv_bg:before { display: none; }

    .kv {
        width: 100vw;
        /* height: 100%; */
        /* height: 115vw; */
        height: 105vw;
    }

    .slogan {
        width: 77%;
        transform: translateX(-6%);
        top: 0;
        left: 0; right: 0;
    }
        .slogan:before {
            width: 50px;
            height: 50px;
        }
    
    /* 展示商品 */
    .kv_prod {
        width: 95%;
        transform: translateX(-5%);
        top: initial; bottom: 0;
        left: 0; right: 0;
    }
        .kv_prod:after, .kv_prod:before { display: none; }

    /** 活動 **/
    .event_wrapper {
        width: 96vw;
        max-width: 735px;
        margin-top: 3vh;
    }
        .events {
            /* flex-direction: column; */
            flex-wrap: wrap;
            width: 100%;
            /* height: 138.75%; */
            height: auto;
            max-height: initial;
        }
            .events .event1 {
                width: 50%;
                height: initial;
            }
            .events .event2 {
                width: 50%;
                height: initial;
            }
            .events .event3 {
                width: 100%;
                height: 185px;
                /* height: 46.25%; */
                /* padding: 5% 0; */

                /* position */
                /* position: relative; */
            }
            .events .event-item {
                /* width: 100%; */
            }
            .events .event-item + .event-item {
                /* margin-top: -15px; */
                margin-left: 0;
            }

            .events .event3 .bank_wrapper {
                /* width: 75%;
                margin: auto; */
                /* position */
                /* position: absolute;
                top: 0; bottom: 0;
                left: 0; right: 0; */
            }
    
    .all_bg_move {}
        .all_bg_move:before, .all_bg_move:after { display: none; }

    /**Product**/
    .prod_wrapper {}
        .prod_wrapper .group:last-child {
            padding-bottom: 0;
        }
        .prod_wrapper_bg {
            width: 100vw;
        }
    .prod_container {
        padding-bottom: 30px; /*無底部*/
        /*padding-bottom: 60px;*/ /*底部.M_menu_wrap/1行*/
        /*padding-bottom: 85px;*/ /*底部.M_menu_wrap/2行*/
    }
    .ProductList {
        width: 100vw;
    }
    .group {
        background: none;
        padding-bottom: 0;
    }
        .group:before {
            background: none;
            top: calc(15vw - 8px);
        }
    .group .tit {
        background-size: contain;
        background-position: left 11vw;
        width: 100vw;
        height: initial;
        /* top: -15vw !important; */
        /* overflow: hidden; */
    }
        .group .tit:before { width: 70px; }
        .group .tit:after { display: none; }
        .group .tit > div {
            font-size: 30px;
            line-height: 1.2em;
            box-sizing: content-box;
            /* background: url('../images/group_tit.png') no-repeat center; */
            background: url('../images/group_tit_m.png') no-repeat center;
            background-size: 100% 100%;
            width: 100vw; height: auto;
            /* padding-top: 15px; padding-bottom: 15px; */
            padding-top: 10px; padding-bottom: 20px;
        }
            .group .tit > div span {
                box-sizing: border-box;
                display: block;
                width: 80%;
                padding-right: 122px;
                margin: auto;
                position: relative;
            }
            .group .tit > div span:after/* More / 查看更多>> */ {
                content: ' ';
                display: block;
                background: url('../images/group_tit_more.png') no-repeat center;
                background-size: contain;
                width: 122px; height: 35px;
                margin: auto;
                position: absolute;
                top: 0;
                bottom: 0;
                right: 0;
            }
            .tit_img {
                width: 35%;
            }
        .group .tit a /* More */ {
            font-size: 13px;
            line-height: 26px;
            background: none;
            background-color: transparent;
            width: 100%; height: 10%;
            padding: 0 10px;
            margin-top: calc(7.5vw - 14px);
            bottom: 0;
            left: 0; right: 0;
        }

    .prod_bg_item {
        height: calc(494vw + 1319px);
        margin-top: 16vw;
    }
        .prod_bg_item.prod_bg_00 {
            margin-top: 18vw;
        }
    .eventPage_bn_vipMember_wrapper {
        display: none;
    }

    .ProductList .item {
        margin-right: 0.5vw;
        margin-left: 0.5vw;
    }
    .ProductList .item, .item {
        margin-top: 5px !important;
        margin-right: 0.5vw;
        margin-left: 0.5vw;
        width: 49vw;
        margin-bottom: 0;
    }
        .item > a { padding-top: 0; }
        .item .ProductImg {
            max-width: 49vw !important;
            height: 49vw !important;
        }
        .item .ProducPrice {
            padding: 7px 0 0 0;
        }
            .item .ProducPrice span, .item .Event_Condition i span {
                font-size: 25px;
                font-weight: bold;
            }
            .item .ProducPrice span, .item .Event_Condition i span {
                line-height: 25px;
            }
            .item .ProducPrice i em span {
                margin-right: 5px;
                font-size: 12px;
                font-weight: bold;
            }
        .item .ProductName {
            height: 40px;
            font-size: 14px;
            line-height: 18px;
        }
        .item .ProductDesc {
            font-size: 14px;
            width: 95%;
            overflow: hidden;
        }
    
    /* 右側懸浮 float */
    .gotop {
        font-size: 18px;
        line-height: 40px;
        height: 40px;
        left: auto;
        right: 10px;
        width: 40px;
        bottom: 80px;
        display: none;
    }
    .NavArea {
        position: fixed;
        top:0;
        left: 0;
        right: 0;
        z-index: 999;
        /* display: block; */
        display: none;
    }
        .NavArea .Nav {
            position: relative;
            margin: 0;
            padding: 0;
            overflow-x: scroll;
            background-color: #000;
        }
        .NavArea .Nav ul {
            white-space: nowrap;
            padding-top: 10px;
        }
        .NavArea .Nav li {
            z-index: 10;
            position: relative;
            display: inline-block;
            padding: 0;
            overflow: hidden;
            width: auto;
            font-weight: inherit;
            text-align: center;
        }
        .NavArea .Nav li:nth-child(odd){
            background-color: #131313;
        }
        .NavArea .Nav a {
            color: #fff;
            text-decoration: none;
            line-height: 44px;
            position: relative;
            padding: 0 12px;
            height: 44px;
        }
        .Nav-slide.active a {
            color: salmon;
        }
    .float_tit { display: none !important; }
    /* .go_top { display: none; } */
    /**M_menu**/
    .M_menu_block {
        width: 100vw;
        /* background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #555), color-stop(100%, #111)); */
        box-shadow: 0px -1px 1px #333;
    }
        .M_menu_block:after {
            clear: both;
            display: table;
            content: '';
        }
        .M_menu_block ul {
            overflow: hidden;
        }
        .M_menu_block li {
            float: left;
            /* padding-top: 7px; */
            width: 20vw;
            height: 55px;
            border-top: 1px solid #999;
            border-right: 1px solid #666;
            border-left: 1px solid #222;
            text-align: center;
        }
        .M_menu_block li.col-4 {
            width: 25vw;
        }
        .M_menu_block li a {
            color: #fff;
            display: inline-block;
            line-height: 19px;
        }
        .M_menu_block ul li.best {
            width: 100vw;
        }
        .M_menu_block ul li.best a {
            color: yellow;
        }
        .M_menu_block ul li:before {
            display: inline-block;
            height: 100%;
            content: '';
            vertical-align: middle;
        }
    /**/
    .tag_wfe {
        top: auto;
    }
    
    /* 規則頁 */
    .rule {
        /* background: url("../images/kv_bg_m.jpg") center top no-repeat,  url("../images/bg.jpg") repeat-y center 100vw #fff6ec; */
        /* background-size: contain; */
        /* margin-top: 50px; */
    }
        .rule .kv_bg {
            /* height: 105vw; */
        }
        .rule_bg_move { display: none; opacity: 0; }
        /* .terms_wrapper { padding-bottom: 50px; } */
        .terms_container { padding-bottom: 8em; }
        .terms_container:before,
        .terms_container:after { display: none; }
        .terms_container .title {}
        .terms_container .title img {
            width: 100%;
        }
        .rule_content strong {
            color: crimson;
        }
        .go-back-btn {
            /* margin: auto;
            position: absolute;
            left: 0; right: 0;
            bottom: 0; */
            margin: -35px auto 0;
            padding-bottom: 58px;
        }

    /* 規則頁 : 內文編輯區 */
    
    .terms_container h3 {
        font-size: 20px;
        line-height: 26px;
    }

    .terms_dflex {
        align-items: flex-start;
        flex-direction: column;
    }

    .terms_content {
        background-color: transparent;
    }

    .terms_content ol li {
        margin: 4px 5px 0 15px;
    }

    .lazy .terms_prize_list {
        font-size: 14px;
        line-height: 20px;
    }

    .terms_prize_list th {
        display: none;
    }

    .terms_prize_list td {
        display: block;
        text-align: left;
        border: none;
        border-bottom: 1px dotted #116ca7;
        margin: 3px 0;
    }

    .lazy .terms_prize_list td {
        float: left;
        border-bottom: none;
        margin: 0;
    }

    .terms_prize_list_date {
        margin-top: 20px !important;
    }

    .terms_prize_list td:before {
        display: inline-block;
        width: 120px;
        text-align: center;
        font-size: 15px;
        color: #fff;
        border-radius: 10px;
        background-color: #116ca7;
        content: attr(data-label);
        margin: 3px 5px 3px 0;
        padding: 3px 0;
        font-weight: bold;
    }

    .rule .terms_content img {
        max-width: 80%;
    }
    
    /**rule_container_m**/
    .rule_wrapper { width: 100vw; }
    .rule_container { padding-top: 66px; }
    .rule_content { width: 100%; padding: 20px; }
    .rule_wrapper .title1 { font-size: 23px; width: 100%; padding: 15px 0; }	
    .rule_content span { display: block!important; padding-left: 0.3em; padding-right: 0.3em; }

    table {
        /* border: 0px solid #116ca7; */
    }

    table.two-axis tr td:first-of-type,
    table.two-axis tr:nth-of-type(2n+2) td:first-of-type,
    table.two-axis tr td:first-of-type:before {
        background: #116ca7;
        color: #ffffff;
    }

    table.two-axis tr td:first-of-type {
        /* border-bottom: 1px solid #e4ebeb; */
    }
    
    table.two-axis tr td:first-of-type:before {
        padding-bottom: 10px;
    }
    
    table tr,
    table th,
    table td {
        /* border-bottom: 10px solid #fff; */
        font-size: 14px;
    }
    
    table th {
        /* background: #56a2cf; */
    }

    table th,
    table td {
        padding: 5px;
    }

}

@media screen and (max-width: 768px) and (min-width: 560px) {}

@media screen and (max-width: 480px) {
    .kv {
        height: 115vw;
    }
    .all_bg_move { display: none; }
}

@media screen and (max-width: 375px) {
    .group .tit > div {
        font-size: 25px;
    }
}

@media screen and (max-width: 320px) {
    .item .ProducPrice i em span {
        font-size: 11px;
    }
    .item .ProducPrice .price_txt {
        font-size: 13px;
    }
    .tag_wfe {
        width: 16px;
        height: 16px;
    }
    .events .event-item + .event-item {
        /* margin-top: -35px; */
    }
}