@charset "euc-kr";

/* ==============================
   CSS Variables
============================== */
:root {
    --mexx-color-black: #000000; 
    --mexx-color-white: #FFFFFF; 
    --mexx-color-gray1: #121212; 
    --mexx-color-gray2: #898993; 
    --mexx-color-gray3: #666666; 
    --mexx-color-gray4: #A1A1A1; 
    --mexx-color-gray5: #D1D1D1; 
    --mexx-color-gray6: #EFEFEF; 
    --mexx-color-gray7: #F9F9F9; 
    --mexx-color-bluegray0: #4F4F60; 
    --mexx-color-bluegray1: #6C6C7F; 
    --mexx-color-bluegray2: #898993; 
    --mexx-color-bluegray3: #CBCBD5; 
    --mexx-color-bluegray4: #DBDBE5; 
    --mexx-color-bluegray5: #F6F6FA; 
    --mexx-color-bluegray6: #F8F8FA; 
    --mexx-color-navy: #051730; 
    --mexx-color-navy2: #04214C; 
    --mexx-color-navy-hover: #051730; 
    --mexx-color-orange: #EA561C; 
    --mexx-color-orange1: #EA561C; 
    --mexx-color-orange2: #FF8C60; 
    --mexx-color-orange3: #FFCEBC; 
    --mexx-color-orange4: #FFF5F0; 
    --mexx-color-text: #000000; 
    --mexx-color-text-sub: #6C6C7F; 
    --mexx-color-text-muted: #898993; 
    --mexx-color-border: #DBDBE5; 
    --mexx-color-bg: #FFFFFF; 
    --mexx-color-bg-gray: #F6F6FA; 
    --mexx-color-bg-gray7: #F9F9F9; 
    --mexx-color-dim: rgba(0, 0, 0, 0.5); 
}

/* ==============================
   Layout
============================== */
html {scrollbar-gutter: stable;}
#mexx {overflow: clip; width: 100%;}
#mexx.is-sub {padding: 200px 0 150px;}
.mexx-container {padding: 0 60px; box-sizing: border-box; position: relative; transition: all .3s ease-in-out;}
.mexx-inner {width: 100%; max-width: calc(1200px + 120px); margin: 0 auto; padding: 0 60px; transition: all .3s ease-in-out;}

/* --- Title --- */
#mexx .sub-header {padding-top: 0; width: 100%; max-width: calc(1200px + 120px); margin: 0 auto; padding: 0 60px;}
#mexx .title-wrap {justify-content: flex-start;}
#mexx .sub-header-title,
.mexx-sub-title {margin: 0 0 60px; font-size: 36px; text-align: left;}

/* --- Tab sticky  --- */
.mexx-tab-sticky {position: sticky; top: var(--mexx-tab-top, 0px); z-index: 20; background: #fff; transition: top 0.3s;}


/* ==============================
   Components
============================== */

/* --- Utilities --- */
.mexx-hidden {display: none !important;}
.mexx-blind {position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; font-size: 0; top: -9999em; left: -9999em}
.mexx-text-sub {color: var(--mexx-color-text-sub);}
.mexx-text-muted {color: var(--mexx-color-text-muted);}
.mexx-text-orange {color: var(--mexx-color-orange);}
.mexx-text-navy {color: var(--mexx-color-navy);}

/* --- Checkbox ---  */
.mexx-form-check {display: inline-flex; align-items: center; gap: 6px; cursor: pointer;}
input[type="checkbox"].mexx-form-check__input {appearance: none; width: 19px; height: 19px; border: 1px solid var(--mexx-color-gray5); border-radius: 3px; background: var(--mexx-color-bg); cursor: pointer; flex-shrink: 0; transition: all 0.15s; position: relative; padding: 0;}
input[type="checkbox"].mexx-form-check__input:checked {background: var(--mexx-color-navy); border-color: var(--mexx-color-navy);}
input[type="checkbox"].mexx-form-check__input:checked::after {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/check_on.svg) no-repeat 52% 52% / auto auto;}
input[type="checkbox"].mexx-form-check__input:disabled {background: var(--mexx-color-bg-gray); border-color: var(--mexx-color-border); cursor: not-allowed;}
input[type="checkbox"].mexx-form-check__input:disabled:checked {border-color: var(--mexx-color-bg-gray);}
input[type="checkbox"].mexx-form-check__input:disabled:checked::after {background-image: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/check_off.svg)}
.mexx-form-check__label {font-size: 15px; color: var(--mexx-color-text);}

