@charset "UTF-8";

html {
    scroll-behavior: smooth
}

body {
    padding: 0px;
    margin: 0px;
    font-family: Arial, "Noto Serif SC", "Noto Sans TC", sans-serif;
    color: #00367C;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    -webkit-overflow-scrolling: touch;
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
    scroll-behavior: smooth
}

@media screen and (max-width:991px) {
    body {
        font-size: 18px
    }
}

::-moz-selection {
    background: #4bb847;
    color: #000
}

::selection {
    background: #4bb847;
    color: #000
}

a {
    text-decoration: none
}

img {
    outline: none;
    border: none
}

p {
    margin: 8px 4px
}

ol,
ul {
    margin: 15px 0px;
    padding-left: 20px
}

ol li,
ul li {
    padding-bottom: 3px
}

ol li:last-of-type,
ul li:last-of-type {
    padding-bottom: 0px
}

ol li ol,
ol li ul,
ul li ol,
ul li ul {
    margin: 3px 0px 0px
}

ol.chineseListStyle,
ul.chineseListStyle {
    list-style: none;
    padding-left: 40px
}

ol.chineseListStyle>li,
ul.chineseListStyle>li {
    position: relative
}

ol.chineseListStyle>li:before,
ul.chineseListStyle>li:before {
    content: "";
    position: absolute;
    top: 0px;
    left: -40px
}

ol.chineseListStyle>li:first-of-type:before,
ul.chineseListStyle>li:first-of-type:before {
    content: "(一)"
}

ol.chineseListStyle>li:nth-of-type(2):before,
ul.chineseListStyle>li:nth-of-type(2):before {
    content: "(二)"
}

ol.chineseListStyle>li:nth-of-type(3):before,
ul.chineseListStyle>li:nth-of-type(3):before {
    content: "(三)"
}

ol.chineseListStyle>li:nth-of-type(4):before,
ul.chineseListStyle>li:nth-of-type(4):before {
    content: "(四)"
}

ol.chineseListStyle>li:nth-of-type(5):before,
ul.chineseListStyle>li:nth-of-type(5):before {
    content: "(五)"
}

ol.chineseListStyle>li:nth-of-type(6):before,
ul.chineseListStyle>li:nth-of-type(6):before {
    content: "(六)"
}

ol.chineseListStyle>li:nth-of-type(7):before,
ul.chineseListStyle>li:nth-of-type(7):before {
    content: "(七)"
}

ol.chineseListStyle>li:nth-of-type(8):before,
ul.chineseListStyle>li:nth-of-type(8):before {
    content: "(八)"
}

ol.chineseListStyle>li:nth-of-type(9):before,
ul.chineseListStyle>li:nth-of-type(9):before {
    content: "(九)"
}

ol.chineseListStyle>li:nth-of-type(10):before,
ul.chineseListStyle>li:nth-of-type(10):before {
    content: "(十)"
}

ol.chineseListStyle>li:nth-of-type(11):before,
ul.chineseListStyle>li:nth-of-type(11):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十一)"
}

ol.chineseListStyle>li:nth-of-type(12):before,
ul.chineseListStyle>li:nth-of-type(12):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十二)"
}

ol.chineseListStyle>li:nth-of-type(13):before,
ul.chineseListStyle>li:nth-of-type(13):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十三)"
}

ol.chineseListStyle>li:nth-of-type(14):before,
ul.chineseListStyle>li:nth-of-type(14):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十四)"
}

ol.chineseListStyle>li:nth-of-type(15):before,
ul.chineseListStyle>li:nth-of-type(15):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十五)"
}

ol.chineseListStyle>li:nth-of-type(16):before,
ul.chineseListStyle>li:nth-of-type(16):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十六)"
}

ol.chineseListStyle>li:nth-of-type(17):before,
ul.chineseListStyle>li:nth-of-type(17):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十七)"
}

ol.chineseListStyle>li:nth-of-type(18):before,
ul.chineseListStyle>li:nth-of-type(18):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十八)"
}

ol.chineseListStyle>li:nth-of-type(19):before,
ul.chineseListStyle>li:nth-of-type(19):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(十九)"
}

ol.chineseListStyle>li:nth-of-type(20):before,
ul.chineseListStyle>li:nth-of-type(20):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "(二十)"
}

ol.chineseListStyle2,
ul.chineseListStyle2 {
    list-style: none;
    padding-left: 40px
}

ol.chineseListStyle2>li,
ul.chineseListStyle2>li {
    position: relative
}

ol.chineseListStyle2>li:before,
ul.chineseListStyle2>li:before {
    content: "";
    position: absolute;
    top: 0px;
    left: -40px
}

ol.chineseListStyle2>li:first-of-type:before,
ul.chineseListStyle2>li:first-of-type:before {
    content: "一、"
}

ol.chineseListStyle2>li:nth-of-type(2):before,
ul.chineseListStyle2>li:nth-of-type(2):before {
    content: "二、"
}

ol.chineseListStyle2>li:nth-of-type(3):before,
ul.chineseListStyle2>li:nth-of-type(3):before {
    content: "三、"
}

ol.chineseListStyle2>li:nth-of-type(4):before,
ul.chineseListStyle2>li:nth-of-type(4):before {
    content: "四、"
}

ol.chineseListStyle2>li:nth-of-type(5):before,
ul.chineseListStyle2>li:nth-of-type(5):before {
    content: "五、"
}

ol.chineseListStyle2>li:nth-of-type(6):before,
ul.chineseListStyle2>li:nth-of-type(6):before {
    content: "六、"
}

ol.chineseListStyle2>li:nth-of-type(7):before,
ul.chineseListStyle2>li:nth-of-type(7):before {
    content: "七、"
}

ol.chineseListStyle2>li:nth-of-type(8):before,
ul.chineseListStyle2>li:nth-of-type(8):before {
    content: "八、"
}

ol.chineseListStyle2>li:nth-of-type(9):before,
ul.chineseListStyle2>li:nth-of-type(9):before {
    content: "九、"
}

ol.chineseListStyle2>li:nth-of-type(10):before,
ul.chineseListStyle2>li:nth-of-type(10):before {
    content: "十、"
}

ol.chineseListStyle2>li:nth-of-type(11):before,
ul.chineseListStyle2>li:nth-of-type(11):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十一、"
}

ol.chineseListStyle2>li:nth-of-type(12):before,
ul.chineseListStyle2>li:nth-of-type(12):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十二、"
}

ol.chineseListStyle2>li:nth-of-type(13):before,
ul.chineseListStyle2>li:nth-of-type(13):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十三、"
}

ol.chineseListStyle2>li:nth-of-type(14):before,
ul.chineseListStyle2>li:nth-of-type(14):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十四、"
}

ol.chineseListStyle2>li:nth-of-type(15):before,
ul.chineseListStyle2>li:nth-of-type(15):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十五、"
}

ol.chineseListStyle2>li:nth-of-type(16):before,
ul.chineseListStyle2>li:nth-of-type(16):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十六、"
}

ol.chineseListStyle2>li:nth-of-type(17):before,
ul.chineseListStyle2>li:nth-of-type(17):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十七、"
}

ol.chineseListStyle2>li:nth-of-type(18):before,
ul.chineseListStyle2>li:nth-of-type(18):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十八、"
}

ol.chineseListStyle2>li:nth-of-type(19):before,
ul.chineseListStyle2>li:nth-of-type(19):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "十九、"
}

ol.chineseListStyle2>li:nth-of-type(20):before,
ul.chineseListStyle2>li:nth-of-type(20):before {
    font-size: 14px;
    top: 1px;
    left: -42px;
    content: "二十、"
}

ol.lowercaseStyle,
ul.lowercaseStyle {
    list-style-type: lower-alpha
}

ol.figuresInBracketsStyle,
ul.figuresInBracketsStyle {
    list-style: none;
    padding-left: 30px
}

ol.figuresInBracketsStyle>li,
ul.figuresInBracketsStyle>li {
    position: relative
}

ol.figuresInBracketsStyle>li:before,
ul.figuresInBracketsStyle>li:before {
    content: "";
    position: absolute;
    top: 0px;
    left: -30px
}

ol.figuresInBracketsStyle>li:first-of-type:before,
ul.figuresInBracketsStyle>li:first-of-type:before {
    content: "(1)"
}

ol.figuresInBracketsStyle>li:nth-of-type(2):before,
ul.figuresInBracketsStyle>li:nth-of-type(2):before {
    content: "(2)"
}

ol.figuresInBracketsStyle>li:nth-of-type(3):before,
ul.figuresInBracketsStyle>li:nth-of-type(3):before {
    content: "(3)"
}

ol.figuresInBracketsStyle>li:nth-of-type(4):before,
ul.figuresInBracketsStyle>li:nth-of-type(4):before {
    content: "(4)"
}

ol.figuresInBracketsStyle>li:nth-of-type(5):before,
ul.figuresInBracketsStyle>li:nth-of-type(5):before {
    content: "(5)"
}

ol.figuresInBracketsStyle>li:nth-of-type(6):before,
ul.figuresInBracketsStyle>li:nth-of-type(6):before {
    content: "(6)"
}

ol.figuresInBracketsStyle>li:nth-of-type(7):before,
ul.figuresInBracketsStyle>li:nth-of-type(7):before {
    content: "(7)"
}

ol.figuresInBracketsStyle>li:nth-of-type(8):before,
ul.figuresInBracketsStyle>li:nth-of-type(8):before {
    content: "(8)"
}

ol.figuresInBracketsStyle>li:nth-of-type(9):before,
ul.figuresInBracketsStyle>li:nth-of-type(9):before {
    content: "(9)"
}

ol.figuresInBracketsStyle>li:nth-of-type(10):before,
ul.figuresInBracketsStyle>li:nth-of-type(10):before {
    letter-spacing: -1.7px;
    content: "(10)"
}

ol.figuresInBracketsStyle>li:nth-of-type(11):before,
ul.figuresInBracketsStyle>li:nth-of-type(11):before {
    letter-spacing: -1.7px;
    content: "(11)"
}

ol.figuresInBracketsStyle>li:nth-of-type(12):before,
ul.figuresInBracketsStyle>li:nth-of-type(12):before {
    letter-spacing: -1.7px;
    content: "(12)"
}

ol.figuresInBracketsStyle>li:nth-of-type(13):before,
ul.figuresInBracketsStyle>li:nth-of-type(13):before {
    letter-spacing: -1.7px;
    content: "(13)"
}

ol.figuresInBracketsStyle>li:nth-of-type(14):before,
ul.figuresInBracketsStyle>li:nth-of-type(14):before {
    letter-spacing: -1.7px;
    content: "(14)"
}

ol.figuresInBracketsStyle>li:nth-of-type(15):before,
ul.figuresInBracketsStyle>li:nth-of-type(15):before {
    letter-spacing: -1.7px;
    content: "(15)"
}

ol.figuresInBracketsStyle>li:nth-of-type(16):before,
ul.figuresInBracketsStyle>li:nth-of-type(16):before {
    letter-spacing: -1.7px;
    content: "(16)"
}

ol.figuresInBracketsStyle>li:nth-of-type(17):before,
ul.figuresInBracketsStyle>li:nth-of-type(17):before {
    letter-spacing: -1.7px;
    content: "(17)"
}

ol.figuresInBracketsStyle>li:nth-of-type(18):before,
ul.figuresInBracketsStyle>li:nth-of-type(18):before {
    letter-spacing: -1.7px;
    content: "(18)"
}

ol.figuresInBracketsStyle>li:nth-of-type(19):before,
ul.figuresInBracketsStyle>li:nth-of-type(19):before {
    letter-spacing: -1.7px;
    content: "(19)"
}

ol.figuresInBracketsStyle>li:nth-of-type(20):before,
ul.figuresInBracketsStyle>li:nth-of-type(20):before {
    letter-spacing: -1.7px;
    content: "(20)"
}

ol.figuresInBracketsStyle>li:nth-of-type(21):before,
ul.figuresInBracketsStyle>li:nth-of-type(21):before {
    letter-spacing: -1.7px;
    content: "(21)"
}

ol.figuresInBracketsStyle>li:nth-of-type(22):before,
ul.figuresInBracketsStyle>li:nth-of-type(22):before {
    letter-spacing: -1.7px;
    content: "(22)"
}

ol.figuresInBracketsStyle>li:nth-of-type(23):before,
ul.figuresInBracketsStyle>li:nth-of-type(23):before {
    letter-spacing: -1.7px;
    content: "(23)"
}

ol.figuresInBracketsStyle>li:nth-of-type(24):before,
ul.figuresInBracketsStyle>li:nth-of-type(24):before {
    letter-spacing: -1.7px;
    content: "(24)"
}

ol.figuresInBracketsStyle>li:nth-of-type(25):before,
ul.figuresInBracketsStyle>li:nth-of-type(25):before {
    letter-spacing: -1.7px;
    content: "(25)"
}

ol.figuresInBracketsStyle>li:nth-of-type(26):before,
ul.figuresInBracketsStyle>li:nth-of-type(26):before {
    letter-spacing: -1.7px;
    content: "(26)"
}

ol.figuresInBracketsStyle>li:nth-of-type(27):before,
ul.figuresInBracketsStyle>li:nth-of-type(27):before {
    letter-spacing: -1.7px;
    content: "(27)"
}

ol.figuresInBracketsStyle>li:nth-of-type(28):before,
ul.figuresInBracketsStyle>li:nth-of-type(28):before {
    letter-spacing: -1.7px;
    content: "(28)"
}

ol.figuresInBracketsStyle>li:nth-of-type(29):before,
ul.figuresInBracketsStyle>li:nth-of-type(29):before {
    letter-spacing: -1.7px;
    content: "(29)"
}

ol.figuresInBracketsStyle>li:nth-of-type(30):before,
ul.figuresInBracketsStyle>li:nth-of-type(30):before {
    letter-spacing: -1.7px;
    content: "(30)"
}

ol.figuresInBracketsStyle>li:nth-of-type(31):before,
ul.figuresInBracketsStyle>li:nth-of-type(31):before {
    letter-spacing: -1.7px;
    content: "(31)"
}

ol.figuresInBracketsStyle>li:nth-of-type(32):before,
ul.figuresInBracketsStyle>li:nth-of-type(32):before {
    letter-spacing: -1.7px;
    content: "(32)"
}

ol.figuresInBracketsStyle>li:nth-of-type(33):before,
ul.figuresInBracketsStyle>li:nth-of-type(33):before {
    letter-spacing: -1.7px;
    content: "(33)"
}

ol.figuresInBracketsStyle>li:nth-of-type(34):before,
ul.figuresInBracketsStyle>li:nth-of-type(34):before {
    letter-spacing: -1.7px;
    content: "(34)"
}

ol.figuresInBracketsStyle>li:nth-of-type(35):before,
ul.figuresInBracketsStyle>li:nth-of-type(35):before {
    letter-spacing: -1.7px;
    content: "(35)"
}

ol.figuresInBracketsStyle>li:nth-of-type(36):before,
ul.figuresInBracketsStyle>li:nth-of-type(36):before {
    letter-spacing: -1.7px;
    content: "(36)"
}

ol.figuresInBracketsStyle>li:nth-of-type(37):before,
ul.figuresInBracketsStyle>li:nth-of-type(37):before {
    letter-spacing: -1.7px;
    content: "(37)"
}

ol.figuresInBracketsStyle>li:nth-of-type(38):before,
ul.figuresInBracketsStyle>li:nth-of-type(38):before {
    letter-spacing: -1.7px;
    content: "(38)"
}

ol.figuresInBracketsStyle>li:nth-of-type(39):before,
ul.figuresInBracketsStyle>li:nth-of-type(39):before {
    letter-spacing: -1.7px;
    content: "(39)"
}

ol.figuresInBracketsStyle>li:nth-of-type(40):before,
ul.figuresInBracketsStyle>li:nth-of-type(40):before {
    letter-spacing: -1.7px;
    content: "(40)"
}

ol.figuresInBracketsStyle>li:nth-of-type(41):before,
ul.figuresInBracketsStyle>li:nth-of-type(41):before {
    letter-spacing: -1.7px;
    content: "(41)"
}

ol.figuresInBracketsStyle>li:nth-of-type(42):before,
ul.figuresInBracketsStyle>li:nth-of-type(42):before {
    letter-spacing: -1.7px;
    content: "(42)"
}

ol.figuresInBracketsStyle>li:nth-of-type(43):before,
ul.figuresInBracketsStyle>li:nth-of-type(43):before {
    letter-spacing: -1.7px;
    content: "(43)"
}

ol.figuresInBracketsStyle>li:nth-of-type(44):before,
ul.figuresInBracketsStyle>li:nth-of-type(44):before {
    letter-spacing: -1.7px;
    content: "(44)"
}

ol.figuresInBracketsStyle>li:nth-of-type(45):before,
ul.figuresInBracketsStyle>li:nth-of-type(45):before {
    letter-spacing: -1.7px;
    content: "(45)"
}

ol.figuresInBracketsStyle>li:nth-of-type(46):before,
ul.figuresInBracketsStyle>li:nth-of-type(46):before {
    letter-spacing: -1.7px;
    content: "(46)"
}

ol.figuresInBracketsStyle>li:nth-of-type(47):before,
ul.figuresInBracketsStyle>li:nth-of-type(47):before {
    letter-spacing: -1.7px;
    content: "(47)"
}

ol.figuresInBracketsStyle>li:nth-of-type(48):before,
ul.figuresInBracketsStyle>li:nth-of-type(48):before {
    letter-spacing: -1.7px;
    content: "(48)"
}

ol.figuresInBracketsStyle>li:nth-of-type(49):before,
ul.figuresInBracketsStyle>li:nth-of-type(49):before {
    letter-spacing: -1.7px;
    content: "(49)"
}

ol.figuresInBracketsStyle>li:nth-of-type(50):before,
ul.figuresInBracketsStyle>li:nth-of-type(50):before {
    letter-spacing: -1.7px;
    content: "(50)"
}

ol.figuresInBracketsStyle>li:nth-of-type(51):before,
ul.figuresInBracketsStyle>li:nth-of-type(51):before {
    letter-spacing: -1.7px;
    content: "(51)"
}

ol.figuresInBracketsStyle>li:nth-of-type(52):before,
ul.figuresInBracketsStyle>li:nth-of-type(52):before {
    letter-spacing: -1.7px;
    content: "(52)"
}

ol.figuresInBracketsStyle>li:nth-of-type(53):before,
ul.figuresInBracketsStyle>li:nth-of-type(53):before {
    letter-spacing: -1.7px;
    content: "(53)"
}

ol.figuresInBracketsStyle>li:nth-of-type(54):before,
ul.figuresInBracketsStyle>li:nth-of-type(54):before {
    letter-spacing: -1.7px;
    content: "(54)"
}

ol.figuresInBracketsStyle>li:nth-of-type(55):before,
ul.figuresInBracketsStyle>li:nth-of-type(55):before {
    letter-spacing: -1.7px;
    content: "(55)"
}

ol.figuresInBracketsStyle>li:nth-of-type(56):before,
ul.figuresInBracketsStyle>li:nth-of-type(56):before {
    letter-spacing: -1.7px;
    content: "(56)"
}

ol.figuresInBracketsStyle>li:nth-of-type(57):before,
ul.figuresInBracketsStyle>li:nth-of-type(57):before {
    letter-spacing: -1.7px;
    content: "(57)"
}

ol.figuresInBracketsStyle>li:nth-of-type(58):before,
ul.figuresInBracketsStyle>li:nth-of-type(58):before {
    letter-spacing: -1.7px;
    content: "(58)"
}

ol.figuresInBracketsStyle>li:nth-of-type(59):before,
ul.figuresInBracketsStyle>li:nth-of-type(59):before {
    letter-spacing: -1.7px;
    content: "(59)"
}

ol.figuresInBracketsStyle>li:nth-of-type(60):before,
ul.figuresInBracketsStyle>li:nth-of-type(60):before {
    letter-spacing: -1.7px;
    content: "(60)"
}

ol.figuresInBracketsStyle>li:nth-of-type(61):before,
ul.figuresInBracketsStyle>li:nth-of-type(61):before {
    letter-spacing: -1.7px;
    content: "(61)"
}

ol.figuresInBracketsStyle>li:nth-of-type(62):before,
ul.figuresInBracketsStyle>li:nth-of-type(62):before {
    letter-spacing: -1.7px;
    content: "(62)"
}

ol.figuresInBracketsStyle>li:nth-of-type(63):before,
ul.figuresInBracketsStyle>li:nth-of-type(63):before {
    letter-spacing: -1.7px;
    content: "(63)"
}

ol.figuresInBracketsStyle>li:nth-of-type(64):before,
ul.figuresInBracketsStyle>li:nth-of-type(64):before {
    letter-spacing: -1.7px;
    content: "(64)"
}

ol.figuresInBracketsStyle>li:nth-of-type(65):before,
ul.figuresInBracketsStyle>li:nth-of-type(65):before {
    letter-spacing: -1.7px;
    content: "(65)"
}

ol.figuresInBracketsStyle>li:nth-of-type(66):before,
ul.figuresInBracketsStyle>li:nth-of-type(66):before {
    letter-spacing: -1.7px;
    content: "(66)"
}

ol.figuresInBracketsStyle>li:nth-of-type(67):before,
ul.figuresInBracketsStyle>li:nth-of-type(67):before {
    letter-spacing: -1.7px;
    content: "(67)"
}

ol.figuresInBracketsStyle>li:nth-of-type(68):before,
ul.figuresInBracketsStyle>li:nth-of-type(68):before {
    letter-spacing: -1.7px;
    content: "(68)"
}

ol.figuresInBracketsStyle>li:nth-of-type(69):before,
ul.figuresInBracketsStyle>li:nth-of-type(69):before {
    letter-spacing: -1.7px;
    content: "(69)"
}

ol.figuresInBracketsStyle>li:nth-of-type(70):before,
ul.figuresInBracketsStyle>li:nth-of-type(70):before {
    letter-spacing: -1.7px;
    content: "(70)"
}

ol.figuresInBracketsStyle>li:nth-of-type(71):before,
ul.figuresInBracketsStyle>li:nth-of-type(71):before {
    letter-spacing: -1.7px;
    content: "(71)"
}

ol.figuresInBracketsStyle>li:nth-of-type(72):before,
ul.figuresInBracketsStyle>li:nth-of-type(72):before {
    letter-spacing: -1.7px;
    content: "(72)"
}

