body,
button,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
input,
select,
textarea {
    /* font-family: "Helvetica Neue", Helvetica, Arial, "微軟正黑體", "微软雅黑", "メイリオ", "맑은 고딕", sans-serif; */
    font-family: "Noto Sans TC", Arial, "微軟正黑體", "微软雅黑", "メイリオ", "맑은 고딕", sans-serif;
    font-weight: 400;
    line-height: 1.6;
}

body {
    line-height: 1.5;
    font-size: 1rem;
    font-size-adjust: ic-height 1;
    color: var(--basic-txt);
    background: #000;
    scroll-behavior: smooth;
}

@media screen and (min-width:1200px) {
    html {
        font-size: 18px;
    }
}

@media screen and (max-width:389px) {
    html {
        font-size: 15px;
    }
}

.br-lg {
    display: inline;
}

/* 手機版斷行 */
.br-s {
    display: none;
}

@media screen and (max-width:575px) {

    /* html {
        font-size: 0.9375rem;
    } */
    /* 手機版斷行 */
    .br-lg {
        display: none;
    }

    .br-s {
        display: inline;
    }
}

.h1,
h1 {
    font-size: min(2.5rem, calc(1.375rem + 1.5vw));
}

.h2,
h2 {
    font-size: min(2rem, calc(1.325rem + .9vw));
}

.h3,
h3 {
    font-size: min(1.75rem, calc(1.3rem + .6vw));
}

.h4,
h4 {
    font-size: min(1.5rem, calc(1.275rem + .3vw));
}

@media screen and (max-width:991px) {

    h5,
    .h5 {
        font-size: 1.125rem;
    }

    h6,
    .h6 {
        font-size: 0.875rem;
    }
}

ul {
    padding-inline-start: 0;
    position: relative;
    text-align: left;
}

li {
    list-style: none;
}

strong,
b {
    font-weight: 700 !important;
}

.material-icons,
.material-icons-outlined,
.material-symbols-outlined {
    font-size: max(120%, 1.125rem);
    vertical-align: sub;
}

ion-icon {
    font-size: 120%;
    vertical-align: sub;
}

/* a, a:link, a:visited, a:hover, a:active {
    text-decoration: none;
} */

.content-fluid {
    /* container-fluid */
    position: relative;
    width: 100%;
    text-align: center;
    margin-right: auto;
    margin-left: auto;
    padding: var(--content-p) 0 0;
}

.contentbox {
    /* container */
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}

.contentbox_main {
    position: relative;
    padding: 0 10px;
    z-index: 10;
}

@media screen and (min-width: 576px) {
    .contentbox {
        max-width: 540px;
    }
}

@media screen and (min-width: 768px) {
    .contentbox {
        max-width: 720px;
    }

    .contentbox_main {
        padding-right: 0;
        padding-left: 0;
    }
}

@media screen and (min-width: 992px) {
    .contentbox {
        max-width: 960px;
    }
}

@media screen and (min-width: 1200px) {
    .contentbox {
        max-width: 1140px;
    }
}

@media screen and (min-width: 1400px) {
    .contentbox {
        max-width: 1320px;
    }
}

.rowline {
    /* row */
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    >[class^='col'] {
        flex-shrink: 0;
        max-width: 100%;
        padding-right: clamp(8px, calc(0.75vw + 2px), 15px);
        padding-left: clamp(8px, calc(0.75vw + 2px), 15px);
    }
}