.event_content {
    font-size: 1vw;
    color: #231815;
    line-height: 1.4;
    font-weight: 400;
    background-image: url(../img/bg-main.jpg);
    background-size: 100% auto;
/*    min-height: 1000px;*/
    padding-bottom: 1.6vw;
    position: relative;
}
/*
.event_content:after {
    position: absolute;
    content: '';
    background-image: url(../img/deco-01.png);
    background-size: contain;
    aspect-ratio: 346/226;
    width: 18vw;
    right: 0;
    bottom: 0;
}
*/
.event_content * {
    font-family: "Noto Sans TC", sans-serif;
}
.event_content *, .event_content *:before, .event_content *:after {
    box-sizing: border-box;
	 -webkit-box-sizing: border-box;
}
.event_content img {
    vertical-align: bottom;
}
.event_content .light {
    color: #d13e2b;
}
.flex {
    display: flex;
}
.full {
    width: 100%;
}
.flex_1 {
    flex: 1;
}
.max100 {
    max-width: 100%;
}
.r {
    position: relative;
}
.tc {
    text-align: center;
}
.hide {
/*    display: none;*/
/*    opacity: 0;*/
}
.footer {
/*    padding-bottom: 50px;*/
}
.link1 {
    text-decoration: underline;
    color: #6347d0;
    font-weight: 400;
}
.link2 {
    text-decoration: underline;
    color: currentColor;
}
.btn {
    cursor: pointer;
    background-size: contain;
    margin: auto;
    background-color: transparent;
    display: block;
}
.btns_wrap {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 1vw;
    padding: 1.6vw 0;
}
.btns_wrap img {
    height: 5.9375vw;
}
.box1 {
    padding: 2vw 3.5vw;
    width: 69vw;
    background: rgba(255,255,255,.5);
    margin: auto;
    position: relative;
}
.box2 {
    position: relative;
}
.box2_in {
    background: #fff;
/*    border: 3px solid rgb(35, 24, 21);*/
    padding: 3.6vw 1.5vw;
    position: relative;
    top: -1.6vw;
}
.box2_tit {
    margin: auto;
    width: 29vw;
    background: #00b444;
    border: 3px solid transparent;
    text-align: center;
    height: 3.2vw;
    position: relative;
    left: 0;
    /* transform: translateX(-50%); */
    /* top: -1.6vw; */
    font-size: 1.6vw;
    font-weight: 900;
    z-index: 1;
    color: #fff;
    box-shadow: 0.4vw 0.4vw #000;
}
.acc_btn {
    cursor: pointer;
    padding: 0 3.3vw;
}
.acc_btn:after {
    position: absolute;
    content: '';
    background-image: url(../img/icon-plus.png);
    background-size: contain;
    aspect-ratio: 1;
    width: 1.8vw;
    right: 0.8vw;
    top: 50%;
    transform: translateY(-50%);
}
.acc_wrap.open .acc_btn:after {
    background-image: url(../img/icon-minus.png);
}
.acc_con {
    display: none;
}
.box2_tit .txt {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}
.tit_5g .txt:before {
    position: absolute;
    content: '';
    background-image: url(../img/icon-bat.png);
    background-size: cover;
    aspect-ratio: 31/53;
    width: 1.6vw;
    left: -2vw;
    top: 50%;
    transform: translateY(-50%);
}
.tit_HiNet .txt:before {
    position: absolute;
    content: '';
    background-image: url(../img/icon-ball.png);
    background-size: cover;
    aspect-ratio: 1;
    width: 2vw;
    left: -2.3vw;
    top: 50%;
    transform: translateY(-50%);
}
.box2 + .box2 {
     margin-top: 1.5vw; 
}
.upper-alpha {
    list-style: upper-alpha;
    margin-left: 2.5ch;
}
.lower-alpha {
    list-style: lower-alpha;
    margin-left: 2.5ch;
}
.cjk-ideographic {
    list-style: cjk-ideographic;
    margin-left: 3.5ch;
}
.num-list {
    list-style: none;
    counter-reset: item;
    margin-left: 3.5ch;
}
.num-list > li {
  counter-increment: item;    /* 每個 li +1 */
  position: relative;
}
.num-list > li::before {
  content: counter(item) ".)";  /* 自己產生 (1)(2)… */
  position: absolute;
  left: -3.5ch;                /* 視需要微調 */
  width: 3ch;                /* 對齊用 */
  text-align: right;
}
.table1 {
    margin: .5ch 0;
}
.table1 th {
    background: rgb(0 180 68 / 70%);
}
.table1 th, .table1 td {
    border: 1px solid currentColor;
    padding: .5ch 1ch;
}
.table1 a {
    word-break: break-all;
}
.event_content ol {
    margin-bottom: 0;
}
.tit_ticket {
    display: flex;
    gap: .4ch;
    justify-content: center;
    align-items: center;
    color: #0189ba;
    font-size: 2.2vw;
    font-weight: 900;
    margin: 2vw 5px 0;
    /* max-width: 79vw; */
    position: relative;
}
.tit_ticket .icon {
    background-image: url(../img/icon-ticket.png);
    background-size: contain;
    aspect-ratio: 94/77;
    width: 4.895vw;
    height: 4vw;
    margin-left: 1ch;
    background-repeat: no-repeat;
    background-position: center;
}
.tit_ticket .txt {
    margin-right: 1ch;
}
.tit_ticket:before, .tit_ticket:after {
    content: '';
    flex: 1;
    height: 14px;             /* 包住兩條線 */
    background-image:
    linear-gradient(
      to bottom,
        #0189ba 0 4px,
    transparent 4px 10px,
    #0189ba 10px 14px
    );
    position: relative;
    top: 2px;
}
.btns_wrap.type2 img {
    height: 3.75vw;
}
/* .event_content */


.pc {
    display: inherit;
}
.mo {
    display: none;
}

@media screen and (max-width: 768px) {
    .btns_wrap {
        padding: 3vw;
    }
    .btns_wrap img {
        height: 12vw;
    }
    .event_content {
        font-size: 3.7vw;
        background: #c4eff8;
        padding-bottom: 10vw;
    }
    .event_content:after {
        opacity: 0;
    }
    .box1 {
        width: 85vw;
        padding: 4vw 3.5vw;
    }
    .box2_tit {
        border-width: 2px;
        font-size: 4.2vw;
        height: 8.2vw;
        width: fit-content;
        margin: auto;
    }
    .acc_btn {
        padding: 0 10vw;
    }
    .acc_btn:after {
        width: 4.5vw;
        right: 3vw;
    }
    .tit_5g .txt:before {
        width: 4vw;
        left: -5vw;
    }
    .tit_HiNet .txt:before {
        width: 5.5vw;
        left: -7vw;
    }
    .box2_in {
        border-width: 2px;
        top: -4vw;
        padding: 8vw 4vw;
    }
    .box2 + .box2 {
        margin-top: 5vw;
    }
    .tit_ticket {
        font-size: 6vw;
    }
    .tit_ticket:before,
    .tit_ticket:after {
        content: '';
        flex: 1;
        height: 7px;
        background-image: linear-gradient(to bottom, #0189ba 0 2px, transparent 2px 5px, #0189ba 5px 7px);
        position: relative;
        top: 2px;
    }
    .tit_ticket .icon {
        width: 12vw;
        height: 12vw;
        margin-left: 0;
    }
    .tit_ticket .txt {
        margin-right: 0;
    }
    .btns_wrap.type2 img {
        height: 9.375vw;
    }
    .pc {
        display: none;
    }
    .mo {
        display: inherit;
    }
}