body {
    color: #171717;
}

body.active {
    position: fixed;
    left: 0;
    right: 0;
    overflow: hidden;
}

body.modal-open {
    overflow: hidden;
    padding-right: 0;
}

ul,li {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

p {
    margin-bottom: 0;
}

.fz_12 {
    font-size: 12px;
}

.fz_14 {
    font-size: 14px;
}

.color_73 {
    color: #737373;
}

.color_303133 {
    color: #303133;
}

.color_gray500 {
    color: #606266;
}

.color_gray400 {
    color: #909399;
}

.color_17 {
    color: #171717;
}

.color_A3 {
    color: #A3A3A3;
}

.color_075985 {
    color: #075985;
}

.color_67C23A {
    color: #67C23A;
}

.color_F56C6C {
    color: #F56C6C;
}

.SpacePush {
    /* padding: 2rem 0; */
    padding-top: 2rem;
}

.Btn_BlueSolid {
    display: inline-block;
    text-decoration: none;
    padding: .6rem 1.3rem;
    color: #fff;
    background-color: #0284C7;
    border: none;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_BlueSolid:hover {
    color: #fff;
    background-color: #38BDF8;
}

.Btn_BlueSolid.CloseLink {
    color: #fff;
    background-color: #BAE6FD;
}

.Btn_BlueSolid_line {
    display: inline-block;
    text-decoration: none;
    padding: .6rem 1.3rem;
    color: #737373;
    background-color: #fff;
    border: 1px solid #D4D4D4;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_BlueSolid_line:hover {
    color: #0284C7;
    border: 1px solid #0284C7;
}

.Btn_Login {
    width: 220px;
    height: 44px;
    display: inline-block;
    text-decoration: none;
    line-height: 44px;
    color: #fff;
    background-color: #0284C7;
    border: none;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_Login:hover {
    color: #fff;
    background-color: #38BDF8;
}

.Btn_Primary600 {
    display: inline-block;
    text-decoration: none;
    padding: .2rem 1.3rem;
    color: #fff;
    background-color: #0284C7;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_Primary600:hover {
    color: #fff;
    background-color: #38BDF8;
}

.Btn_Primary200 {
    display: inline-block;
    text-decoration: none;
    padding: .2rem 1.3rem;
    color: #fff;
    background-color: #BAE6FD;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_Primary200:hover {
    color: #fff;
    background-color: #38BDF8;
}

.Btn_LINE_Login {
    width: 220px;
    height: 44px;
    display: inline-block;
    text-decoration: none;
    line-height: 44px;
    color: #fff;
    background-color: #3ACE01;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_LINE_Login:hover {
    color: #fff;
    background-color: #46e308;
}

.Btn_GrayFrame {
    display: inline-block;
    text-decoration: none;
    padding: .6rem 1.3rem;
    color: #737373;
    border: 1px solid #D4D4D4;
    background-color: #fff;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_GrayFrame:hover {
    color: #0284C7;
    border: 1px solid #0284C7;
}

.Btn_GrayFrame_1 {
    display: inline-block;
    text-decoration: none;
    padding: .2rem 1.3rem;
    color: #737373;
    border: 1px solid #D4D4D4;
    background-color: #fff;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_GrayFrame_1:hover {
    color: #0284C7;
    border: 1px solid #0284C7;
}

.Btn_Bluerame {
    display: inline-block;
    text-decoration: none;
    padding: .6rem 1.3rem;
    color: #0284C7;
    border: 1px solid #0284C7;
    background-color: #fff;
    border-radius: 4px;
    white-space: nowrap;
}

.Btn_Bluerame:hover {
    color: #0284C7;
    border: 1px solid #0284C7;
}

.Btn_Line_G500 {
    display: inline-block;
    text-decoration: none;
    color: #737373;
    background-color: #fff;
    border: 1px solid #D4D4D4;
    border-radius: 4px;
}

.Btn_Line_G500:hover {
    color: #0284C7;
    background-color: #fff;
    border: 1px solid #0284C7;
}

.textBtn_DarkBlue {
    text-decoration: none;
    color: #082F49;
}

.textBtn_DarkBlue:hover {
    color: #082F49;
}

.textBtn_main {
    color: #0284C7;
}

.textBtn_main:hover {
    color: #25adf0;
}

.textBtn_73 {
    text-decoration: none;
    color: #737373;
    font-size: 14px;
}

.textBtn_73:hover {
    color: #2c2c2c;
}

.textBtn_A3 {
    text-decoration: none;
    color: #A3A3A3;
}

.textBtn_A3:hover {
    color: #A3A3A3;
}

.textBtn_17 {
    text-decoration: none;
    color: #171717;
}

.textBtn_17:hover {
    color: #171717;
}

.textBtn_082F49 {
    text-decoration: none;
    color: #082F49;
}

.textBtn_082F49:hover {
    color: #082F49;
}

.textBtn_yellow {
    color: #FDE68A;
}

.textBtn_yellow:hover {
    color: #f8ecbb;
}

.ListTypeCik li {
    list-style-type: cjk-ideographic;
    margin-left: 2rem;
    padding: .2rem 0;
}

.ListTypeDecimal li {
    list-style-type: decimal;
    margin-left: 1.5rem;
    padding: .2rem 0;
}

.ListTypeDisc li {
    list-style-type: disc;
    margin-left: 1.5rem;
    padding: .2rem 0;
}

.bg_0C4A6E {
    background-color: #0C4A6E;
}

.bg_Primary100 {
    background-color: #E0F2FE;
}

.BorderBottom {
    border-bottom: 1px solid #D4D4D4;
}

@media (max-width: 991.98px) {
    .Btn_Bluerame {
        padding: .4rem 1rem;
    }
    .Btn_BlueSolid {
        padding: .4rem 1rem;
    }
    .Btn_GrayFrame {
        padding: .4rem 1.3rem;
    }
    .Btn_BlueSolid_line {
        padding: .4rem 1.3rem;
    }
}

.header {
    width: 100%;
    height: 80px;
    background-color: #0C4A6E;
}

.header .container {
    height: 80px;
}

.navBox ul {
    display: flex;
}

.navBox ul li {
    position: relative;
}

.navBox ul li a {
    display: inline-block;
    color: #fff;
    text-decoration: none;
    padding: 0.9rem 1rem;
}

.navBox ul li a:hover {
    color: #38BDF8;
}

.navBox ul li ul {
    display: none;
    /* height: 100%; */
    position: absolute;
    flex-direction: column;
    background-color: #fff;
    border-radius: 4px;
    padding: 1rem;
    left: 0;
    margin-top: 0;
    box-shadow: 0px 0px 12px rgba(0, 0, 0, .12);
    z-index: 99;
}
.navBox ul li ul::before {
    content: '';
    position: absolute;
    top: -9px;
    left: 20%;
    border-width: 0 8px 9px 8px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    z-index: 100;
}

.navBox ul li ul li a {
    color: #082F49;
    white-space: nowrap;
    padding: 0.5rem 1rem;
}

.navBox ul li ul li a:hover {
    color: #38BDF8;
}

/* 預設箭頭向上 */
.ArrowUp {
    transition: transform 0.2s;
}

@media (max-width: 991.98px) {
    .header {
        width: 100%;
        height: 64px;
        position: relative;
    }
    .header.active {
        position: fixed;
        z-index: 999;
    }
    .header .container {
        height: 64px;
    }
    .navBox {
        width: 100%;
        height: 100vh;
        display: none;
        position: fixed;
        top: 64px;
        left: 0;
        background-color: #0C4A6E;
    }
    .navBox.active {
        display: block;
    }
    .navBox ul {
        height: 74%;
        display: flex;
        flex-direction: column;
        padding: 1rem;
        overflow: auto;
    }
    .navBox ul li a {
        width: 100%;
        padding: 0.9rem 1rem;
        font-size: 16px;
        border-bottom: 1px solid #fff;
    }
    .navBox ul li ul {
        display: none;
        height: 100%;
        position: static;
        background-color: #0C4A6E;
        border-radius: 4px;
        padding: 0 1rem;
        box-shadow: none;
    }
    .navBox ul li ul li a {
        color: #fff;
        padding: 0.5rem 1rem;
        border: 0;
    }
    .navBox ul li ul::before {
        border-color: transparent;
    }
    .NabContent {
        width: 100%;
        height: calc(100% - 64px);
        display: flex;
        flex-direction: column;
    }
    .MbCommunity {
        font-size: 14px;
        letter-spacing:0.05rem;
        color: #fff;
        padding: 1rem;
        margin-top: 2rem;
        display: flex;
        background-image: url(../images/MbMenuBg.svg);
        background-repeat: no-repeat;
        background-position: left bottom;
        background-size: contain;
    }
    .MbCommunity p {
        padding-bottom: 0.3rem;
    }
    .MbCommunityBtn a {
        width: 24px;
        height: 24px;
        display: block;
        margin-top: 0.5rem;
    }
    .MbCommunityBtn a img {
        width: 100%;
        height: auto;
    }
    .MbMwnuBtn {
        display: block;
        width: 32px;
        height: 32px;
        background-image: url(../images/circum_menu.svg);
    }
    .MbMwnuBtn.active {
        background-image: url(../images/close.svg);
    }
    /* 當父層li.open時，箭頭向下(旋轉90度) */
    li.open > a .ArrowUp {
        transform: rotate(90deg);
    }
}

/* 輪播 */
.owl-carousel .item picture img {
    width: 100%;
    display: block;
}

.owl-carousel {
    width: 100%;
    overflow: hidden;
}

.owl-nav button.owl-prev,
.owl-nav button.owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: none !important;
    box-shadow: none !important;
    border: none;
    padding: 0;
    z-index: 10;
    cursor: pointer;
}

.owl-nav button.owl-prev {
    left: 10px;
}

.owl-nav button.owl-next {
    right: 10px;
}

.owl-nav svg:hover {
    opacity: 0.8;
    transition: opacity 0.2s;
}

.owl-dots {
    position: absolute;
    z-index: 99;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    text-align: left;
}

.owl-dot span {
    width: 30px !important;
    height: 2px !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .5) !important;
}

.owl-dot.active span {
    background: #fff !important;
}

@media (max-width: 991.98px) {
    .owl-dots {
        bottom: 0;
    }
}

.ExplainText {
    border-left: 2px solid #737373;
    padding-left: 1rem;
}

.CalendarBox {
    overflow: auto;
}

.CalendarContant {
    width: 100%;
}

@media (max-width: 991.98px) {
    .CalendarContant {
        width: 1140px;
    }
}

.CalendarTitle {
    display: flex;
    border-bottom: 1px solid #DCDFE6;
    padding: 1rem;
}

.CalendarTitle a {
    display: block;
    text-decoration: none;
    color: #000;
    font-size: 12px;
    border: 1px solid #DCDFE6;
    background-color: #fff;
    padding: .5rem 1rem;
    margin-right: -1px;
}

.CalendarTitle a:hover {
    color: #0284C7;
    border: 1px solid #BAE6FD;
    background-color: #F0F9FF;
}

.CalendarTitle a.left {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

.CalendarTitle a.right {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.el-calendar_body {
    padding: 1rem;
}

.el-calendar-table {
    table-layout: fixed;
    width: 100%;
}

.el-calendar-table th {
    width: calc(100% / 7);
    height: 56px;
    text-align: center;
    vertical-align: middle;
    font-weight: normal;
}

.el-calendar-table td {
    width: calc(100% / 7);
    height: 84px;
    border: 1px solid #DCDFE6;
    vertical-align:text-top;
    padding: .7rem;
    cursor: pointer;
}

.el-calendar-table td.active {
    background-color: #E0F2FE;
}

.el-calendar-table td.prev p {
    color: #A8ABB2;
}

.el-calendar-table td.next p {
    color: #A8ABB2;
}

.el-calendar-table td ul {
    padding-left: .3rem;
    list-style-position: inside;
}

.el-calendar-table td ul li {
    font-size: 12px;
    padding-top: 0.3rem;
    color: #082F49;
    white-space: nowrap;
    list-style-type: disc;
    overflow: hidden;
    text-overflow: ellipsis;
    display: list-item;
    max-width: 100%;
}

.IndexBelowBg {
    background-image: url(../images/IndexBg.svg);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100%;
    padding-bottom: 5rem;
}

@media (max-width: 991.98px) {
    .IndexBelowBg {
        padding-bottom: 4rem;
    }
}

.IndexNewsBox {
    height: 100%;
    padding: 1rem;
    background: linear-gradient(to right,#E0F2FE,#F0F9FF);
    background-color: #E0F2FE;
    box-shadow: 0px 0px 12px rgba(0, 0, 0, .12);
    border-radius: 4px;
}

.IndexNewsItem {
    display: block;
    color: #000;
    background-color: #fff;
    padding: .6rem;
    border-radius: 4px;
    text-decoration: none;
}

.NewsItem {
    box-shadow: 0px 0px 12px rgba(0, 0, 0, .12);
    padding: 1.5rem 1.5rem 1rem 1.5rem;
}

.IndexNewsItem:hover {
    background-color: #FFFBEB;
    color: #000;
}

.IndexNewsItem .Content h4 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    max-width: 70%;
    margin-right: 1rem;
    /* background-color: #0369A1; */
}

.NewsItem h4 {
    max-width: 80%;
}

.NewsItem .Content .LabelMembersOnly {
    margin-bottom: 1rem;
}

.LabelMembersOnly {
    text-decoration: none;
    font-size: 12px;
    border: 1px solid #0284C7;
    color: #0284C7;
    background-color: #F0F9FF;
    padding: .2rem .8rem;
    border-radius: 4px;
}

.LabelMembersOnly:hover {
    border: 1px solid #0284C7;
    color: #fff;
    background-color: #0284C7;
}

.WebsiteNews {
    text-decoration: none;
    font-size: 12px;
    border: 1px solid #D97706;
    color: #D97706;
    background-color: #FFFBEB;
    padding: .2rem .8rem;
    border-radius: 4px;
}

.WebsiteNews:hover {
    border: 1px solid #D97706;
    color: #fff;
    background-color: #D97706;
}

@media (max-width: 991.98px) {
    .IndexNewsItem .Content h4 {
        max-width: 56%;
    }
}

.footer {
    color: #fff;
    background-color: #0369A1;
    position: relative;
}

.FooterCommunity {
    margin-left: 1rem;
}
.FooterCommunity a {
    margin-left: .5rem;
}

.CompanyInformation li {
    padding: .2rem 0;
}

.SiteMap {
    text-align: center;
}

.SiteMap .Item01 {
    height: 32px;
    padding: .3rem 0;
    border-bottom: 1px solid #fff;
}

.SiteMap a {
    color: #fff;
    text-decoration: none;
}

.SiteMap a:hover {
    color: #38BDF8;
}

.Item02 li {
    padding: .4rem 0;
}

.Item03 {
    padding: .3rem 0;
    border-bottom: 1px solid #fff;
}

.Item04 {
    padding: .3rem 0;
    border-bottom: 1px solid #fff;
    border-top: 1px solid #fff;
}

.bd-subnavbar {
    position: sticky;
    bottom: 40px;
    z-index: 1000;
    background-color: #0C4A6E;
}

.ScorollTop {
    width: 40px;
    height: 40px;
    position: absolute;
    top: -60px;
    right: 16px;
}

.ScorollTop button {
    width: 40px;
    height: 40px;
    border: 0;
    background-color: #0369A1;
    border-radius: 4px;
}

.modal-header, .modal-footer {
    border: 0;
}

@media (max-width: 991.98px) {
    .FooterLogo {
        width: 60%;
    }
    .FooterCommunity {
        margin-left: 1rem;
    }
    .FooterCommunity a {
        margin-left: .2rem;
    }
    .FooterCommunity a img {
        width: 90%;
    }
    .CompanyInformation {
        display: none;
    }
    .SiteMap {
        margin-top: 2rem;
    }
    .ScorollTop {
        width: 30px;
        height: 30px;
        top: -50px;
    }
    .ScorollTop button {
        width: 30px;
        height: 30px;
    }
    .ScorollTop button img {
        width: 95%;
        height: auto;
        padding-bottom: 0.3rem;
    }
}

.NewsSearch {
    width: 26%;
    margin-left: auto;
}

.NewsSearch button {
    border: 0;
}

.btn-outline-secondary {
    color: #A8ABB2;
    border: 1px solid #C7CED5;
    background-color: #F5F7FA;
}

.PageNumber {
    color: #737373;
}

.DistanceBelow {
    margin: 5rem 0 4rem 0;
}

.PageNumber ul li a {
    display: inline-block;
    width: 32px;
    height: 32px;
    text-decoration: none;
    background-color: #F3F6F9;
    /* border: 1px solid #D4D4D4; */
    color: #737373;
    border-radius: 4px;
    margin: 0 .3rem;
    text-align: center;
    line-height: 32px;
}

.PageNumber ul li a.active {
    background-color: #0EA5E9;
    border: 1px solid #0EA5E9;
    color: #fff;
}

.PageNumberGo {
    width: 56px;
    height: 32px;
    text-align: center;
    margin: 0 .4rem;
    border: 1px solid #D4D4D4;
    border-radius: 4px;
}

@media (max-width: 991.98px) {
    .NewsSearch {
        width: 100%;
        margin-top: 1rem;
    }
    .PageNumber {
        font-size: 12px;
        margin: 3rem 0 2rem 0;
    }
    .DistanceBelow {
        margin: 3rem 0 2rem 0;
    }
    .PageNumber ul li a {
        width: 24px;
        height: 24px;
        margin: 0 .3rem;
        line-height: 24px;
        font-size: 12px;
    }
    .PageNumberGo {
        width: 40px;
        height: 24px;
    }
}

.BreadcrumbOverflow {
    display: flex;
    align-items: center;
    max-width: 100%; /* 或你想要的寬度 */
    overflow: hidden;
}

.BreadcrumbOverflow li {
    flex-shrink: 0;
    /* 其他 li 保持原長度 */
}

.BreadcrumbOverflow li:last-child {
    min-width: 0;
    flex-shrink: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%; /* 視需求調整 */
}

.BreadcrumbOverflow li:last-child a {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
}

.NewsContent {
    padding-bottom: 1rem;
}

.NewsTitle h1 {
    font-size: 34px;
}

.NewsContent h3 {
    margin-top: 1rem;
}

.NewsContent p {
    margin-bottom: 1rem;
}

.NewsContent img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.5rem auto;
}

.NewsContent ul {
    margin-bottom: 1rem;
}

.NewsContent ul li {
    list-style-type: disc;
    margin-left: 1.5rem;
    line-height: 1.5rem;
}

@media (max-width: 991.98px) {
    .NewsTitle {
        flex-wrap: wrap;
    }
    .NewsTitle h1 {
        font-size: 26px;
        width: 100%;
    }
    .NewsTitle a img {
        width: 28px;
        height: 28px;
    }
}

.SecondaryMenu .SecondaryMenuTitle {
    background-color: #0369A1;
    color: #fff;
    padding: 13px 20px 13px 32px;
}

.SecondaryMenu .SecondaryMenuTitle img {
    display: none;
}

.SecondaryMenu .SecondaryMenuNav li a {
    width: 100%;
    display: inline-block;
    text-decoration: none;
    background-color: #fff;
    color: #303133;
    padding: 13px 20px 13px 30px;
}

.SecondaryMenu .SecondaryMenuNav li a.active {
    color: #0284C7;
}

.SecondaryMenu .SecondaryMenuNav li a:hover {
    background-color: #F0F9FF;
}

.ContentArea {
    padding-left: 10%;
}

.Revision {
    font-size: 14px;
}

.text_body-01 {
    width: 120px;
    flex: 0 0 120px;
}


@media (max-width: 991.98px) {
    .SecondaryMenu {
        position: relative;
    }
    .SecondaryMenu .SecondaryMenuTitle img {
        display: block;
    }
    .SecondaryMenu .SecondaryMenuTitle {
        display: flex;
    }
    .SecondaryMenu .SecondaryMenuNav {
        width: 100%;
        background-color: #fff;
        box-shadow: 0px 0px 12px rgba(0, 0, 0, .12);
        position: absolute;

    }
    .SecondaryArrow {
        transition: transform 0.3s;
    }
    .SecondaryMenu.open .SecondaryArrow {
        transform: rotate(90deg);
    }
    .SecondaryMenuNav {
        display: none;
    }
    .SecondaryMenu.open .SecondaryMenuNav {
        display: block;
    }
    .ContentArea {
        padding-left: 0;
    }
    .ContentArea h1 {
        font-size: 26px;
    }
    .ContentArea h2 {
        font-size: 18px;
    }
    .ContentArea h3 {
        font-size: 18px;
    }
    .Revision {
        font-size: 12px;
    }
    .text_body-01 {
        width: 110px;
        flex: 0 0 110px;
    }
}

.BoardTitle {
    padding: .8rem;
    background-color: #E0F2FE;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
}

.BoardContent {
    display: flex;
}

.BoardContent .Item01 {
    padding: .8rem;
    width: 220px;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
    flex: 0 0 220px;
    border-bottom: 1px solid #E0F2FE;
}

.BoardContent .Item02 {
    width: calc(100% - 220px);
    display: flex;
    flex-wrap: wrap;
    /* padding: .8rem; */
    border-bottom: 1px solid #E0F2FE;
}

.BoardContent .Item02 div {
    width: calc(100% / 7);
    padding: .8rem;
    text-align: center;
}

.BoardContent .Item03 {
    width: calc(100% - 220px);
    border-bottom: 1px solid #E0F2FE;
}

.BoardContent .Item03 div {
    width: calc(100% / 7);
    padding: .8rem 0 .8rem 0;
}

@media (max-width: 1399px) {
    .BoardContent .Item03 div {
        padding: .8rem .8rem .8rem 1.2rem;
    }
}

@media (max-width: 991.98px) {
    .BoardContent .Item01 {
        width: 198px;
        flex: 0 0 198px;
    }
    .BoardContent .Item02 {
        width: calc(100% - 220px);
        display: flex;
        flex-wrap: wrap;
        padding: 0;
        border-bottom: 1px solid #E0F2FE;
    }
    .BoardContent .Item02 div {
        width: calc(100% / 2);
        text-align: center;
        padding: .8rem;
    }
    .BoardContent .Item03 div {
        padding: .8rem .8rem .8rem 1.4rem;
    }
    .BoardContent .Item03 div {
    width: 100%;
    padding: .8rem 0 .8rem 0;
}
}

.TabBoxBtn {
    border-bottom: 1px solid #E4E7ED;
}

.TabBoxBtn a {
    display: inline-block;
    padding: 1rem 1.25rem;
    text-decoration: none;
    color: #303133;
    background-color: #fff;
}

.TabBoxBtn a:hover {
    background-color: #F0F9FF;
    color: #0284C7;
}

.TabBoxBtn a.active {
    color: #0284C7;
    border-bottom: 2px solid #0284C7;
}

.SloganBox {
    padding-left: 1rem;
    color: #737373;
    border-left: 2px solid #737373;
}

@media (max-width: 991.98px) {
    .SloganBox {
        font-size: 14px;
        padding-left: .6rem;
    }
}

.NotYetRegistered {
    color: #909399;
    background-color: #F4F4F5;
    padding: 2px 4px;
    border-radius: 4px;
}

.RegistrationSuccessful {
    color: #67C23A;
    background-color: #F0F9EB;
    padding: 2px 4px;
    border-radius: 4px;
}

.UnderReview {
    color: #E6A23C;
    background-color: #FCF6EC;
    padding: 2px 4px;
    border-radius: 4px;
}

.FailedBox {
    color: #F56C6C;
    background-color: #FEF0F0;
    padding: 2px 4px;
    border-radius: 4px;
}

@media (max-width: 991.98px) {
    .CourseItem .Collect img {
        width: 20px;
        height: 20px;
    }
    .CourseItem .StateBox {
        font-size: 14px;
    }
}

.CourseDescriptionBox {
    border-top: 1px solid #D4D4D4;
    /* border-bottom: 1px solid #D4D4D4; */
    margin: 1.2rem 0;
    padding: 1.2rem 0;
}

.RequiredPoints {
    padding: 8px;
    background-color: #F0F9FF;
}

.RequiredPoints h4 {
    margin: 0;
    padding: 0;
}

@media (max-width: 991.98px) {
    .CourseDescriptionBtn a {
        width: 50%;
        text-align: center;
    }
    .RequiredPoints {
        padding: 5px;
    }
}

.ExchangeSuccessAll {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0, 0, 0, .4);
    z-index: 10000;
}

.ExchangeSuccessBox {
    color: #67C23A;
    padding: 1rem;
    background-color: #F0F9EB;
    border: 1px solid #E1F3D8;
    border-radius: 4px;
    position: absolute;
    right: 6%;
    top: 6%;
}

.ExchangeSuccessBox h4 {
    margin: 0 .5rem;
}

.ExchangeReviewAll {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0, 0, 0, .8);
    z-index: 10000;
}