/* --- Radio --- */
.mexx-form-radio {display: inline-flex; align-items: center; gap: 6px; cursor: pointer;}
input[type="radio"].mexx-form-radio__input {appearance: none; width: 19px; height: 19px; border: 1px solid var(--mexx-color-gray5); border-radius: 50%; background: var(--mexx-color-bg); cursor: pointer; flex-shrink: 0; position: relative; padding: 0;}
input[type="radio"].mexx-form-radio__input:checked::after {content: ''; position: absolute; top: 50%; left: 50%; width: 7px; height: 7px; margin: -3.5px 0 0 -3.5px; border-radius: 50%; background: var(--mexx-color-black);}
input[type="radio"].mexx-form-radio__input:disabled {background: var(--mexx-color-gray6) !important; cursor: not-allowed;}
input[type="radio"].mexx-form-radio__input:disabled:checked::after {background: var(--mexx-color-gray5);}
.mexx-form-radio__label {font-size: 15px; color: var(--mexx-color-text);}

/* --- Dropdown --- */
.mexx-form-dropdown-wrap {position: relative; width: 100%;}
.mexx-dropdown {position: relative; width: 100%;}
.mexx-dropdown__button {position: relative; width: 100%; height: 40px; padding: 0 40px 0 14px; font-size: 14px; font-family: inherit; color: var(--mexx-color-bluegray1); border: 1px solid var(--mexx-color-gray5); border-radius: 3px; text-align: left; background: var(--mexx-color-white);}
.mexx-dropdown__button::after {content: ''; position: absolute; top: 50%; right: 12px; width: 14px; height: 14px; background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/arrow_bottom.svg) no-repeat center / auto auto; margin-top: -6.56px; transition: transform 0.2s ease;}
.mexx-dropdown.is-open .mexx-dropdown__button {border-color: var(--mexx-color-bluegray1); box-shadow: 0 0 0 1px rgba(111,112,133,.08); border-bottom: 0; border-radius: 3px 3px 0 0;}
.mexx-dropdown.is-open .mexx-dropdown__button::after {transform: rotate(180deg);}
.mexx-dropdown.is-selected .mexx-dropdown__button {color: var(--mexx-color-text);}
.mexx-dropdown__menu {display: none; position: absolute; top: calc(100% + 0px); left: 0; z-index: 10; width: calc(100% - 2px); padding: 8px 0; border: 1px solid var(--mexx-color-bluegray1); border-top: 0; border-radius: 0 0 3px 3px; background: var(--mexx-color-white);}
.mexx-dropdown.is-open .mexx-dropdown__menu {display: block;}
.mexx-dropdown__option {padding: 0 14px 0 14px; height: 40px; line-height: 1.5; color: var(--mexx-color-text); cursor: pointer; font-size: 14px; display: flex; align-items: center;}
.mexx-dropdown__option:hover, .mexx-dropdown__option:focus {outline: none;}
.mexx-dropdown__option.is-selected {font-weight: 500; color: var(--mexx-color-navy);}
.mexx-dropdown.is-disabled .mexx-dropdown__button {border-color: #d9d9df; background: #f3f3f3; color: #b3b3bb; cursor: not-allowed; box-shadow: none;}
.mexx-dropdown.is-disabled .mexx-dropdown__button::after {opacity: 0.45;}
.mexx-dropdown.is-disabled .mexx-dropdown__menu {display: none !important;}

/* --- Button --- */
.mexx-btn {display: inline-flex; align-items: center; justify-content: center; font-family: inherit; font-weight: 400; border-radius: 9999px; white-space: nowrap;}
.mexx-btn--filled {background: var(--mexx-color-bluegray1); color: var(--mexx-color-white); border: 1px solid var(--mexx-color-bluegray1);}
.mexx-btn--outline {background: transparent; color: var(--mexx-color-bluegray1); border: 1px solid var(--mexx-color-bluegray1);}
.mexx-btn--disabled {background: var(--mexx-color-gray6); color: var(--mexx-color-gray4); border: 1px solid var(--mexx-color-gray6); cursor: not-allowed; pointer-events: none;}
.mexx-btn--xl {height: 58px; padding: 0 40px; font-size: 16px;}
.mexx-btn--lg {height: 42px; padding: 0 34px; font-size: 14px;}
.mexx-btn--md {height: 30px; padding: 0 20px; font-size: 12px;}
.mexx-btn--sm {height: 24px; padding: 0 16px; font-size: 12px;}

@media (max-width: 767px) {
   .mexx-btn--xl {height: 42px; padding: 0 34px; font-size: 14px;}
   .mexx-btn--lg {height: 36px; padding: 0 28px; font-size: 14px;}
}

/* --- Badge --- */
.mexx-badge {display: inline-flex; align-items: center; justify-content: center; height: 22px; padding: 0 7px; font-size: 12px; font-weight: 500; border-radius: 5px; line-height: 1;}
.mexx-badge--outline {color: var(--mexx-color-bluegray1); border: 1px solid var(--mexx-color-bluegray3); background: transparent;}
.mexx-badge--filled {color: var(--mexx-color-white); background: var(--mexx-color-bluegray1); border: 1px solid var(--mexx-color-bluegray1);}

/* --- Paging --- */
.mexx-paging {display: flex; align-items: center; gap: 4px;}
.mexx-paging__btn {width: 16px; height: 16px; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 0;}
.mexx-paging__btn--prev {background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/arrow_left.svg) no-repeat center center /  auto; margin-right: 5px;}
.mexx-paging__btn--next {background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/arrow_right.svg) no-repeat center center / auto; margin-left: 5px;}
.mexx-paging__item {width: 18px; height: 16px; display: flex; align-items: center; justify-content: center; color: var(--mexx-color-bluegray3); border-radius: 4px; cursor: pointer; font-weight: 500;}
.mexx-paging__item:hover {color: var(--mexx-color-bluegray1);}
.mexx-paging__item--active {font-weight: 500; color: var(--mexx-color-bluegray1);}