ol.figuresInBracketsStyle>li:nth-of-type(73):before,
ul.figuresInBracketsStyle>li:nth-of-type(73):before {
    letter-spacing: -1.7px;
    content: "(73)"
}

ol.figuresInBracketsStyle>li:nth-of-type(74):before,
ul.figuresInBracketsStyle>li:nth-of-type(74):before {
    letter-spacing: -1.7px;
    content: "(74)"
}

ol.figuresInBracketsStyle>li:nth-of-type(75):before,
ul.figuresInBracketsStyle>li:nth-of-type(75):before {
    letter-spacing: -1.7px;
    content: "(75)"
}

ol.figuresInBracketsStyle>li:nth-of-type(76):before,
ul.figuresInBracketsStyle>li:nth-of-type(76):before {
    letter-spacing: -1.7px;
    content: "(76)"
}

ol.figuresInBracketsStyle>li:nth-of-type(77):before,
ul.figuresInBracketsStyle>li:nth-of-type(77):before {
    letter-spacing: -1.7px;
    content: "(77)"
}

ol.figuresInBracketsStyle>li:nth-of-type(78):before,
ul.figuresInBracketsStyle>li:nth-of-type(78):before {
    letter-spacing: -1.7px;
    content: "(78)"
}

ol.figuresInBracketsStyle>li:nth-of-type(79):before,
ul.figuresInBracketsStyle>li:nth-of-type(79):before {
    letter-spacing: -1.7px;
    content: "(79)"
}

ol.figuresInBracketsStyle>li:nth-of-type(80):before,
ul.figuresInBracketsStyle>li:nth-of-type(80):before {
    letter-spacing: -1.7px;
    content: "(80)"
}

ol.figuresInBracketsStyle>li:nth-of-type(81):before,
ul.figuresInBracketsStyle>li:nth-of-type(81):before {
    letter-spacing: -1.7px;
    content: "(81)"
}

ol.figuresInBracketsStyle>li:nth-of-type(82):before,
ul.figuresInBracketsStyle>li:nth-of-type(82):before {
    letter-spacing: -1.7px;
    content: "(82)"
}

ol.figuresInBracketsStyle>li:nth-of-type(83):before,
ul.figuresInBracketsStyle>li:nth-of-type(83):before {
    letter-spacing: -1.7px;
    content: "(83)"
}

ol.figuresInBracketsStyle>li:nth-of-type(84):before,
ul.figuresInBracketsStyle>li:nth-of-type(84):before {
    letter-spacing: -1.7px;
    content: "(84)"
}

ol.figuresInBracketsStyle>li:nth-of-type(85):before,
ul.figuresInBracketsStyle>li:nth-of-type(85):before {
    letter-spacing: -1.7px;
    content: "(85)"
}

ol.figuresInBracketsStyle>li:nth-of-type(86):before,
ul.figuresInBracketsStyle>li:nth-of-type(86):before {
    letter-spacing: -1.7px;
    content: "(86)"
}

ol.figuresInBracketsStyle>li:nth-of-type(87):before,
ul.figuresInBracketsStyle>li:nth-of-type(87):before {
    letter-spacing: -1.7px;
    content: "(87)"
}

ol.figuresInBracketsStyle>li:nth-of-type(88):before,
ul.figuresInBracketsStyle>li:nth-of-type(88):before {
    letter-spacing: -1.7px;
    content: "(88)"
}

ol.figuresInBracketsStyle>li:nth-of-type(89):before,
ul.figuresInBracketsStyle>li:nth-of-type(89):before {
    letter-spacing: -1.7px;
    content: "(89)"
}

ol.figuresInBracketsStyle>li:nth-of-type(90):before,
ul.figuresInBracketsStyle>li:nth-of-type(90):before {
    letter-spacing: -1.7px;
    content: "(90)"
}

ol.figuresInBracketsStyle>li:nth-of-type(91):before,
ul.figuresInBracketsStyle>li:nth-of-type(91):before {
    letter-spacing: -1.7px;
    content: "(91)"
}

ol.figuresInBracketsStyle>li:nth-of-type(92):before,
ul.figuresInBracketsStyle>li:nth-of-type(92):before {
    letter-spacing: -1.7px;
    content: "(92)"
}

ol.figuresInBracketsStyle>li:nth-of-type(93):before,
ul.figuresInBracketsStyle>li:nth-of-type(93):before {
    letter-spacing: -1.7px;
    content: "(93)"
}

ol.figuresInBracketsStyle>li:nth-of-type(94):before,
ul.figuresInBracketsStyle>li:nth-of-type(94):before {
    letter-spacing: -1.7px;
    content: "(94)"
}

ol.figuresInBracketsStyle>li:nth-of-type(95):before,
ul.figuresInBracketsStyle>li:nth-of-type(95):before {
    letter-spacing: -1.7px;
    content: "(95)"
}

ol.figuresInBracketsStyle>li:nth-of-type(96):before,
ul.figuresInBracketsStyle>li:nth-of-type(96):before {
    letter-spacing: -1.7px;
    content: "(96)"
}

ol.figuresInBracketsStyle>li:nth-of-type(97):before,
ul.figuresInBracketsStyle>li:nth-of-type(97):before {
    letter-spacing: -1.7px;
    content: "(97)"
}

ol.figuresInBracketsStyle>li:nth-of-type(98):before,
ul.figuresInBracketsStyle>li:nth-of-type(98):before {
    letter-spacing: -1.7px;
    content: "(98)"
}

ol.figuresInBracketsStyle>li:nth-of-type(99):before,
ul.figuresInBracketsStyle>li:nth-of-type(99):before {
    letter-spacing: -1.7px;
    content: "(99)"
}

ol.circleNumbersStyle,
ul.circleNumbersStyle {
    list-style: none;
    padding-left: 30px
}

ol.circleNumbersStyle>li,
ul.circleNumbersStyle>li {
    position: relative
}

ol.circleNumbersStyle>li:before,
ul.circleNumbersStyle>li:before {
    content: "";
    position: absolute;
    top: 3px;
    left: -30px;
    width: 22px;
    line-height: 20px;
    border-radius: 100%;
    border: solid 1px;
    font-size: 15px;
    letter-spacing: -0.8px;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

ol.circleNumbersStyle>li:first-of-type:before,
ul.circleNumbersStyle>li:first-of-type:before {
    content: "1"
}

ol.circleNumbersStyle>li:nth-of-type(2):before,
ul.circleNumbersStyle>li:nth-of-type(2):before {
    content: "2"
}

ol.circleNumbersStyle>li:nth-of-type(3):before,
ul.circleNumbersStyle>li:nth-of-type(3):before {
    content: "3"
}

ol.circleNumbersStyle>li:nth-of-type(4):before,
ul.circleNumbersStyle>li:nth-of-type(4):before {
    content: "4"
}

ol.circleNumbersStyle>li:nth-of-type(5):before,
ul.circleNumbersStyle>li:nth-of-type(5):before {
    content: "5"
}

ol.circleNumbersStyle>li:nth-of-type(6):before,
ul.circleNumbersStyle>li:nth-of-type(6):before {
    content: "6"
}

ol.circleNumbersStyle>li:nth-of-type(7):before,
ul.circleNumbersStyle>li:nth-of-type(7):before {
    content: "7"
}

ol.circleNumbersStyle>li:nth-of-type(8):before,
ul.circleNumbersStyle>li:nth-of-type(8):before {
    content: "8"
}

ol.circleNumbersStyle>li:nth-of-type(9):before,
ul.circleNumbersStyle>li:nth-of-type(9):before {
    content: "9"
}

ol.arabicNumeralsStyle,
ul.arabicNumeralsStyle {
    list-style: none;
    padding-left: 40px
}

ol.arabicNumeralsStyle>li,
ul.arabicNumeralsStyle>li {
    position: relative
}

ol.arabicNumeralsStyle>li:before,
ul.arabicNumeralsStyle>li:before {
    content: "";
    position: absolute;
    top: 0px;
    left: -40px
}

ol.arabicNumeralsStyle>li:first-of-type:before,
ul.arabicNumeralsStyle>li:first-of-type:before {
    content: "(1)"
}

ol.arabicNumeralsStyle>li:nth-of-type(2):before,
ul.arabicNumeralsStyle>li:nth-of-type(2):before {
    content: "(2)"
}

ol.arabicNumeralsStyle>li:nth-of-type(3):before,
ul.arabicNumeralsStyle>li:nth-of-type(3):before {
    content: "(3)"
}

ol.arabicNumeralsStyle>li:nth-of-type(4):before,
ul.arabicNumeralsStyle>li:nth-of-type(4):before {
    content: "(4)"
}

ol.arabicNumeralsStyle>li:nth-of-type(5):before,
ul.arabicNumeralsStyle>li:nth-of-type(5):before {
    content: "(5)"
}

ol.arabicNumeralsStyle>li:nth-of-type(6):before,
ul.arabicNumeralsStyle>li:nth-of-type(6):before {
    content: "(6)"
}

ol.arabicNumeralsStyle>li:nth-of-type(7):before,
ul.arabicNumeralsStyle>li:nth-of-type(7):before {
    content: "(7)"
}

ol.arabicNumeralsStyle>li:nth-of-type(8):before,
ul.arabicNumeralsStyle>li:nth-of-type(8):before {
    content: "(8)"
}

ol.arabicNumeralsStyle>li:nth-of-type(9):before,
ul.arabicNumeralsStyle>li:nth-of-type(9):before {
    content: "(9)"
}

ol.arabicNumeralsStyle>li:nth-of-type(10):before,
ul.arabicNumeralsStyle>li:nth-of-type(10):before {
    content: "(10)"
}

ol.arabicNumeralsStyle>li:nth-of-type(11):before,
ul.arabicNumeralsStyle>li:nth-of-type(11):before {
    content: "(11)"
}

ol.arabicNumeralsStyle>li:nth-of-type(12):before,
ul.arabicNumeralsStyle>li:nth-of-type(12):before {
    content: "(12)"
}

ol.arabicNumeralsStyle>li:nth-of-type(13):before,
ul.arabicNumeralsStyle>li:nth-of-type(13):before {
    content: "(13)"
}

ol.arabicNumeralsStyle>li:nth-of-type(14):before,
ul.arabicNumeralsStyle>li:nth-of-type(14):before {
    content: "(14)"
}

ol.arabicNumeralsStyle>li:nth-of-type(15):before,
ul.arabicNumeralsStyle>li:nth-of-type(15):before {
    content: "(15)"
}

ol.arabicNumeralsStyle>li:nth-of-type(16):before,
ul.arabicNumeralsStyle>li:nth-of-type(16):before {
    content: "(16)"
}

ol.arabicNumeralsStyle>li:nth-of-type(17):before,
ul.arabicNumeralsStyle>li:nth-of-type(17):before {
    content: "(17)"
}

ol.arabicNumeralsStyle>li:nth-of-type(18):before,
ul.arabicNumeralsStyle>li:nth-of-type(18):before {
    content: "(18)"
}

ol.arabicNumeralsStyle>li:nth-of-type(19):before,
ul.arabicNumeralsStyle>li:nth-of-type(19):before {
    content: "(19)"
}

ol.arabicNumeralsStyle>li:nth-of-type(20):before,
ul.arabicNumeralsStyle>li:nth-of-type(20):before {
    content: "(20)"
}

ol+.tit-type1,
p+.tit-type1,
ul+.tit-type1 {
    margin-top: 60px
}

ol+.tit-type2,
p+.tit-type2,
ul+.tit-type2 {
    margin-top: 50px
}

ol+.tit-type3,
p+.tit-type3,
ul+.tit-type3 {
    margin-top: 40px
}

.checkbox,
.radio {
    margin-right: 15px;
    padding: 5px 0
}

.checkbox-area,
.radio-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.checkbox input[type=checkbox],
.checkbox input[type=radio],
.radio input[type=checkbox],
.radio input[type=radio] {
    display: none
}

.checkbox input[type=checkbox]:checked+.fake,
.checkbox input[type=radio]:checked+.fake,
.radio input[type=checkbox]:checked+.fake,
.radio input[type=radio]:checked+.fake {
    background: #fae103;
    border-color: #d3be01
}

.checkbox input[type=checkbox]:checked+.fake i,
.checkbox input[type=radio]:checked+.fake i,
.radio input[type=checkbox]:checked+.fake i,
.radio input[type=radio]:checked+.fake i {
    color: #000
}

.checkbox label,
.radio label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: top;
    -ms-flex-align: top;
    align-items: top
}

.checkbox .fake,
.radio .fake {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: block;
    width: 20px;
    height: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: solid 2px #a4a4a4;
    background: #fff;
    border-radius: 100%;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    position: relative;
    top: 4px
}

.checkbox .fake i,
.radio .fake i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    color: #fff;
    font-size: 13px;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all
}

.checkbox-text,
.radio-text {
    font-size: 17px;
    padding-left: 5px
}

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

    .checkbox-text,
    .radio-text {
        font-size: 16px
    }
}

.checkbox .fake {
    border-radius: 0
}

label {
    cursor: pointer
}

button {
    border: none;
    color: #fff;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    border-radius: 5px;
    cursor: pointer
}

button i {
    margin-left: 5px
}

button,
input {
    outline: none;
    font-family: Arial, "Microsoft JhengHei", "Helvetica Neue", Helvetica, sans-serif
}

button,
input,
select {
    outline: none;
    font-family: Arial, "Microsoft JhengHei", "Helvetica Neue", Helvetica, sans-serif
}

.inputStyle,
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text] {
    border: solid 2px #818181;
    background: #fff;
    font-size: 17px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 13px 10px;
    width: 100%
}

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

    .inputStyle,
    input[type=email],
    input[type=number],
    input[type=password],
    input[type=search],
    input[type=tel],
    input[type=text] {
        padding: 11px 10px 10px
    }
}

select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 24px 0 10px;
    font-size: 17px;
    line-height: 50px;
    height: 54px;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    background: #fff url(../images/icon-dropdown.png) right center no-repeat;
    background-size: 18px;
    border-radius: 10px;
    border: solid 2px #818181
}

select::-ms-expand {
    display: none
}

.container {
    margin: 0 auto;
    padding: 0px;
    max-width: 1200px
}

@media screen and (max-width:1199px) {
    .container {
        margin: 0px 65px;
        max-width: none
    }
}

@media screen and (max-width:991px) {
    .container {
        margin: 0px 25px
    }
}

.clearfix:after {
    content: "";
    display: block;
    clear: both
}

.hide {
    display: none !important
}

.mobileShow {
    display: none !important
}

@media screen and (max-width:991px) {
    .pcShow {
        display: none !important
    }

    .mobileShow {
        display: initial !important
    }
}

.material-symbols-outlined {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24
}

.material-symbols-fill {
    font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24
}

.animated {
    -webkit-animation-fill-mode: backwards;
    animation-fill-mode: backwards
}

.dividingLine {
    margin: 40px 0px;
    border-bottom: dashed 1px #bbb;
    clear: both;
    font-size: 0
}

.dividingLine.dotType {
    text-align: center;
    border-bottom: none
}

.dividingLine.dotType:before {
    content: "";
    display: inline-block;
    border-radius: 100%;
    width: 9px;
    height: 9px;
    background: #000;
    -webkit-box-shadow: 40px 0 0 #000, 80px 0 0 #000, -40px 0 0 #000, -80px 0 0 #000;
    box-shadow: 40px 0 0 #000, 80px 0 0 #000, -40px 0 0 #000, -80px 0 0 #000
}

.dividingLine.dotType.tinyType {
    margin: 28px 0
}

.dividingLine.dotType.tinyType:before {
    width: 6px;
    height: 6px
}

.youtube {
    width: 100%;
    max-width: 600px;
    max-width: 750px;
    margin: 0 auto;
    position: relative
}

.youtube-content {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden
}

.youtube-content img {
    width: 100%;
    position: absolute;
    display: block
}

.youtube-content i {
    color: #fff;
    font-size: 75px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    text-shadow: 0 0 21px #000;
    cursor: pointer
}

.youtube-content iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@media screen and (max-width:991px) {
    .youtube {
        max-width: 600px
    }
}

.slick-slider {
    padding-bottom: 25px;
    -ms-touch-action: auto !important;
    touch-action: auto !important
}

.slick-slide {
    outline: none
}

.slick-slide a {
    outline: none
}

.slick-slide img {
    max-width: 100%
}

.slick-dots {
    list-style: none;
    font-size: 0px;
    text-align: center;
    margin: 0px;
    padding-left: 0px;
    width: 100%;
    position: absolute;
    bottom: 0px;
    left: 0
}

.slick-dots li {
    padding: 0px 7px;
    display: inline-block;
    vertical-align: top
}

.slick-dots li button {
    font-size: 0px;
    padding: 0px;
    border-radius: 50px;
    width: 13px;
    height: 13px;
    background: #a5a5a5
}

.slick-dots li.slick-active button {
    background: #2462b3;
    width: 24px
}

.slick-arrow {
    font-size: 0px;
    position: absolute;
    top: 50%;
    padding: 0px;
    border-radius: 100%;
    width: 42px;
    height: 42px;
    text-align: center;
    color: #fff;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    z-index: 1;
    background: none;
    font-family: "Material Symbols Outlined";
    background: #3862bf
}

.slick-arrow:before {
    font-size: 42px;
    line-height: 1;
    border-radius: 100%
}

.slick-arrow:hover {
    color: #ffeb3b
}

.slick-prev {
    left: -35px
}

.slick-prev:before {
    content: "\e314"
}

.slick-next {
    right: -35px
}

.slick-next:before {
    content: "\e315"
}

@media screen and (max-width:991px) {
    .slick-prev {
        left: -20px
    }

    .slick-next {
        right: -20px
    }
}

@media screen and (max-width:767px) {
    .slick-arrow {
        width: 26px;
        height: 26px
    }

    .slick-arrow:before {
        font-size: 26px
    }

    .slick-prev {
        left: -10px
    }

    .slick-next {
        right: -10px
    }
}

.cantTauch {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

#content {
    -webkit-transition: 1s ease-in-out opacity;
    transition: 1s ease-in-out opacity;
    -webkit-animation: contentAinmt ease-in-out 0.2s;
    animation: contentAinmt ease-in-out 0.2s
}

@media screen and (max-width:991px) {
    #content {
        overflow: hidden
    }
}

[v-cloak] {
    opacity: 0
}

@-webkit-keyframes contentAinmt {
    0% {
        opacity: 0
    }

    50% {
        opacity: 0
    }
}

@keyframes contentAinmt {
    0% {
        opacity: 0
    }

    50% {
        opacity: 0
    }
}

body.fixedBody {
    overflow-y: hidden
}

@media (-ms-high-contrast:none),
screen and (-ms-high-contrast:active) {
    .yourClassName {}
}

@media screen and (min-width:992px) {
    ::-webkit-scrollbar {
        width: 5px;
        height: 5px
    }

    ::-webkit-scrollbar-track {
        background-color: #004790;
        background-color: #f5f5f5;
        border-radius: 10px
    }

    ::-webkit-scrollbar-thumb {
        background-color: #539011;
        background-color: #bfbdba;
        border-radius: 20px
    }

    ::-webkit-scrollbar-button {
        background-color: #bfbdba;
        border-radius: 20px
    }

    ::-webkit-scrollbar-corner {
        background-color: #bfbdba
    }
}

.header {
    padding: 20px 20px;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: sticky;
    top: 0;
    z-index: 10000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 20px
}