.ExchangeReviewBox {
    color: #E6A23C;
    padding: 1rem;
    background-color: #FCF6EC;
    border: 1px solid #FAECD8;
    border-radius: 4px;
    position: absolute;
    right: 6%;
    top: 6%;
}

.ExchangeReviewBox h4 {
    margin: 0 .5rem;
}

.DividerBox {
    height: 1px;
    background-color: #D4D4D4;
    margin: 1.5rem 0;
}

/* .RegistrationNotice {
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
} */

.RegistrationNotice h3 {
    padding-top: 1rem;
}

.RegistrationNotice p {
    padding-bottom: 1rem;
}

.RegistrationNotice ul {
    padding-bottom: 1rem;
}

.RegistrationNotice ul li {
    list-style-type: disc;
    margin-left: 1.5rem;
}

.RegistrationNotice img {
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

.HealthEducationBox {
    width: 100%;
    height: 100%;
    text-decoration: none;
    display: inline-block;
    background-color: #F0F9FF;
    padding: 1rem;
    border-radius: 4px;
    box-shadow:0px 0px 8px rgba(0, 0, 0, .12);
}

.HealthEducationImg {
    border: 1px solid #D4D4D4;
}

.HealthEducationImg img {
    width: 100%;
    height: auto;
}

.HealthContent img {
    margin: 0;
}

.OptometryClinicsMinor .OptometryClinicsTitle {
    padding: 13px 20px 13px 32px;
    color: #fff;
    background-color: #0369A1;
}

.OptometryClinicsMinor ul li a {
    width: 100%;
    color: #303133;
    display: inline-block;
    background-color: #fff;
    text-decoration: none;
    padding: 13px 20px 13px 60px;
}

.OptometryClinicsMinor ul li a:hover {
    background-color: #E0F2FE;
}

.OptometryClinicsMinor ul li a.active {
    color: #409EFF;
}

.OptometryClinicsItem {
    display: block;
    color: #303133;
    text-decoration: none;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 0px 12px rgba(0, 0, 0, .12);
    padding: 1rem 1.5rem;
}

.OptometryClinicsItem:hover {
    color: #303133;
    background-color: #FFFBEB;
}

.OptometryClinicsItem h4 {
    margin-bottom: 6px;
}

.text-24px {
    font-size: 1.5rem;
}

@media (max-width: 991.98px) {
    .OptometryClinicsMinor {
        position: relative;
    }
    .OptometryClinicsMinor ul {
        display: none;
        position: absolute;
        width: 100%;
        background-color: #fff;
        box-shadow:0px 0px 8px rgba(0, 0, 0, .12);
    }
    .OptometryClinicsTitle .Rotation {
        transform: rotate(90deg);
    }
}

.ContactUsBox iframe {
    width: 100%;
    height: 430px;
}

.ContactUsBox p {
    line-height: 30px;
}

.ContactUsIcon a {
    display: inline-block;
    margin-right: 0.2rem;
    color: #303133;
    text-decoration: none;
}

@media (max-width: 991.98px) {
    .ContactUsBox iframe {
        height: 270px;
    }
    .ContactUsBox p {
        font-size: 14px;
    }
}

.col-form-label {
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    flex: 0 0 auto;
}

.col-form-label img {
    flex: 0 0 auto;
    vertical-align: middle;
}

.LoginInputbox {
    /* height: 70px; */
}

.LoginInputbox label {
    width: 110px;
}

.LoginInputbox input {
    width: calc(100% - 110px);
    /* height: 44px; */
}

.LoginInputbox.mistake input,
.MemberProfileBox01.mistake input,
.MemberProfileBox04.mistake input {
    border: 1px solid #F56C6C;
}

.Erro_Red {
    border: 1px solid #F56C6C;
}

.LoginInputbox .position-relative {
    width: calc(100% - 110px);
}

.SeparationBox .SeparationLine {
    width: 100%;
    height: 1px;
    background-color: #737373;
}

.SeparationBox .SeparationBody {
    background-color: #fff;
    padding: 10px;
    color: #737373;
}

.LoginInputbox .password-box { 
    position: relative; 
    width: calc(100% - 110px);
}

.LoginInputbox .password-box input {
    width: 100%;
    /* height: 44px; */
}

.LoginInputbox .form-control { padding-right: 40px; }
.toggle-password{
    position:absolute;
    right:10px;
    top:50%;
    transform:translateY(-50%);
    background:transparent;
    border:0;
    padding:4px;
    line-height:0;
    cursor:pointer;
    color:#737373;
}
.toggle-password:hover{ color:#0284C7; }
.toggle-password:focus-visible{
    outline:2px solid #0EA5E9;
    outline-offset:2px;
}
.LoginInputbox { 
    /* flex-wrap: wrap;  */
    position: relative;
}
.LoginInputbox .error-text {
    display: none;
    /* flex: 0 0 100%; */
    margin-left: 110px;
    padding-top: 0;
    margin-top: -14px;
    color: #F56C6C;
    font-size: 12px;
    position: absolute;
    bottom: -20px;
}

.LogInBox {
    position: relative;
}

.LogInBox.mistake01 .error-text01 {
    display: block;
}

.LogInBox.mistake01 .error-box {
    border: 1px solid #F56C6C;
}

.error-text01 {
    display: none;
    color: #F56C6C;
    font-size: 12px;
    position: absolute;
    bottom: -20px;
}

.LoginInputbox.mistake .error-text {
    display: block;
}

@media (max-width: 991.98px) {
    .LoginInputbox .error-text { margin-left: 110px; }
}

.errorMessage {
    display: none;
    max-width: 100%;
    color: #F56C6C;
    padding: .9rem 1rem;
    border: 1px solid #F56C6C;
    border-radius: 4px;
    background-color: #FDE2E2;
    z-index: 9999;
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translate(-50%, -120px);
    opacity: 0;
}

.errorMessage.is-visible {
    display: flex;
    animation: dropIn 300ms ease-out forwards;
}

.errorMessage.is-hiding {
    animation: fadeUpOut 250ms ease-in forwards;
}

@keyframes dropIn {
    0%   { transform: translate(-50%, -120px); opacity: 0; }
    60%  { transform: translate(-50%, 0);     opacity: 1; }
    100% { transform: translate(-50%, 0);     opacity: 1; }
}

@keyframes fadeUpOut {
    0%   { transform: translate(-50%, 0);     opacity: 1; }
    100% { transform: translate(-50%, -120px); opacity: 0; }
}

.CorrectMessage {
    display: none;
    max-width: 100%;
    color: #67C23A;
    padding: .9rem 1rem;
    border: 1px solid #67C23A;
    border-radius: 4px;
    background-color: #F0F9EB;
    z-index: 9999;
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translate(-50%, -120px);
    opacity: 0;
}
.CorrectMessage img {
    object-fit: contain;
    flex-shrink: 0;
}

.CorrectMessage.is-visible {
    display: flex;
    animation: dropIn 300ms ease-out forwards;
}

.CorrectMessage.is-hiding {
    animation: fadeUpOut 250ms ease-in forwards;
}

.MembershipBox {
    width: 100%;
    /* height: 100%; */
    padding: 0.5rem;
    border: 1px solid #D4D4D4;
    border-radius: 12px;
    background: -webkit-linear-gradient(left,#E0F2FE,#F0F9FF);
    background-color: #E0F2FE;
}

.MembershipBox .Membershipbody {
    height: 130px;
    margin-top: 0.5rem;
    border: 1px solid #D4D4D4;
    background-color: #fff;
}

.MembershipInbox {
    margin: 0 0.5rem;
    padding: 0.5rem;
    border-bottom: 1px solid #D4D4D4;
}

.MemberProfileBox01 label,
.MemberProfileBox02 label,
.MemberProfileBox03 label,
.MemberProfileBox04 label,
.MemberProfileBox06 label {
    width: 110px;
}
.MemberProfileBox08 .PracticeTitle {
    width: 110px;
}

.MemberProfileBox01 select {
    width: 102px;
    margin-right: 16px;
}

.MemberProfileBox01 input {
    width: calc(100% - 228px);
}

.MemberProfileBox02 {
    position: relative;
}

.MemberProfileBox02 span {
    position: absolute;
    left: 120px;
    top: 5px;
}

.MemberProfileBox02 input {
    width: calc(100% - 110px);
}

.MemberProfileBox02 .DateOfBirth {
    padding-left: 2rem;
}

.MemberProfileBox04 .Item00 {
    width: calc(100% - 110px);
}

.MemberProfileBox04 .Item01 {
    width: 102px;
    margin-right: 16px;
}

.MemberProfileBox04 .Item06 {
    width: 102px;
    margin-right: 16px;
}

.MemberProfileBox04 .Item07 {
    width: calc(100% - 236px);
}

.MemberProfileBox04 .Item02 {
    width: calc(100% - 354px);
}

.MemberProfileBox05 {
    margin-left: 110px;
}

.MemberProfileBox05 .form-check-input:checked {
    border: 1px solid #409EFF;
    background-color: #409EFF;
}

.MemberProfileBox08 .form-check-input:checked {
    border: 1px solid #409EFF;
    background-color: #409EFF;
}

.MemberProfileBox06 .Item01 {
    width: 180px;
    margin-right: 16px;
}

.MemberProfileBox06 .Item02 {
    width: calc(100% - 196px);
}

@media (max-width: 991.98px) {
    .MemberProfileBox04 .Item00 {
        width: 100%;
    }
    .MemberProfileBox04 .Item01{
        width: calc(100% / 3 );
        margin-right: 8px;
    }
    .MemberProfileBox04 .Item01:last-child {
        margin-right: 0;
    }
    .MemberProfileBox04 .Item02 {
        width: 100%;
    }
    .MemberProfileBox04 .Item06 {
        width: 50%;
        margin-right: 16px;
    }
    .MemberProfileBox04 .Item06:last-child {
        margin-right: 0;
    }

    .MemberProfileBox04 .Item07 {
        width: 100%;
        margin-top: .5rem;
    }
    .MemberProfileBox06 .Item01 {
        width: calc(50% - 16px);
        margin-right: 16px;
    }
    .MemberProfileBox06 .Item02 {
        width: 50%;
    }
}

/* Drag & Drop uploader */
.MemberProfileBox07 .MPTitle {
    width: 200px;
}

.FileUploadArea { 
    width: calc(100% - 200px); 
}

.FileUploadArea .Item1 {
    width: 50%;
}

.FileUploadArea .Item2 {
    width: 47%;
    margin-left: 3%;
    border: 1px solid #D4D4D4;
    background: #fff;
    padding: .8rem;
    border-radius: 4px;
}

.FileUploadArea .Item2 img {
    width: 100%;
    height: auto;
}

.FileDropZone {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px dashed #D4D4D4;
    background: #fff;
    padding: .5rem 1rem;
    border-radius: 4px;
    cursor: pointer;
    text-align: center;
    transition: border-color .2s, background-color .2s;
}

.FileDropZone .Icon img { 
    width: 64px; 
    height: 64px; 
    object-fit: contain; 
    margin-bottom: .4rem; 
}

.FileDropZone .link { 
    color: #409EFF; 
    /* text-decoration: underline;  */
}

.FileDropZone.dragover { 
    border-color: #0284C7; 
    background: #F0F9FF; 
}

.FilePreviewBox { 
    margin-top: .5rem; 
    word-break: 
    break-all; 
}

@media (max-width: 991.98px) {
    .MemberProfileBox07 {
        flex-wrap: wrap;
    }
    .MemberProfileBox07 .MPTitle {
        width: 100%;
    }
    .FileUploadArea { 
        width: 100%; 
    }
}

.btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

.MembershipLevelsTable thead th {
    width: calc(100% /3);
    border: 0;
    background-color: #E0F2FE;
    padding: 1rem;
}

.MembershipLevelsTable td {
    padding: 1rem;
    border-bottom: 1px solid #E0F2FE;
}

@media (max-width: 991.98px) {
    .MembershipLevelsTable thead th {
        width: auto;
    }
}

.AgainInputbox label {
    width: 135px;
}

.AgainInputbox .position-relative {
    width: calc(100% - 135px);
}

.AcademicCenterClassification a {
    display: inline-block;
    text-decoration: none;
    color: #737373;
    padding: .5rem 1.8rem;
    border: 1px solid #D4D4D4;
    border-radius: 4px;
    margin-right: 1rem;
}

.AcademicCenterClassification a:hover {
    background-color: #F0F9FF;
}

.AcademicCenterClassification a.active {
    color: #0C4A6E;
    border: 1px solid #0C4A6E;
    background-color: #F0F9FF;
}

.AFthumbnails {
    width: 324px;
    height: 182px;
}

.AFthumbnails img {
    width: 100%;
    height: auto;
}

.AcademicFilmsBox h4 {
    font-size: 18px;
}

.videoBox {
    width: 100%;
    height: auto;
}

.videoBox img {
    width: 100%;
    height: auto;
}

.AnswerQuestions {
    padding: .7rem 1rem;
    background-color: #FFFBEB;
    border: 1px solid #D4D4D4;
    border-radius: 4px;
}

@media (max-width: 991.98px) {
    .AFthumbnails {
        width: 100%;
        height: auto;
    }
    .AcademicFilmsBox h4 {
        font-size: 14px;
    }

}

.AcademicVideoQuizBox {
    background-color: #fff;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, .12);
    border-radius: 4px;
    overflow: hidden;
}

.AcademicVideoQuizBody .form-check-input:checked {
    border: 1px solid #409EFF;
    background-color: #409EFF;
}

.AcademicVideoQuizBox .AcademicVideoQuizTitle {
    background-color: #E0F2FE;
    padding: 1rem 1.5rem;
}

.AcademicVideoQuizBox .AcademicVideoQuizBody {
    padding: 1rem 1.5rem;
}

.MagazineBox {
    width: 205px;
    height: auto;
}

.MagazineBox img {
    width: 100%;
    height: auto;
}

.MagazineLink {
    color: #92400E;
    background-color: #FFFBEB;
    padding: .3rem .2rem;
}

.MagazineLink p span {
    word-wrap: break-word;
    overflow-wrap: break-word;
    text-decoration: underline;
}

.AcademicJournalsBox img {
    width: 100%;
    height: auto;
}

.MedicalCreditInquiryBox {
    padding: .5rem 1rem;
    border: 1px solid #E4E7ED;
}

.LearningPointsUl li {
    list-style-type: cjk-ideographic;
    margin-left: 2rem;
    line-height: 1.8rem;
}

.LearningPointsBox {
    width: 100%;
    padding: 0.5rem;
    border: 1px solid #D4D4D4;
    border-radius: 12px;
    background: -webkit-linear-gradient(left,#E0F2FE,#F0F9FF);
    background-color: #E0F2FE;
}

.LearningPointsBox h2 {
    width: 100%;
    background-color: #fff;
    border-radius: 4px;
    padding: .5rem 0;
}

.LearningPointsTable th {
    border: 0;
    background-color: #E0F2FE;
    padding: 1rem;
}

.LearningPointsTable td {
    padding: 1rem;
}

.LearningPointsTable th,
.LearningPointsTable td {
    vertical-align: middle;
}

.LPth01 {
    width: 110px;
}

@media (max-width: 991.98px) {
    .LearningPointsTable th {
        padding: 1rem .5rem;
    }

    .LearningPointsTable td {
        padding: 1rem .5rem;
    }
    .LPth01 {
        width: 82px;
    }
}

.CourseTable .CourseHeader {
    width: 100%;
    display: flex;
}
.CourseTable .CourseHeader div {
    font-size: 18px;
    padding: 0.7rem 1rem; 
    background-color: #E0F2FE;
}
.CourseTable .CourseHeader .CourseTableTh01 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseHeader .CourseTableTh02 {
    width: 30%;
}
.CourseTable .CourseHeader .CourseTableTh03 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseHeader .CourseTableTh04 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseHeader .CourseTableTh05 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseHeader .CourseTableTh06 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseHeader .CourseTableTh07 {
    width: 10%;
    text-align: center;
}

.CourseTable .CourseBody {
    width: 100%;
    display: flex;
    align-items: center;
}
.CourseTable .CourseBody {
    border-bottom: 1px solid #D4D4D4;
}
.CourseTable .CourseBody div {
    padding: 0.8rem 1rem;
}
.CourseTable .CourseBody .CourseTableTd01 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseBody .CourseTableTd02 {
    width: 30%;
}
.CourseTable .CourseBody .CourseTableTd03 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseBody .CourseTableTd04 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseBody .CourseTableTd05 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseBody .CourseTableTd06 {
    width: 12%;
    text-align: center;
}
.CourseTable .CourseBody .CourseTableTd07 {
    width: 10%;
    text-align: center;
}

@media (max-width: 991.98px) {
    .CourseTable .CourseHeader {
        flex-wrap: wrap;
    }
    .CourseTable .CourseHeader div {
        font-size: 14px;
        padding: 0.6rem 1rem; 
        background-color: #E0F2FE;
    }
    .CourseTable .CourseHeader .CourseTableTh01 {
        display: none;
    }
    .CourseTable .CourseHeader .CourseTableTh02 {
        width: 100%;
    }
    .CourseTable .CourseHeader .CourseTableTh03 {
        font-size: 12px;
        width: 21%;
        background-color: #F0F9FF;
    }
    .CourseTable .CourseHeader .CourseTableTh04 {
        font-size: 12px;
        width: 21%;
        background-color: #F0F9FF;
    }
    .CourseTable .CourseHeader .CourseTableTh05 {
        font-size: 12px;
        width: 21%;
        background-color: #F0F9FF;
    }
    .CourseTable .CourseHeader .CourseTableTh06 {
        font-size: 12px;
        width: 21%;
        background-color: #F0F9FF;
    }
    .CourseTable .CourseHeader .CourseTableTh07 {
        font-size: 12px;
        width: 16%;
        background-color: #F0F9FF;
    }

    .CourseTable .CourseBody {
        flex-wrap: wrap;
        padding: 0.7rem 0rem;
    }
    .CourseTable .CourseBody div {
        font-size: 14px;
        padding: .2rem 0;
    }
    .CourseTable .CourseBody .CourseTableTd01 {
        font-size: 12px;
        width: 100%;
        text-align: start;
    }
    .CourseTable .CourseBody .CourseTableTd02 {
        font-weight: 600;
        width: 100%;
    }
    .CourseTable .CourseBody .CourseTableTd03 {
        width: 21%;
        color: #303133;
    }
    .CourseTable .CourseBody .CourseTableTd04 {
        width: 21%;
        text-align: center;
        color: #303133;
    }
    .CourseTable .CourseBody .CourseTableTd05 {
        width: 21%;
        text-align: center;
        color: #303133;
    }
    .CourseTable .CourseBody .CourseTableTd06 {
        width: 21%;
        text-align: center;
        color: #303133;
    }
    .CourseTable .CourseBody .CourseTableTd07 {
        width: 16%;
        text-align: center;
        color: #303133;
    }
}

.CareersTable .CareersHeader {
    width: 100%;
    display: flex;
}
.CareersTable .CareersHeader div {
    font-size: 18px;
    padding: 0.7rem 1rem; 
    background-color: #E0F2FE;
}
.CareersTable .CareersHeader .CareersTh01 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersHeader .CareersTh02 {
    width: 36%;
}
.CareersTable .CareersHeader .CareersTh03 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersHeader .CareersTh04 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersHeader .CareersTh05 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersHeader .CareersTh06 {
    width: 16%;
    text-align: center;
}

.CareersTable .CareersBody {
    width: 100%;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #D4D4D4;
}
.CareersTable .CareersBody div {
    padding: 0.8rem 1rem;
}
.CareersTable .CareersBody .CareersTd01 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersBody .CareersTd02 {
    width: 36%;
}
.CareersTable .CareersBody .CareersTd03 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersBody .CareersTd04 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersBody .CareersTd05 {
    width: 12%;
    text-align: center;
}
.CareersTable .CareersBody .CareersTd06 {
    width: 16%;
    text-align: center;
}

@media (max-width: 991.98px) {
    .CareersTable .CareersHeader {
        flex-wrap: wrap;
    }
    .CareersTable .CareersHeader div {
        font-size: 14px;
    }
    .CareersTable .CareersHeader .CareersTh01 {
        display: none;
    }
    .CareersTable .CareersHeader .CareersTh02 {
        width: 100%;
    }
    .CareersTable .CareersHeader .CareersTh03 {
        font-size: 12px;
        background-color: #F0F9FF;
        width: 25%;
    }
    .CareersTable .CareersHeader .CareersTh04 {
        font-size: 12px;
        background-color: #F0F9FF;
        width: 25%;
    }
    .CareersTable .CareersHeader .CareersTh05 {
        font-size: 12px;
        background-color: #F0F9FF;
        width: 25%;
    }
    .CareersTable .CareersHeader .CareersTh06 {
        font-size: 12px;
        background-color: #F0F9FF;
        width: 25%;
    }

    .CareersTable .CareersBody {
        flex-wrap: wrap;
        padding: 0.8rem 0rem;
    }
    .CareersTable .CareersBody div {
        font-size: 14px;
        padding: .1rem 0;
    }
    .CareersTable .CareersBody .CareersTd01 {
        width: 100%;
        text-align: start;
    }
    .CareersTable .CareersBody .CareersTd02 {
        width: 100%;
        font-weight: 600;
    }
    .CareersTable .CareersBody .CareersTd03 {
        width: 25%;
        text-align: center;
    }
    .CareersTable .CareersBody .CareersTd04 {
        width: 25%;
        text-align: center;
    }
    .CareersTable .CareersBody .CareersTd05 {
        width: 25%;
        text-align: center;
    }
    .CareersTable .CareersBody .CareersTd06 {
        width: 25%;
        text-align: center;
    }
}

.CareersPageBox th,
.CareersPageBox td {
    border: 1px solid #D4D4D4;
    padding: .7rem 1rem;
    vertical-align: middle;
}

.CareersPageBox th {
    width: 20%;
    background-color: #E0F2FE;
    text-align: center;
}

@media (max-width: 991.98px) {
    .CareersPageBox th {
        width: 25%;
    }
}

.DocumentDownloadItem {
    box-shadow: 0px 0px 12px rgba(0, 0, 0, .12);
    padding: 1.5rem 1.5rem 1rem 1.5rem;
}

.DownloadIcon img {
    width: 24px;
    height: auto;
}

.OnlineLicenseUpdateBtn a {
    display: block;
    text-decoration: none;
    color: #606266;
    border: 1px solid #DCDFE6;
    padding: .5rem 1.5rem;
    margin-right: -1px;
}

.OnlineLicenseUpdateBtn a:hover {
    color: #0284C7;
}

.OnlineLicenseUpdateBtn a.active {
    color: #fff;
    background-color: #0284C7;
    border: 1px solid #0284C7;
}

.OnlineLicenseUpdateBtn a:first-child {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.OnlineLicenseUpdateBtn a:last-child {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

@media (max-width: 991.98px) {
    .OnlineLicenseUpdateBtn {
        flex-wrap: wrap;
        font-size: 14px;
    }
    .OnlineLicenseUpdateBtn a:first-child {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }
    .OnlineLicenseUpdateBtn a:last-child {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }
}

.PaymentCategoryBox {
    display: block;
    height: 100%;
    color: #171717;
    text-decoration: none;
    text-align: center;
    padding: 2rem;
    border-radius: 12px;
    border: 6px solid #E0F2FE;
}

.PaymentCategoryBox:hover {
    color: #171717;
}

.StepBox {
    max-width: 220px;
    width: 100%;
    margin-right: 1rem;
}
.StepBox .StepHeader {
    width: 100%;
    display: flex;
    align-items: center;
}
.StepBox .StepHeader .StepNumber {
    width: 24px;
    height: 24px;
    font-size: 14px;
    text-align: center;
    line-height: 24px;
    color: #909399;
    border-radius: 50%;
    background-color: #F4F4F5;
    border: 1px solid #E9E9EB;
    flex-shrink: 0;
    flex-grow: 0;
}
.StepBox .StepHeader .StepNumber.active {
    color: #fff;
    background-color: #FCD34D;
    border: 1px solid #FCD34D;
}
.StepBox .StepHeader .StepNumber.Finish {
    color: #FCD34D;
    background-color: #FFFBEB;
    border: 1px solid #FDE68A;
}

.StepBox .StepHeader .StepLine {
    width: calc(100% - 10px);
    margin-left: 10px;
    height: 2px;
    background-color: #E4E7ED;
}
.StepBox .StepHeader .StepLine.active {
    background-color: #FCD34D;
}

.StepBox .StepBody .StepTitle {
    font-size: 1.125rem;
    /* font-weight: 600; */
    color: #606266;
    margin-top: 0.5rem;
}

.StepBox .StepBody .StepContent {
    font-size: 1rem;
}

@media (max-width: 991.98px) {
    .StepBox {
        width: 100%;
        margin-right: 0;
        display: flex;
        margin-bottom: 10px;
    }
    .StepBox .StepHeader {
        width: auto;
        flex-direction: column;
        align-items: start; 
    }
    .StepBox .StepHeader .StepLine {
        width: 2px;
        margin-left: 0;
        height: 40px;
        background-color: #E4E7ED;
        margin-left: 10px;
        margin-top: 10px;
    }
    .StepBox .StepBody {
        margin-left: .75rem;
    }
    .StepBox .StepBody .StepTitle {
        margin-top: 0;
    }
}

.PaymentContent {
    width: 100%;
    height: 100%;
    padding: 1rem;
    border-radius: 12px;
    background: -webkit-linear-gradient(left,#E0F2FE,#F0F9FF);
    background-color: #E0F2FE;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, .12);
}

.PaymentContent .PaymentContentTitle {
    padding: 0.5rem;
    border-radius: 4px;
    background-color: #fff;
}

.PaymentContent .PaymentContentTitle p {
    font-size: 14px;
}

.PaymentListBox {
    border: 1px solid #D4D4D4;
    border-radius: 12px;
    padding-bottom: 1rem;
}
.PaymentListBox h4 {
    padding: 1rem;
    border-bottom: 1px solid #D4D4D4;
}

.PaymentListBottom {
    border-bottom: 1px solid #D4D4D4;
}

.PaymentListContent {
    padding: 0.8rem 0;
    margin: 0 1rem;
}
.PaymentListContent .Item {
    padding-bottom: 0.8rem;
}
.PaymentListContent .Item .Item01 {
    width: calc(100% - 110px);
}
.PaymentListContent .Item .Item02 {
    width: 110px;
    text-align: end;
}
.PaymentListContent h2 {
    margin: 0;
    padding: 0;
    color: #075985;
}

.PaymentMethodsBox {
    padding-left: 2rem;
    display: inline-block;
    border: 1px solid #DCDFE6;
    padding: .5rem;
    border-radius: 4px;
}
.PaymentMethodsBox .form-check-input {
    margin-left: 0;
    margin-right: .3rem;
    flex: 0 0 auto;
}

.PaymentMethodsBox .form-check-input:checked {
    border: 1px solid #409EFF;
    background-color: #409EFF;
}

.form-check .form-check-input:checked {
    border: 1px solid #409EFF;
    background-color: #409EFF;
}




/* ===== Loading Overlay ===== */
.LoadingOverlay {
    position: fixed;
    inset: 0;
    /* display: none; */
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.92);
    z-index: 20000;
}
.LoadingOverlay.is-visible { display: flex; }

.LoadingBox { 
    position: absolute;
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    gap: .75rem; 
    color: #fff; 
    top: 50%;
    left: 50%;
    transform:translate(-50%,-50%);
}
.LoadingSpinner { 
    width: 64px; 
    height: 64px; 
    object-fit: contain; 
    animation: spin 1s linear infinite; 
}
.LoadingText { 
    font-size: 14px; 
    letter-spacing: .05em; 
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.PaymentsRecordTable .PaymentsRecordHeader {
    width: 100%;
    display: flex;
}
.PaymentsRecordTable .PaymentsRecordHeader div {
    font-size: 18px;
    padding: 0.7rem 1rem; 
    background-color: #E0F2FE;
}
.PaymentsRecordHeader .PaymentsRecordTh01 {
    width: 20%;
    text-align: center;
}
.PaymentsRecordHeader .PaymentsRecordTh02 {
    width: 50%;
}
.PaymentsRecordHeader .PaymentsRecordTh03 {
    width: 15%;
    text-align: center;
}
.PaymentsRecordHeader .PaymentsRecordTh04 {
    width: 15%;
    text-align: center;
}

.PaymentsRecordTable .PaymentsRecordBody {
    width: 100%;
    display: flex;
    align-items: center;
}
.PaymentsRecordTable .PaymentsRecordBody {
    border-bottom: 1px solid #D4D4D4;
}
.PaymentsRecordTable .PaymentsRecordBody div {
    padding: 0.8rem 1rem;
}
.PaymentsRecordBody .PaymentsRecordTd01 {
    width: 20%;
    text-align: center;
}
.PaymentsRecordBody .PaymentsRecordTd02 {
    width: 50%;
}
.PaymentsRecordBody .PaymentsRecordTd03 {
    width: 15%;
    text-align: center;
}
.PaymentsRecordBody .PaymentsRecordTd04 {
    width: 15%;
    text-align: center;
}

.PaymentsRecord_Success {
    display: inline-block;
    padding: .2rem .4rem;
    color: #67C23A;
    background-color: #F0F9EB;
    border-radius: 4px;
    white-space: nowrap;
}

.PaymentsRecord_Error {
    display: inline-block;
    padding: .2rem .4rem;
    color: #F56C6C;
    background-color: #FEF0F0;
    border-radius: 4px;
    white-space: nowrap;
}

.PaymentsRecord_Audit {
    display: inline-block;
    padding: .2rem .4rem;
    color: #E6A23C;
    background-color: #FCF6EC;
    border-radius: 4px;
    white-space: nowrap;
}

.PaymentsRecordTd04 .Btn_GrayFrame_1.PRBtn {
    padding: .2rem .6rem;
}

@media (max-width: 991.98px) {
    .PaymentsRecordTable .PaymentsRecordHeader {
        flex-wrap: wrap;
    }
    .PaymentsRecordTable .PaymentsRecordHeader div {
        font-size: 14px;
        background-color: #E0F2FE;
    }
    .PaymentsRecordTable .PaymentsRecordHeader .PaymentsRecordTh01 {
        width: 45%;
        text-align: start;
        order: 2;
        background-color: #F0F9FF;
    }
    .PaymentsRecordTable .PaymentsRecordHeader .PaymentsRecordTh02 {
        width: 100%;
        order: 1;
    }
    .PaymentsRecordTable .PaymentsRecordHeader .PaymentsRecordTh03 {
        width: 30%;
        text-align: center;
        order: 3;
        background-color: #F0F9FF;
    }
    .PaymentsRecordTable .PaymentsRecordHeader .PaymentsRecordTh04 {
        width: 25%;
        text-align: center;
        order: 4;
        background-color: #F0F9FF;
    }

    .PaymentsRecordTable .PaymentsRecordBody {
        flex-wrap: wrap;
        font-size: 14px;
        padding: .8rem 0;
    }
    .PaymentsRecordTable .PaymentsRecordBody div {
        padding: .2rem 1rem;
    }
    .PaymentsRecordBody .PaymentsRecordTd01 {
        width: 45%;
        text-align: start;
        order: 2;
    }
    .PaymentsRecordBody .PaymentsRecordTd02 {
        width: 100%;
        order: 1;
    }
    .PaymentsRecordBody .PaymentsRecordTd03 {
        width: 30%;
        text-align: center;
        order: 3;
    }
    .PaymentsRecordBody .PaymentsRecordTd04 {
        width: 25%;
        text-align: center;
        order: 4;
    }
    .PaymentsRecordTd04 .Btn_GrayFrame_1.PRBtn {
        padding: .2rem .4rem;
    }

}

@media (max-width: 991.98px) {
    .PaymentAmount {
        white-space: nowrap;
    }
}

.RegistrationBox {
    padding: 1rem;
    border: 6px solid #E0F2FE;
    border-radius: 12px;
}

.RegistrationTable th,
.RegistrationTable td {
    padding: 1rem;
    vertical-align: middle;
}

.RegistrationTable th {
    border: 0;
    background-color: #E0F2FE;
}

.RegistrationTable td {
    width: calc(100% / 3);
    border-bottom: 1px solid #E0F2FE;
}

.RegistrationProgressBox {
    position: relative;
}

.RegistrationProgressBox .RegistrationProgressBg {
    width: 300px;
    height: 6px;
    background-color: #EBEEF5;
    border-radius: 5px;
}

.RegistrationProgressBox .Progress {
    height: 6px;
    background-color: #0284C7;
    border-radius: 5px;
    position: absolute;
    top: 0;
    left: 0;
}

.RegistrationProgressBox .Step1 {
    width: 30%;
}
.RegistrationProgressBox .Step2 {
    width: 30%;
}
.RegistrationProgressBox .Step3 {
    width: 60%;
}
.RegistrationProgressBox .Step4 {
    width: 70%;
}
.RegistrationProgressBox .Step5 {
    width: 90%;
}
.RegistrationProgressBox .CourseStep1 {
    width: 50%;
}
.RegistrationProgressBox .CourseStep2 {
    width: 90%;
}

@media (max-width: 991.98px) {
    .RegistrationProgressBox {
        width: 90%;
    }
    .RegistrationProgressBox .RegistrationProgressBg {
        width: 100%;
    }
}

.GuildStep5Box {
    padding: 1rem;
    border: 1px solid #D4D4D4;
    border-radius: 12px;
}

.w50 {
    width: 50%;
}

.pc-break {
    display: block;
}
@media (max-width: 991.98px) {
    .pc-break {
        display: inline;
    }
}

.PreviewZoomBox {
    display:none; 
    position:fixed; 
    top:0; 
    left:0; 
    width:100%; 
    height:100%; 
    background:rgba(0,0,0,0.8); 
    justify-content:center; 
    align-items:center; 
    z-index:30000;
}

.PreviewZoomBtnx {
    position:absolute; 
    top:20px; 
    right:30px; 
    font-size:40px; 
    color:#fff; 
    cursor:pointer;
}

.PreviewZoomBox img {
    max-width:70%; 
    max-height:70%;
}

@media (max-width: 991.98px) {
    .PreviewZoomBox img {
        max-width:90%; 
        max-height:90%;
    }
}

/* .CourseInfoBox {
    height: 40vh;
    overflow-y: auto;
} */

.CourseInfoBoxModal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 10000;
}

.CourseInfoBoxModalContent {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    border-radius: 8px;
    width: 90%;
    max-width: 1200px;
    width: 100%;
    max-height: 80vh;
    border-radius: 8px;
    overflow: hidden;
}
.CourseInfoBoxModalHeader {
    position: relative;
    padding: 0.7rem;
    margin-top: -1px;
}
.CourseInfoBoxModalHeader h3 {
    margin: 0;
    padding: 0;
}
.CourseInfoBoxModalHeader button {
    position: absolute;
    top: 1rem;
    right: 1rem;
}

.CourseInfoBoxModalBody {
    padding: 1.5rem 1rem;
    max-height: calc(80vh - 56px - 200px);
    overflow-y: auto;
}

.CourseInfoBoxModalFooter {
    padding: 1rem;
    height: 160px;
    text-align: right;
    border-top: 1px solid #D4D4D4;
}

@media (max-width: 991.98px) {
    .CourseInfoBoxModalContent {
        max-width: 94%;
        max-height: 80vh;
        height: 100%;
    }
    .CourseInfoBoxModalHeader {
        padding: 0.4rem;
    }
    .CourseInfoBoxModalHeader button {
        top: .7rem;
        right: .7rem;
    }
    .CourseInfoBoxModalFooter {
        height: 100px;
    }
}

.CourseLink {
    word-break: break-all;
    white-space: normal;
    display: inline-block;
    line-break: anywhere;
}

.Guideul li {
    list-style-type: decimal;
    margin-left: 1.1rem;
    line-height: 28px;
}