/* --- Form --- */
.mexx-form-group {display: flex; flex-direction: column; gap: 6px;}
.mexx-form-label {font-size: 14px; font-weight: 500; color: var(--mexx-color-text-sub); font-size: 14px; margin-top: 6px;}
.mexx-form-control {width: 100%; height: 40px; padding: 0 40px 0 14px; font-size: 14px; font-family: inherit; color: var(--mexx-color-bluegray1); background: var(--mexx-color-bg); border: 1px solid var(--mexx-color-gray5); border-radius: 3px;}
.mexx-form-control:focus {border-color: var(--mexx-color-bluegray1);}
.mexx-form-control::placeholder {color: var(--mexx-color-gray4);}
.mexx-form-control:disabled {background: var(--mexx-color-gray6); color: var(--mexx-color-gray4); cursor: not-allowed; border: 1px solid var(--mexx-color-gray5); opacity: 1;}
.mexx-form-control--textarea {height: auto; padding: 12px 14px; resize: vertical; line-height: 1.6;}
.mexx-form-control--select {appearance: none; padding-right: 40px; background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/arrow_bottom.svg) no-repeat right 14px center / auto auto; cursor: pointer;}
.mexx-form-input-wrap {position: relative; display: flex; align-items: center;}
.mexx-form-input-wrap .mexx-form-control {padding-right: 40px;}
.mexx-form-input-wrap__clear {position: absolute; right: 12px; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; font-size: 0; cursor: pointer; background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/close_bg.svg) no-repeat center center / auto;}
.mexx-form-label--error {color: var(--mexx-color-orange);}

