/* ==========================
COMMON
========================== */
:root {
    --key-color: #863D0B;
}

/* clamp(MINpx, calc(MINpx + (MAX - MIN) * ((100vw - 360px) / 840)), MAXpx);
 */
*[class^="cont0"] {padding:clamp(40px, calc(40px + (80 - 40) * ((100vw - 360px) / 840)), 80px) 0;}
.inner {padding:0 4.5%;}

/* title */
h3 {text-align: center;
    margin-bottom:clamp(30px, calc(30px + (60 - 30) * ((100vw - 360px) / 840)), 60px);
}
h3 strong {
    font-size:clamp(30px, calc(30px + (46 - 30) * ((100vw - 360px) / 840)), 46px);
    color:#101010;font-weight:800;line-height:1.3;letter-spacing: -0.3px;}
h3 span {
    margin-top:clamp(8px, calc(8px + (16 - 8) * ((100vw - 360px) / 840)), 16px);
    font-size:clamp(18px, calc(18px + (24 - 18) * ((100vw - 360px) / 840)), 24px);
    display:block;color:#222;font-weight:400;line-height:1.4;letter-spacing: -0.18px;}

/* btn */
.btn-wrap {
    margin-top:clamp(30px, calc(30px + (60 - 30) * ((100vw - 360px) / 840)), 60px);
    display:flex;justify-content: center;}
.btn-wrap a {
    padding:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px) 0;
    font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px);
    display:inline-block;text-align: center;border-radius: 6px;background: #222;font-weight: 600;line-height: 1.4;letter-spacing: -0.18px;color: #FFF;position:relative;width:100%;max-width: 500px;}
.btn-wrap a:after {content:'';width:8px;height:8px;border-top:1px solid #fff;border-right:1px solid #fff;transform:rotate(45deg);position:absolute;top:22px;right:40px;}


/* table */
*[class^="table-style"] {
    font-size:clamp(14px, calc(14px + (16 - 14) * ((100vw - 360px) / 840)), 16px);
    border-top:1px solid #E5E5E5;border-bottom:1px solid #E5E5E5;width:100%;text-align: center;table-layout:fixed;}
*[class^="table-style"] thead tr th {
    font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px);
    padding: clamp(16px, calc(16px + (24 - 16) * ((100vw - 360px) / 840)), 24px) 0;
    border-right: 1px solid #E5E5E5;background-color:#F9F9F9;color:#101010;font-weight:bold;}
*[class^="table-style"] thead tr th:last-child {border-right:none;}
*[class^="table-style"] tr {border-bottom:1px solid #E5E5E5;}
*[class^="table-style"] tbody tr:last-child {border-bottom:none;}
*[class^="table-style"] tbody tr th {border-right: 1px solid #E5E5E5;font-weight:normal}
*[class^="table-style"] tr td {padding: 12px 22px;border-right: 1px solid #E5E5E5;color:#222;background-color:#fff;line-height:1.4;word-break: keep-all;position:relative;text-align: left;}
*[class^="table-style"] tr td:last-child {border-right:none;}
*[class^="table-style"] tr td strong {color:#222;font-weight:600;}
*[class^="table-style"] tr td .flag {position:absolute;top:50%;right:12px;display: inline-block;height: 24px;padding:6px 20px 6px 9px;border-radius: 999px;background: #FFEAEB;color:#ff3935;font-size:13px;font-weight:600;letter-spacing: -0.325px;line-height: 1;box-sizing: border-box;transform: translateY(-50%);}
*[class^="table-style"] tr td .flag:after {content:'';background:url("https://russeldata.megastudy.net/campus/images/russel/campus_common/2026/jdsm/ico_thunder.png") center no-repeat;position:absolute;top:50%;right:8px;width:9px;height:11px;transform:translateY(-50%);}
*[class^="table-style"] tr td.empty {background-color:#F7F7F7;}

/* etc */
.c-txt {
    font-size:clamp(13px, calc(13px + (14 - 13) * ((100vw - 360px) / 840)), 14px);
    color: #777;line-height:1.5;font-weight:400;text-align: left;padding-left:32px;
}
.r-txt {
    margin-top:clamp(12px, calc(12px + (24 - 12) * ((100vw - 360px) / 840)), 24px);
    font-size:clamp(13px, calc(13px + (14 - 13) * ((100vw - 360px) / 840)), 14px);
    color: #777;;line-height:1.5;font-weight:400;text-align: right;}

/* pagination */
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {bottom:0;}
.swiper-pagination-bullet {width:10px;height:10px;background-color:#DFDFDF;opacity: 1;}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {margin:0 4px;}
.swiper-pagination-bullet-active {width:24px;background-color:var(--key-color);border-radius:50px;}

/* ==========================
VISUAL
========================== */
.visual-wrap {padding:0 4%;}
.visual-wrap .visual {
    padding:clamp(90px, calc(90px + (180 - 90) * ((100vw - 360px) / 840)), 180px) 0;
    text-align:center;}
.visual-wrap .visual h2 img {width:100%;max-width: 900px;}
.visual-wrap .visual h3 {
font-size: clamp(22px, calc(22px + (46 - 22) * ((100vw - 360px) / 840)), 46px);
letter-spacing: clamp(6.6px, calc(6.6px + (13.8 - 6.6) * ((100vw - 360px) / 840)), 13.8px);
margin-bottom: clamp(24px, calc(24px + (50 - 24) * ((100vw - 360px) / 840)), 50px);
line-height:1;position:relative;display:inline-block;color:#101010;
font-weight: 800;
}
.visual-wrap .visual p {
    font-size: clamp(18px, calc(18px + (32 - 18) * ((100vw - 360px) / 840)), 32px);
    margin-top: clamp(24px, calc(24px + (50 - 24) * ((100vw - 360px) / 840)), 50px);
    color:#101010;line-height:1.4;font-weight:500;
}

/* ==========================
CONTENTS
========================== */
.cont01 {padding-top:0;}
.exam-paper {text-align: center;}
.exam-paper .exam-img {
    border-radius:clamp(10px, calc(10px + (20 - 10) * ((100vw - 360px) / 840)), 20px);
    padding:clamp(27px, calc(27px + (78 - 27) * ((100vw - 360px) / 840)), 78px) 13%;
    background-color:#F7F7F7;}
.exam-paper .exam-img img {width:100%;max-width: 577px;}
.exam-paper .exam-info {
    margin:clamp(14px, calc(14px + (28 - 14) * ((100vw - 360px) / 840)), 28px) auto 0;
    text-align: left;}
.exam-paper .exam-info dl {display:flex;color:#111;line-height:1.4;letter-spacing: -0.14px;
    font-size:clamp(14px, calc(14px + (16 - 14) * ((100vw - 360px) / 840)), 16px);
}
.exam-paper .exam-info dl dt {font-weight:600;}
.exam-paper .exam-info dl dd {color:#555;font-weight:400;margin-left:5px;}
.list-box {
    margin-top:clamp(30px, calc(30px + (60 - 30) * ((100vw - 360px) / 840)), 60px);
    padding:clamp(10px, calc(10px + (20 - 10) * ((100vw - 360px) / 840)), 20px) 7.6%;
    border-radius:clamp(10px, calc(10px + (20 - 10) * ((100vw - 360px) / 840)), 20px);
    background-color:#fff;box-sizing: border-box;border: 1px solid #EDEDED;}
.list-box dl {
    padding:clamp(20px, calc(20px + (40 - 20) * ((100vw - 360px) / 840)), 40px) 0;
    border-top:1px solid #EDEDED;}
.list-box dl:first-child {border-top:none;}
.list-box dl dt {color:var(--key-color);
    font-size:clamp(18px, calc(18px + (24 - 18) * ((100vw - 360px) / 840)), 24px);
    font-weight:700;line-height:1.4;letter-spacing: -0.18px;word-break: keep-all;}
.list-box dl dd {
    font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px);
    margin-top:8px;color:#555;font-weight:400;line-height:1.4;letter-spacing: -0.16px;word-break: keep-all;}
.review-slide {
    margin-top:clamp(32px, calc(32px + (50 - 32) * ((100vw - 360px) / 840)), 50px);
    padding-bottom:24px;
}
.review-slide ul {display:flex;}
.review-slide ul li {padding:20px 18px;box-sizing: border-box;width:100%;border-radius:20px;background-color:#F7F7F7;height:auto;}
.review-slide ul li .stu-wrap {display:flex;align-items: center;padding-bottom:12px;border-bottom:1px solid #EAEAEA;}
.review-slide ul li .stu-wrap div {border-radius:999px;overflow:hidden;width:80px;height:80px;margin-right:20px;}
.review-slide ul li .stu-wrap div img {width:100%;}
.review-slide ul li .stu-wrap dl {width:calc(100% - 100px);}
.review-slide ul li .stu-wrap dl dt {font-size: 14px;border-radius: 4px;background: #F2E8E1;padding: 7px 12px;color: var(--key-color);font-weight: 600;line-height: 1;letter-spacing: -0.35px;display:inline-block;}
.review-slide ul li .stu-wrap dl dd {margin-top:8px;}
.review-slide ul li .stu-wrap dl dd strong {
    font-size:clamp(20px, calc(20px + (24 - 20) * ((100vw - 360px) / 840)), 24px);
    color:#222;font-weight:700;line-height:1.4;}
.review-slide ul li p {
    margin-top:clamp(12px, calc(12px + (24 - 12) * ((100vw - 360px) / 840)), 24px);
    font-size:clamp(14px, calc(14px + (16 - 14) * ((100vw - 360px) / 840)), 16px);
    color:#555;font-weight:500;line-height: 1.6;word-break: keep-all;}
.review-slide ul li p strong {font-weight:700;}
.exam-sch {display:flex;flex-wrap:wrap;gap:8px;justify-content: center;}
.exam-sch li {
    font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px);
    padding:clamp(16px, calc(16px + (32 - 16) * ((100vw - 360px) / 840)), 32px) 0;
    width: calc(100% / 3 - 8px);
    border-radius:clamp(10px, calc(10px + (20 - 10) * ((100vw - 360px) / 840)), 20px);
    text-align: center;border:1px solid #E5E5E5;;background-color:#fff;color:#222;font-weight:600;letter-spacing: -0.16px;line-height:1.4;}
.btm-txt {
    font-size:clamp(28px, calc(28px + (40 - 28) * ((100vw - 360px) / 840)), 40px);
    padding:clamp(40px, calc(40px + (80 - 40) * ((100vw - 360px) / 840)), 80px) 0 ;
    padding-bottom:80px;
    color:var(--key-color);text-align: center;font-weight:800;line-height:1.3;letter-spacing: -0.4px;
}

/* ÅÂºí¸´ (768px ÀÌ»ó) */
@media (min-width: 768px) {
    /* ==========================
    COMMON
    ========================== */
    .inner {padding: 0 2%;}
    /* btn */
    .btn-wrap a:after {width:10px;height:10px;top:24px;}
    /* table */
    *[class^="table-style"] tr td {padding: 21px 24px 21px 44px;}
    
    /* ==========================
    CONTENTS
    ========================== */
    .cont01 .c-txt {text-align: left;padding-left:40px;}
    .list-box {padding-left:50px;padding-right:50px;}
    .review-slide ul li {padding:40px 30px;}
    .review-slide ul li .stu-wrap {padding-bottom:24px;}
    .review-slide ul li .stu-wrap div {width:74px;height:74px;margin-right:12px;}
    .exam-sch {flex-wrap:nowrap;gap:16px;}
    .exam-sch li {width: 100%;}
    .btm-txt {padding-bottom:160px;}
}

/* PC (1200px ÀÌ»ó) */
@media (min-width: 1200px) {
    /* ==========================
    COMMON
    ========================== */
    .inner {width:1000px;padding:0;margin:0 auto;}

    /* ==========================
    CONTENTS
    ========================== */
    .review-slide {padding-bottom:0;}
    .review-slide ul {gap:16px;}
    .review-slide ul li {width:calc(100% / 3 - 10px);}
}