body.modal-open {
    overflow: hidden !important;
}

.mainLayout {
    overscroll-behavior: none;
}

.modal {
    overscroll-behavior: contain;
}

@font-face {
    font-family: "LINESeedSansTH";
    src: url("../font/LINESeedSansTH_Th.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "LINESeedSansTH";
    src: url("../font/LINESeedSansTH_Rg.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "LINESeedSansTH";
    src: url("../font/LINESeedSansTH_Bd.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: "LINESeedSansTH";
    src: url("../font/LINESeedSansTH_XBd.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "LINESeedSansTH";
    src: url("../font/LINESeedSansTH_He.ttf") format("truetype");
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: "DB_Helvethaica_X";
    src: url("../font/DB-Helvethaica-X-Med.woff") format("truetype");
    font-weight: 800;
    /* Bold */
    font-style: normal;
}

@font-face {
    font-family: "Teenage";
    src: url("../font/Teenage/PSL219pro.ttf") format("truetype");
    font-weight: 600;
    /* Bold */
    font-style: normal;
}

@font-face {
    font-family: "Teenage";
    src: url("../font/Teenage/PSL221pro.ttf") format("truetype");
    font-weight: bold;
    font-style: normal;
}

.font-LINESeedSansTH {
    font-family: "LINESeedSansTH", sans-serif;
}

.font-DB_Helvethaica_X {
    font-family: "DB_Helvethaica_X", sans-serif;
}

.font-Teenage {
    font-family: "Teenage", sans-serif;
}

.ci-primary {
    color: #001d5d;
}

.ci-primary-500 {
    color: #5193ff;
}

.ci-text {
    color: #003173;
}

.ci-warning {
    color: #fab93c;
}

.btnTab {
    position: relative;
    width: 200px;
    height: 83px;
    padding: 10px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: url("../images/btn.png");
    background-position: center;
    background-size: cover;

    font-family: "LINESeedSansTH", sans-serif;
    font-size: 16px;
    line-height: 22px;
    font-weight: 800;
    color: #fff;

    transition: all .5s;
    box-shadow: 1px 1px 1px transparent;
}

.btnTab:hover {
    transform: scale(0.97);
    box-shadow: 0px 0px 10px 1px #000000;
}

.btnTab:active {
    transform: scale(0.89);
}

.btnTabNote {
    position: absolute;
    top: -22px;
    right: -20px;

    width: 55px;
    height: 55px;
    padding: 5px;

    background: url("../images/shape.png");
    background-position: center;
    background-size: cover;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 1;

    font-size: 10px;
    line-height: 10px;
    font-weight: 500;
}

.mainLayout {
    position: relative;
    width: 100%;
    max-width: 991px;
    min-height: 100dvh;
    margin: 0 auto;
    padding-top: 60px;
    /* padding-bottom: 50px; */

    background: url("../images/background/mainBg.png");
    background-position: center;
    background-size: cover;
    color: #fff;

    display: flex;
    flex-direction: column;
}

.contentMainLayout {
    width: 990px;
    height: 1360px;
    padding: 70px 65px;

    background: url("../images/background/contentBg.png");
    background-position: top;
    background-size: cover;
    color: #000;
}

.contentLayout {
    width: 100%;
    height: 100%;
}

.bannerTitleImg {
    width: 100%;
}

.bannerMonster {
    width: 320px;
    min-width: 320px;
}

/* =========== MODAL ===========  */
.modal-content {
    background: url("../images/background/mainBg.png");
    background-position: center;
    background-size: cover;
    border: 1px solid transparent;

    color: #fff;
    padding-bottom: 50px;

    display: flex;
    align-items: center;
}

.modal-fullscreen .modal-content {
    min-height: 100dvh;
    height: fit-content;
}

.buttonmodalClose {
    position: absolute;
    right: 30px;

    width: 50px;
    height: 50px;

    background: transparent;
    border: 1px solid transparent;
    color: #fff;

    font-size: 40px;
}

/* =========== TAB CONTENT ===========  */
.tabContentMainLayout {
    position: relative;
    width: 100%;
    min-height: 100dvh;
    padding: 50px 0px;
}

.tabContentHeaderLayout {
    position: relative;
    width: 100%;
    min-height: 100px;
    padding: 5px 10px;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    background: #224daa8e;
    color: #fff;

    font-family: "LINESeedSansTH", sans-serif;
    font-size: 35px;
    line-height: 22px;
    font-weight: 700;
}

.tabContentLayout {
    width: 100%;
    max-width: 1090px;
    min-height: fit-content;
    height: 100%;
    padding: 40px;

    display: flex;
    flex-direction: column;
}

.tabContentTopic {
    width: 100%;
    min-height: 50px;
    padding: 10px 10px;

    background: #000;
    color: #fff;

    font-family: "LINESeedSansTH", sans-serif;
    font-size: 20px;
    line-height: 22px;
    font-weight: 600;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tabTableMainLayout {
    width: 100%;
    min-height: 400px;
    display: flex;
    flex-direction: column;

    background: #e0e0e0;
    color: #000;

    font-family: "LINESeedSansTH", sans-serif;
    font-weight: 500;
}

.tabTableHeaderMainLayout {
    width: 100%;
    height: 60px;

    background: #243968;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 20px;
    font-weight: 600;
}

.tabTableHeader {
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
}

.tabTableHeader.left {
    width: 100%;
    min-width: 60%;
    border-right: 2px solid #c0c0c07c;
}

.tabTableHeader.right {
    width: 100%;
    min-width: 40%;
}

.tabTableTopicMainLayout {
    width: 100%;
    height: 55px;

    background: #3f5a98;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 20px;
    font-weight: 600;
}

.tableContentGroupLeft {
    width: 100%;
    min-width: 60%;
    height: 100%;
    border-right: 2px solid #c0c0c07c;
    border-bottom: 2px solid #c0c0c07c;


    display: flex;
    align-items: center;
    justify-content: center;

}



.tableContentGroupRight {
    width: 100%;
    min-width: 40%;
    height: 100%;
    border-bottom: 2px solid #c0c0c07c;


    display: flex;
    align-items: center;
    justify-content: center;
}

.tableContentGroupRight.disabled {
    border-bottom: 2px solid transparent;
}

.tabGroupLeft_1 {
    width: 100%;
    min-width: 20%;
    height: 100%;
    border-right: 2px solid #c0c0c07c;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tabGroupLeft_2 {
    width: 100%;
    min-width: 40%;
    height: 100%;
    border-right: 2px solid #c0c0c07c;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tabGroupLeft_3 {
    width: 100%;
    min-width: 40%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tabGroupRight_1 {
    width: 100%;
    min-width: 40%;
    height: 100%;
    border-right: 2px solid #c0c0c07c;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tabGroupRight_2 {
    width: 100%;
    min-width: 60%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tableContent {
    width: 100%;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 16px;
    font-weight: 600;
}

/* merge cell */
.mergedCell {
    background: #d8d8d8;
    font-weight: bold;
}

#content_51,
#content_52,
#content_53,
#content_54,
#content_55,
#content_56 .tableContentGroupLeft,
#content_57 .tableContentGroupLeft,
#content_58 .tableContentGroupLeft,
#content_59 .tableContentGroupLeft,
#content_60 .tableContentGroupLeft {
    background: #b3dbe6dc;
}

/* TABLE 2  */
.tableContentSecond {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: stretch;

    background: #e0e0e0;
    border-bottom: 2px solid #c0c0c07a;
    font-family: "LINESeedSansTH", sans-serif;
}

.tableSecondTitle {
    width: 200px;
    min-width: 200px;
    padding: 50px 20px;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    background: #243968;
    font-size: 20px;
    font-weight: 600;
}

.tableSecondContentLayout {
    width: 100%;
    height: 100%;

    display: flex;
    flex-direction: column;

    color: #000;
    font-family: "LINESeedSansTH", sans-serif;
    font-weight: 600;
}

.tableSecondContenTitle {
    width: 100%;
    min-height: 50px;

    background: #7b9be3;
    display: flex;
    align-items: center;
}

.tableSecondContenDetail {
    width: 100%;
    min-height: 50px;

    display: flex;
    align-items: center;
}

.tableContent {
    width: 100%;
    min-height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-right: 2px solid #c0c0c07a;
    border-bottom: 2px solid #c0c0c07a;

    font-weight: 700;
}