/* --- Tab --- */
.mexx-tab--line {display: flex; align-items: center;border-bottom: 1px solid var(--mexx-color-border);}
.mexx-tab--line .mexx-tab__item {font-weight: 500;color: var(--mexx-color-gray2);border-bottom: 2px solid transparent;margin-bottom: -1px;cursor: pointer;display: flex;align-items: center;justify-content: center;flex: 1;}
.mexx-tab--line .mexx-tab__item button{font-weight: 500;color: var(--mexx-color-gray2);border-bottom: 2px solid transparent;margin-bottom: -2px;cursor: pointer;display: flex;align-items: center;justify-content: center;flex: 1;padding: 0 20px 5px;}
.mexx-tab--line .mexx-tab__item button.active{font-weight: 700;color: var(--mexx-color-navy);border-bottom-color: var(--mexx-color-navy);}
.mexx-tab--line .mexx-tab__item button {height: 58px;font-size: 20px;line-height: 1.5;}
.mexx-tab--pill {display: flex; align-items: center; }
.mexx-tab--pill .mexx-tab__item button{display: flex;align-items: center;justify-content: center;font-weight: 500;color: var(--mexx-color-bluegray2);background: var(--mexx-color-gray7);border: 1px solid var(--mexx-color-gray7);border-radius: 9999px;cursor: pointer;}
.mexx-tab--pill .mexx-tab__item button.active {font-weight: 700;color: var(--mexx-color-white);background: var(--mexx-color-navy);border-color: var(--mexx-color-navy);}
.mexx-tab--pill {gap: 16px;}
.mexx-tab--pill .mexx-tab__item button{height: 50px;padding: 0 36px;font-size: 14px;}
.mexx-tab-panel,
.mexx-sub-panel {display: none;}
.mexx-tab-panel.active,
.mexx-sub-panel.active {display: block;}

@media (max-width: 767px) {
   .mexx-tab--line .mexx-tab__item button {height: 40px;font-size: 14px;line-height: 1.43;}
   .mexx-tab--pill {gap: 10px;}
   .mexx-tab--pill .mexx-tab__item button{height: 40px;padding: 0 24px;font-size: 12px;}
}


/* ==============================
   Typography
============================== */
.mexx-typo-h1 {font-size: clamp(50px, calc(50px + (60 - 50) * ((100vw - 768px) / 432)), 60px); line-height: 1.25;}
.mexx-typo-h2 {font-size: clamp(42px, calc(42px + (50 - 42) * ((100vw - 768px) / 432)), 50px); line-height: 1.28;}
.mexx-typo-h3 {font-size: clamp(38px, calc(38px + (46 - 38) * ((100vw - 768px) / 432)), 46px); line-height: 1.26;}
.mexx-typo-h4 {font-size: clamp(34px, calc(34px + (40 - 34) * ((100vw - 768px) / 432)), 40px); line-height: 1.33;}
.mexx-typo-h5 {font-size: clamp(30px, calc(30px + (36 - 30) * ((100vw - 768px) / 432)), 36px); line-height: 1.43;}
.mexx-typo-h6 {font-size: clamp(24px, calc(24px + (28 - 24) * ((100vw - 768px) / 432)), 28px); line-height: 1.43;}
.mexx-typo-h7 {font-size: clamp(22px, calc(22px + (26 - 22) * ((100vw - 768px) / 432)), 26px); line-height: 1.38;}
.mexx-typo-h8 {font-size: clamp(20px, calc(20px + (24 - 20) * ((100vw - 768px) / 432)), 24px); line-height: 1.42;}