.header-logo {
    float: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 28px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 1;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.header-logo img {
    display: block;
    height: 46px
}

.header-logo-dividingLine {
    width: 1px;
    height: 46px;
    background: #cccccc
}

.header .navBar {
    margin-left: auto;
    position: static;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.header .navBar ul {
    list-style: none;
    font-size: 0;
    text-align: right;
    padding: 0;
    margin: 0
}

.header .navBar ul li {
    display: inline-block;
    vertical-align: middle;
    padding: 0;
    position: relative
}

.header .navBar ul li a {
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    font-size: 15px;
    font-weight: 700;
    color: #114791;
    display: block;
    padding: 8px 18px;
    border: 1px solid #114791;
    border-radius: 24px;
    letter-spacing: 0.02em;
    white-space: nowrap;
    line-height: 1.3
}

.header .navBar ul li.active a,
.header .navBar ul li a:hover {
    color: #fff;
    background: #114791
}

.header.sType .header-logo img {
    height: 24px
}

.header.sType .header-logo-dividingLine {
    height: 24px
}

.header.sType .navBar ul li a {
    padding: 6px 14px;
    font-size: 14px
}

@media screen and (max-width:991px) {
    .header {
        padding: 25px
    }

    .header .navBar {
        position: fixed;
        margin-left: 0;
        right: -100%;
        top: 60px;
        -webkit-transition: 0.6s ease all;
        transition: 0.6s ease all;
        z-index: 10001;
        background: rgba(255, 255, 255, 0.95);
        border-radius: 8px;
        padding: 11px 0
    }

    .header .navBar.show {
        right: 15px;
        -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4)
    }

    .header .navBar.show ul li {
        -webkit-animation: mobileNav 0.4s ease-out alternate backwards;
        animation: mobileNav 0.4s ease-out alternate backwards
    }

    .header .navBar ul {
        text-align: center
    }

    .header .navBar ul li {
        display: block;
        padding: 0 10px
    }

    .header .navBar ul li a {
        border: none;
        border-radius: 40px;
        padding: 10px 15px;
        font-size: 16px
    }

    .header .navBar ul li.active a,
    .header .navBar ul li a:hover {
        color: #fff;
        background: #0d4588
    }
}

@media screen and (max-width:767px) {
    .header {
        padding: 15px 10px
    }

    .header-logo {
        gap: 15px
    }

    .header-logo img {
        height: 31px
    }

    .header-logo-dividingLine {
        height: 31px
    }

    .header .navBar.show {
        right: 10px
    }

    .header .navBar ul li a {
        font-size: 15px
    }
}

@media screen and (max-width:359px) {
    .header-logo {
        gap: 15px
    }

    .header-logo img {
        height: 25px
    }

    .header .navBar.show {
        right: 5px
    }
}

@-webkit-keyframes mobileNav {
    0% {
        opacity: 0;
        right: -100%
    }
}

@keyframes mobileNav {
    0% {
        opacity: 0;
        right: -100%
    }
}

.menuBtn {
    display: none;
    position: fixed;
    width: 23px;
    top: 29px;
    right: 15px;
    cursor: pointer;
    z-index: 10001;
    background: #114790;
    padding: 7px 12px;
    border-radius: 4px
}

.menuBtn span {
    display: block;
    background: #fff;
    height: 2px;
    margin: 4px 0;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    border-radius: 3px
}

.menuBtn span:nth-of-type(1),
.menuBtn span:nth-of-type(2) {
    position: absolute;
    width: 23px;
    top: 13px
}

.menuBtn.active span {
    opacity: 0
}

.menuBtn.active span:nth-of-type(1),
.menuBtn.active span:nth-of-type(2) {
    opacity: 1;
    -webkit-transform-origin: center center;
    transform-origin: center center
}

.menuBtn.active span:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.menuBtn.active span:nth-of-type(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

@media screen and (max-width:991px) {
    .menuBtn {
        display: block
    }
}

@media screen and (max-width:767px) {
    .menuBtn {
        right: 10px;
        top: 13px
    }
}

@media screen and (max-width:359px) {
    .menuBtn {
        right: 5px
    }
}

.footer {
    background: #05367b;
    color: #fff;
    padding: 19px 0
}

.footer .container {
    position: relative
}

.footer-content {
    text-align: center
}

.footer-content a {
    color: #fff
}

.footer-content-block {
    display: inline-block;
    vertical-align: middle
}

.footer-content .linkText {
    color: #ffde45
}

.footer-share {
    float: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 36px;
    line-height: 1;
    list-style: none;
    margin: 0;
    padding-left: 0
}

.footer-share li {
    padding: 0 5px
}

.footer-share li a {
    color: #fff;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all
}

.footer-share li a svg {
    width: 25px;
    fill: #fff
}

.footer-share li a svg.fbIconSvg,
.footer-share li a svg.igIconSvg {
    -webkit-transform: translateY(2px);
    transform: translateY(2px)
}

.footer-share li a:hover {
    opacity: 0.7
}

@media screen and (max-width:1199px) {
    .footer-content {
        float: none;
        text-align: center
    }

    .footer-share {
        float: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 20px
    }
}

@media screen and (max-width:991px) {
    .footer-content {
        font-size: 15px
    }

    .footer-share {
        padding-bottom: 40px
    }
}

.fixedBtn {
    background: #fff;
    border-radius: 12px 0 0 12px;
    padding: 12px 16px;
    position: fixed;
    top: 80%;
    right: 0;
    z-index: 999;
    transform: translateY(-50%);
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.15);
}

.fixedBtn ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.fixedBtn ul li {
    padding: 0;
    border-bottom: 1px solid #b7b7b7;
}

.fixedBtn ul li:last-of-type {
    border-bottom-width: 0;
}

.fixedBtn ul li a {
    display: block;
    text-align: center;
    font-size: 16px;
    color: #000;
    padding: 16px 0;
}

.fixedBtn ul li a img {
    width: 72px;
    display: block;
    margin: 0 auto 5px;
    transition: 0.3s ease all;
}

.fixedBtn ul li a:hover img {
    scale: 1.05;
}

@media screen and (max-width: 991px) {
    .fixedBtn {
        top: auto;
        bottom: 0;
        left: 0;
        /* Hidden below viewport by default; slides in after user scrolls past KV */
        transform: translateY(100%);
        transition: transform 0.4s ease;
        border-radius: 0;
        padding: 8px 0;
    }

    .fixedBtn.is-show {
        transform: translateY(0);
    }

    .fixedBtn ul {
        display: flex;
    }

    .fixedBtn ul li {
        flex: 1;
        border-bottom-width: 0;
        border-right: solid 1px #b7b7b7;
    }

    .fixedBtn ul li:last-of-type {
        border-right-width: 0;
    }

    .fixedBtn ul li a {
        font-size: 14px;
        padding: 0;
    }

    .fixedBtn ul li a img {
        width: 50px;
        margin: -2px auto 0;
        vertical-align: middle;
        display: inline-block;
    }
}


.topBtn {
    position: fixed;
    z-index: 9999;
    bottom: 35px;
    right: 15px;
    -webkit-transition: 0.5s ease transform, 0.3s ease opacity;
    transition: 0.5s ease transform, 0.3s ease opacity;
    opacity: 0
}

.topBtn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 100%;
    width: 45px;
    height: 45px;
    background: rgba(0, 0, 0, 0.6);
    text-align: center;
    color: #fff;
    font-size: 12px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    position: relative;
    top: 0px;
    overflow: hidden;
    -webkit-box-shadow: 0px 0px 0px 2px #fff;
    box-shadow: 0px 0px 0px 2px #fff;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.topBtn a:hover {
    opacity: 0.7
}

.topBtn a .material-symbols-outlined {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

@media screen and (max-width:1199px) {
    .topBtn {
        right: 10px
    }
}

@media screen and (max-width:767px) {
    .topBtn {
        bottom: 70px
    }

    .topBtn a {
        width: 40px;
        height: 40px;
        font-size: 0px
    }
}

.description {
    background: #07307e;
    color: #fff;
    padding: 32px 0;
}

.description .text-center h1,
.description .text-center h2 {
    margin: 0;
}

.description .text-center h1 {
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.02em;
}

.description .text-center h2 {
    font-size: 1.625rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.01em;
}

.br-415 {
    display: none;
}

@media screen and (max-width: 415px) {
    .br-415 {
        display: inline;
    }
}

@media screen and (max-width: 991px) {
    .description {
        padding: 24px 0;
    }

    .description .text-center h1 {
        font-size: 1.875rem;
        line-height: 1.4;
    }

    .description .text-center h2 {
        font-size: 1.375rem;
        line-height: 1.55;
    }
}

@media screen and (max-width: 767px) {
    .description {
        padding: 20px 12px;
    }

    .description .text-center {
        padding: 0 4px;
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .description .text-center p {
        margin: 0;
        font-size: 16px; /* body 18px - 2px */
    }

    .description .text-center h1 {
        font-size: 1.625rem; /* 28px → 26px */
        line-height: 1.25;
    }

    .description .text-center h2 {
        font-size: 1.375rem; /* 24px → 22px */
        line-height: 1.2;
    }
}

.container {
    margin: 0 auto;
    padding: 0px;
    max-width: 1200px;
}

@media screen and (max-width: 1199px) {
    .container {
        margin: 0px 65px;
        max-width: none;
    }
}

@media screen and (max-width: 991px) {
    .container {
        margin: 0px 25px;
    }
}

@media screen and (max-width: 767px) {
    .container {
        margin: 0px 10px;
    }
}

.item {
    padding: 60px 0px;
    position: relative
}

.item .container {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.item.lightBlueBg {
    background: #d6edff
}

.item.lightGrayBg {
    background: #f6f7f8
}

.item.blue {
    color: #fff;
    background: #05367b
}

.item.blue .tit-type1 {
    color: #fff
}

.item.blue .tit-type1-content {
    background: none;
    border-color: #fcd2cc
}

.item.blue .linkText {
    color: #fcd2cc
}

.item.lozenge {
    background: #e8e8e8 url(https://event.franklin.com.tw/commonResources/images/bgTattoo.jpg) top left repeat
}

.item.pinkBg {
    background: #f7efec
}

.item2 {
    padding: 50px 0
}

.item2 .container {
    position: relative
}

@media screen and (max-width:1199px) {
    .item .container {
        padding-right: 0
    }
}

@media screen and (max-width:767px) {
    .item {
        padding: 20px 0px
    }

    .item2 {
        padding: 20px 0
    }

    .item.latticeBg {
        background-size: 40px
    }

    .item.gift:nth-child(3) .content {
        margin-bottom: 0
    }
}

.tit-type1 {
    margin: 25px 0;
    font-size: 40px;
    line-height: 1.3;
    color: #000;
    font-weight: 900;
    text-align: center;
    color: #05367b
}

.tit-type1 b {
    font-weight: 900
}

.tit-type1 .sTit {
    font-size: 20px;
    line-height: 1.6
}

.tit-type1 .sText {
    font-size: 0;
    text-transform: uppercase;
    font-weight: normal
}

.tit-type1 .sText div {
    display: inline-block;
    border-bottom: solid 1px;
    font-size: 14px;
    padding-bottom: 5px;
    margin-bottom: 5px
}

.tit-type1 .sText.twType div {
    font-size: 22px
}

.tit-type2 {
    margin: 20px 0px;
    font-size: 30px;
    line-height: 1.3;
    position: relative;
    font-weight: 900;
    color: #05367b
}

.tit-type3 {
    margin: 8px 0px;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    padding: 10px
}

.tit-type4 {
    font-size: 20px;
    line-height: 1.4;
    margin: 15px 0;
    font-weight: 900
}

@media screen and (max-width:767px) {
    .tit-type1 {
        font-size: 25px
    }

    .tit-type1 .sTit {
        font-size: 17px
    }

    .tit-type1 .sText {
        font-size: 12px
    }

    .tit-type1 .sText.twType div {
        font-size: 14px
    }

    .tit-type2 {
        font-size: 22px
    }

    .tit-type2-tag {
        font-size: 20px
    }

    .tit-type3 {
        font-size: 20px
    }

    .tit-type4 {
        font-size: 18px
    }
}

.text {
    margin-bottom: 15px;
    font-size: 18px
}

.text-center {
    text-align: center !important
}

.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-red {
    color: #c73938 !important
}

.text-blue {
    color: #05367b !important
}

.text-blue2 {
    color: #01a3e7 !important
}

.text-blue3 {
    color: #8794b8 !important
}

.text-green {
    color: #4bb847 !important
}

.text-black {
    color: #4a4a4a !important
}

.text-yellow {
    color: #fff200 !important
}

.text-orange {
    color: #ED6B1B !important
}

.text-white {
    color: white !important
}

.text-lineGreen {
    color: #06c755 !important
}

@media screen and (max-width:991px) {
    .text {
        font-size: 16px
    }
}

.remark {
    font-size: 14px
}

.focus {
    border-bottom: solid 1px
}

.linkText {
    color: #0076ef;
    border-bottom: solid 1px;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all
}

.linkText:hover {
    border-bottom-color: transparent
}

code {
    background: #f2f2f2;
    padding: 0 4px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: monospace, "Noto Sans TC"
}

.btn {
    display: inline-block;
    vertical-align: top;
    padding: 8px 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.btnArea {
    text-align: center;
    font-size: 0px;
    margin: 10px 0px
}

.btnArea.threeBtn .btn,
.btnArea.twoBtn .btn {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 50%
}

.btnArea.threeBtn .btn {
    white-space: nowrap
}

.btn a,
.btn button {
    font-size: 20px;
    display: block;
    color: #fff;
    line-height: 50px;
    border-radius: 30px;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0px 42px;
    background: #2462b3;
    overflow: hidden;
    position: relative
}

.btn a:before,
.btn button:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    border-radius: 100%;
    background: rgba(255, 255, 255, 0.1);
    width: 0px;
    height: 0px;
    -webkit-transition: 0.6s ease-in-out all;
    transition: 0.6s ease-in-out all
}

.btn a:hover,
.btn button:hover {
    -webkit-box-shadow: 0px 15px 10px -5px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 15px 10px -5px rgba(0, 0, 0, 0.3);
    text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.7)
}

.btn a:hover:before,
.btn button:hover:before {
    width: 800px;
    height: 800px
}

.btn.twoLines a,
.btn.twoLines button {
    line-height: 1.2;
    padding-top: 16px;
    padding-bottom: 16px
}

.btn.green a,
.btn.green button {
    background: #4bb847
}

.btn.orange a,
.btn.orange button {
    background: #f15d21
}

.btn.red a,
.btn.red button {
    background: #922119;
    text-shadow: none !important
}

.btn.yellow a,
.btn.yellow button {
    background: #ffff02;
    color: #000;
    text-shadow: none !important
}

.btn.disable a,
.btn.disable button {
    background: #fff;
    color: rgba(0, 0, 0, 0.21);
    -webkit-box-shadow: 0px 0px 0px 2px rgba(0, 0, 0, 0.21);
    box-shadow: 0px 0px 0px 2px rgba(0, 0, 0, 0.21);
    cursor: auto
}

.btn.disable a:hover,
.btn.disable button:hover {
    -webkit-box-shadow: 0px 0px 0px 2px rgba(0, 0, 0, 0.21);
    box-shadow: 0px 0px 0px 2px rgba(0, 0, 0, 0.21);
    text-shadow: none
}

.btn.fixedWidth {
    width: 250px
}

.btn-remark {
    font-size: 16px;
    text-align: center;
    padding-top: 10px
}

.btn.white a,
.btn.white button {
    background: #fff;
    color: #333
}

.btn.borderType a,
.btn.borderType button {
    color: #05367b;
    border: solid 2px;
    background: none
}

.btn.borderType a:hover,
.btn.borderType button:hover {
    text-shadow: none
}

.btn.borderType.whiteStyle a,
.btn.borderType.whiteStyle button {
    color: #fff
}

.btn.borderType.redStyle a,
.btn.borderType.redStyle button {
    color: #d10031
}

.btn.borderType.blackStyle a,
.btn.borderType.blackStyle button {
    color: #000
}

.btn.textBtn a,
.btn.textBtn button {
    color: #05367b;
    background: none
}

.btn.textBtn a:before,
.btn.textBtn button:before {
    background: rgba(0, 0, 0, 0.05)
}

.btn.textBtn a:hover,
.btn.textBtn button:hover {
    text-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none
}

.btn.textBtn.whiteStyle a,
.btn.textBtn.whiteStyle button {
    color: #fff
}

@media screen and (max-width:767px) {
    .btn {
        width: 100%
    }

    .btnArea.threeBtn .btn:not(.sBtn),
    .btnArea.twoBtn .btn:not(.sBtn) {
        max-width: none;
        width: 100%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 0px;
        padding-right: 0px
    }

    .btn a,
    .btn button {
        font-size: 17px;
        line-height: 45px;
        width: 100%;
        padding: 0px 20px
    }

    .btn-remark {
        padding: 5px 0px 10px
    }
}

.normal a,
.normal button {
    font-size: 24px;
    line-height: 55px;
    padding: 0px 25px;
    border-radius: 18px
}

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

    .normal a,
    .normal button {
        font-size: 17px;
        line-height: 45px;
        padding: 0px 10px
    }
}

.sBtn a,
.sBtn button {
    font-size: 18px;
    line-height: 24px;
    padding: 0px 10px
}

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

    .sBtn a,
    .sBtn button {
        font-size: 16px;
        padding: 0 5px
    }
}

@media screen and (max-width:767px) {
    .btnArea.threeBtn .sBtn {
        padding-left: 5px;
        padding-right: 5px
    }
}

.modal {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 50
}

.modal-bg {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3)
}

.modal-container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 700px;
    box-sizing: border-box
}

.modal-container .closeBtn {
    z-index: 2
}

.modal-container-infoArea {
    background: white;
    border-radius: 8px;
    padding: 15px 30px;
    -webkit-box-shadow: 0px 4px 13px rgba(0, 0, 0, 0.54);
    box-shadow: 0px 4px 13px rgba(0, 0, 0, 0.54);
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 80vh;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain
}

.modal-container-text {
    font-size: 17px;
    line-height: 30px;
    padding-top: 20px;
    margin-bottom: 20px
}

.modal-container-text .focusText {
    color: #ab3533;
    font-size: 20px
}

.modal-container-btnArea {
    margin-top: 30px;
    text-align: center;
    font-size: 0px
}

.modal-container-btn {
    display: inline-block;
    padding: 0px 24px
}