.mexx-typo-body0 {font-size: clamp(18px, calc(18px + (22 - 18) * ((100vw - 768px) / 432)), 22px); line-height: 1.45;}
.mexx-typo-body1 {font-size: clamp(16px, calc(16px + (20 - 16) * ((100vw - 768px) / 432)), 20px); line-height: 1.5;}
.mexx-typo-body2 {font-size: clamp(15px, calc(15px + (18 - 15) * ((100vw - 768px) / 432)), 18px); line-height: 1.44;}
.mexx-typo-body3 {font-size: clamp(14px, calc(14px + (16 - 14) * ((100vw - 768px) / 432)), 16px); line-height: 1.5;}
.mexx-typo-body4 {font-size: clamp(12px, calc(12px + (14 - 12) * ((100vw - 768px) / 432)), 14px); line-height: 1.43;}
.mexx-typo-body5 {font-size: clamp(10px, calc(10px + (12 - 10) * ((100vw - 768px) / 432)), 12px); line-height: 1.33;}

.mexx-fw-bold {font-weight: 700;}
.mexx-fw-medium {font-weight: 500;}
.mexx-fw-regular {font-weight: 400;}
.mexx-fw-light {font-weight: 300;}

/* ==============================
   Header
============================== */
.mexx-gnb {position: fixed; left: 0; right: 0; top: 0; background: transparent; z-index: 1100; transition: transform 0.3s ease, background 0.3s ease; will-change: transform; transform: translateY(0);}
.mexx-gnb::before {content: ''; position: absolute; inset: 0; -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); opacity: 0; transition: opacity 0.3s ease; pointer-events: none; z-index: -1;}
.mexx-gnb.scroll::before {opacity: 1;}
.mexx-gnb.is-scrolled-up, .mexx-gnb.is-sub {background: var(--mexx-color-white);}
.mexx-gnb.is-scrolled-up .mexx-gnb__logo svg path, .mexx-gnb.is-sub .mexx-gnb__logo svg path {fill: var(--mexx-color-navy);}
.mexx-gnb.is-scrolled-up .mexx-gnb__menu ul li a, .mexx-gnb.is-sub .mexx-gnb__menu ul li a {color: var(--mexx-color-bluegray2);}
.mexx-gnb.is-scrolled-up .mexx-gnb__menu ul li a:hover, .mexx-gnb.is-sub .mexx-gnb__menu ul li a:hover,
.mexx-gnb.is-scrolled-up .mexx-gnb__menu ul li a.on, .mexx-gnb.is-sub .mexx-gnb__menu ul li a.on {color: var(--mexx-color-bluegray1);}
.mexx-gnb.is-scrolled-up .mexx-gnb__toggle span, .mexx-gnb.is-sub .mexx-gnb__toggle span {background: var(--mexx-color-navy);}
.mexx-gnb.is-scrolled-up .mexx-gnb__toggle:before, .mexx-gnb.is-scrolled-up .mexx-gnb__toggle:after, .mexx-gnb.is-sub .mexx-gnb__toggle:before, .mexx-gnb.is-sub .mexx-gnb__toggle:after {background: var(--mexx-color-navy);}
.mexx-gnb__hidden {transform: translateY(-100%);}
.mexx-gnb__logo {z-index: 1; position: absolute; left: 60px; top: 50%; transform: translateY(-50%); transition: all .3s ease-in-out;}
.mexx-gnb__logo a {display: flex; align-items: center;}
.mexx-gnb__logo svg {width: clamp(80px, calc(80px + (130 - 80) * ((100vw - 360px) / 840)), 130px); height: auto;}
.mexx-gnb__logo svg path {fill: var(--mexx-color-white); transition: fill 0.3s ease;}

.mexx-gnb__toggle {display: flex; align-items: center; justify-content: center; flex-direction: column; width: 30px; height: 30px; position: absolute; right: 60px; top: 50%; transform: translateY(-50%); transition: all .3s ease-in-out;}
.mexx-gnb__toggle span {display: block; text-indent: -9999px; background: var(--mexx-color-white); width: 100%; height: 2px; margin: 6px 0; transition: all .3s ease-in-out;}
.mexx-gnb__toggle:before,
.mexx-gnb__toggle:after {content: ''; position: relative; display: block; width: 100%; height: 2px; background: var(--mexx-color-white); transition: all .3s ease-in-out;}
.mexx-gnb__wrap > a {display: none; position: absolute; left: 30px; top: 24px;}
.mexx-gnb__wrap > a svg {display: block; width: 100px; width: clamp(80px, calc(80px + (130 - 80) * ((100vw - 360px) / 840)), 130px); height: auto;}
.mexx-gnb__wrap > a svg path {fill: var(--mexx-color-navy);}
.mexx-gnb__close {display: block; text-indent: -9999px; width: 24px; height: 24px; flex-shrink: 0; position: absolute; right: 30px; top: 30px;}
.mexx-gnb__close:before,
.mexx-gnb__close:after {content: ''; position: absolute; top: 50%; left: 50%; width: 22px; height: 2px; background: var(--mexx-color-bluegray1);}
.mexx-gnb__close:before {transform: translate(-50%, -50%) rotate(45deg);}
.mexx-gnb__close:after {transform: translate(-50%, -50%) rotate(-45deg);}

.mexx-gnb__wrap {padding: 90px 30px; position: fixed; top: 0; right: 0; width: 360px; height: 100vh; background: var(--mexx-color-white); z-index: 1200; transform: translateX(100%); transition: transform 0.3s ease; overflow-y: auto;}
.mexx-gnb.on ~ .mexx-gnb__wrap {transform: translateX(0);}
.mexx-gnb__overlay {display: none; position: fixed; inset: 0; background: var(--mexx-color-dim); z-index: 1150;}
.mexx-gnb.on ~ .mexx-gnb__overlay {display: block;}

.mexx-gnb__menu {display: block;}
.mexx-gnb__menu ul {height: 80px; display: flex; justify-content: center; align-items: center; gap: 0 40px;}
.mexx-gnb__menu ul li a {display: block;color: var(--mexx-color-bluegray2);font-size: 18px;line-height: 1.44;padding: 8px 0;transition: all .3s ease-in-out;font-weight: 500;}
.mexx-gnb__menu ul li a:hover,
.mexx-gnb__menu ul li a.on {color: var(--mexx-color-white); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 12px;}
.mexx-gnb__list {display: flex; flex-direction: column; gap: 16px;}
.mexx-gnb__list li a {color: var(--mexx-color-bluegray1); font-size: 20px; transition: all .3s ease-in-out; font-weight: 500; line-height: 1.5;}
.mexx-gnb__list li a:hover {color: var(--mexx-color-navy);}
.mexx-gnb__other {margin-top: 36px; padding-top: 36px; border-top: 1px solid var(--mexx-color-bluegray4); display: flex; flex-direction: column; gap: 16px;}
.mexx-gnb__other li a {color: var(--mexx-color-bluegray2); font-size: 20px; transition: all .3s ease-in-out; line-height: 1.5;}
.mexx-gnb__other li a:hover {color: var(--mexx-color-navy);}
.mexx-gnb__campus {margin-top: 40px; display: flex;}
.mexx-gnb__campus a {height: 30px; padding: 0 20px; font-size: 12px; color: var(--mexx-color-bluegray0); border: 1px solid var(--mexx-color-bluegray0); border-radius: 30px; display: flex; align-items: center; justify-content: center;}