.modal-container.fixedHeight {
    top: 10vh;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.modal-container.fixedHeight>div {
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 80vh;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.modal-youtube {
    position: relative;
    margin: 0 auto;
    padding-bottom: 56.25%
}

.modal-youtube iframe {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%
}

.modal.show {
    display: block
}

.modal-enter-active,
.modal-leave-active {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s
}

.modal-enter,
.modal-leave-to {
    opacity: 0
}

.modal.md .modal-container {
    max-width: 450px
}

@media screen and (max-width:991px) {
    .modal-container {
        width: 90%
    }

    .modal-container-infoArea {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 30px 15px
    }

    .modal-container .tit:after,
    .modal-container .tit:before {
        display: none
    }

    .modal-container .tit>strong {
        max-width: none
    }
}

@media screen and (max-width:767px) {
    .modal-container-infoArea {
        border-width: 4px
    }

    .modal-container-btn {
        margin-bottom: 15px
    }
}

.openModal {
    cursor: pointer
}

.closeBtn {
    position: absolute;
    top: -20px;
    right: -20px;
    font-size: 25px;
    width: 48px;
    height: 48px;
    text-align: center;
    border-radius: 100%;
    color: #fff;
    background: #05367b;
    -webkit-transition: 0.3s ease all;
    transition: 0.3s ease all;
    cursor: pointer;
    -webkit-box-shadow: 0px 0px 0px 4px rgba(5, 54, 123, 0.3);
    box-shadow: 0px 0px 0px 4px rgba(5, 54, 123, 0.3);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.closeBtn .material-symbols-outlined {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.closeBtn:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    width: 0%;
    height: 0%;
    background: rgba(0, 0, 0, 0.1);
    -webkit-transition: 0.2s ease all;
    transition: 0.2s ease all;
    border-radius: 100%
}

.closeBtn:hover:before {
    width: 100%;
    height: 100%
}

@media screen and (max-width:767px) {
    .closeBtn {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 20px
    }
}

.chart {
    margin: 15px 0px
}

.chart-area {
    font-size: 0px;
    text-align: center;
    margin: 15px -30px
}

.chart-area .chart {
    display: inline-block;
    vertical-align: top;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    padding: 0px 30px;
    margin: 0px
}

.chart-area.threeChart .chart {
    width: 33.3333333333%
}

.chart-tit {
    font-size: 22px;
    margin: 10px 0px;
    text-align: center
}

.chart-tit.type2 {
    font-size: 24px
}

.chart-tit.type2:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: #005598;
    width: 8px;
    height: 26px;
    border-radius: 4px;
    position: relative;
    top: -3px
}

.chart-tit-bg {
    border: solid 1px #ccc;
    display: inline-block;
    padding: 4px 18px
}

.chart-img {
    max-width: 100%;
    display: block;
    margin: 15px auto
}

.chart-img.type2 {
    width: 100%
}

.chart-table {
    margin: 10px 0px;
    overflow-x: auto
}

.chart-table table {
    width: 100%;
    border-spacing: 1px;
    border-spacing: 0;
    font-size: 17px
}

.chart-table table thead tr {
    background: #e6a15d
}

.chart-table table thead tr td {
    color: #fff;
    font-weight: bold
}

.chart-table table thead tr td:first-of-type {
    border-radius: 10px 0 0 10px
}

.chart-table table thead tr td:last-of-type {
    border-radius: 0 10px 10px 0
}

.chart-table table tr {
    background: #fff
}

.chart-table table tr td {
    text-align: center;
    color: #353535;
    padding: 5px 5px
}

.chart-table table tr td[align=left] {
    text-align: left
}

.chart-table table tr td[align=right] {
    text-align: right
}

.chart-table table tr:nth-of-type(2n+0) {
    background: #f2f2f2
}

.chart-table table tr.focusTr {
    background: #fff8e8
}

.chart-remark {
    font-size: 14px;
    margin: 10px 0px;
    color: #666
}

.chart-remark b,
.chart-remark strong {
    color: #333
}

.chart-chartAndText {
    font-size: 0px
}

.chart-chartAndText .chart,
.chart-chartAndText .chartText {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%
}

.chart-chartAndText .chart-img {
    margin-top: 0px
}

.chart-chartAndText .chartText {
    padding-left: 12px;
    font-size: 18px
}

@media screen and (max-width:767px) {
    .chart-area {
        margin: 15px 0px
    }

    .chart-area .chart {
        display: block;
        padding: 0px;
        width: auto;
        margin: 15px 0px
    }

    .chart-area .chart+.chart {
        margin-top: 25px
    }

    .chart-area.threeChart .chart {
        width: auto
    }

    .chart-tit {
        font-size: 17px
    }

    .chart-tit.type2 {
        font-size: 17px
    }

    .chart-tit.type2:before {
        width: 6px;
        height: 17px;
        top: -1px
    }

    .chart-table table {
        font-size: 14px
    }

    .chart-remark {
        font-size: 12px
    }

    .chart-chartAndText .chart,
    .chart-chartAndText .chartText {
        display: block;
        width: auto
    }

    .chart-chartAndText .chartText {
        padding-left: 0px;
        font-size: 16px
    }
}

.row {
    margin: 5px -10px;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.row.vAlignCenter {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

[class*=col-] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 10px 10px;
    text-align: left
}

.col-1 {
    width: calc(4.1666666667% - 20px)
}

.col-2 {
    width: calc(8.3333333333% - 20px)
}

.col-3 {
    width: calc(12.5% - 20px)
}

.col-4 {
    width: calc(16.6666666667% - 20px)
}

.col-5 {
    width: calc(20.8333333333% - 20px)
}

.col-6 {
    width: calc(25% - 20px)
}

.col-7 {
    width: calc(29.1666666667% - 20px)
}

.col-8 {
    width: calc(33.3333333333% - 20px)
}

.col-9 {
    width: calc(37.5% - 20px)
}

.col-10 {
    width: calc(41.6666666667% - 20px)
}

.col-11 {
    width: calc(45.8333333333% - 20px)
}

.col-12 {
    width: calc(50% - 20px)
}

.col-13 {
    width: calc(54.1666666667% - 20px)
}

.col-14 {
    width: calc(58.3333333333% - 20px)
}

.col-15 {
    width: calc(62.5% - 20px)
}

.col-16 {
    width: calc(66.6666666667% - 20px)
}

.col-17 {
    width: calc(70.8333333333% - 20px)
}

.col-18 {
    width: calc(75% - 20px)
}

.col-19 {
    width: calc(79.1666666667% - 20px)
}

.col-20 {
    width: calc(83.3333333333% - 20px)
}

.col-21 {
    width: calc(87.5% - 20px)
}

.col-22 {
    width: calc(91.6666666667% - 20px)
}

.col-23 {
    width: calc(95.8333333333% - 20px)
}

.col-24 {
    width: calc(100% - 20px)
}

@media screen and (max-width:1399px) {
    .col-xl-1 {
        width: calc(4.1666666667% - 20px)
    }

    .col-xl-2 {
        width: calc(8.3333333333% - 20px)
    }

    .col-xl-3 {
        width: calc(12.5% - 20px)
    }

    .col-xl-4 {
        width: calc(16.6666666667% - 20px)
    }

    .col-xl-5 {
        width: calc(20.8333333333% - 20px)
    }

    .col-xl-6 {
        width: calc(25% - 20px)
    }

    .col-xl-7 {
        width: calc(29.1666666667% - 20px)
    }

    .col-xl-8 {
        width: calc(33.3333333333% - 20px)
    }

    .col-xl-9 {
        width: calc(37.5% - 20px)
    }

    .col-xl-10 {
        width: calc(41.6666666667% - 20px)
    }

    .col-xl-11 {
        width: calc(45.8333333333% - 20px)
    }

    .col-xl-12 {
        width: calc(50% - 20px)
    }

    .col-xl-13 {
        width: calc(54.1666666667% - 20px)
    }

    .col-xl-14 {
        width: calc(58.3333333333% - 20px)
    }

    .col-xl-15 {
        width: calc(62.5% - 20px)
    }

    .col-xl-16 {
        width: calc(66.6666666667% - 20px)
    }

    .col-xl-17 {
        width: calc(70.8333333333% - 20px)
    }

    .col-xl-18 {
        width: calc(75% - 20px)
    }

    .col-xl-19 {
        width: calc(79.1666666667% - 20px)
    }

    .col-xl-20 {
        width: calc(83.3333333333% - 20px)
    }

    .col-xl-21 {
        width: calc(87.5% - 20px)
    }

    .col-xl-22 {
        width: calc(91.6666666667% - 20px)
    }

    .col-xl-23 {
        width: calc(95.8333333333% - 20px)
    }

    .col-xl-24 {
        width: calc(100% - 20px)
    }
}

@media screen and (max-width:1199px) {
    .col-lg-1 {
        width: calc(4.1666666667% - 20px)
    }

    .col-lg-2 {
        width: calc(8.3333333333% - 20px)
    }

    .col-lg-3 {
        width: calc(12.5% - 20px)
    }

    .col-lg-4 {
        width: calc(16.6666666667% - 20px)
    }

    .col-lg-5 {
        width: calc(20.8333333333% - 20px)
    }

    .col-lg-6 {
        width: calc(25% - 20px)
    }

    .col-lg-7 {
        width: calc(29.1666666667% - 20px)
    }

    .col-lg-8 {
        width: calc(33.3333333333% - 20px)
    }

    .col-lg-9 {
        width: calc(37.5% - 20px)
    }

    .col-lg-10 {
        width: calc(41.6666666667% - 20px)
    }

    .col-lg-11 {
        width: calc(45.8333333333% - 20px)
    }

    .col-lg-12 {
        width: calc(50% - 20px)
    }

    .col-lg-13 {
        width: calc(54.1666666667% - 20px)
    }

    .col-lg-14 {
        width: calc(58.3333333333% - 20px)
    }

    .col-lg-15 {
        width: calc(62.5% - 20px)
    }

    .col-lg-16 {
        width: calc(66.6666666667% - 20px)
    }

    .col-lg-17 {
        width: calc(70.8333333333% - 20px)
    }

    .col-lg-18 {
        width: calc(75% - 20px)
    }

    .col-lg-19 {
        width: calc(79.1666666667% - 20px)
    }

    .col-lg-20 {
        width: calc(83.3333333333% - 20px)
    }

    .col-lg-21 {
        width: calc(87.5% - 20px)
    }

    .col-lg-22 {
        width: calc(91.6666666667% - 20px)
    }

    .col-lg-23 {
        width: calc(95.8333333333% - 20px)
    }

    .col-lg-24 {
        width: calc(100% - 20px)
    }
}

@media screen and (max-width:991px) {
    .col-md-1 {
        width: calc(4.1666666667% - 20px)
    }

    .col-md-2 {
        width: calc(8.3333333333% - 20px)
    }

    .col-md-3 {
        width: calc(12.5% - 20px)
    }

    .col-md-4 {
        width: calc(16.6666666667% - 20px)
    }

    .col-md-5 {
        width: calc(20.8333333333% - 20px)
    }

    .col-md-6 {
        width: calc(25% - 20px)
    }

    .col-md-7 {
        width: calc(29.1666666667% - 20px)
    }

    .col-md-8 {
        width: calc(33.3333333333% - 20px)
    }

    .col-md-9 {
        width: calc(37.5% - 20px)
    }

    .col-md-10 {
        width: calc(41.6666666667% - 20px)
    }

    .col-md-11 {
        width: calc(45.8333333333% - 20px)
    }

    .col-md-12 {
        width: calc(50% - 20px)
    }

    .col-md-13 {
        width: calc(54.1666666667% - 20px)
    }

    .col-md-14 {
        width: calc(58.3333333333% - 20px)
    }

    .col-md-15 {
        width: calc(62.5% - 20px)
    }

    .col-md-16 {
        width: calc(66.6666666667% - 20px)
    }

    .col-md-17 {
        width: calc(70.8333333333% - 20px)
    }

    .col-md-18 {
        width: calc(75% - 20px)
    }

    .col-md-19 {
        width: calc(79.1666666667% - 20px)
    }

    .col-md-20 {
        width: calc(83.3333333333% - 20px)
    }

    .col-md-21 {
        width: calc(87.5% - 20px)
    }

    .col-md-22 {
        width: calc(91.6666666667% - 20px)
    }

    .col-md-23 {
        width: calc(95.8333333333% - 20px)
    }

    .col-md-24 {
        width: calc(100% - 20px)
    }
}

@media screen and (max-width:767px) {
    .col-sm-1 {
        width: calc(4.1666666667% - 20px)
    }

    .col-sm-2 {
        width: calc(8.3333333333% - 20px)
    }

    .col-sm-3 {
        width: calc(12.5% - 20px)
    }

    .col-sm-4 {
        width: calc(16.6666666667% - 20px)
    }

    .col-sm-5 {
        width: calc(20.8333333333% - 20px)
    }

    .col-sm-6 {
        width: calc(25% - 20px)
    }

    .col-sm-7 {
        width: calc(29.1666666667% - 20px)
    }

    .col-sm-8 {
        width: calc(33.3333333333% - 20px)
    }

    .col-sm-9 {
        width: calc(37.5% - 20px)
    }

    .col-sm-10 {
        width: calc(41.6666666667% - 20px)
    }

    .col-sm-11 {
        width: calc(45.8333333333% - 20px)
    }

    .col-sm-12 {
        width: calc(50% - 20px)
    }

    .col-sm-13 {
        width: calc(54.1666666667% - 20px)
    }

    .col-sm-14 {
        width: calc(58.3333333333% - 20px)
    }

    .col-sm-15 {
        width: calc(62.5% - 20px)
    }

    .col-sm-16 {
        width: calc(66.6666666667% - 20px)
    }

    .col-sm-17 {
        width: calc(70.8333333333% - 20px)
    }

    .col-sm-18 {
        width: calc(75% - 20px)
    }

    .col-sm-19 {
        width: calc(79.1666666667% - 20px)
    }

    .col-sm-20 {
        width: calc(83.3333333333% - 20px)
    }

    .col-sm-21 {
        width: calc(87.5% - 20px)
    }

    .col-sm-22 {
        width: calc(91.6666666667% - 20px)
    }

    .col-sm-23 {
        width: calc(95.8333333333% - 20px)
    }

    .col-sm-24 {
        width: calc(100% - 20px)
    }
}

@media screen and (max-width:359px) {
    .col-xs-1 {
        width: calc(4.1666666667% - 20px)
    }

    .col-xs-2 {
        width: calc(8.3333333333% - 20px)
    }

    .col-xs-3 {
        width: calc(12.5% - 20px)
    }

    .col-xs-4 {
        width: calc(16.6666666667% - 20px)
    }

    .col-xs-5 {
        width: calc(20.8333333333% - 20px)
    }

    .col-xs-6 {
        width: calc(25% - 20px)
    }

    .col-xs-7 {
        width: calc(29.1666666667% - 20px)
    }

    .col-xs-8 {
        width: calc(33.3333333333% - 20px)
    }

    .col-xs-9 {
        width: calc(37.5% - 20px)
    }

    .col-xs-10 {
        width: calc(41.6666666667% - 20px)
    }

    .col-xs-11 {
        width: calc(45.8333333333% - 20px)
    }

    .col-xs-12 {
        width: calc(50% - 20px)
    }

    .col-xs-13 {
        width: calc(54.1666666667% - 20px)
    }

    .col-xs-14 {
        width: calc(58.3333333333% - 20px)
    }

    .col-xs-15 {
        width: calc(62.5% - 20px)
    }

    .col-xs-16 {
        width: calc(66.6666666667% - 20px)
    }

    .col-xs-17 {
        width: calc(70.8333333333% - 20px)
    }

    .col-xs-18 {
        width: calc(75% - 20px)
    }

    .col-xs-19 {
        width: calc(79.1666666667% - 20px)
    }

    .col-xs-20 {
        width: calc(83.3333333333% - 20px)
    }

    .col-xs-21 {
        width: calc(87.5% - 20px)
    }

    .col-xs-22 {
        width: calc(91.6666666667% - 20px)
    }

    .col-xs-23 {
        width: calc(95.8333333333% - 20px)
    }

    .col-xs-24 {
        width: calc(100% - 20px)
    }
}

.margin-top-0 {
    margin-top: 0px !important
}

.margin-top-5 {
    margin-top: 5px !important
}

.margin-top-10 {
    margin-top: 10px !important
}

.margin-top-15 {
    margin-top: 15px !important
}

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

.margin-top-25 {
    margin-top: 25px !important
}

.margin-top-30 {
    margin-top: 30px !important
}

.margin-top-35 {
    margin-top: 35px !important
}

.margin-top-40 {
    margin-top: 40px !important
}

.margin-top-45 {
    margin-top: 45px !important
}

.margin-top-50 {
    margin-top: 50px !important
}

.margin-top-55 {
    margin-top: 55px !important
}

.margin-top-60 {
    margin-top: 60px !important
}

.margin-top-65 {
    margin-top: 65px !important
}

.margin-top-70 {
    margin-top: 70px !important
}

.margin-top-75 {
    margin-top: 75px !important
}

.margin-top-80 {
    margin-top: 80px !important
}

.margin-top-85 {
    margin-top: 85px !important
}

.margin-top-90 {
    margin-top: 90px !important
}

.margin-top-95 {
    margin-top: 95px !important
}

.margin-top-100 {
    margin-top: 100px !important
}

@media screen and (max-width:1599px) {
    .margin-top-xxl-0 {
        margin-top: 0px !important
    }

    .margin-top-xxl-5 {
        margin-top: 5px !important
    }

    .margin-top-xxl-10 {
        margin-top: 10px !important
    }

    .margin-top-xxl-15 {
        margin-top: 15px !important
    }

    .margin-top-xxl-20 {
        margin-top: 20px !important
    }

    .margin-top-xxl-25 {
        margin-top: 25px !important
    }

    .margin-top-xxl-30 {
        margin-top: 30px !important
    }

    .margin-top-xxl-35 {
        margin-top: 35px !important
    }

    .margin-top-xxl-40 {
        margin-top: 40px !important
    }

    .margin-top-xxl-45 {
        margin-top: 45px !important
    }

    .margin-top-xxl-50 {
        margin-top: 50px !important
    }

    .margin-top-xxl-55 {
        margin-top: 55px !important
    }

    .margin-top-xxl-60 {
        margin-top: 60px !important
    }

    .margin-top-xxl-65 {
        margin-top: 65px !important
    }

    .margin-top-xxl-70 {
        margin-top: 70px !important
    }

    .margin-top-xxl-75 {
        margin-top: 75px !important
    }

    .margin-top-xxl-80 {
        margin-top: 80px !important
    }

    .margin-top-xxl-85 {
        margin-top: 85px !important
    }

    .margin-top-xxl-90 {
        margin-top: 90px !important
    }

    .margin-top-xxl-95 {
        margin-top: 95px !important
    }

    .margin-top-xxl-100 {
        margin-top: 100px !important
    }
}

@media screen and (max-width:1399px) {
    .margin-top-xl-0 {
        margin-top: 0px !important
    }

    .margin-top-xl-5 {
        margin-top: 5px !important
    }

    .margin-top-xl-10 {
        margin-top: 10px !important
    }

    .margin-top-xl-15 {
        margin-top: 15px !important
    }

    .margin-top-xl-20 {
        margin-top: 20px !important
    }

    .margin-top-xl-25 {
        margin-top: 25px !important
    }

    .margin-top-xl-30 {
        margin-top: 30px !important
    }

    .margin-top-xl-35 {
        margin-top: 35px !important
    }

    .margin-top-xl-40 {
        margin-top: 40px !important
    }

    .margin-top-xl-45 {
        margin-top: 45px !important
    }

    .margin-top-xl-50 {
        margin-top: 50px !important
    }

    .margin-top-xl-55 {
        margin-top: 55px !important
    }

    .margin-top-xl-60 {
        margin-top: 60px !important
    }

    .margin-top-xl-65 {
        margin-top: 65px !important
    }

    .margin-top-xl-70 {
        margin-top: 70px !important
    }

    .margin-top-xl-75 {
        margin-top: 75px !important
    }

    .margin-top-xl-80 {
        margin-top: 80px !important
    }

    .margin-top-xl-85 {
        margin-top: 85px !important
    }

    .margin-top-xl-90 {
        margin-top: 90px !important
    }

    .margin-top-xl-95 {
        margin-top: 95px !important
    }

    .margin-top-xl-100 {
        margin-top: 100px !important
    }
}

@media screen and (max-width:1199px) {
    .margin-top-lg-0 {
        margin-top: 0px !important
    }

    .margin-top-lg-5 {
        margin-top: 5px !important
    }

    .margin-top-lg-10 {
        margin-top: 10px !important
    }

    .margin-top-lg-15 {
        margin-top: 15px !important
    }

    .margin-top-lg-20 {
        margin-top: 20px !important
    }

    .margin-top-lg-25 {
        margin-top: 25px !important
    }

    .margin-top-lg-30 {
        margin-top: 30px !important
    }

    .margin-top-lg-35 {
        margin-top: 35px !important
    }

    .margin-top-lg-40 {
        margin-top: 40px !important
    }

    .margin-top-lg-45 {
        margin-top: 45px !important
    }

    .margin-top-lg-50 {
        margin-top: 50px !important
    }

    .margin-top-lg-55 {
        margin-top: 55px !important
    }

    .margin-top-lg-60 {
        margin-top: 60px !important
    }

    .margin-top-lg-65 {
        margin-top: 65px !important
    }

    .margin-top-lg-70 {
        margin-top: 70px !important
    }

    .margin-top-lg-75 {
        margin-top: 75px !important
    }

    .margin-top-lg-80 {
        margin-top: 80px !important
    }

    .margin-top-lg-85 {
        margin-top: 85px !important
    }

    .margin-top-lg-90 {
        margin-top: 90px !important
    }

    .margin-top-lg-95 {
        margin-top: 95px !important
    }

    .margin-top-lg-100 {
        margin-top: 100px !important
    }
}

@media screen and (max-width:991px) {
    .margin-top-md-0 {
        margin-top: 0px !important
    }

    .margin-top-md-5 {
        margin-top: 5px !important
    }

    .margin-top-md-10 {
        margin-top: 10px !important
    }

    .margin-top-md-15 {
        margin-top: 15px !important
    }

    .margin-top-md-20 {
        margin-top: 20px !important
    }

    .margin-top-md-25 {
        margin-top: 25px !important
    }

    .margin-top-md-30 {
        margin-top: 30px !important
    }

    .margin-top-md-35 {
        margin-top: 35px !important
    }

    .margin-top-md-40 {
        margin-top: 40px !important
    }

    .margin-top-md-45 {
        margin-top: 45px !important
    }

    .margin-top-md-50 {
        margin-top: 50px !important
    }

    .margin-top-md-55 {
        margin-top: 55px !important
    }

    .margin-top-md-60 {
        margin-top: 60px !important
    }

    .margin-top-md-65 {
        margin-top: 65px !important
    }

    .margin-top-md-70 {
        margin-top: 70px !important
    }

    .margin-top-md-75 {
        margin-top: 75px !important
    }

    .margin-top-md-80 {
        margin-top: 80px !important
    }

    .margin-top-md-85 {
        margin-top: 85px !important
    }

    .margin-top-md-90 {
        margin-top: 90px !important
    }

    .margin-top-md-95 {
        margin-top: 95px !important
    }

    .margin-top-md-100 {
        margin-top: 100px !important
    }
}

@media screen and (max-width:767px) {
    .margin-top-sm-0 {
        margin-top: 0px !important
    }

    .margin-top-sm-5 {
        margin-top: 5px !important
    }

    .margin-top-sm-10 {
        margin-top: 10px !important
    }

    .margin-top-sm-15 {
        margin-top: 15px !important
    }

    .margin-top-sm-20 {
        margin-top: 20px !important
    }

    .margin-top-sm-25 {
        margin-top: 25px !important
    }

    .margin-top-sm-30 {
        margin-top: 30px !important
    }

    .margin-top-sm-35 {
        margin-top: 35px !important
    }

    .margin-top-sm-40 {
        margin-top: 40px !important
    }

    .margin-top-sm-45 {
        margin-top: 45px !important
    }

    .margin-top-sm-50 {
        margin-top: 50px !important
    }

    .margin-top-sm-55 {
        margin-top: 55px !important
    }

    .margin-top-sm-60 {
        margin-top: 60px !important
    }

    .margin-top-sm-65 {
        margin-top: 65px !important
    }

    .margin-top-sm-70 {
        margin-top: 70px !important
    }

    .margin-top-sm-75 {
        margin-top: 75px !important
    }

    .margin-top-sm-80 {
        margin-top: 80px !important
    }

    .margin-top-sm-85 {
        margin-top: 85px !important
    }

    .margin-top-sm-90 {
        margin-top: 90px !important
    }

    .margin-top-sm-95 {
        margin-top: 95px !important
    }

    .margin-top-sm-100 {
        margin-top: 100px !important
    }
}

@media screen and (max-width:359px) {
    .margin-top-xs-0 {
        margin-top: 0px !important
    }

    .margin-top-xs-5 {
        margin-top: 5px !important
    }

    .margin-top-xs-10 {
        margin-top: 10px !important
    }

    .margin-top-xs-15 {
        margin-top: 15px !important
    }

    .margin-top-xs-20 {
        margin-top: 20px !important
    }

    .margin-top-xs-25 {
        margin-top: 25px !important
    }

    .margin-top-xs-30 {
        margin-top: 30px !important
    }

    .margin-top-xs-35 {
        margin-top: 35px !important
    }

    .margin-top-xs-40 {
        margin-top: 40px !important
    }

    .margin-top-xs-45 {
        margin-top: 45px !important
    }

    .margin-top-xs-50 {
        margin-top: 50px !important
    }

    .margin-top-xs-55 {
        margin-top: 55px !important
    }

    .margin-top-xs-60 {
        margin-top: 60px !important
    }

    .margin-top-xs-65 {
        margin-top: 65px !important
    }

    .margin-top-xs-70 {
        margin-top: 70px !important
    }

    .margin-top-xs-75 {
        margin-top: 75px !important
    }

    .margin-top-xs-80 {
        margin-top: 80px !important
    }

    .margin-top-xs-85 {
        margin-top: 85px !important
    }

    .margin-top-xs-90 {
        margin-top: 90px !important
    }

    .margin-top-xs-95 {
        margin-top: 95px !important
    }

    .margin-top-xs-100 {
        margin-top: 100px !important
    }
}

.margin-right-0 {
    margin-right: 0px !important
}

.margin-right-5 {
    margin-right: 5px !important
}

.margin-right-10 {
    margin-right: 10px !important
}

.margin-right-15 {
    margin-right: 15px !important
}

.margin-right-20 {
    margin-right: 20px !important
}

.margin-right-25 {
    margin-right: 25px !important
}

.margin-right-30 {
    margin-right: 30px !important
}

.margin-right-35 {
    margin-right: 35px !important
}

.margin-right-40 {
    margin-right: 40px !important
}

.margin-right-45 {
    margin-right: 45px !important
}

.margin-right-50 {
    margin-right: 50px !important
}

.margin-right-55 {
    margin-right: 55px !important
}

.margin-right-60 {
    margin-right: 60px !important
}

.margin-right-65 {
    margin-right: 65px !important
}

.margin-right-70 {
    margin-right: 70px !important
}

.margin-right-75 {
    margin-right: 75px !important
}

.margin-right-80 {
    margin-right: 80px !important
}

.margin-right-85 {
    margin-right: 85px !important
}

.margin-right-90 {
    margin-right: 90px !important
}

.margin-right-95 {
    margin-right: 95px !important
}

.margin-right-100 {
    margin-right: 100px !important
}

@media screen and (max-width:1599px) {
    .margin-right-xxl-0 {
        margin-right: 0px !important
    }

    .margin-right-xxl-5 {
        margin-right: 5px !important
    }

    .margin-right-xxl-10 {
        margin-right: 10px !important
    }

    .margin-right-xxl-15 {
        margin-right: 15px !important
    }

    .margin-right-xxl-20 {
        margin-right: 20px !important
    }

    .margin-right-xxl-25 {
        margin-right: 25px !important
    }

    .margin-right-xxl-30 {
        margin-right: 30px !important
    }

    .margin-right-xxl-35 {
        margin-right: 35px !important
    }

    .margin-right-xxl-40 {
        margin-right: 40px !important
    }

    .margin-right-xxl-45 {
        margin-right: 45px !important
    }

    .margin-right-xxl-50 {
        margin-right: 50px !important
    }

    .margin-right-xxl-55 {
        margin-right: 55px !important
    }

    .margin-right-xxl-60 {
        margin-right: 60px !important
    }

    .margin-right-xxl-65 {
        margin-right: 65px !important
    }

    .margin-right-xxl-70 {
        margin-right: 70px !important
    }

    .margin-right-xxl-75 {
        margin-right: 75px !important
    }

    .margin-right-xxl-80 {
        margin-right: 80px !important
    }

    .margin-right-xxl-85 {
        margin-right: 85px !important
    }

    .margin-right-xxl-90 {
        margin-right: 90px !important
    }

    .margin-right-xxl-95 {
        margin-right: 95px !important
    }

    .margin-right-xxl-100 {
        margin-right: 100px !important
    }
}

@media screen and (max-width:1399px) {
    .margin-right-xl-0 {
        margin-right: 0px !important
    }

    .margin-right-xl-5 {
        margin-right: 5px !important
    }

    .margin-right-xl-10 {
        margin-right: 10px !important
    }

    .margin-right-xl-15 {
        margin-right: 15px !important
    }

    .margin-right-xl-20 {
        margin-right: 20px !important
    }

    .margin-right-xl-25 {
        margin-right: 25px !important
    }

    .margin-right-xl-30 {
        margin-right: 30px !important
    }

    .margin-right-xl-35 {
        margin-right: 35px !important
    }

    .margin-right-xl-40 {
        margin-right: 40px !important
    }

    .margin-right-xl-45 {
        margin-right: 45px !important
    }

    .margin-right-xl-50 {
        margin-right: 50px !important
    }

    .margin-right-xl-55 {
        margin-right: 55px !important
    }

    .margin-right-xl-60 {
        margin-right: 60px !important
    }

    .margin-right-xl-65 {
        margin-right: 65px !important
    }

    .margin-right-xl-70 {
        margin-right: 70px !important
    }

    .margin-right-xl-75 {
        margin-right: 75px !important
    }

    .margin-right-xl-80 {
        margin-right: 80px !important
    }

    .margin-right-xl-85 {
        margin-right: 85px !important
    }

    .margin-right-xl-90 {
        margin-right: 90px !important
    }

    .margin-right-xl-95 {
        margin-right: 95px !important
    }

    .margin-right-xl-100 {
        margin-right: 100px !important
    }
}

@media screen and (max-width:1199px) {
    .margin-right-lg-0 {
        margin-right: 0px !important
    }

    .margin-right-lg-5 {
        margin-right: 5px !important
    }

    .margin-right-lg-10 {
        margin-right: 10px !important
    }

    .margin-right-lg-15 {
        margin-right: 15px !important
    }

    .margin-right-lg-20 {
        margin-right: 20px !important
    }

    .margin-right-lg-25 {
        margin-right: 25px !important
    }

    .margin-right-lg-30 {
        margin-right: 30px !important
    }

    .margin-right-lg-35 {
        margin-right: 35px !important
    }

    .margin-right-lg-40 {
        margin-right: 40px !important
    }

    .margin-right-lg-45 {
        margin-right: 45px !important
    }

    .margin-right-lg-50 {
        margin-right: 50px !important
    }

    .margin-right-lg-55 {
        margin-right: 55px !important
    }

    .margin-right-lg-60 {
        margin-right: 60px !important
    }

    .margin-right-lg-65 {
        margin-right: 65px !important
    }

    .margin-right-lg-70 {
        margin-right: 70px !important
    }

    .margin-right-lg-75 {
        margin-right: 75px !important
    }

    .margin-right-lg-80 {
        margin-right: 80px !important
    }

    .margin-right-lg-85 {
        margin-right: 85px !important
    }

    .margin-right-lg-90 {
        margin-right: 90px !important
    }

    .margin-right-lg-95 {
        margin-right: 95px !important
    }

    .margin-right-lg-100 {
        margin-right: 100px !important
    }
}

@media screen and (max-width:991px) {
    .margin-right-md-0 {
        margin-right: 0px !important
    }

    .margin-right-md-5 {
        margin-right: 5px !important
    }

    .margin-right-md-10 {
        margin-right: 10px !important
    }

    .margin-right-md-15 {
        margin-right: 15px !important
    }

    .margin-right-md-20 {
        margin-right: 20px !important
    }

    .margin-right-md-25 {
        margin-right: 25px !important
    }

    .margin-right-md-30 {
        margin-right: 30px !important
    }

    .margin-right-md-35 {
        margin-right: 35px !important
    }

    .margin-right-md-40 {
        margin-right: 40px !important
    }

    .margin-right-md-45 {
        margin-right: 45px !important
    }

    .margin-right-md-50 {
        margin-right: 50px !important
    }

    .margin-right-md-55 {
        margin-right: 55px !important
    }

    .margin-right-md-60 {
        margin-right: 60px !important
    }

    .margin-right-md-65 {
        margin-right: 65px !important
    }

    .margin-right-md-70 {
        margin-right: 70px !important
    }

    .margin-right-md-75 {
        margin-right: 75px !important
    }

    .margin-right-md-80 {
        margin-right: 80px !important
    }

    .margin-right-md-85 {
        margin-right: 85px !important
    }

    .margin-right-md-90 {
        margin-right: 90px !important
    }

    .margin-right-md-95 {
        margin-right: 95px !important
    }

    .margin-right-md-100 {
        margin-right: 100px !important
    }
}

@media screen and (max-width:767px) {
    .margin-right-sm-0 {
        margin-right: 0px !important
    }

    .margin-right-sm-5 {
        margin-right: 5px !important
    }

    .margin-right-sm-10 {
        margin-right: 10px !important
    }

    .margin-right-sm-15 {
        margin-right: 15px !important
    }

    .margin-right-sm-20 {
        margin-right: 20px !important
    }

    .margin-right-sm-25 {
        margin-right: 25px !important
    }

    .margin-right-sm-30 {
        margin-right: 30px !important
    }

    .margin-right-sm-35 {
        margin-right: 35px !important
    }

    .margin-right-sm-40 {
        margin-right: 40px !important
    }

    .margin-right-sm-45 {
        margin-right: 45px !important
    }

    .margin-right-sm-50 {
        margin-right: 50px !important
    }

    .margin-right-sm-55 {
        margin-right: 55px !important
    }

    .margin-right-sm-60 {
        margin-right: 60px !important
    }

    .margin-right-sm-65 {
        margin-right: 65px !important
    }

    .margin-right-sm-70 {
        margin-right: 70px !important
    }

    .margin-right-sm-75 {
        margin-right: 75px !important
    }

    .margin-right-sm-80 {
        margin-right: 80px !important
    }

    .margin-right-sm-85 {
        margin-right: 85px !important
    }

    .margin-right-sm-90 {
        margin-right: 90px !important
    }

    .margin-right-sm-95 {
        margin-right: 95px !important
    }

    .margin-right-sm-100 {
        margin-right: 100px !important
    }
}

@media screen and (max-width:359px) {
    .margin-right-xs-0 {
        margin-right: 0px !important
    }

    .margin-right-xs-5 {
        margin-right: 5px !important
    }

    .margin-right-xs-10 {
        margin-right: 10px !important
    }

    .margin-right-xs-15 {
        margin-right: 15px !important
    }

    .margin-right-xs-20 {
        margin-right: 20px !important
    }

    .margin-right-xs-25 {
        margin-right: 25px !important
    }

    .margin-right-xs-30 {
        margin-right: 30px !important
    }

    .margin-right-xs-35 {
        margin-right: 35px !important
    }

    .margin-right-xs-40 {
        margin-right: 40px !important
    }

    .margin-right-xs-45 {
        margin-right: 45px !important
    }

    .margin-right-xs-50 {
        margin-right: 50px !important
    }

    .margin-right-xs-55 {
        margin-right: 55px !important
    }

    .margin-right-xs-60 {
        margin-right: 60px !important
    }

    .margin-right-xs-65 {
        margin-right: 65px !important
    }

    .margin-right-xs-70 {
        margin-right: 70px !important
    }

    .margin-right-xs-75 {
        margin-right: 75px !important
    }

    .margin-right-xs-80 {
        margin-right: 80px !important
    }

    .margin-right-xs-85 {
        margin-right: 85px !important
    }

    .margin-right-xs-90 {
        margin-right: 90px !important
    }

    .margin-right-xs-95 {
        margin-right: 95px !important
    }

    .margin-right-xs-100 {
        margin-right: 100px !important
    }
}

.margin-bottom-0 {
    margin-bottom: 0px !important
}

.margin-bottom-5 {
    margin-bottom: 5px !important
}

.margin-bottom-10 {
    margin-bottom: 10px !important
}

.margin-bottom-15 {
    margin-bottom: 15px !important
}

.margin-bottom-20 {
    margin-bottom: 20px !important
}

.margin-bottom-25 {
    margin-bottom: 25px !important
}

.margin-bottom-30 {
    margin-bottom: 30px !important
}

.margin-bottom-35 {
    margin-bottom: 35px !important
}

.margin-bottom-40 {
    margin-bottom: 40px !important
}

.margin-bottom-45 {
    margin-bottom: 45px !important
}

.margin-bottom-50 {
    margin-bottom: 50px !important
}

.margin-bottom-55 {
    margin-bottom: 55px !important
}

.margin-bottom-60 {
    margin-bottom: 60px !important
}

.margin-bottom-65 {
    margin-bottom: 65px !important
}

.margin-bottom-70 {
    margin-bottom: 70px !important
}

.margin-bottom-75 {
    margin-bottom: 75px !important
}

.margin-bottom-80 {
    margin-bottom: 80px !important
}

.margin-bottom-85 {
    margin-bottom: 85px !important
}

.margin-bottom-90 {
    margin-bottom: 90px !important
}

.margin-bottom-95 {
    margin-bottom: 95px !important
}

.margin-bottom-100 {
    margin-bottom: 100px !important
}

@media screen and (max-width:1599px) {
    .margin-bottom-xxl-0 {
        margin-bottom: 0px !important
    }

    .margin-bottom-xxl-5 {
        margin-bottom: 5px !important
    }

    .margin-bottom-xxl-10 {
        margin-bottom: 10px !important
    }

    .margin-bottom-xxl-15 {
        margin-bottom: 15px !important
    }

    .margin-bottom-xxl-20 {
        margin-bottom: 20px !important
    }

    .margin-bottom-xxl-25 {
        margin-bottom: 25px !important
    }

    .margin-bottom-xxl-30 {
        margin-bottom: 30px !important
    }

    .margin-bottom-xxl-35 {
        margin-bottom: 35px !important
    }

    .margin-bottom-xxl-40 {
        margin-bottom: 40px !important
    }

    .margin-bottom-xxl-45 {
        margin-bottom: 45px !important
    }

    .margin-bottom-xxl-50 {
        margin-bottom: 50px !important
    }

    .margin-bottom-xxl-55 {
        margin-bottom: 55px !important
    }

    .margin-bottom-xxl-60 {
        margin-bottom: 60px !important
    }

    .margin-bottom-xxl-65 {
        margin-bottom: 65px !important
    }

    .margin-bottom-xxl-70 {
        margin-bottom: 70px !important
    }

    .margin-bottom-xxl-75 {
        margin-bottom: 75px !important
    }

    .margin-bottom-xxl-80 {
        margin-bottom: 80px !important
    }

    .margin-bottom-xxl-85 {
        margin-bottom: 85px !important
    }

    .margin-bottom-xxl-90 {
        margin-bottom: 90px !important
    }

    .margin-bottom-xxl-95 {
        margin-bottom: 95px !important
    }

    .margin-bottom-xxl-100 {
        margin-bottom: 100px !important
    }
}

@media screen and (max-width:1399px) {
    .margin-bottom-xl-0 {
        margin-bottom: 0px !important
    }

    .margin-bottom-xl-5 {
        margin-bottom: 5px !important
    }

    .margin-bottom-xl-10 {
        margin-bottom: 10px !important
    }

    .margin-bottom-xl-15 {
        margin-bottom: 15px !important
    }

    .margin-bottom-xl-20 {
        margin-bottom: 20px !important
    }

    .margin-bottom-xl-25 {
        margin-bottom: 25px !important
    }

    .margin-bottom-xl-30 {
        margin-bottom: 30px !important
    }

    .margin-bottom-xl-35 {
        margin-bottom: 35px !important
    }

    .margin-bottom-xl-40 {
        margin-bottom: 40px !important
    }

    .margin-bottom-xl-45 {
        margin-bottom: 45px !important
    }

    .margin-bottom-xl-50 {
        margin-bottom: 50px !important
    }

    .margin-bottom-xl-55 {
        margin-bottom: 55px !important
    }

    .margin-bottom-xl-60 {
        margin-bottom: 60px !important
    }

    .margin-bottom-xl-65 {
        margin-bottom: 65px !important
    }

    .margin-bottom-xl-70 {
        margin-bottom: 70px !important
    }

    .margin-bottom-xl-75 {
        margin-bottom: 75px !important
    }

    .margin-bottom-xl-80 {
        margin-bottom: 80px !important
    }

    .margin-bottom-xl-85 {
        margin-bottom: 85px !important
    }

    .margin-bottom-xl-90 {
        margin-bottom: 90px !important
    }

    .margin-bottom-xl-95 {
        margin-bottom: 95px !important
    }

    .margin-bottom-xl-100 {
        margin-bottom: 100px !important
    }
}

@media screen and (max-width:1199px) {
    .margin-bottom-lg-0 {
        margin-bottom: 0px !important
    }

    .margin-bottom-lg-5 {
        margin-bottom: 5px !important
    }

    .margin-bottom-lg-10 {
        margin-bottom: 10px !important
    }

    .margin-bottom-lg-15 {
        margin-bottom: 15px !important
    }

    .margin-bottom-lg-20 {
        margin-bottom: 20px !important
    }

    .margin-bottom-lg-25 {
        margin-bottom: 25px !important
    }

    .margin-bottom-lg-30 {
        margin-bottom: 30px !important
    }

    .margin-bottom-lg-35 {
        margin-bottom: 35px !important
    }

    .margin-bottom-lg-40 {
        margin-bottom: 40px !important
    }

    .margin-bottom-lg-45 {
        margin-bottom: 45px !important
    }

    .margin-bottom-lg-50 {
        margin-bottom: 50px !important
    }

    .margin-bottom-lg-55 {
        margin-bottom: 55px !important
    }

    .margin-bottom-lg-60 {
        margin-bottom: 60px !important
    }

    .margin-bottom-lg-65 {
        margin-bottom: 65px !important
    }

    .margin-bottom-lg-70 {
        margin-bottom: 70px !important
    }

    .margin-bottom-lg-75 {
        margin-bottom: 75px !important
    }

    .margin-bottom-lg-80 {
        margin-bottom: 80px !important
    }

    .margin-bottom-lg-85 {
        margin-bottom: 85px !important
    }

    .margin-bottom-lg-90 {
        margin-bottom: 90px !important
    }

    .margin-bottom-lg-95 {
        margin-bottom: 95px !important
    }

    .margin-bottom-lg-100 {
        margin-bottom: 100px !important
    }
}

@media screen and (max-width:991px) {
    .margin-bottom-md-0 {
        margin-bottom: 0px !important
    }

    .margin-bottom-md-5 {
        margin-bottom: 5px !important
    }

    .margin-bottom-md-10 {
        margin-bottom: 10px !important
    }

    .margin-bottom-md-15 {
        margin-bottom: 15px !important
    }

    .margin-bottom-md-20 {
        margin-bottom: 20px !important
    }

    .margin-bottom-md-25 {
        margin-bottom: 25px !important
    }

    .margin-bottom-md-30 {
        margin-bottom: 30px !important
    }

    .margin-bottom-md-35 {
        margin-bottom: 35px !important
    }

    .margin-bottom-md-40 {
        margin-bottom: 40px !important
    }

    .margin-bottom-md-45 {
        margin-bottom: 45px !important
    }

    .margin-bottom-md-50 {
        margin-bottom: 50px !important
    }

    .margin-bottom-md-55 {
        margin-bottom: 55px !important
    }

    .margin-bottom-md-60 {
        margin-bottom: 60px !important
    }

    .margin-bottom-md-65 {
        margin-bottom: 65px !important
    }

    .margin-bottom-md-70 {
        margin-bottom: 70px !important
    }

    .margin-bottom-md-75 {
        margin-bottom: 75px !important
    }

    .margin-bottom-md-80 {
        margin-bottom: 80px !important
    }

    .margin-bottom-md-85 {
        margin-bottom: 85px !important
    }

    .margin-bottom-md-90 {
        margin-bottom: 90px !important
    }

    .margin-bottom-md-95 {
        margin-bottom: 95px !important
    }

    .margin-bottom-md-100 {
        margin-bottom: 100px !important
    }
}

@media screen and (max-width:767px) {
    .margin-bottom-sm-0 {
        margin-bottom: 0px !important
    }

    .margin-bottom-sm-5 {
        margin-bottom: 5px !important
    }

    .margin-bottom-sm-10 {
        margin-bottom: 10px !important
    }

    .margin-bottom-sm-15 {
        margin-bottom: 15px !important
    }

    .margin-bottom-sm-20 {
        margin-bottom: 20px !important
    }

    .margin-bottom-sm-25 {
        margin-bottom: 25px !important
    }

    .margin-bottom-sm-30 {
        margin-bottom: 30px !important
    }

    .margin-bottom-sm-35 {
        margin-bottom: 35px !important
    }

    .margin-bottom-sm-40 {
        margin-bottom: 40px !important
    }

    .margin-bottom-sm-45 {
        margin-bottom: 45px !important
    }

    .margin-bottom-sm-50 {
        margin-bottom: 50px !important
    }

    .margin-bottom-sm-55 {
        margin-bottom: 55px !important
    }

    .margin-bottom-sm-60 {
        margin-bottom: 60px !important
    }

    .margin-bottom-sm-65 {
        margin-bottom: 65px !important
    }

    .margin-bottom-sm-70 {
        margin-bottom: 70px !important
    }

    .margin-bottom-sm-75 {
        margin-bottom: 75px !important
    }

    .margin-bottom-sm-80 {
        margin-bottom: 80px !important
    }

    .margin-bottom-sm-85 {
        margin-bottom: 85px !important
    }

    .margin-bottom-sm-90 {
        margin-bottom: 90px !important
    }

    .margin-bottom-sm-95 {
        margin-bottom: 95px !important
    }

    .margin-bottom-sm-100 {
        margin-bottom: 100px !important
    }
}

@media screen and (max-width:359px) {
    .margin-bottom-xs-0 {
        margin-bottom: 0px !important
    }

    .margin-bottom-xs-5 {
        margin-bottom: 5px !important
    }

    .margin-bottom-xs-10 {
        margin-bottom: 10px !important
    }

    .margin-bottom-xs-15 {
        margin-bottom: 15px !important
    }

    .margin-bottom-xs-20 {
        margin-bottom: 20px !important
    }

    .margin-bottom-xs-25 {
        margin-bottom: 25px !important
    }

    .margin-bottom-xs-30 {
        margin-bottom: 30px !important
    }

    .margin-bottom-xs-35 {
        margin-bottom: 35px !important
    }

    .margin-bottom-xs-40 {
        margin-bottom: 40px !important
    }

    .margin-bottom-xs-45 {
        margin-bottom: 45px !important
    }

    .margin-bottom-xs-50 {
        margin-bottom: 50px !important
    }

    .margin-bottom-xs-55 {
        margin-bottom: 55px !important
    }

    .margin-bottom-xs-60 {
        margin-bottom: 60px !important
    }

    .margin-bottom-xs-65 {
        margin-bottom: 65px !important
    }

    .margin-bottom-xs-70 {
        margin-bottom: 70px !important
    }

    .margin-bottom-xs-75 {
        margin-bottom: 75px !important
    }

    .margin-bottom-xs-80 {
        margin-bottom: 80px !important
    }

    .margin-bottom-xs-85 {
        margin-bottom: 85px !important
    }

    .margin-bottom-xs-90 {
        margin-bottom: 90px !important
    }

    .margin-bottom-xs-95 {
        margin-bottom: 95px !important
    }

    .margin-bottom-xs-100 {
        margin-bottom: 100px !important
    }
}

.margin-left-0 {
    margin-left: 0px !important
}

.margin-left-5 {
    margin-left: 5px !important
}

.margin-left-10 {
    margin-left: 10px !important
}

.margin-left-15 {
    margin-left: 15px !important
}

.margin-left-20 {
    margin-left: 20px !important
}

.margin-left-25 {
    margin-left: 25px !important
}

.margin-left-30 {
    margin-left: 30px !important
}

.margin-left-35 {
    margin-left: 35px !important
}

.margin-left-40 {
    margin-left: 40px !important
}

.margin-left-45 {
    margin-left: 45px !important
}

.margin-left-50 {
    margin-left: 50px !important
}

.margin-left-55 {
    margin-left: 55px !important
}

.margin-left-60 {
    margin-left: 60px !important
}

.margin-left-65 {
    margin-left: 65px !important
}

.margin-left-70 {
    margin-left: 70px !important
}

.margin-left-75 {
    margin-left: 75px !important
}

.margin-left-80 {
    margin-left: 80px !important
}

.margin-left-85 {
    margin-left: 85px !important
}

.margin-left-90 {
    margin-left: 90px !important
}

.margin-left-95 {
    margin-left: 95px !important
}

.margin-left-100 {
    margin-left: 100px !important
}

@media screen and (max-width:1599px) {
    .margin-left-xxl-0 {
        margin-left: 0px !important
    }

    .margin-left-xxl-5 {
        margin-left: 5px !important
    }

    .margin-left-xxl-10 {
        margin-left: 10px !important
    }

    .margin-left-xxl-15 {
        margin-left: 15px !important
    }

    .margin-left-xxl-20 {
        margin-left: 20px !important
    }

    .margin-left-xxl-25 {
        margin-left: 25px !important
    }

    .margin-left-xxl-30 {
        margin-left: 30px !important
    }

    .margin-left-xxl-35 {
        margin-left: 35px !important
    }

    .margin-left-xxl-40 {
        margin-left: 40px !important
    }

    .margin-left-xxl-45 {
        margin-left: 45px !important
    }

    .margin-left-xxl-50 {
        margin-left: 50px !important
    }

    .margin-left-xxl-55 {
        margin-left: 55px !important
    }

    .margin-left-xxl-60 {
        margin-left: 60px !important
    }

    .margin-left-xxl-65 {
        margin-left: 65px !important
    }

    .margin-left-xxl-70 {
        margin-left: 70px !important
    }

    .margin-left-xxl-75 {
        margin-left: 75px !important
    }

    .margin-left-xxl-80 {
        margin-left: 80px !important
    }

    .margin-left-xxl-85 {
        margin-left: 85px !important
    }

    .margin-left-xxl-90 {
        margin-left: 90px !important
    }

    .margin-left-xxl-95 {
        margin-left: 95px !important
    }

    .margin-left-xxl-100 {
        margin-left: 100px !important
    }
}

@media screen and (max-width:1399px) {
    .margin-left-xl-0 {
        margin-left: 0px !important
    }

    .margin-left-xl-5 {
        margin-left: 5px !important
    }

    .margin-left-xl-10 {
        margin-left: 10px !important
    }

    .margin-left-xl-15 {
        margin-left: 15px !important
    }

    .margin-left-xl-20 {
        margin-left: 20px !important
    }

    .margin-left-xl-25 {
        margin-left: 25px !important
    }

    .margin-left-xl-30 {
        margin-left: 30px !important
    }

    .margin-left-xl-35 {
        margin-left: 35px !important
    }

    .margin-left-xl-40 {
        margin-left: 40px !important
    }

    .margin-left-xl-45 {
        margin-left: 45px !important
    }

    .margin-left-xl-50 {
        margin-left: 50px !important
    }

    .margin-left-xl-55 {
        margin-left: 55px !important
    }

    .margin-left-xl-60 {
        margin-left: 60px !important
    }

    .margin-left-xl-65 {
        margin-left: 65px !important
    }

    .margin-left-xl-70 {
        margin-left: 70px !important
    }

    .margin-left-xl-75 {
        margin-left: 75px !important
    }

    .margin-left-xl-80 {
        margin-left: 80px !important
    }

    .margin-left-xl-85 {
        margin-left: 85px !important
    }

    .margin-left-xl-90 {
        margin-left: 90px !important
    }

    .margin-left-xl-95 {
        margin-left: 95px !important
    }

    .margin-left-xl-100 {
        margin-left: 100px !important
    }
}

@media screen and (max-width:1199px) {
    .margin-left-lg-0 {
        margin-left: 0px !important
    }

    .margin-left-lg-5 {
        margin-left: 5px !important
    }

    .margin-left-lg-10 {
        margin-left: 10px !important
    }

    .margin-left-lg-15 {
        margin-left: 15px !important
    }

    .margin-left-lg-20 {
        margin-left: 20px !important
    }

    .margin-left-lg-25 {
        margin-left: 25px !important
    }

    .margin-left-lg-30 {
        margin-left: 30px !important
    }

    .margin-left-lg-35 {
        margin-left: 35px !important
    }

    .margin-left-lg-40 {
        margin-left: 40px !important
    }

    .margin-left-lg-45 {
        margin-left: 45px !important
    }

    .margin-left-lg-50 {
        margin-left: 50px !important
    }

    .margin-left-lg-55 {
        margin-left: 55px !important
    }

    .margin-left-lg-60 {
        margin-left: 60px !important
    }

    .margin-left-lg-65 {
        margin-left: 65px !important
    }

    .margin-left-lg-70 {
        margin-left: 70px !important
    }

    .margin-left-lg-75 {
        margin-left: 75px !important
    }

    .margin-left-lg-80 {
        margin-left: 80px !important
    }

    .margin-left-lg-85 {
        margin-left: 85px !important
    }

    .margin-left-lg-90 {
        margin-left: 90px !important
    }

    .margin-left-lg-95 {
        margin-left: 95px !important
    }

    .margin-left-lg-100 {
        margin-left: 100px !important
    }
}

@media screen and (max-width:991px) {
    .margin-left-md-0 {
        margin-left: 0px !important
    }

    .margin-left-md-5 {
        margin-left: 5px !important
    }

    .margin-left-md-10 {
        margin-left: 10px !important
    }

    .margin-left-md-15 {
        margin-left: 15px !important
    }

    .margin-left-md-20 {
        margin-left: 20px !important
    }

    .margin-left-md-25 {
        margin-left: 25px !important
    }

    .margin-left-md-30 {
        margin-left: 30px !important
    }

    .margin-left-md-35 {
        margin-left: 35px !important
    }

    .margin-left-md-40 {
        margin-left: 40px !important
    }

    .margin-left-md-45 {
        margin-left: 45px !important
    }

    .margin-left-md-50 {
        margin-left: 50px !important
    }

    .margin-left-md-55 {
        margin-left: 55px !important
    }

    .margin-left-md-60 {
        margin-left: 60px !important
    }

    .margin-left-md-65 {
        margin-left: 65px !important
    }

    .margin-left-md-70 {
        margin-left: 70px !important
    }

    .margin-left-md-75 {
        margin-left: 75px !important
    }

    .margin-left-md-80 {
        margin-left: 80px !important
    }

    .margin-left-md-85 {
        margin-left: 85px !important
    }

    .margin-left-md-90 {
        margin-left: 90px !important
    }

    .margin-left-md-95 {
        margin-left: 95px !important
    }

    .margin-left-md-100 {
        margin-left: 100px !important
    }
}

@media screen and (max-width:767px) {
    .margin-left-sm-0 {
        margin-left: 0px !important
    }

    .margin-left-sm-5 {
        margin-left: 5px !important
    }

    .margin-left-sm-10 {
        margin-left: 10px !important
    }

    .margin-left-sm-15 {
        margin-left: 15px !important
    }

    .margin-left-sm-20 {
        margin-left: 20px !important
    }

    .margin-left-sm-25 {
        margin-left: 25px !important
    }

    .margin-left-sm-30 {
        margin-left: 30px !important
    }

    .margin-left-sm-35 {
        margin-left: 35px !important
    }

    .margin-left-sm-40 {
        margin-left: 40px !important
    }

    .margin-left-sm-45 {
        margin-left: 45px !important
    }

    .margin-left-sm-50 {
        margin-left: 50px !important
    }

    .margin-left-sm-55 {
        margin-left: 55px !important
    }

    .margin-left-sm-60 {
        margin-left: 60px !important
    }

    .margin-left-sm-65 {
        margin-left: 65px !important
    }

    .margin-left-sm-70 {
        margin-left: 70px !important
    }

    .margin-left-sm-75 {
        margin-left: 75px !important
    }

    .margin-left-sm-80 {
        margin-left: 80px !important
    }

    .margin-left-sm-85 {
        margin-left: 85px !important
    }

    .margin-left-sm-90 {
        margin-left: 90px !important
    }

    .margin-left-sm-95 {
        margin-left: 95px !important
    }

    .margin-left-sm-100 {
        margin-left: 100px !important
    }
}

@media screen and (max-width:359px) {
    .margin-left-xs-0 {
        margin-left: 0px !important
    }

    .margin-left-xs-5 {
        margin-left: 5px !important
    }

    .margin-left-xs-10 {
        margin-left: 10px !important
    }

    .margin-left-xs-15 {
        margin-left: 15px !important
    }

    .margin-left-xs-20 {
        margin-left: 20px !important
    }

    .margin-left-xs-25 {
        margin-left: 25px !important
    }

    .margin-left-xs-30 {
        margin-left: 30px !important
    }

    .margin-left-xs-35 {
        margin-left: 35px !important
    }

    .margin-left-xs-40 {
        margin-left: 40px !important
    }

    .margin-left-xs-45 {
        margin-left: 45px !important
    }

    .margin-left-xs-50 {
        margin-left: 50px !important
    }

    .margin-left-xs-55 {
        margin-left: 55px !important
    }

    .margin-left-xs-60 {
        margin-left: 60px !important
    }

    .margin-left-xs-65 {
        margin-left: 65px !important
    }

    .margin-left-xs-70 {
        margin-left: 70px !important
    }

    .margin-left-xs-75 {
        margin-left: 75px !important
    }

    .margin-left-xs-80 {
        margin-left: 80px !important
    }

    .margin-left-xs-85 {
        margin-left: 85px !important
    }

    .margin-left-xs-90 {
        margin-left: 90px !important
    }

    .margin-left-xs-95 {
        margin-left: 95px !important
    }

    .margin-left-xs-100 {
        margin-left: 100px !important
    }
}

.formArea {
    font-size: 0px;
    margin: 0px -10px
}

.formArea-item {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 10px;
    color: #4d3838;
    font-size: 18px
}

.formArea-item-tit {
    padding-bottom: 5px;
    font-size: 20px
}

.formArea-item.full {
    width: 100%
}

.formArea-item.agree {
    position: relative
}

.formArea-item.agree a {
    color: #243e72
}

.formArea-item.error {
    color: #f00
}

.formArea-item.error .checkbox .fake,
.formArea-item.error input,
.formArea-item.error select {
    -webkit-box-shadow: 0px 0px 0px 1px #f00 inset;
    box-shadow: 0px 0px 0px 1px #f00 inset
}

.formArea .btnArea {
    margin-bottom: 0px;
    padding: 0px 10px
}

@media screen and (max-width:767px) {
    .formArea-item {
        width: 100%
    }

    .formArea-item-tit {
        font-size: 16px
    }
}

.fade-enter-active,
.fade-leave-active {
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s
}

.fade-enter,
.fade-leave-to {
    opacity: 0;
    -webkit-transition: opacity 0s;
    transition: opacity 0s
}

.shareLink {
    position: sticky;
    z-index: 1;
    top: 70px;
    left: 0px
}

.shareLink-list {
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 30px;
    left: 50px;
    text-align: center;
    font-size: 16px;
    text-shadow: 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff
}

.shareLink-list li {
    padding-bottom: 15px
}

.shareLink-list li a {
    color: #333;
    position: relative;
    display: block
}

.shareLink-list li a:before {
    content: attr(title);
    position: absolute;
    left: calc(100% + 10px);
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    background: #333;
    border-radius: 5px;
    padding: 0 5px;
    font-size: 12px;
    white-space: nowrap;
    display: none;
    text-shadow: none
}

.shareLink-list li a:hover {
    color: #05367b
}

.shareLink-list li a:hover:before {
    display: block
}

.shareLink-list li .material-symbols-outlined {
    font-size: 24px
}

.shareLink-list li svg {
    width: 25px;
    -webkit-filter: drop-shadow(1px 1px 2px #fff);
    filter: drop-shadow(1px 1px 2px #fff)
}

.shareLink-list li svg.lineIconSvg {
    margin-top: 2px
}

@media screen and (max-width:1399px) {
    .shareLink-list {
        left: 20px
    }
}

@media screen and (max-width:991px) {
    .shareLink {
        padding: 30px 25px 0;
        position: relative;
        top: auto
    }

    .shareLink-list {
        position: relative;
        left: auto;
        top: auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .shareLink-list li {
        padding: 0;
        padding-right: 20px
    }

    .shareLink-list li a:before {
        display: none !important
    }
}

@media screen and (max-width:767px) {
    .shareLink {
        padding: 0 10px
    }
}

/* KV Banner — web / pad / mb RWD
   People asset is landscape (subject on left). Prefer width control
   so pad/mb don't overscale and cover face / phone. */
.banner {
    --kv-btn-height: 48px;
    --kv-btn-gap: 140px;
    --kv-bottom-space: calc(var(--kv-btn-height) + var(--kv-btn-gap) + 16px);
    --kv-title-max: min(640px, 72%);
    --kv-title-top: 30%;
    --kv-min-h: clamp(560px, 56vw, 800px);
    --kv-people-w: min(54%, 780px);
    --kv-people-max-h: 96%;
    --kv-people-left: 0;
    --kv-people-bottom: 0;
    --kv-phone-h: clamp(340px, 62%, 560px);
    --kv-phone-max-w: 38%;
    --kv-phone-right: clamp(0px, 1.2vw, 24px);
    --kv-phone-bottom: 0;

    background-color: #FAF8F7;
    background-image: url('../images/img_kv_bg_web.jpg');
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
    position: relative;
    box-sizing: border-box;
    min-height: var(--kv-min-h);
    padding: 24px 16px var(--kv-bottom-space);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.banner .kv-people,
.banner .kv-phone {
    position: absolute;
    display: block;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
}

.banner .kv-people {
    left: var(--kv-people-left);
    bottom: var(--kv-people-bottom);
    width: var(--kv-people-w);
    height: auto;
    max-height: var(--kv-people-max-h);
    z-index: 1;
    object-fit: contain;
    object-position: left bottom;
}

.banner .kv-phone {
    right: var(--kv-phone-right);
    bottom: var(--kv-phone-bottom);
    height: var(--kv-phone-h);
    width: auto;
    max-width: var(--kv-phone-max-w);
    z-index: 2;
    object-fit: contain;
    object-position: right bottom;
}

/* Desktop: pin phone flush to KV bottom */
@media screen and (min-width: 992px) {
    .banner {
        --kv-phone-bottom: 0;
    }

    .banner .kv-phone {
        top: auto;
        bottom: 0;
        margin: 0;
        transform: none;
    }
}

.banner .container {
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
    z-index: 3;
    width: 100%;
    max-width: 1200px;
    margin: 0;
    transform: translateX(-50%);
    box-sizing: border-box;
    pointer-events: none;
}

.banner .container .title-img {
    position: absolute;
    left: 50%;
    top: var(--kv-title-top);
    display: block;
    width: var(--kv-title-max);
    max-width: 100%;
    height: auto;
    transform: translate(-50%, -50%);
    pointer-events: auto;
}

/* Narrow desktop (~992–1280): keep title inside banner (avoid top crop) */
@media screen and (min-width: 992px) and (max-width: 1280px) {
    .banner {
        --kv-title-max: min(500px, 54%);
        --kv-title-top: 36%;
        --kv-min-h: clamp(620px, 64vw, 760px);
    }
}

/*
 * Desktop 1280+:
 * - Keep center transform (title-top = vertical center %)
 * - Shrink size ≤10% + taller KV so top edge stays inside overflow:hidden
 * NOTE: title rules must stay AFTER base .title-img so they can override.
 */
@media screen and (min-width: 1281px) {
    .banner {
        /* +10% from previous 576 */
        --kv-title-max: min(634px, 64%);
        --kv-title-top: 38%;
        --kv-min-h: clamp(720px, 56vw, 860px);
        --kv-people-w: min(52%, 820px);
        --kv-phone-h: clamp(380px, 64%, 600px);
        --kv-phone-max-w: 36%;
        --kv-btn-gap: 150px;
    }
}

.banner .kv-btn-wrap {
    position: absolute;
    bottom: var(--kv-btn-gap);
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    z-index: 10;
}

.banner .kv-btn-wrap .kv-btn {
    color: #ffffff;
    box-sizing: border-box;
    min-height: var(--kv-btn-height);
    padding: 14px 48px;
    border: 3px solid transparent;
    border-radius: 50px;
    background-color: #FF8800;
    background-image:
        linear-gradient(180deg, #FFB650 0%, #FF8800 50%, #E94E0B 100%),
        linear-gradient(90deg, #FFBF72 0%, #FFE7B5 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
    font-size: 1.65rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 3px;
    width: auto;
    max-width: calc(100vw - 32px);
    -webkit-animation: shake 1.5s ease-in-out infinite;
    animation: shake 1.5s ease-in-out infinite;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    text-align: center;
    transform-origin: center center;
    transition: filter 0.3s ease, background-image 0.3s ease;
    box-shadow: 0 2px 18px rgba(64, 39, 26, 0.32);
}

.banner .kv-btn-wrap .kv-btn img {
    display: block;
    margin: 0 6px;
    flex-shrink: 0;
    width: auto;
    height: 16px;
}

.banner .kv-btn-wrap .kv-btn:hover {
    background-image:
        linear-gradient(180deg, #FFA83C 0%, #F07A00 50%, #D44309 100%),
        linear-gradient(90deg, #FFBF72 0%, #FFE7B5 100%);
    filter: brightness(1.05);
}

.banner .kv-btn-wrap .kv-btn:active {
    background-image:
        linear-gradient(180deg, #F5A040 0%, #E07000 50%, #C43D08 100%),
        linear-gradient(90deg, #FFBF72 0%, #FFE7B5 100%);
    filter: brightness(0.95);
}

/* web — large desktop */
@media screen and (min-width: 1440px) {
    .banner {
        --kv-min-h: clamp(760px, 52vw, 900px);
        /* +10% from previous 648 */
        --kv-title-max: min(713px, 57%);
        --kv-title-top: 38%;
        --kv-people-w: min(52%, 860px);
        --kv-phone-h: clamp(400px, 66%, 620px);
        --kv-phone-max-w: 36%;
        --kv-phone-right: clamp(12px, 2vw, 40px);
        --kv-phone-bottom: 0;
        --kv-btn-gap: 160px;
    }
}

@media screen and (min-width: 1680px) {
    .banner {
        --kv-min-h: clamp(800px, 50vw, 920px);
        --kv-title-max: min(713px, 53%);
        --kv-title-top: 36%;
        --kv-people-w: min(50%, 900px);
        --kv-phone-h: clamp(440px, 68%, 660px);
        --kv-btn-gap: 170px;
    }
}

/* Ultra-wide: stop people/phone from drifting further to the edges */
@media screen and (min-width: 1920px) {
    .banner {
        --kv-stage: 1920px;
        /* Keep side assets within a centered 1920 stage */
        --kv-people-left: max(0px, calc((100% - var(--kv-stage)) / 2));
        --kv-phone-right: max(24px, calc((100% - var(--kv-stage)) / 2 + 24px));
        --kv-people-w: min(900px, 48%);
        --kv-phone-h: clamp(460px, 68%, 680px);
        --kv-phone-max-w: 34%;
    }
}

/* pad / mb — stack title → phone → CTA (no absolute overlap) */
@media screen and (max-width: 991px) {
    .banner {
        --kv-title-max: min(620px, 90%);
        --kv-phone-max-w: min(480px, 62%);
        --kv-btn-height: 56px;
        min-height: 0;
        height: auto;
        padding: 20px 16px 28px;
        gap: 4px;
        justify-content: flex-start;
        background-position: center center;
    }

    .banner .kv-people {
        display: none;
    }

    .banner .container {
        position: relative;
        top: auto;
        left: auto;
        bottom: auto;
        transform: none;
        width: 100%;
        max-width: 720px;
        order: 1;
        z-index: 3;
    }

    .banner .container .title-img {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        width: var(--kv-title-max);
        max-width: 100%;
        margin: 0 auto;
        display: block;
    }

    .banner .kv-phone {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        transform: none;
        order: 2;
        z-index: 2;
        width: var(--kv-phone-max-w);
        height: auto;
        max-width: var(--kv-phone-max-w);
        max-height: min(460px, 54vh);
        margin: -8px auto 0;
        object-fit: contain;
        object-position: center center;
    }

    .banner .kv-btn-wrap {
        position: relative;
        bottom: auto;
        left: auto;
        right: auto;
        order: 3;
        z-index: 10;
        margin-top: 2px;
        width: 100%;
    }

    .banner .kv-btn-wrap .kv-btn {
        font-size: 1.5rem;
        letter-spacing: 3px;
        min-height: var(--kv-btn-height);
        padding: 16px 56px;
    }

    .banner .kv-btn-wrap .kv-btn img {
        height: 18px;
        margin: 0 8px;
    }
}

@media screen and (max-width: 767px) {
    .banner {
        --kv-title-max: min(480px, 94%);
        --kv-phone-max-w: min(360px, 78%);
        --kv-btn-height: 54px;
        padding: 16px 12px 24px;
        gap: 2px;
        background-image: url('../images/img_kv_bg_mb.jpg');
        background-position: center center;
    }

    .banner .kv-phone {
        max-height: min(380px, 50vh);
        margin-top: -6px;
    }

    .banner .kv-btn-wrap .kv-btn {
        font-size: 1.3rem;
        letter-spacing: 2px;
        padding: 14px 44px;
    }

    .banner .kv-btn-wrap .kv-btn img {
        margin: 0 6px;
        height: 16px;
        width: auto;
    }
}

@media screen and (max-width: 480px) {
    .banner {
        --kv-title-max: min(400px, 96%);
        --kv-phone-max-w: min(320px, 84%);
        --kv-btn-height: 50px;
        padding: 14px 10px 20px;
        gap: 0;
    }

    .banner .kv-phone {
        max-height: min(320px, 48vh);
        margin-top: -4px;
    }

    .banner .kv-btn-wrap .kv-btn {
        font-size: 1.15rem;
        letter-spacing: 1.5px;
        padding: 12px 36px;
    }
}

@media screen and (max-width: 375px) {
    .banner {
        --kv-title-max: min(360px, 96%);
        --kv-phone-max-w: min(300px, 86%);
        --kv-btn-height: 48px;
        padding: 12px 10px 18px;
        gap: 0;
    }

    .banner .kv-phone {
        max-height: min(280px, 46vh);
        margin-top: -2px;
    }

    .banner .kv-btn-wrap .kv-btn {
        font-size: 1.05rem;
        letter-spacing: 1px;
        padding: 12px 32px;
    }

    .banner .kv-btn-wrap .kv-btn img {
        margin: 0 5px;
        height: 14px;
    }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
    .banner {
        --kv-title-max: min(320px, 40%);
        --kv-phone-max-w: min(220px, 32%);
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        padding: 12px 16px 16px;
        gap: 6px 16px;
        min-height: 260px;
    }

    .banner .container {
        flex: 1 1 42%;
        order: 1;
    }

    .banner .kv-phone {
        flex: 0 0 auto;
        order: 2;
        max-height: 200px;
        margin-top: 0;
    }

    .banner .kv-btn-wrap {
        flex: 1 1 100%;
        order: 3;
        margin-top: 0;
    }
}

@media (hover: none) and (pointer: coarse) {
    .banner .kv-btn-wrap .kv-btn:hover {
        transform: none;
        filter: none;
        background-image:
            linear-gradient(180deg, #FFB650 0%, #FF8800 50%, #E94E0B 100%),
            linear-gradient(90deg, #FFBF72 0%, #FFE7B5 100%);
    }

    .banner .kv-btn-wrap .kv-btn:active {
        transform: none;
        filter: brightness(0.95);
        background-image:
            linear-gradient(180deg, #F5A040 0%, #E07000 50%, #C43D08 100%),
            linear-gradient(90deg, #FFBF72 0%, #FFE7B5 100%);
    }
}

@-webkit-keyframes threehundred {
    0% {
        -webkit-transform: translateY(400px) scale(0.8);
        transform: translateY(400px) scale(0.8);
        opacity: 0
    }

    to {
        -webkit-transform: translateY(0) scale(0.8);
        transform: translateY(0) scale(0.8);
        opacity: 1
    }
}

@keyframes threehundred {
    0% {
        -webkit-transform: translateY(400px) scale(0.8);
        transform: translateY(400px) scale(0.8);
        opacity: 0
    }

    to {
        -webkit-transform: translateY(0) scale(0.8);
        transform: translateY(0) scale(0.8);
        opacity: 1
    }
}

@-webkit-keyframes threehundred_sm {
    0% {
        -webkit-transform: translateY(400px) scale(1);
        transform: translateY(400px) scale(1);
        opacity: 0
    }

    to {
        -webkit-transform: translateY(0px) scale(1);
        transform: translateY(0px) scale(1);
        opacity: 1
    }
}

@keyframes threehundred_sm {
    0% {
        -webkit-transform: translateY(400px) scale(1);
        transform: translateY(400px) scale(1);
        opacity: 0
    }

    to {
        -webkit-transform: translateY(0px) scale(1);
        transform: translateY(0px) scale(1);
        opacity: 1
    }
}

@-webkit-keyframes floatY {
    0% {
        -webkit-transform: translateY(-80px) scale(0.8);
        transform: translateY(-80px) scale(0.8)
    }

    50% {
        -webkit-transform: translateY(-40px) scale(0.8);
        transform: translateY(-40px) scale(0.8)
    }

    to {
        -webkit-transform: translateY(-80px) scale(0.8);
        transform: translateY(-80px) scale(0.8)
    }
}

@keyframes floatY {
    0% {
        -webkit-transform: translateY(-80px) scale(0.8);
        transform: translateY(-80px) scale(0.8)
    }

    50% {
        -webkit-transform: translateY(-40px) scale(0.8);
        transform: translateY(-40px) scale(0.8)
    }

    to {
        -webkit-transform: translateY(-80px) scale(0.8);
        transform: translateY(-80px) scale(0.8)
    }
}

@-webkit-keyframes floatY_sm {
    0% {
        -webkit-transform: translateY(0px) scale(1);
        transform: translateY(0px) scale(1)
    }

    50% {
        -webkit-transform: translateY(30px) scale(1);
        transform: translateY(30px) scale(1)
    }

    to {
        -webkit-transform: translateY(0px) scale(1);
        transform: translateY(0px) scale(1)
    }
}

@keyframes floatY_sm {
    0% {
        -webkit-transform: translateY(0px) scale(1);
        transform: translateY(0px) scale(1)
    }

    50% {
        -webkit-transform: translateY(30px) scale(1);
        transform: translateY(30px) scale(1)
    }

    to {
        -webkit-transform: translateY(0px) scale(1);
        transform: translateY(0px) scale(1)
    }
}

@-webkit-keyframes shake {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    8% {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }

    16% {
        -webkit-transform: rotate(2deg);
        transform: rotate(2deg)
    }

    24% {
        -webkit-transform: rotate(-1.5deg);
        transform: rotate(-1.5deg)
    }

    33% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    41% {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }

    50% {
        -webkit-transform: rotate(2deg);
        transform: rotate(2deg)
    }

    58% {
        -webkit-transform: rotate(-1.5deg);
        transform: rotate(-1.5deg)
    }

    66% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@keyframes shake {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    8% {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }

    16% {
        -webkit-transform: rotate(2deg);
        transform: rotate(2deg)
    }

    24% {
        -webkit-transform: rotate(-1.5deg);
        transform: rotate(-1.5deg)
    }

    33% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    41% {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }

    50% {
        -webkit-transform: rotate(2deg);
        transform: rotate(2deg)
    }

    58% {
        -webkit-transform: rotate(-1.5deg);
        transform: rotate(-1.5deg)
    }

    66% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@-webkit-keyframes flyOut {
    0% {
        -webkit-transform: translate(0, 0) scale(0) rotateZ(0deg);
        transform: translate(0, 0) scale(0) rotateZ(0deg);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(360deg);
        transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(360deg);
        opacity: 1
    }
}

@keyframes flyOut {
    0% {
        -webkit-transform: translate(0, 0) scale(0) rotateZ(0deg);
        transform: translate(0, 0) scale(0) rotateZ(0deg);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(360deg);
        transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(360deg);
        opacity: 1
    }
}

@-webkit-keyframes flyOut02 {
    0% {
        -webkit-transform: translate(0, 0) scale(0) rotateZ(0deg);
        transform: translate(0, 0) scale(0) rotateZ(0deg);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.3) rotateZ(-330deg);
        transform: translate(var(--tx), var(--ty)) scale(0.3) rotateZ(-330deg);
        opacity: 1
    }
}

@keyframes flyOut02 {
    0% {
        -webkit-transform: translate(0, 0) scale(0) rotateZ(0deg);
        transform: translate(0, 0) scale(0) rotateZ(0deg);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.3) rotateZ(-330deg);
        transform: translate(var(--tx), var(--ty)) scale(0.3) rotateZ(-330deg);
        opacity: 1
    }
}

@-webkit-keyframes flyOut03 {
    0% {
        -webkit-transform: translate(0, 0) scale(0) rotateZ(0deg);
        transform: translate(0, 0) scale(0) rotateZ(0deg);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg);
        transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg);
        opacity: 1
    }
}

@keyframes flyOut03 {
    0% {
        -webkit-transform: translate(0, 0) scale(0) rotateZ(0deg);
        transform: translate(0, 0) scale(0) rotateZ(0deg);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg);
        transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg);
        opacity: 1
    }
}

@-webkit-keyframes flyOut04 {
    0% {
        -webkit-transform: translate(200px, 200px) scale(0) rotateZ(0deg) scaleX(-1);
        transform: translate(200px, 200px) scale(0) rotateZ(0deg) scaleX(-1);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg) scaleX(-1);
        transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg) scaleX(-1);
        opacity: 1
    }
}

@keyframes flyOut04 {
    0% {
        -webkit-transform: translate(200px, 200px) scale(0) rotateZ(0deg) scaleX(-1);
        transform: translate(200px, 200px) scale(0) rotateZ(0deg) scaleX(-1);
        opacity: 1
    }

    to {
        -webkit-transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg) scaleX(-1);
        transform: translate(var(--tx), var(--ty)) scale(0.5) rotateZ(0deg) scaleX(-1);
        opacity: 1
    }
}



@-webkit-keyframes rotate {
    0% {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg)
    }

    to {
        -webkit-transform: translate(-50%, -50%) rotate(360deg);
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

@keyframes rotate {
    0% {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg)
    }

    to {
        -webkit-transform: translate(-50%, -50%) rotate(360deg);
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

.promo {
    background: #ddf2c2;
    padding: 60px 0
}

.promo-box {
    width: 90%;
    max-width: 1100px;
    margin: auto;
    background: url("../images/promo_bg.png") center/100% auto no-repeat;
    padding: 60px 40px;
    text-align: center
}

.promo-box .title {
    font-size: 2.25rem;
    font-weight: 700;
    background-color: #006123;
    color: #ffffff;
    display: inline-block;
    padding: 8px 80px;
    border-radius: 50px
}

.promo-box .title .title-br {
    display: none;
}

.promo-box .desc {
    max-width: 900px;
    margin: auto;
    color: #36463c;
    padding-left: 12px;
    padding-right: 12px;
    text-align: left;
}

.promo-box .features {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.promo-box .features .item {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border-right: 1px solid #05367b;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    margin: 20px 0;
    padding: 0
}

.promo-box .features .item:nth-child(3) {
    border-right: none
}

.promo-box .features .tag {
    position: absolute;
    left: 20px;
    top: -40px;
    width: 80px;
    display: none
}

.promo-box .features .item-tit {
    background: #3AA05F;
    color: #fff;
    border-radius: 50px;
    margin-bottom: 20px;
    font-size: 1.75rem;
    padding: 8px 40px;
    margin: 0
}

.promo-box .features .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.promo-box .features .highlight {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    background: linear-gradient(180deg, #EF8627 0%, #E74922 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: #E74922;
}

.promo-box .features .highlight.red {
    color: #667c31
}

.promo-box .features .bottom {
    margin-top: 12px;
    font-size: 1.25rem;
    color: #4a4a4a
}

.promo-box .features .link {
    text-decoration: underline;
    margin: 15px 0px
}

.promo-box .features a:hover {
    color: #667c31
}

@media screen and (max-width:991px) {
    .promo-box .title .title-br {
        display: block;
    }
}

@media screen and (max-width:1199px) {
    .promo {
        padding: 0
    }

    .promo-box {
        background: url(../images/promo_bg.png) center bottom/98% 90% no-repeat;
        padding: 0px 40px
    }
}

@media screen and (max-width:767px) {
    .promo {
        padding: 40px 0
    }

    .promo-box {
        background: url(../images/promo_bg_mobile.png) center/100% 100% no-repeat;
        background-color: #ddf2c2;
        padding: 40px 0px;
        height: auto
    }

    .promo-box .title {
        padding: 4px 48px;
        margin: 28px 8px;
        font-size: 24px
    }

    .promo-box .desc {
        font-size: 1rem;
        line-height: 1.5;
        margin-bottom: 20px;
        text-align: left;
        padding: 0 40px 20px 40px
    }

    .item.login .desc {
        font-size: 1rem;
        line-height: 1.5;
        margin-bottom: 20px;
        text-align: center;
        padding: 0 40px 2px 40px
    }

    .promo-box .features {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .promo-box .features .item {
        border-right: none;
        border-bottom: 1px solid #05367b
    }

    .promo-box .features .item:last-child {
        border-bottom: none
    }

    .promo-box .features .item-tit {
        font-size: 25px
    }
}

input[type=text] {
    padding: 8px 24px;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 58px;
    height: 50px;
    margin: 10px
}

input[type=checkbox] {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    margin-right: 8px
}

.content-purple {
    font-weight: 200;
    color: #4a4a4a
}

.content-purple a {
    color: #2462b3
}

.item-login-input {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.item.login {
    background-color: #fff1eb;
    background-image: url(../images/kv_down_bg.png?=v20251120);
    background-size: 90%;
    background-position: left bottom;
    background-repeat: no-repeat;
    position: relative;
    overflow: hidden;
}

.item.login .login-hotdog,
.item.login .login-milk {
    position: absolute;
    top: clamp(24px, 4vw, 48px);
    width: clamp(57px, 8.25vw, 97px);
    height: auto;
    z-index: 1;
    pointer-events: none;
    user-select: none;
    -webkit-animation: loginDecorFloat 2.4s ease-in-out infinite;
    animation: loginDecorFloat 2.4s ease-in-out infinite;
}

.item.login .login-hotdog {
    left: calc(50% - min(420px, 48vw));
}

.item.login .login-milk {
    right: calc(50% - min(420px, 48vw));
    left: auto;
}

@media screen and (max-width: 992px) {
    .item.login .login-hotdog {
        top: clamp(48px, 7vw, 80px);
        width: clamp(60px, 8.75vw, 103px);
    }
}

@-webkit-keyframes loginDecorFloat {

    0%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
}

@keyframes loginDecorFloat {

    0%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    50% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
}

.item.login .login-icon {
    width: 150px
}

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

    .item.login .login-hotdog,
    .item.login .login-milk {
        width: 53px;
        top: 16px;
    }

    .item.login .login-hotdog {
        left: calc(50% - 46vw);
        top: 36px;
        width: 56px;
    }

    .item.login .login-milk {
        right: calc(50% - 46vw);
        left: auto;
    }
}

.item.login .desc {
    max-width: 900px;
    margin: auto;
    color: #4a4a4a;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .btnArea.twoBtn-login {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .btnArea.twoBtn-login .btn {
        width: 68%;
        max-width: 68%;
        padding-left: 0;
        padding-right: 0;
    }

    .btnArea.twoBtn-login .btn a {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* ===== Teaching / appPromo slick ===== */
.item.teaching .slick-slider,
.item.appPromo .slick-slider {
    padding: 0 44px 30px;
}

.item.teaching .slick-arrow,
.item.appPromo .slick-arrow {
    top: 45%;
    transform: translateY(-50%);
    background: #39955a;
    color: #ffffff;
}

.item.teaching .slick-arrow:hover,
.item.appPromo .slick-arrow:hover {
    background: #006123;
    color: #ffffff;
}

.item.teaching .slick-prev,
.item.appPromo .slick-prev {
    left: 0;
}

.item.teaching .slick-next,
.item.appPromo .slick-next {
    right: 0;
}

.item.teaching .tab {
    position: relative;
    z-index: 3;
    display: block;
    top: 0;
    margin-bottom: 0;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    /* Room for bounce animation (overflow-x also clips Y) */
    padding-top: 12px;
    margin-top: -4px;
}

.item.teaching .tab::-webkit-scrollbar {
    display: none;
}

.item.teaching .tab ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    justify-content: center;
    align-items: stretch;
    transition: 0.3s;
    width: max-content;
    min-width: 100%;
    box-sizing: border-box;
}

.item.teaching .tab ul li {
    border: solid 2px #d4d4d4;
    color: #555555;
    border-radius: 60px;
    padding: 4px 24px;
    white-space: nowrap;
    flex: 0 0 auto;
    font-size: 24px;
    cursor: pointer;
    text-align: center;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    transition: 0.3s;
    position: relative;
}

.item.teaching .tab ul li.active {
    background: #ED6B1B;
    border: solid 2px #ED6B1B;
    color: #fff;
    transform: translateY(-3px);
    animation: bounceTwicePause 3s ease-in-out infinite;
}

/* appPromo primary tabs (match teaching pill style) */
.item.appPromo .tab--primary {
    position: relative;
    z-index: 3;
    display: block;
    top: 0;
    margin-bottom: 0;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    /* Room for bounce animation (overflow-x also clips Y) */
    padding-top: 12px;
    margin-top: -4px;
}

.item.appPromo .tab--primary::-webkit-scrollbar {
    display: none;
}

.item.appPromo .tab--primary ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    justify-content: center;
    align-items: stretch;
    transition: 0.3s;
    width: max-content;
    min-width: 100%;
    box-sizing: border-box;
}

.item.appPromo .tab--primary ul li {
    border: solid 2px #d4d4d4;
    color: #555555;
    border-radius: 60px;
    padding: 4px 24px;
    font-size: 24px;
    font-weight: 400;
    cursor: pointer;
    text-align: center;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    transition: 0.3s;
    position: relative;
    white-space: nowrap;
    flex: 0 0 auto;
}

.item.appPromo .tab--primary ul li.active {
    background: #ED6B1B;
    border: solid 2px #ED6B1B;
    color: #fff;
    transform: translateY(-3px);
    animation: bounceTwicePause 3s ease-in-out infinite;
}

/* appPromo sub tabs (lower hierarchy: white bar) */
.item.appPromo .tab--sub {
    position: relative;
    z-index: 2;
    width: 100%;
    margin: 0 0 18px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.item.appPromo .tab--sub::-webkit-scrollbar {
    display: none;
}

.item.appPromo .tab--sub ul {
    list-style: none;
    margin: 0;
    padding: 12px;
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    justify-content: center;
    align-items: stretch;
    background: #fff;
    border-radius: 20px;
    box-sizing: border-box;
    width: max-content;
    min-width: 100%;
}

.item.appPromo .tab--sub ul li {
    border: solid 2px transparent;
    color: #555;
    border-radius: 50px;
    padding: 7px 18px;
    font-size: 18px;
    font-weight: 500;
    cursor: pointer;
    text-align: center;
    line-height: 1.3;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transition: color 0.25s, border-color 0.25s, background-color 0.25s;
    white-space: nowrap;
    flex: 0 0 auto;
}

.item.appPromo .tab--sub ul li.active {
    background: transparent;
    border-color: #ED6B1B;
    color: #ED6B1B;
    font-weight: 700;
    transform: none;
    animation: none;
}

.item.appPromo .tab--sub ul li:hover:not(.active) {
    color: #ED6B1B;
}

.item.teaching .tab-content {
    margin-top: 28px;
}

.item.teaching .qualification {
    max-width: 720px;
    margin: 0 auto;
}

.item.teaching .qualification .teaching-icon {
    display: block;
    width: 240px;
    margin: 0 auto 12px;
}

.item.teaching .qualification .qualification-list {
    margin: 0 0 8px;
    font-size: 20px;
    font-weight: 700;
    color: #4a4a4a;
    line-height: 1.4;
}

.item.teaching .qualification .qualification-note {
    font-size: 16px;
    color: #757575;
    line-height: 1.6;
    margin: 0;
}

@media screen and (max-width: 767px) {
    .item.teaching .qualification .qualification-list {
        font-size: 18px;
    }

    .item.teaching .qualification .qualification-note {
        font-size: 14px;
    }
}

.item.teaching .teaching-icon {
    width: 150px;
}

.item.teaching .teaching-img {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 20px;
    border: solid 2px #d1d1d1;
    box-sizing: border-box;
}

.item.teaching .row {
    position: relative;
}

.item.teaching .table-step {
    display: block;
}

.item.teaching .mobile-step {
    display: none;
}

/* Only image wrappers need collapsed line-height */
.item.teaching a.linkText.table-step,
.item.teaching a.linkText.mobile-step {
    line-height: 0;
}

.item.teaching a.mobile-step:not(.linkText) {
    color: #2462b3;
    display: inline-block;
    max-width: 100%;
    line-height: 1.5;
    word-break: keep-all;
    padding: 0 8px;
    box-sizing: border-box;
}

.item.teaching a.line-join-link {
    color: #2462b3;
    display: inline-block;
    max-width: 100%;
    line-height: 1.5;
    word-break: keep-all;
    padding: 0 8px;
    box-sizing: border-box;
}

.item.teaching span.table-step,
.item.teaching span.mobile-step {
    line-height: 1.5;
}

.item.teaching a.linkText {
    border-bottom: none;
}

.item.teaching .cardItem-tit {
    text-align: center;
    font-size: 32px;
    color: #2462b3;
    margin: 0 0 10px;
    font-family: "Noto Sans TC";
    font-weight: 700;
}

@media screen and (max-width:990px) {
    .item.teaching .slick-slider,
    .item.appPromo .slick-slider {
        padding: 0 34px 28px;
    }

    .item.teaching .tab ul li {
        font-size: 26px;
    }

    .item.appPromo .tab--primary ul li {
        font-size: 26px;
    }

    .item.appPromo .tab--sub ul li {
        font-size: 16px;
        padding: 7px 14px;
    }
}

@media screen and (max-width:767px) {
    .item.teaching .slick-slider,
    .item.appPromo .slick-slider {
        padding: 0 26px 24px;
    }

    .item.teaching .slick-arrow,
    .item.appPromo .slick-arrow {
        top: 42%;
    }

    .item.teaching .table-step {
        display: none;
    }

    .item.teaching .mobile-step {
        display: block;
    }

    .item.teaching a.linkText.mobile-step {
        line-height: 0;
    }

    /* Even vertical rhythm: ➊ / 點擊加入 / link */
    .item.teaching .row .text-center {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4px;
    }

    .item.teaching .row .text-center > br {
        display: none;
    }

    .item.teaching .row .text-center .cardItem-tit {
        margin: 0;
    }

    .item.teaching a.mobile-step:not(.linkText) {
        line-height: 1.65;
        margin: 0;
    }

    .item.teaching span.mobile-step {
        line-height: 1.5;
        margin: 0;
    }

    .item.teaching .cardItem-tit {
        font-size: 24px;
    }

    .item.teaching .tab ul li {
        font-size: 24px;
    }

    .item.appPromo .tab--primary ul li {
        font-size: 24px;
    }

    .item.appPromo .tab--sub ul {
        border-radius: 24px;
        gap: 2px;
    }

    .item.appPromo .tab--sub ul li {
        font-size: 14px;
        padding: 6px 10px;
    }

    .item.teaching .tab-content {
        margin-top: 24px;
    }
}

@media screen and (max-width:460px) {
    .item.teaching .slick-slider,
    .item.appPromo .slick-slider {
        padding: 0 20px 22px;
    }

    .item.teaching .tab ul li {
        border-radius: 40px;
        padding: 5px 12px 4px 12px;
        font-size: 20px;
    }

    .item.appPromo .tab--primary ul li {
        border-radius: 40px;
        padding: 5px 12px 4px 12px;
        font-size: 20px;
    }

    .item.appPromo .tab--sub ul {
        border-radius: 20px;
        padding: 12px;
    }

    .item.appPromo .tab--sub ul li {
        font-size: 14px;
        padding: 4px 8px;
    }
}

@media screen and (max-width:375px) {
    .item.teaching .tab ul li {
        padding: 5px 12px;
    }

    .item.appPromo .tab--primary ul li {
        padding: 5px 12px;
    }
}

@media screen and (max-width:360px) {
    .item.teaching .tab ul li {
        padding: 3px 12px;
        font-size: 20px;
    }

    .item.appPromo .tab--primary ul li {
        padding: 3px 12px;
        font-size: 20px;
    }
}

@keyframes bounceTwicePause {

    0%,
    100% {
        transform: translateY(0);
    }

    5% {
        transform: translateY(-8px);
    }

    10% {
        transform: translateY(0);
    }

    15% {
        transform: translateY(-4px);
    }

    20% {
        transform: translateY(0);
    }
}

@media screen and (max-width:820px) {
    input[type=text] {
        width: 90%
    }
}

.tit-type1 {
    position: relative
}

.tit-type1-line {
    margin: 20px 0 12px 0;
    font-size: 36px;
    line-height: 1.25;
    font-weight: 600;
    text-align: center;
    color: #00367C
}

.tit-type1-line .h2-line {
    display: block;
    width: 400px;
    max-width: 92%;
    height: auto;
    margin: 0px auto 0;
}

@media screen and (max-width:767px) {
    .tit-type1-line {
        font-size: 24px
    }
}

.QA {
    position: relative;
    padding-top: 50px;
    border-bottom: 2px dashed #EBE1E0;
    margin: auto
}

.QA .curve {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 150px;
    display: block
}

.QA .tit-type1 {
    font-size: 3.75rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #1057B5
}

.QA details {
    background-color: #2462b3;
    padding: 20px 30px;
    margin: 20px 0;
    border-radius: 20px
}

.QA details summary {
    list-style-type: none;
    cursor: pointer;
    color: #f15d21;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    text-align: left
}

.QA details summary:before {
    content: "";
    border: solid #ffffff;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: -webkit-transform 0.5s ease;
    transition: -webkit-transform 0.5s ease;
    transition: transform 0.5s ease;
    transition: transform 0.5s ease, -webkit-transform 0.5s ease;
    margin-left: 10px;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.QA details summary::-webkit-details-marker,
.QA details summary::marker {
    display: none
}

.QA details summary h4 {
    font-size: 20px;
    font-weight: lighter;
    margin: 0;
    padding: 0;
    color: #ffffff;
    text-align: left;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.QA details summary h4 strong {
    font-weight: 900;
    font-size: 24px
}

.QA details p {
    color: #d8f2d6;
    font-size: 18px;
    text-align: left
}

.QA details p a {
    color: #c0edbe;
    text-decoration: underline;
    cursor: pointer
}

.QA details p a:hover {
    color: #ffc7b6
}

.QA .promo-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    overflow: hidden;
    font-size: 16px;
    text-align: center;
    color: #ffffff
}

.QA .promo-table td,
.QA .promo-table th {
    border: 1px solid #ffffff;
    padding: 16px 12px
}

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

    .QA .promo-table td,
    .QA .promo-table th {
        padding: 8px 4px
    }
}

.QA .promo-table th {
    font-weight: 600;
    background-color: #ffffff;
    color: #2d4128
}

.QA .promo-table .note {
    font-size: 14px;
    font-weight: normal
}

.QA .promo-table .date {
    line-height: 1.6
}

.QA .promo-table .date span {
    display: block
}

.QA .promo-table .month {
    font-size: 18px;
    font-weight: 500;
    vertical-align: middle
}

.QA details[open] summary:before {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

@media screen and (max-width:767px) {
    .QA {
        padding-top: 40px
    }

    .QA .tit-type1 {
        font-size: 2rem
    }

    .QA details summary h4 {
        font-size: 18px
    }

    .QA details summary h4 strong {
        font-size: 20px
    }

    .QA .curve {
        height: 40px
    }
}

.qa-area .qa-list {
    background-color: #ffffff;
}

.qa-area .qa-list-content {
    color: #d7ebf2;
    text-align: left;
    padding: 8px 0 0 0;
}

.qa-area summary {
    list-style-type: none;
    position: relative;
    cursor: pointer;
    color: #ffffff;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
    padding-right: 0;
    font-size: 20px;
    text-align: left;
}

.qa-area summary::before {
    content: "";
    order: 1;
    flex-shrink: 0;
    border: solid #05367b;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 5px;
    transform: rotate(45deg);
    transition: all 0.5s ease 0s;
}

.qa-area summary::-webkit-details-marker,
.qa-area summary::marker {
    display: none;
}

.qa-area summary h4 {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 24px;
    font-weight: lighter;
    margin: 0;
    padding: 0;
    color: #05367b;
    text-align: left;
}

.qa-area p {
    color: #474747;
    font-size: 18px;
    text-align: left;
}

.qa-area p a,
.qa-area ul li a {
    color: #05367b;
    text-decoration: underline;
    cursor: pointer;
}

.qa-area details[open] summary::before {
    transform: rotate(-135deg);
    transition: all 0.5s ease 0s;
}

@media screen and (max-width: 767px) {
    .qa-area .qa-list summary h4 {
        font-size: 18px;
    }
}

.note {
    padding-bottom: 0
}

.note details {
    border-radius: 8px;
    padding: 16px 16px 36px 16px
}

.note summary {
    --note-tit-size: 3.25rem;
    cursor: pointer;
    outline: none;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.note summary .note-tit {
    margin: 0;
    font-weight: bold;
    font-size: var(--note-tit-size);
    color: #1057B5;
}

.note summary::-webkit-details-marker {
    display: none
}

.note summary:after {
    content: "+";
    font-weight: bold;
    color: #1057B5;
    font-size: var(--note-tit-size);
    line-height: 1;
}

.note details[open] summary:after {
    content: "-";
    color: #1057B5;
    font-size: var(--note-tit-size);
}

.note ul {
    margin-top: 0.8rem;
    padding-left: 1.2rem;
    line-height: 1.6;
    list-style: square
}

.note li {
    margin-bottom: 0.6rem;
    color: #4a4a4a
}

.note li a {
    color: #1057B5;
    text-decoration: underline;
    cursor: pointer;
}

.teaching .feature-points a {
    color: #1057B5;
    text-decoration: underline;
    cursor: pointer;
}

.note .note-subtit {
    margin: 1em 0 0.6rem;
    font-size: 1.17em;
    font-weight: 700;
    line-height: 1.6;
    color: #4a4a4a;
}

@media screen and (max-width:767px) {
    .note summary {
        --note-tit-size: 2rem;
    }
}

@media screen and (max-width:767px) {
    .footer {
        padding-bottom: 80px
    }
}

/* ===== 票券卡片區塊 ===== */
.ticket-content {
    display: flex;
    gap: 40px;
    justify-content: center;
}

.ticket-card {
    background: linear-gradient(180deg, #FFB650 0%, #FF8800 50%, #E94E0B 100%);
    width: 380px;
    border-radius: 20px;
    padding: 30px 20px;
    position: relative;
}

.ticket-card .tit {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 15px 10px;
    text-align: center;
    margin-bottom: 25px;
    color: #05367b;
    font-weight: bold;
    font-size: 1.25rem;
}

.ticket-card .price {
    color: #fb7e01;
    font-size: 6rem;
    font-weight: 900;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: baseline;
}

.ticket-card .price .currency {
    font-size: 28px;
    margin-right: 5px;
    font-weight: bold;
}

.ticket-card .desc {
    color: #f15d21;
    font-size: 1rem;
    margin-top: 5px;
    text-align: center;
    font-weight: 500;
}

.ticket-card .text {
    color: #ffffff;
    margin: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.ticket-card .text-title {
    font-size: 1.5rem;
    margin: 0 0 8px 0;
    font-weight: 600;
    text-align: center;
    line-height: 1.2;
}

.ticket-card .text-list {
    margin: 0;
    padding-left: 20px;
    font-size: 1.25rem;
    line-height: 1.5;
    list-style: disc;
}

.ticket-card .note {
    color: rgb(255 242 219 / 85%);
    font-size: 1rem;
    line-height: 1.5;
}

.ticket-card .note .link-green {
    color: #fff8af;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: 0.3s ease all;
}

.ticket-card .note .link-green:hover {
    color: #2462b3;
    opacity: 0.7;
}

/* ===== 數字柔和掃光特效 ===== */
.num-glow {
    display: inline-block;
    font-weight: 900;
    background: linear-gradient(110deg, #fb7e01 45%, #fff0d1 50%, #fb7e01 55%);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: gold-sweep 8s cubic-bezier(0.4, 0, 0.2, 1) infinite;
    text-shadow: none !important;
}

@keyframes gold-sweep {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

/* ===== RWD ===== */
@media screen and (max-width: 991px) {
    .ticket-card {
        width: 100%;
    }

    .ticket-card .price {
        font-size: 5rem;
    }

    .ticket-card .price .currency {
        font-size: 24px;
    }
}

@media screen and (max-width: 767px) {
    .ticket-content {
        flex-direction: column;
        align-items: center;
    }

    .ticket-card {
        width: 85%;
    }

    .ticket-card .price {
        font-size: 4.5rem;
    }

    .ticket-card .price .currency {
        font-size: 22px;
    }
}

/* 區塊上下間距（對應原本 .item） */
.item {
    padding: 100px 0;
    position: relative;
}

@media screen and (max-width: 767px) {
    .item {
        padding: 40px 20px;
    }
}

/* 容器寬度（對應原本 .container） */
.container {
    margin: 0 auto;
    padding: 0;
    max-width: 1200px;
}

@media screen and (max-width: 1199px) {
    .container {
        margin: 0 65px;
        max-width: none;
    }
}

@media screen and (max-width: 991px) {
    .container {
        margin: 0 25px;
    }
}

@media screen and (max-width: 767px) {
    .container {
        margin: 0 10px;
    }
}

/* 活動廣告區塊專用 */
.item.discount-info {
    width: 100%;
    position: relative;
    transition: all 0.3s;
}

.item.discount-info .container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: auto;
    margin-right: auto;
    justify-content: center;
    align-items: center;
}

.item.discount-info img {
    border-radius: 10px;
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.item.discount-info a {
    margin: 5px;
    transition: 0.3s;
    display: block;
    line-height: 0;
}

.item.discount-info a:hover {
    transform: scale(1.02);
}

@media screen and (max-width: 1200px) {
    .item.discount-info .container {
        width: 90%;
    }
}

@media screen and (max-width: 767px) {
    /* Avoid double side insets that push banners right and crop them */
    .item.discount-info {
        padding-left: 16px;
        padding-right: 16px;
        box-sizing: border-box;
        overflow: visible;
    }

    .item.discount-info .container {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        flex-direction: column;
        justify-content: center;
        align-items: stretch;
    }

    .item.discount-info a {
        width: 100%;
        margin: 8px 0;
        box-sizing: border-box;
    }

    .item.discount-info img {
        width: 100%;
        max-width: 100%;
        height: auto;
    }
}

/* 手機換行：手機顯示、桌機隱藏 */
.mobile-br {
    display: block;
}

@media screen and (min-width: 768px) {
    .mobile-br {
        display: none;
    }
}

/* Tab 選單 */
.tab {
    position: relative;
    margin: auto;
    margin-bottom: -2px;
}

.tab ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 10px;
    justify-content: center;
}

.tab ul li {
    border: solid 1px #c0c0c0;
    color: #08367b;
    border-radius: 10px 10px 0 0;
    padding: 5px 15px;
    font-size: 24px;
    cursor: pointer;
    text-align: center;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    transition: 0.3s;
    border-bottom: none;
}

.tab ul li.active {
    background: #0081cc;
    color: #fff;
}

@media screen and (max-width: 768px) {
    .tab ul li {
        font-size: 20px;
    }
}

/* Tab 內容區（原綁在 .teaching） */
.teaching .tab-content {
    border: none;
    border-radius: 0;
    background-color: transparent;
}

.teaching .tab-content.tab-content--panel {
    border: 1px solid #fff;
    border-radius: 20px;
    background-color: #fff4e5;
}

.teaching .tab-content .tab-text {
    text-align: center;
    border-radius: 20px;
    padding: 40px;
    margin: 20px;
    background-color: #fff;
}

.teaching .text-content {
    text-align: left;
    margin: auto;
}

.teaching .tab-content--panel .text-content {
    display: block;
    width: 100%;
    text-align: left;
}

.teaching .feature-points {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

.teaching .feature-points>li {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    padding: 20px 20px;
    border-radius: 20px;
    background: linear-gradient(90deg, rgba(237, 107, 27, 0.08) 0%, rgba(255, 255, 255, 0) 100%);
    border: 1px solid rgba(237, 107, 27, 0.18);
}

.teaching .feature-points__num {
    flex: 0 0 auto;
    min-width: 40px;
    height: 40px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    color: #fff;
    background: linear-gradient(180deg, #FFB650 0%, #FF8800 55%, #E94E0B 100%);
    box-shadow: 0 4px 10px rgba(233, 78, 11, 0.22);
}

.teaching .feature-points__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    flex: 1 1 auto;
    min-width: 0;
    gap: 4px;
    color: #4a4a4a;
    font-size: 1.05rem;
    line-height: 1.5;
    text-align: left;
}

.teaching .feature-points__body strong {
    color: #05367b;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.35;
}

.teaching .feature-points__body em {
    font-style: normal;
    color: #ED6B1B;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .teaching .feature-points>li {
        padding: 14px;
        gap: 12px;
    }

    .teaching .feature-points__num {
        min-width: 36px;
        height: 36px;
        font-size: 0.875rem;
        border-radius: 10px;
    }

    .teaching .feature-points__body {
        font-size: 0.95rem;
    }

    .teaching .feature-points__body strong {
        font-size: 1.05rem;
    }
}

@media screen and (max-width: 430px) {
    .teaching .tab-content .tab-text {
        margin: 10px;
    }
}

/* 標題 */
.tit-type3 {
    margin: 8px 0;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    padding: 8px;
}

@media screen and (max-width: 767px) {
    .tit-type3 {
        font-size: 20px;
    }
}

/* 標題（左右線） */
.tit-type-title {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #05367b;
    font-size: 40px;
}

.tit-type-title::before,
.tit-type-title::after {
    content: "";
    flex: 1;
    height: 1px;
    background-color: #05367b;
}

.tit-type-title::before {
    margin-right: 16px;
}

.tit-type-title::after {
    margin-left: 16px;
}

@media (max-width: 768px) {
    .tit-type-title {
        font-size: 26px;
    }
}

@media (max-width: 375px) {
    .tit-type-title {
        font-size: 22px;
    }
}

.tit-type3 {
    margin: 15px 0;
    font-size: 24px;
    line-height: 1.3;
    padding: 10px;
}

@media (max-width: 767px) {
    .tit-type3 {
        font-size: 20px;
    }
}

/* appPromo 主體 */
.appPromo .appPromo-tabContent {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    margin: 30px 0;
    gap: 20px;
    background-color: transparent;
    border-radius: 0;
    height: auto;
}

.appPromo .appPromo-panel {
    background:#fff4e5;
    border-radius: 28px;
    padding: 22px 24px 28px;
    box-sizing: border-box;
}

.appPromo .appPromo-slickContent {
    flex: auto;
    width: 100%;
    background-color: #fff;
    border-radius: 20px;
    margin: 0;
    height: auto;
    padding: 28px 24px;
    box-sizing: border-box;
    overflow: hidden;
}

/* Keep one full slide visible — avoid peeking next slide */
.item.appPromo .appPromo-slickContent .slick-list {
    overflow: hidden !important;
    width: 100%;
    margin: 0 !important;
}

.item.appPromo .appPromo-slickContent .slick-slide {
    box-sizing: border-box;
    overflow: hidden;
}

.item.appPromo .appPromo-slickContent .slick-slide > div {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
}

/* Neutralize global .row negative margins that leak into the next slide */
.item.appPromo .appPromo-slickContent .row {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    justify-content: center;
}

.appPromo .appPromo-tabContent .card {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    box-sizing: border-box;
}

.appPromo .appPromo-tabContent .card-content {
    flex-shrink: 0;
}

.appPromo .appPromo-tabContent .card-content-text {
    margin-left: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-align: left;
}

.appPromo .appPromo-tabContent .card > .card-content-text {
    flex: 1 1 auto;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

/* Desktop only: equalize text column width across slides */
@media (min-width: 992px) {
    .appPromo .appPromo-tabContent .card > .card-content-text {
        flex: 0 0 auto;
        width: max-content;
    }
}

.appPromo .appPromo-tabContent .card-content-text .card-content-text {
    gap: 8px;
    width: auto;
    max-width: none;
}

.appPromo .appPromo-tabContent .card-badge {
    border: 1.5px solid rgba(237, 107, 27, 0.18);
    border-radius: 50px;
    padding: 4px 14px;
    width: fit-content;
    min-width: 0;
    margin: 0;
    color: #ED6B1B;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    background: #fff5ef;
}

.appPromo .appPromo-tabContent .tit-type3 {
    margin: 0;
    color: #222;
    line-height: 1.35;
}

.appPromo .appPromo-tabContent .card-badge-ul {
    text-align: left;
    width: 100%;
    max-width: none;
    list-style: disc;
    margin: 0;
    padding-left: 1.2em;
    color: #555;
    line-height: 1.6;
}

.appPromo .appPromo-tabContent .card-badge-ul li {
    margin-bottom: 6px;
}

.appPromo .appPromo-tabContent .card-badge-ul li:last-child {
    margin-bottom: 0;
}

.appPromo .appPromo-tabContent img {
    border-radius: 20px;
    border: solid 2px #d1d1d1;
    width: 250px;
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

@media (max-width: 1200px) {
    .appPromo .appPromo-tabContent {
        margin: 30px 0;
    }

    .appPromo .appPromo-slickContent {
        width: 100%;
    }
}

/* Pad / tablet: stack card, one slide only */
@media (max-width: 991px) {
    .item.appPromo .slick-slider {
        padding: 0 36px 24px;
    }

    .appPromo .appPromo-panel {
        border-radius: 22px;
        padding: 16px 16px 22px;
    }

    .appPromo .appPromo-slickContent {
        width: 100%;
        padding: 20px 14px;
        overflow: hidden;
    }

    .appPromo .appPromo-tabContent .card {
        flex-direction: column;
        align-items: center;
        gap: 16px;
        max-width: 100%;
        width: 100%;
    }

    .appPromo .appPromo-tabContent .card > .card-content-text {
        width: 100% !important;
        max-width: 100%;
        align-items: center;
        text-align: center;
    }

    .appPromo .appPromo-tabContent .tit-type3 {
        text-align: center;
    }

    .appPromo .appPromo-tabContent .card-badge {
        margin: 0 auto;
    }

    .appPromo .appPromo-tabContent .card-badge-ul {
        width: auto;
        max-width: 100%;
        text-align: left;
    }

    .appPromo .appPromo-tabContent img {
        width: 220px;
    }
}

@media (max-width: 768px) {
    .appPromo .appPromo-panel {
        border-radius: 20px;
        padding: 14px 14px 20px;
    }

    .item.appPromo .slick-slider {
        padding: 0 28px 22px;
        overflow: hidden;
    }

    .appPromo .appPromo-slickContent {
        width: 100%;
        padding: 18px 12px;
        overflow: hidden;
    }

    .item.appPromo .appPromo-slickContent .slick-slide {
        overflow: hidden;
    }

    .appPromo .appPromo-tabContent .card,
    .appPromo .appPromo-tabContent .card-content {
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 430px) {
    .appPromo .appPromo-slickContent {
        margin: 0;
        padding: 14px 10px;
        border-radius: 16px;
        overflow: hidden;
    }

    .item.appPromo .slick-slider {
        padding: 0 24px 20px;
        overflow: hidden;
    }

    .appPromo .appPromo-tabContent .card {
        flex-direction: column;
        align-items: center;
        gap: 18px;
    }

    .appPromo .appPromo-tabContent .card-content-text {
        margin-left: 0;
        margin-top: 0;
        align-items: center;
        text-align: center;
        width: 100% !important;
        max-width: 100%;
    }

    .appPromo .appPromo-tabContent .card-badge {
        margin: 0 auto;
    }

    .appPromo .appPromo-tabContent .card-badge-ul {
        width: auto;
        max-width: 100%;
        text-align: left;
    }

    .appPromo .appPromo-tabContent img {
        width: 200px;
    }
}

/* ===== Advantage cards ===== */
.teaching .advantage-content {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    margin: 32px 0 8px;
    align-items: stretch;
}

.teaching .advantage-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, #FFF8F2 0%, #FFFFFF 42%, #FFFFFF 100%);
    border: 1px solid rgba(237, 107, 27, 0.16);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(237, 107, 27, 0.1);
    box-sizing: border-box;
    min-width: 0;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.teaching .advantage-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #FFB650 0%, #ED6B1B 55%, #E94E0B 100%);
}

.teaching .advantage-card:hover {
    transform: translateY(-6px);
    border-color: rgba(237, 107, 27, 0.35);
    box-shadow: 0 16px 36px rgba(237, 107, 27, 0.16);
}

.teaching .advantage-card__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 28px 22px 22px;
    border-bottom: 1px solid rgba(237, 107, 27, 0.12);
    text-align: center;
}

.teaching .advantage-card__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    min-width: 50px;
    padding: 0;
    box-sizing: border-box;
    border-radius: 14px;
    background: linear-gradient(180deg, #FFB650 0%, #FF8800 55%, #E94E0B 100%);
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.02em;
    box-shadow: 0 4px 12px rgba(233, 78, 11, 0.24);
}

.teaching .advantage-card__tit {
    margin: 0;
    padding: 0;
    background: none;
    color: #ED6B1B;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
}

.teaching .advantage-card__tit span {
    display: block;
    margin-top: 6px;
    color: #444;
    font-size: 20px;
    font-weight: 600;
}

.teaching .advantage-card__list {
    list-style: none;
    margin: 0;
    padding: 8px 22px 24px;
    display: flex;
    flex-direction: column;
    gap: 0;
    flex: 1;
    background: linear-gradient(180deg, rgba(255, 248, 242, 0.55) 0%, #FFFFFF 28%);
}

.teaching .advantage-card__list li {
    position: relative;
    padding: 14px 0 14px 1.2em;
    color: #555;
    font-size: 19px;
    line-height: 1.55;
    border-top: 1px solid rgba(237, 107, 27, 0.1);
}

.teaching .advantage-card__list li:first-child {
    border-top: none;
    padding-top: 8px;
}

.teaching .advantage-card__list li:last-child {
    padding-bottom: 0;
}

.teaching .advantage-card__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: calc(14px + 0.55em);
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ED6B1B;
    box-shadow: 0 0 0 3px rgba(237, 107, 27, 0.12);
}

.teaching .advantage-card__list li:first-child::before {
    top: calc(8px + 0.55em);
}

.teaching .advantage-card__list em {
    font-style: normal;
    color: #ED6B1B;
    font-weight: 700;
}

.teaching .advantage-card__list a {
    color: #1057B5;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
    transition: color 0.2s ease;
}

.teaching .advantage-card__list a:hover {
    color: #ED6B1B;
}

@media screen and (max-width: 990px) {
    .teaching .advantage-content {
        gap: 16px;
    }

    .teaching .advantage-card__head {
        padding: 22px 16px 18px;
        gap: 10px;
    }

    .teaching .advantage-card__num {
        width: 46px;
        height: 46px;
        min-width: 46px;
        font-size: 19px;
        border-radius: 12px;
    }

    .teaching .advantage-card__tit {
        font-size: 24px;
    }

    .teaching .advantage-card__tit span {
        font-size: 18px;
    }

    .teaching .advantage-card__list {
        padding: 6px 28px 20px;
    }

    .teaching .advantage-card__list li {
        font-size: 17px;
        padding: 12px 0 12px 1.15em;
    }
}

@media screen and (max-width: 767px) {
    .teaching .advantage-content {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
        margin: 22px 0 8px;
        overflow: visible;
        padding: 0;
        scroll-snap-type: none;
    }

    .teaching .advantage-card {
        flex: none;
        width: 100%;
        scroll-snap-align: unset;
    }

    .teaching .advantage-card:hover {
        transform: none;
    }

    .teaching .advantage-card__head {
        padding: 20px 16px 16px;
    }

    .teaching .advantage-card__tit {
        font-size: 24px;
    }

    .teaching .advantage-card__tit span {
        font-size: 18px;
    }

    .teaching .advantage-card__list li {
        font-size: 17px;
    }
}