/* ==============================
   Footer
============================== */
.mexx-footer {padding: 70px 0; background: var(--mexx-color-bluegray6); color: var(--mexx-color-bluegray2);}
.mexx-footer__inner {display: flex; position: relative;}
.mexx-footer__logo {flex-shrink: 0; margin-right: 70px;}
.mexx-footer__logo img {display: block; height: auto;}
.mexx-footer__info {flex-grow: 1;min-width: 0;margin-top: -3px;}
.mexx-footer__contact dt ul {display: flex; gap: 20px;}
.mexx-footer__contact dt ul li {display: flex; align-items: center; gap: 8px; font-size: 16px; font-weight: 400; color: var(--mexx-color-bluegray1);}
.mexx-footer__contact dt ul li strong {font-weight: 700;}
.mexx-footer__contact dd {margin-top: 10px; display: flex; flex-direction: column;}
.mexx-footer__contact dd ul {display: flex; align-items: center; flex-wrap: wrap;}
.mexx-footer__contact dd ul li {display: flex;align-items: center;font-size: 13px;font-weight: 200;color: var(--mexx-color-bluegray2);}
.mexx-footer__contact dd ul li:after {content: ''; display: block; width: 1px; height: 12px; background: var(--mexx-color-bluegray2); margin: 0 8px;}
.mexx-footer__contact dd ul li:last-child::after {display: none;}
.mexx-footer__corp {/*margin-top: 30px;*/ display: flex; flex-direction: column;}
.mexx-footer__corp dt {font-weight: 500; font-size: 14px; color: var(--mexx-color-bluegray2);}
.mexx-footer__corp dd {/*margin-top: 5px;*/ display: flex; flex-direction: column;}
.mexx-footer__corp dd ul {display: flex;align-items: flex-start;flex-wrap: wrap;flex-direction: column;}
.mexx-footer__corp dd ul li {/* display: flex; *//* align-items: center; */font-size: 13px;font-weight: 300;color: var(--mexx-color-bluegray2);}
.mexx-footer__corp dd ul li:after {display: block; width: 1px; height: 12px; background: var(--mexx-color-bluegray2); margin: 0 8px;}
.mexx-footer__corp dd ul li:last-child::after {display: none;}
.mexx-footer__corp dd ul li a {font-weight: 500;text-decoration: underline;}
.mexx-footer__nav {margin-top: 25px; display: flex; align-items: center; gap: 0 30px;font-weight: 500;}
.mexx-footer__nav li a {font-size: 16px; color: var(--mexx-color-bluegray2);}
.mexx-footer__nav li a strong {font-weight: 500; color: var(--mexx-color-navy);}
.mexx-footer__side {position: absolute; right: 60px; bottom: 0;}
.mexx-footer__group {display: flex; align-items: center; gap: 0 20px;}
.mexx-footer__sns {display: flex; align-items: center; gap: 0 10px;}
.mexx-footer__sns li a {display: block; width: 32px;}
.mexx-footer__sns li a img {display: block; width: 100%;}
.mexx-footer__family {position: relative; width: 200px;}
.mexx-footer__family button {position: relative; width: 100%; height: 42px; padding: 0 40px 0 14px; font-size: 14px; font-family: inherit; color: var(--mexx-color-bluegray2); border: 1px solid var(--mexx-color-gray2); border-radius: 3px; text-align: left; background: var(--mexx-color-white);}
.mexx-footer__family button::after {content: ''; position: absolute; top: 50%; right: 12px; width: 14px; height: 14px; margin-top: -7px; background: url(https://russeldata.megastudy.net/campus/images/russel/mexx/common/arrow_bottom.svg) no-repeat center / auto auto; transition: transform 0.2s ease; opacity: 0.6;}
.mexx-footer__family ul {display: none; position: absolute; bottom: calc(100% - 2px); left: 0; z-index: 10; width: 100%; height: 215px; padding: 8px 0; border: 1px solid var(--mexx-color-bluegray1); border-bottom: 0; border-radius: 3px 3px 0 0; background: var(--mexx-color-white); overflow-y: auto;}
.mexx-footer__family.is-open ul {display: block;}
.mexx-footer__family.is-open button::after {transform: rotate(180deg);}
.mexx-footer__family li {margin: 0;}
.mexx-footer__family a {display: flex; align-items: center; height: 40px; padding: 0 14px; color: var(--mexx-color-bluegray2); font-size: 14px; text-decoration: none;}
.mexx-footer__family a:hover, .mexx-footer__family a:focus {color: var(--mexx-color-bluegray1); outline: none;}
.mexx-footer.dark {background: var(--mexx-color-navy);}
.mexx-footer.dark .mexx-footer__nav li a strong {color: var(--mexx-color-white);}



/* ==============================
   Responsive (PC First)
============================== */

@media (max-width:1199px) {

   /* --- Layout --- */
   #mexx.is-sub {padding: 120px 0 100px;}
   #mexx .sub-header {padding: 0 40px;}
   #mexx .sub-header-title,
   .mexx-sub-title {margin: 0 0 30px; font-size: 22px;}
   .mexx-container {padding: 0 40px;}
   .mexx-inner {padding: 0 40px;}
   
   /* --- Header --- */
   .mexx-gnb__logo {left: 40px;}
   .mexx-gnb__toggle {width: 24px; height: 24px; right: 40px;}
   .mexx-gnb__toggle span {margin: 4px 0;}
   .mexx-gnb__menu {padding-right: 24px;}
   .mexx-gnb__menu ul {height: 70px; justify-content: right; gap: 0 50px; padding-right: 50px;}
   .mexx-gnb__menu ul li a {font-size: 16px;}

   /* --- Footer --- */
   .mexx-footer {padding: 50px 0;}
   .mexx-footer__inner {display: block;}
   .mexx-footer__logo {margin-right: 0;}
   .mexx-footer__logo img {width: 100px;}
   .mexx-footer__info {margin-top: 20px;}
   .mexx-footer__contact dd ul li {font-size: 12px;}
   .mexx-footer__contact dd ul li:after {height: 10px; margin: 0 6px;}
   .mexx-footer__corp {margin-top: 20px;}
   .mexx-footer__corp dd ul li {font-size: 12px;}
   .mexx-footer__corp dd ul li:after {height: 10px; margin: 0 6px;}
   .mexx-footer__nav {margin-top: 20px; gap: 0 14px;}
   .mexx-footer__nav li a {font-size: 12px;}
   .mexx-footer__side {right: 40px;}
   
}


@media (max-width: 767px) {

   /* --- Layout --- */
   #mexx.is-sub {padding: 100px 0 80px;}
   #mexx .sub-header {padding: 0 20px;}
   #mexx .sub-header .sub-header-back {display: none;}
   .mexx-container {padding: 0 20px;}
   .mexx-inner {padding: 0 20px;}

   /* --- Header --- */
   .mexx-gnb .mexx-container {height: 60px; display: flex; justify-content: space-between; align-items: center;}
   .mexx-gnb__logo {position: static; left: auto; top: auto; transform: none;}
   .mexx-gnb__toggle {position: static; right: auto; top: auto; transform: none;}
   .mexx-gnb__menu {display: none;}
   .mexx-gnb__wrap {width: 100%;}
   .mexx-gnb__wrap > a {display: block;}
   .mexx-gnb__list li a {font-size: 18px;}
   .mexx-gnb__other {margin-top: 30px; padding-top: 30px; gap: 20px;}
   .mexx-gnb__other li a {font-size: 18px;}
   .mexx-gnb__campus {margin-top: 30px;}
   .mexx-gnb__close {top: 20px;}


   /* --- Footer --- */
   .mexx-footer {padding: 40px 0;}
   .mexx-footer__logo img {width: 80px;}
   .mexx-footer__contact dt ul {display: block;}
   .mexx-footer__contact dt ul li strong {width: 60px;}
   .mexx-footer__contact dd {margin-top: 6px;}
   .mexx-footer__contact dd ul {display: block;}
   .mexx-footer__contact dd ul li:after {display: none;}   
   .mexx-footer__corp dd {margin-top: 4px;}
   .mexx-footer__corp dd ul {display: block;}
   .mexx-footer__corp dd ul li:after {display: none;}
   .mexx-footer__nav li a {font-size: 12px;}
   .mexx-footer__side {position: static; margin-top: 20px;}
   .mexx-footer__group {justify-content: space-between;}

}

