@charset 'UTF-8';

/* s: 261020 요금제 진단 */

/* ==================================================
   공통
================================================== */
.planDiagnosis,
.modal-planDiagnosis .modal-content {
    font-family: 'Pretendard', Arial, sans-serif;
    color: #000;
    letter-spacing: -0.02em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
/* 리셋 : 하위 요소 우선순위를 단일 클래스(0,1,0)로 유지 */
.planDiagnosis :where(ul, ol, dl, dd, p),
.modal-planDiagnosis :where(ul, ol, dl, dd, p) {
    margin: 0;
    padding: 0;
    list-style: none;
}
.planDiagnosis-point {color: #3617ce;}

/* 하단 고정(sticky) 영역 : 공통 #wrap, #ct 의 overflow:hidden 은 sticky 를 막으므로 해당 페이지에서만 clip 으로 대체 */
#wrap:has(.planDiagnosis-select, .planDiagnosis-action--sticky),
#ct:has(.planDiagnosis-select, .planDiagnosis-action--sticky) {overflow: clip;}

/* 서브 타이틀 (이용중인 요금제) */
.planDiagnosis-subTitle {
    margin: 40px 0 30px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
}

.planDiagnosis-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 64px;
    padding: 0 20px;
    border: 1px solid #3617ce;
    border-radius: 100px;
    background: #3617ce;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}
.planDiagnosis-btn:hover,
.planDiagnosis-btn:focus {color: #fff; text-decoration: none;}
.planDiagnosis-btn--line {background: #fff; color: #3617ce;}
.planDiagnosis-btn--line:hover,
.planDiagnosis-btn--line:focus {color: #3617ce;}

.planDiagnosis-action {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 420px;
    margin: 40px auto 0;
}
.planDiagnosis-action--sm {max-width: 360px;}

.planDiagnosis-dotList > li {
    position: relative;
    padding-left: 11px;
    color: #666;
    font-size: 16px;
    line-height: 1.5;
    word-break: keep-all;
}
.planDiagnosis-dotList > li + li {margin-top: 2px;}
.planDiagnosis-dotList > li::before {
    content: '';
    position: absolute;
    top: .75em;
    left: 0;
    width: 3px;
    height: 3px;
    margin-top: -1px;
    border-radius: 50%;
    background: currentColor;
}

/* 안내 박스 (노란 배경) */
.planDiagnosis-notice {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 20px;
    border-radius: 16px;
    background: #fffae0;
    text-align: left;
}
.planDiagnosis-notice__icon {
    flex: none;
    width: 22px;
    height: 22px;
}
.planDiagnosis-notice__cont {flex: 1; min-width: 0;}
.planDiagnosis-notice__title {
    display: block;
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
}
.planDiagnosis-notice__desc {
    margin-top: 6px;
    color: #666;
    font-size: 16px;
    line-height: 1.6;
    word-break: keep-all;
}
.planDiagnosis-notice__text {
    color: #333;
    font-size: 16px;
    line-height: 1.6;
    word-break: keep-all;
}
.planDiagnosis-notice__text + .planDiagnosis-notice__text {margin-top: 4px;}
.planDiagnosis-notice--plain {padding: 0; border-radius: 0; background: none;}

.planDiagnosis-moOnly {display: none;}


/* ==================================================
   결과 화면 (01, 03, 04, 05, 06)
================================================== */
.planDiagnosis-result {
    padding-top: 60px;
    text-align: center;
}

/* 말풍선 */
.planDiagnosis-result__bubble {
    position: relative;
    display: inline-block;
    margin-bottom: 20px; /* 261026 수정 */
    padding: 8px 20px;
    border-radius: 100px;
    background: #eef0fc;
    color: #3617ce;
    font-size: 18px; /* 261026 수정 */
    font-weight: 500;
    line-height: 1.4;
}
.planDiagnosis-result__bubble::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -8px;
    border-style: solid;
    border-width: 12px 8px 0;
    border-color: #eef0fc transparent transparent;
}

/* 일러스트 */
.planDiagnosis-result__img {
    display: block;
    width: 100px; /* 261026 수정 */
    height: 96px; /* 261026 수정 */
    margin: 12px auto 0;
    object-fit: contain;
    filter: drop-shadow(2px 3px 7px rgba(0, 0, 0, .15));
}

.planDiagnosis-result__title {
    margin: 24px 0 0;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.4;
    word-break: keep-all;
}
.planDiagnosis-result__bubble + .planDiagnosis-result__title {margin-top: 14px;}
.planDiagnosis-result__title--lg {font-size: 26px; font-weight: 600;}

.planDiagnosis-result__desc {
    margin-top: 12px;
    color: #666;
    font-size: 18px;
    line-height: 1.65;
    word-break: keep-all;
}
.planDiagnosis-result__sub {
    margin-top: 12px;
    color: #666;
    font-size: 18px;
    line-height: 1.5;
}

/* 회색 정보 박스 */
.planDiagnosis-result__info {
    width: 100%;
    max-width: 320px;
    margin: 20px auto 0;
    padding: 16px;
    border-radius: 10px;
    background: #f7f7f7;
    text-align: left;
}
.planDiagnosis-result__info--wide {max-width: 500px;}
.planDiagnosis-result__notice {
    max-width: 500px;
    margin: 20px auto 0;
}

/* 정보 행 (라벨 : 값) */
.planDiagnosis-infoList > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.planDiagnosis-infoList > div + div {margin-top: 8px;}
.planDiagnosis-infoList dt {
    color: #767676;
    font-size: 16px;
    font-weight: 400;
}
.planDiagnosis-infoList dd {
    font-size: 16px;
    font-weight: 600;
    text-align: right;
}

/* 하단 혜택 배너 */
.planDiagnosis-benefit {margin-top: 60px;}
.planDiagnosis-benefit__title {
    margin: 0 0 16px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
}
.planDiagnosis-benefit__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.planDiagnosis-benefit__link {
    display: flex;
    align-items: center;
    gap: 20px;
    height: 100%;
    padding: 30px;
    border: 1px solid #e1e1e1;
    border-radius: 16px;
    background: #fff;
    color: #000;
    text-decoration: none;
}
.planDiagnosis-benefit__link:hover,
.planDiagnosis-benefit__link:focus {color: #000; text-decoration: none;}
.planDiagnosis-benefit__link::after {
    content: '';
    flex: none;
    width: 12px;
    height: 12px;
    margin-right: 6px;
    background: url(/html/images/planDiagnosis/ico_arrow_right.svg) no-repeat center / 100% 100%;
    transform: rotate(45deg);
}
.planDiagnosis-benefit__icon {
    display: flex;
    flex: none;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #eef0fc;
}
.planDiagnosis-benefit__icon img {width: 36px; height: 36px;}
.planDiagnosis-benefit__text {flex: 1; min-width: 0;}
.planDiagnosis-benefit__name {
    display: block;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
.planDiagnosis-benefit__desc {
    display: block;
    margin-top: 2px;
    color: #666;
    font-size: 16px;
    line-height: 1.5;
}


/* ==================================================
   박스 (02 사용 패턴 / 요금제 비교)
================================================== */
.planDiagnosis-box {
    padding: 40px;
    border: 1px solid #e1e1e1;
    border-radius: 16px;
    background: #fff;
}
.planDiagnosis-box + .planDiagnosis-box,
.planDiagnosis > .planDiagnosis-box:first-child {margin-top: 40px;}
.planDiagnosis-box__label {
    display: block;
    color: #767676;
    font-size: 17px;
    line-height: 20px;
}
.planDiagnosis-box__title {
    margin: 5px 0 0;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.2;
}
.planDiagnosis-box__notes {margin-top: 24px;}


/* 탭 (radio + label, No-JS) */
.planDiagnosis-tab {margin-top: 24px;}
.planDiagnosis-tab__radio {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.planDiagnosis-tab__menu {
    display: flex;
    margin: 0 -40px;
    padding: 0 40px;
    border-bottom: 1px solid #e1e1e1;
}
.planDiagnosis-tab__menu > li {flex: 1;}
.planDiagnosis-tab__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 64px;
    margin: 0 0 -1px;
    border-bottom: 2px solid transparent;
    color: #767676;
    font-size: 20px;
    font-weight: 400;
    cursor: pointer;
}
.planDiagnosis-tab__panel {display: none; padding-top: 24px;}

.planDiagnosis-tab__radio:nth-of-type(1):checked ~ .planDiagnosis-tab__menu > li:nth-child(1) .planDiagnosis-tab__btn,
.planDiagnosis-tab__radio:nth-of-type(2):checked ~ .planDiagnosis-tab__menu > li:nth-child(2) .planDiagnosis-tab__btn,
.planDiagnosis-tab__radio:nth-of-type(3):checked ~ .planDiagnosis-tab__menu > li:nth-child(3) .planDiagnosis-tab__btn {
    border-bottom-color: #5857d8;
    color: #5857d8;
    font-size: 21px;
    font-weight: 600;
}
.planDiagnosis-tab__radio:nth-of-type(1):focus-visible ~ .planDiagnosis-tab__menu > li:nth-child(1) .planDiagnosis-tab__btn,
.planDiagnosis-tab__radio:nth-of-type(2):focus-visible ~ .planDiagnosis-tab__menu > li:nth-child(2) .planDiagnosis-tab__btn,
.planDiagnosis-tab__radio:nth-of-type(3):focus-visible ~ .planDiagnosis-tab__menu > li:nth-child(3) .planDiagnosis-tab__btn {
    outline: 2px solid #5857d8;
    outline-offset: -2px;
}
.planDiagnosis-tab__radio:nth-of-type(1):checked ~ .planDiagnosis-tab__panel:nth-of-type(1),
.planDiagnosis-tab__radio:nth-of-type(2):checked ~ .planDiagnosis-tab__panel:nth-of-type(2),
.planDiagnosis-tab__radio:nth-of-type(3):checked ~ .planDiagnosis-tab__panel:nth-of-type(3) {
    display: block;
}


/* 그래프
   - 막대 높이 : .planDiagnosis-graph__bar 에 style="height:N%" (영역 대비 비율)
   - 막대 유형 : --base(기본 제공량) / --over(초과) / --limit(속도제한) / --unlimited(무제한) / --extra(+ 제공량 패턴)
*/
.planDiagnosis-graph {
    position: relative;
    overflow: hidden;
}
.planDiagnosis-graph__list {
    display: flex;
    justify-content: center;
    gap: 120px;
}
.planDiagnosis-graph__item {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.planDiagnosis-graph__area {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 170px; /* 261029 수정 */
    padding-top: 36px;
}
/* 기준선 */
.planDiagnosis-graph__area::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: -9999px;
    right: -9999px;
    height: 1px;
    background: #e1e1e1;
}
.planDiagnosis-graph__bar {
    position: relative;
    width: 64px;
    min-height: 4px;
    max-height: 100%;
    border-radius: 8px 8px 0 0;
    background: #5857d8;
}
.planDiagnosis-graph__value {
    position: absolute;
    bottom: 100%;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    transform: translateX(-50%);
    white-space: nowrap;
}
.planDiagnosis-graph__num {
    color: #5857d8;
    font-size: 16px;
    font-weight: 700;
    line-height: 19px;
}
.planDiagnosis-graph__label {
    margin-top: 15px;
    color: #333;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
}

/* 툴팁 */
.planDiagnosis-graph__tip {
    position: relative;
    display: block;
    padding: 3px 8px;
    border-radius: 6px;
    background: #ffecee;
    color: #ea002c;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}
.planDiagnosis-graph__tip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-style: solid;
    border-width: 5px 5px 0;
    border-color: #ffecee transparent transparent;
}

/* 막대 유형 */
.planDiagnosis-graph__bar--base {background: #cdcdf3;}
.planDiagnosis-graph__bar--base .planDiagnosis-graph__num {color: #333;}

.planDiagnosis-graph__bar--over {background: #ea002c;}
.planDiagnosis-graph__bar--over .planDiagnosis-graph__num {color: #ea002c;}

.planDiagnosis-graph__bar--limit {background: #fea647;}
.planDiagnosis-graph__bar--limit .planDiagnosis-graph__num {color: #e76a0b;}
.planDiagnosis-graph__bar--limit .planDiagnosis-graph__tip {background: #fffae0; color: #e76a0b;}
.planDiagnosis-graph__bar--limit .planDiagnosis-graph__tip::after {border-top-color: #fffae0;}

/* 무제한 : 상단 그라데이션 */
.planDiagnosis-graph__bar--unlimited {
    background: linear-gradient(to bottom, #f5f4fd 0, #cdcdf3 32px, #cdcdf3 100%);
}
/* + 제공량 : 상단 사선 패턴 */
.planDiagnosis-graph__bar--extra::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 32px;
    max-height: 100%;
    border: 1px dashed #b3b3f6;
    border-bottom: 0;
    border-radius: 8px 8px 0 0;
    background: repeating-linear-gradient(-45deg, #f5f4fd 0, #f5f4fd 4px, #dcdbf8 4px, #dcdbf8 6px);
}

/* 비교 그래프 (데이터 | 통화) */
.planDiagnosis-graph--compare {display: flex; margin-top: 24px;}
.planDiagnosis-graph--compare .planDiagnosis-graph__group {flex: 1; min-width: 0;}
.planDiagnosis-graph--compare .planDiagnosis-graph__group + .planDiagnosis-graph__group {border-left: 1px dashed #e1e1e1;}
.planDiagnosis-graph--compare .planDiagnosis-graph__list {gap: 80px;}
.planDiagnosis-graph--compare .planDiagnosis-graph__area {height: 230px; padding-top: 64px;}
.planDiagnosis-graph__title {
    color: #000;
    font-size: 21px;
    font-weight: 700;
    line-height: 31px;
    text-align: center;
}

/* 평균 배너 */
.planDiagnosis-average {
    margin-top: 24px;
    padding: 30px 20px 40px;
    border-radius: 16px;
    background: #f7f7f7;
    text-align: center;
}
.planDiagnosis-average__title {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    line-height: 26px;
}
.planDiagnosis-average__list {display: flex; margin-top: 17px;}
.planDiagnosis-average__list > div {flex: 1;}
.planDiagnosis-average__list > div + div {border-left: 1px solid #e1e1e1;}
.planDiagnosis-average__list dt {
    color: #767676;
    font-size: 18px;
    font-weight: 400;
    line-height: 22px;
}
.planDiagnosis-average__list dd {
    margin-top: 5px;
    color: #3617ce;
    font-size: 40px;
    font-weight: 800;
    line-height: 40px;
}
.planDiagnosis-average__unit {
    margin-left: 2px;
    color: #767676;
    font-size: 16px;
    font-weight: 500;
}

/* 비교 요약 배너 */
.planDiagnosis-summary {
    margin-top: 24px;
    padding: 20px 20px; /* 261026 수정 */
    border-radius: 16px;
    background: #eef0fc;
    text-align: center;
}
.planDiagnosis-summary__desc {
    color: #666;
    font-size: 16px;
    line-height: 24px;
}
.planDiagnosis-summary__text {
    margin-top: 4px; /* 261026 수정 */
    font-size: 21px;
    font-weight: 700;
    line-height: 25px;
    word-break: keep-all;
}


/* ==================================================
   절약 진단 (02)
================================================== */
.planDiagnosis-saving {
    margin-top: 50px;
    padding: 50px 0;
    background: #f7f7f7;
    box-shadow: 0 0 0 100vmax #f7f7f7;
    clip-path: inset(0 -100vmax);
}
.planDiagnosis-saving__badge {
    display: inline-block;
    padding: 5px 20px;
    border-radius: 100px;
    background: #ebebfb;
    color: #3617ce;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
}
.planDiagnosis-saving__title {
    margin: 10px 0 0;
    font-size: 26px;
    font-weight: 700;
    line-height: 31px;
}
.planDiagnosis-saving__average {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 10px;
    padding: 24px 40px;
    border: 2px solid #e1e1e1;
    border-radius: 16px;
    background: #fff;
    font-size: 20px;
    line-height: 30px;
}
.planDiagnosis-saving__average > strong {font-weight: 700;}
.planDiagnosis-saving__usage {display: flex; gap: 20px;}
.planDiagnosis-saving__usage > div {display: flex; gap: 4px;}
.planDiagnosis-saving__usage dt {color: #767676; font-weight: 400;}
.planDiagnosis-saving__usage dd {font-weight: 700;}
.planDiagnosis-saving__note {
    margin-top: 10px;
    color: #767676;
    font-size: 14px;
    line-height: 24px;
}

/* 요금제 카드 */
.planDiagnosis-cardList {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px;
    margin-top: 40px;
}
.planDiagnosis-card {position: relative;}
.planDiagnosis-card__radio {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.planDiagnosis-card__inner {
    height: 100%;
    overflow: hidden;
    border: 2px solid #d4d4d4;
    border-radius: 26px;
    background: #fff;
}
/* 카드 전체 선택 영역 (radio label) */
.planDiagnosis-card__select {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    margin: 0;
    border-radius: 26px;
    cursor: pointer;
}
.planDiagnosis-card__head {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding: 40px 30px 24px;
    border-bottom: 1px solid #e1e1e1;
    background: #fbfbfb;
}
.planDiagnosis-card__spec > div {display: flex; align-items: center;}
.planDiagnosis-card__spec > div + div {margin-top: 4px;}
.planDiagnosis-card__spec dt {
    flex: none;
    min-width: 70px;
    margin-right: 10px;
    color: #767676;
    white-space: nowrap;
    font-size: 16px;
    font-weight: 400;
    text-align: right;
}
.planDiagnosis-card__spec dd {
    font-size: 26px;
    font-weight: 700;
    line-height: 31px;
}
.planDiagnosis-card__save {
    flex: none;
    color: #3617ce;
    font-size: 22px;
    font-weight: 600;
    line-height: 31px;
    letter-spacing: -0.03em; /* 261029 수정 */
}
.planDiagnosis-card__save b {font-size: 26px; font-weight: 700;}
.planDiagnosis-card__message {
    color: #3617ce;
    font-size: 26px;
    font-weight: 700;
    line-height: 31px;
}
.planDiagnosis-card__check {
    position: absolute;
    top: 19px;
    right: 24px;
    width: 37px;
    height: 37px;
    background: url(/html/images/planDiagnosis/ico_card_check_off.svg) no-repeat center / 100% 100%;
}
.planDiagnosis-card__body {padding: 30px 30px 40px;}
.planDiagnosis-card__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.planDiagnosis-card__name {
    font-size: 22px;
    font-weight: 700;
    line-height: 31px;
    word-break: keep-all;
}
.planDiagnosis-card__price {
    flex: none;
    font-size: 22px;
    line-height: 31px;
}
.planDiagnosis-card__price b {font-weight: 700;}
.planDiagnosis-card__offer {
    display: flex;
    gap: 12px;
    margin-top: 10px;
    font-size: 16px;
    line-height: 24px;
}
.planDiagnosis-card__offer > div {display: flex; gap: 4px;}
.planDiagnosis-card__offer dt {color: #767676; font-weight: 400;}
.planDiagnosis-card__offer dd {color: #333; font-weight: 700;}
.planDiagnosis-card__more {
    position: absolute;
    z-index: 2;
    right: 32px;
    bottom: 42px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #3617ce;
    font-size: 16px;
    line-height: 24px;
    text-decoration: none;
}
.planDiagnosis-card__more:hover,
.planDiagnosis-card__more:focus {color: #3617ce;}
.planDiagnosis-card__more::after {
    content: '';
    width: 5px;
    height: 7px;
    background: url(/html/images/planDiagnosis/ico_more.svg) no-repeat center / 100% 100%;
}
.planDiagnosis-card__badge {
    position: absolute;
    top: -15px;
    left: 28px;
    z-index: 2;
    padding: 4px 16px;
    border-radius: 20px;
    background: #3617ce;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
}

/* 선택 상태 : radio checked / 고정 활성(--active) */
.planDiagnosis-card__radio:checked ~ .planDiagnosis-card__inner,
.planDiagnosis-card--active .planDiagnosis-card__inner {border-color: #3617ce;}
.planDiagnosis-card__radio:checked ~ .planDiagnosis-card__inner .planDiagnosis-card__head,
.planDiagnosis-card--active .planDiagnosis-card__head {background: #f5f5fd;}
.planDiagnosis-card__radio:checked ~ .planDiagnosis-card__inner .planDiagnosis-card__check {
    background-image: url(/html/images/planDiagnosis/ico_card_check_on.svg);
}
.planDiagnosis-card__radio:focus-visible ~ .planDiagnosis-card__inner {
    outline: 2px solid #3617ce;
    outline-offset: 2px;
}

/* 단독 카드 (05) */
.planDiagnosis-card--single {
    max-width: 500px;
    margin: 40px auto 0;
    text-align: left;
}
.planDiagnosis-card--single .planDiagnosis-card__head {padding: 40px 20px 20px;}
.planDiagnosis-card--single .planDiagnosis-card__body {padding: 24px 20px 30px;}
.planDiagnosis-card--single .planDiagnosis-card__more {right: 22px; bottom: 32px;}
.planDiagnosis-result__note {
    margin-top: 12px;
    color: #767676;
    font-size: 16px;
    line-height: 24px;
}


/* ==================================================
   유의사항 아코디언 (details/summary, No-JS)
================================================== */
.planDiagnosis-caution {
    margin-top: 50px;
    overflow: hidden;
    border: 1px solid #d9d9d9;
    border-radius: 10px;
    background: #fff;
}
.planDiagnosis-caution summary {
    position: relative;
    display: block;
    list-style: none;
    cursor: pointer;
}
.planDiagnosis-caution summary::-webkit-details-marker {display: none;}
.planDiagnosis-caution summary::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 17px;
    height: 8px;
    margin-top: -4px;
    background: url(/html/images/planDiagnosis/ico_collapse.png) no-repeat center / 100% 100%;
}
.planDiagnosis-caution[open] > summary::after,
.planDiagnosis-caution__item[open] > summary::after {transform: rotate(180deg);}
.planDiagnosis-caution__head {
    padding: 20px 80px 20px 50px;
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
}
.planDiagnosis-caution__head::after {right: 50px;}
.planDiagnosis-caution__body {
    padding: 10px 50px;
    background: #f8f8f8;
}
.planDiagnosis-caution__item + .planDiagnosis-caution__item {border-top: 1px solid #e6e6e6;}
.planDiagnosis-caution__title {
    position: relative;
    padding: 15px 40px 15px 19px;
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
    word-break: keep-all;
}
.planDiagnosis-caution__title::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 10px;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-radius: 50%;
    background: #000;
}
.planDiagnosis-caution summary.planDiagnosis-caution__title::after {
    right: 10px;
    width: 12px;
    height: 5px;
    margin-top: -2.5px;
}
.planDiagnosis-caution__cont {
    margin-bottom: 15px;
    padding: 20px;
    border-radius: 6px;
    background: #fff;
    color: #666;
    font-size: 16px;
    line-height: 1.6;
    word-break: keep-all;
}


/* ==================================================
   선택한 요금제 하단 바 (02)
================================================== */
.planDiagnosis-select {
    position: sticky;
    bottom: 0;
    z-index: 20;
    margin-top: 50px;
    padding: 40px 50px;
    border-radius: 26px 26px 0 0;
    background: #fff;
    box-shadow: 0 -10px 25px rgba(0, 0, 0, .1);
}
.planDiagnosis-select__info {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
}
.planDiagnosis-select__label {
    display: block;
    color: #767676;
    font-size: 20px;
    line-height: 24px;
}
.planDiagnosis-select__name {
    display: block;
    margin-top: 12px;
    font-size: 26px;
    font-weight: 700;
    line-height: 31px;
}
.planDiagnosis-select__price {flex: none; text-align: right;}
.planDiagnosis-select__amount {
    display: block;
    color: #ea002c;
    font-size: 30px;
    font-weight: 600;
    line-height: 40px;
    letter-spacing: -0.03em; /* 261029 수정 */
}
.planDiagnosis-select__amount b {font-size: 40px; font-weight: 800;}
.planDiagnosis-select__save {
    display: block;
    margin-top: 12px;
    color: #3617ce;
    font-size: 21px;
    font-weight: 600;
    line-height: 25px;
}
.planDiagnosis-select__btns {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}
.planDiagnosis-select__btns .planDiagnosis-btn {
    flex: 1;
    border-radius: 30px;
    font-size: 22px;
}


/* ==================================================
   모달 (02 요금제 예약 / 변경)
================================================== */
.modal-planDiagnosis .modal-dialog {width: 650px; max-width: 650px;}
.modal-planDiagnosis .modal-content {border-radius: 16px;}
.modal-planDiagnosis .modal-head {padding: 30px 80px 0 36px;}
.modal-planDiagnosis .modal-head .title {
    display: block;
    color: #000;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
.modal-planDiagnosis .modal-head .sub {
    margin-top: 2px;
    color: #666;
    font-size: 18px;
    line-height: 24px;
}
.modal-planDiagnosis .modal-body {padding: 24px 36px 0;}
.modal-planDiagnosis .modal-body::after {height: 40px;}
.modal-planDiagnosis .btn-close {
    top: 10px;
    right: 10px;
    width: 60px;
    height: 60px;
    background: url(/html/images/planDiagnosis/ico_close.svg) no-repeat center / 22px auto;
}
.modal-planDiagnosis .modal-foot .btn {
    height: 78px;
    padding: 0;
    font-size: 22px;
    font-weight: 500;
}
.modal-planDiagnosis .modal-foot .btn-secondary {
    border-color: #9fa0a8 !important;
    background: #9fa0a8 !important;
}

/* 변경 일정 */
.modal-planDiagnosis__schedule {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding: 24px 30px;
    border-radius: 10px;
    background: #eef0fc;
}
.modal-planDiagnosis__scheduleIcon {
    display: flex;
    flex: none;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #fff;
}
.modal-planDiagnosis__scheduleIcon img {width: 40px; height: 40px;}
.modal-planDiagnosis__scheduleTitle {
    display: block;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
}
.modal-planDiagnosis__scheduleDesc {
    display: block;
    margin-top: 2px;
    color: #666;
    font-size: 16px;
    line-height: 1.5;
}

/* 요금제 비교 행 */
.modal-planDiagnosis__row dt {
    color: #666;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
.modal-planDiagnosis__row dd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 4px;
}
.modal-planDiagnosis__name {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    word-break: keep-all;
}
.modal-planDiagnosis__price {
    flex: none;
    font-size: 20px;
    line-height: 1.4;
}
.modal-planDiagnosis__price b {font-size: 22px; font-weight: 700;}
.modal-planDiagnosis__row--current {
    position: relative;
    padding-bottom: 16px;
    border-bottom: 1px dashed #e1e1e1;
}
.modal-planDiagnosis__row--current::after {
    content: '';
    position: absolute;
    bottom: -7px;
    left: 0;
    width: 20px;
    height: 14px;
    background: url(/html/images/planDiagnosis/ico_arrow_down.svg) no-repeat center / 100% 100%;
}
.modal-planDiagnosis__row--change {
    padding: 20px 0 24px;
    border-bottom: 1px solid #e1e1e1;
}
.modal-planDiagnosis__row--change dt,
.modal-planDiagnosis__row--change .modal-planDiagnosis__price {color: #3617ce;}
.modal-planDiagnosis__row--total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-top: 24px;
}
.modal-planDiagnosis__row--total dd {margin-top: 0;}
.modal-planDiagnosis__saving {
    color: #3617ce;
    font-size: 17px;
    font-weight: 700;
}

.modal-planDiagnosis .planDiagnosis-notice {margin-top: 24px;}
.modal-planDiagnosis .planDiagnosis-notice__title {font-size: 17px;}
.modal-planDiagnosis .planDiagnosis-notice__desc {font-size: 16px;}

/* 필수 동의 체크박스 */
.modal-planDiagnosis__agree {position: relative; margin-top: 30px;}
.modal-planDiagnosis__check {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
}
.modal-planDiagnosis__label {
    position: relative;
    display: block;
    margin: 0;
    padding-left: 40px;
    font-weight: 400;
    cursor: pointer;
}
.modal-planDiagnosis__label::before {
    content: '';
    position: absolute;
    top: -3px;
    left: 0;
    width: 30px;
    height: 30px;
    background: url(/html/images/planDiagnosis/ico_check_off.svg) no-repeat center / 100% 100%;
}
.modal-planDiagnosis__check:checked + .modal-planDiagnosis__label::before {
    background-image: url(/html/images/planDiagnosis/ico_check_on.svg);
}
.modal-planDiagnosis__check:focus-visible + .modal-planDiagnosis__label::before {
    outline: 2px solid #5857d8;
    outline-offset: 2px;
    border-radius: 50%;
}
.modal-planDiagnosis__agreeTitle {
    display: block;
    font-size: 17px;
    font-weight: 700;
    line-height: 24px;
}
.modal-planDiagnosis__agreeDesc {
    display: block;
    margin-top: 2px;
    color: #666;
    font-size: 16px;
    line-height: 24px;
}
/* 미동의 에러 문구 : .is-show 추가 시 노출 */
.modal-planDiagnosis__error {
    display: none;
    margin-top: 24px;
    color: #ea002c;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
}
.modal-planDiagnosis__error.is-show {display: block;}


/* ==================================================
   Mobile
================================================== */
@media screen and (max-width: 870px) {

    /* 공통 */
    .planDiagnosis {display: flex; flex-direction: column;}
    .planDiagnosis > * {flex: none;}
    .planDiagnosis-subTitle {margin: 2.67rem 0 1.78rem; font-size: 1.51rem;}

    .planDiagnosis-btn {
        height: 4.8rem;
        padding: 0 1.33rem;
        border-radius: 1.07rem;
        font-size: 1.51rem;
    }
    .planDiagnosis-btn--lg {font-size: 1.78rem;}

    .planDiagnosis-action {
        gap: 1.07rem;
        max-width: none;
        margin-top: 3.56rem;
    }
    /* 하단 고정 버튼 */
    .planDiagnosis-action--sticky {
        position: sticky;
        bottom: 0;
        z-index: 20;
        order: 1;
        margin-top: auto;
        padding: 1.42rem 0;
        background: #fff;
    }
    .planDiagnosis--action {min-height: calc(100vh - 12rem);}

    .planDiagnosis-dotList > li {padding-left: .89rem; font-size: 1.07rem;}
    .planDiagnosis-dotList > li::before {width: .27rem; height: .27rem;}

    .planDiagnosis-notice {gap: .89rem; padding: 1.42rem; border-radius: .71rem;}
    .planDiagnosis-notice__icon {width: 1.96rem; height: 1.96rem;}
    .planDiagnosis-notice__title {font-size: 1.42rem; line-height: 1.96rem;}
    .planDiagnosis-notice__desc,
    .planDiagnosis-notice__text {font-size: 1.24rem;}
    .planDiagnosis-notice--plain {padding: 0;}

    .planDiagnosis-pcOnly {display: none;}
    .planDiagnosis-moOnly {display: block;}
    span.planDiagnosis-moOnly,
    br.planDiagnosis-moOnly {display: inline;}

    /* 결과 화면 */
    .planDiagnosis-result {padding-top: 3.56rem;}
    .planDiagnosis-result__bubble {
        margin-bottom: .89rem;
        padding: .71rem 1.78rem;
        font-size: 1.41rem; /* 261026 수정 */
    }
    .planDiagnosis-result__bubble::after {
        margin-left: -.53rem;
        border-width: .8rem .53rem 0;
    }
    .planDiagnosis-result__img {width: 7.11rem; height: 6.84rem; margin-top: .89rem;}
    .planDiagnosis-result__title {margin-top: 2.13rem; font-size: 1.78rem;}
    .planDiagnosis-result__bubble + .planDiagnosis-result__title {margin-top: 1.42rem;}
    .planDiagnosis-result__title--lg {font-size: 1.78rem; font-weight: 700;}
    .planDiagnosis-result__desc {margin-top: .89rem; font-size: 1.42rem; line-height: 2.13rem;}
    .planDiagnosis-result__sub {margin-top: .89rem; font-size: 1.42rem;}
    .planDiagnosis-result__info {max-width: none; margin-top: 1.78rem; padding: 1.42rem; border-radius: .89rem;}
    .planDiagnosis-result__notice {max-width: none; margin-top: 1.78rem;}
    .planDiagnosis-result__note {font-size: 1.16rem; line-height: 1.78rem;}

    .planDiagnosis-infoList > div + div {margin-top: .71rem;}
    .planDiagnosis-infoList dt,
    .planDiagnosis-infoList dd {font-size: 1.24rem;}

    .planDiagnosis-benefit {margin-top: 3.56rem;}
    .planDiagnosis-benefit__title {margin-bottom: 1.07rem; font-size: 1.42rem;}
    .planDiagnosis-benefit__list {grid-template-columns: minmax(0, 1fr); gap: .89rem;}
    .planDiagnosis-benefit__link {gap: 1.07rem; padding: 1.42rem 1.33rem; border-radius: .71rem;}
    .planDiagnosis-benefit__link::after {width: .89rem; height: .89rem; margin-right: .44rem;}
    .planDiagnosis-benefit__icon {width: 3.91rem; height: 3.91rem;}
    .planDiagnosis-benefit__icon img {width: 2.13rem; height: 2.13rem;}
    .planDiagnosis-benefit__name {font-size: 1.51rem;}
    .planDiagnosis-benefit__desc {font-size: 1.24rem;}

    /* 박스 */
    .planDiagnosis-box {
        padding: 2.67rem 0;
        border: 0;
        border-top: 1px solid #e1e1e1;
        border-radius: 0;
    }
    .planDiagnosis-box + .planDiagnosis-box {margin-top: 0;}
    .planDiagnosis > .planDiagnosis-box:first-child {margin-top: 1.78rem;}
    .planDiagnosis-box__label {font-size: 1.24rem; line-height: 1.6rem;}
    .planDiagnosis-box__title {margin-top: .36rem; font-size: 1.6rem;}
    .planDiagnosis-box__notes {margin-top: 1.78rem;}

    /* 탭 */
    .planDiagnosis-tab {margin-top: 1.78rem;}
    .planDiagnosis-tab__menu {margin: 0; padding: 0;}
    .planDiagnosis-tab__btn {height: 3.91rem; font-size: 1.42rem;}
    .planDiagnosis-tab__radio:nth-of-type(1):checked ~ .planDiagnosis-tab__menu > li:nth-child(1) .planDiagnosis-tab__btn,
    .planDiagnosis-tab__radio:nth-of-type(2):checked ~ .planDiagnosis-tab__menu > li:nth-child(2) .planDiagnosis-tab__btn,
    .planDiagnosis-tab__radio:nth-of-type(3):checked ~ .planDiagnosis-tab__menu > li:nth-child(3) .planDiagnosis-tab__btn {
        font-size: 1.42rem;
    }
    .planDiagnosis-tab__panel {padding-top: 1.78rem;}

    /* 그래프 */
    .planDiagnosis-graph__list {gap: 5.69rem;}
    .planDiagnosis-graph__area {height: 11.56rem; padding-top: 2.67rem;}
    .planDiagnosis-graph__bar {width: 3.2rem; border-radius: .36rem .36rem 0 0;}
    .planDiagnosis-graph__value {gap: .53rem; margin-bottom: .36rem;}
    .planDiagnosis-graph__num {font-size: 1.07rem; line-height: 1.24rem;}
    .planDiagnosis-graph__label {margin-top: .44rem; font-size: 1.07rem;}
    .planDiagnosis-graph__tip {padding: .18rem .53rem; border-radius: .36rem; font-size: 1.07rem;}
    .planDiagnosis-graph__tip::after {margin-left: -.36rem; border-width: .36rem .36rem 0;}
    .planDiagnosis-graph__bar--unlimited {background: linear-gradient(to bottom, #f5f4fd 0, #cdcdf3 2rem, #cdcdf3 100%);}
    .planDiagnosis-graph__bar--extra::before {height: 2rem; border-radius: .36rem .36rem 0 0;}

    .planDiagnosis-graph--compare {margin-top: 1.78rem;}
    .planDiagnosis-graph--compare .planDiagnosis-graph__list {gap: 2.13rem;}
    .planDiagnosis-graph--compare .planDiagnosis-graph__area {height: 16rem; padding-top: 4.44rem;}
    .planDiagnosis-graph__title {font-size: 1.42rem; line-height: 2.13rem;}

    .planDiagnosis-average {margin-top: 1.78rem; padding: 1.78rem 1.42rem; border-radius: .89rem;}
    .planDiagnosis-average__title {font-size: 1.42rem; line-height: 1.78rem;}
    .planDiagnosis-average__list {margin-top: 1.07rem;}
    .planDiagnosis-average__list dt {font-size: 1.24rem; line-height: 1.6rem;}
    .planDiagnosis-average__list dd {margin-top: .36rem; font-size: 2.31rem; line-height: 2.67rem;}
    .planDiagnosis-average__unit {font-size: 1.24rem;}

    .planDiagnosis-summary {margin-top: 1.78rem; padding: 1.42rem; border-radius: .89rem; text-align: left; /* 261026 수정 */}
    .planDiagnosis-summary__desc {font-size: 1.16rem; line-height: 1.6rem;}
    .planDiagnosis-summary__text {margin-top: .36rem; font-size: 1.42rem; line-height: 1.96rem;}

    /* 절약 진단 */
    .planDiagnosis-saving {margin-top: 0; padding: 2.67rem 0 3.56rem;}
    .planDiagnosis-saving__badge {padding: .27rem 1.07rem; font-size: 1.24rem; line-height: 1.78rem;}
    .planDiagnosis-saving__title {margin-top: .71rem; font-size: 1.6rem; line-height: 2.13rem;}
    .planDiagnosis-saving__average {
        gap: .89rem;
        margin-top: 1.07rem;
        padding: 1.07rem 1.42rem;
        border-width: 1px;
        border-radius: .89rem;
        font-size: 1.24rem;
        line-height: 1.78rem;
    }
    .planDiagnosis-saving__usage {gap: .89rem;}
    .planDiagnosis-saving__note {margin-top: .71rem; font-size: 1.07rem; line-height: 1.6rem;}

    .planDiagnosis-cardList {grid-template-columns: minmax(0, 1fr); gap: 1.78rem; margin-top: 2.13rem;}
    .planDiagnosis-card__inner,
    .planDiagnosis-card__select {border-radius: 1.42rem;}
    .planDiagnosis-card__head {gap: .89rem; padding: 2.13rem 1.78rem 1.42rem;}
    .planDiagnosis-card__spec > div + div {margin-top: .18rem;}
    .planDiagnosis-card__spec dt {min-width: 5.33rem; margin-right: .53rem; font-size: 1.16rem;}
    .planDiagnosis-card__spec dd {font-size: 1.6rem; line-height: 2.13rem;}
    .planDiagnosis-card__save {font-size: 1.33rem; line-height: 2.13rem;}
    .planDiagnosis-card__save b {font-size: 1.6rem;}
    .planDiagnosis-card__message {font-size: 1.6rem; line-height: 2.13rem;}
    .planDiagnosis-card__check {top: .89rem; right: 1.24rem; width: 2.49rem; height: 2.49rem;}
    .planDiagnosis-card__body {padding: 1.42rem 1.78rem 1.78rem;}
    .planDiagnosis-card__name,
    .planDiagnosis-card__price {font-size: 1.51rem; line-height: 2.13rem;}
    .planDiagnosis-card__offer {gap: .71rem; margin-top: .53rem; font-size: 1.24rem; line-height: 1.78rem;}
    .planDiagnosis-card__more {right: 1.96rem; bottom: 1.96rem; gap: .36rem; font-size: 1.24rem; line-height: 1.78rem;}
    .planDiagnosis-card__more::after {width: .44rem; height: .62rem;}
    .planDiagnosis-card__badge {
        top: -.89rem;
        left: 1.78rem;
        padding: 0 .89rem;
        border-radius: 1.78rem;
        font-size: 1.07rem;
        line-height: 1.96rem;
    }
    .planDiagnosis-card--single {max-width: none; margin-top: 2.67rem;}
    .planDiagnosis-card--single .planDiagnosis-card__head {padding: 2.67rem 1.78rem 1.42rem;}
    .planDiagnosis-card--single .planDiagnosis-card__body {padding: 1.42rem 1.78rem 1.78rem;}
    .planDiagnosis-card--single .planDiagnosis-card__more {right: 1.96rem; bottom: 1.96rem;}

    /* 유의사항 */
    .planDiagnosis-caution {margin: 0 -1.6rem; border-width: 1px 0 0; border-radius: 0;}
    .planDiagnosis-caution summary::after {width: 1.51rem; height: .71rem; margin-top: -.36rem;}
    .planDiagnosis-caution__head {padding: 1.42rem 4.44rem 1.42rem 1.6rem; font-size: 1.42rem; line-height: 2.13rem;}
    .planDiagnosis-caution__head::after {right: 1.6rem;}
    .planDiagnosis-caution__body {padding: .36rem 1.6rem 1.42rem;}
    .planDiagnosis-caution__title {padding: 1.07rem 2.67rem 1.07rem 1.24rem; font-size: 1.24rem; line-height: 1.96rem;}
    .planDiagnosis-caution__title::before {left: .36rem; width: .27rem; height: .27rem; margin-top: -.13rem;}
    .planDiagnosis-caution summary.planDiagnosis-caution__title::after {right: .36rem; width: 1.07rem; height: .44rem; margin-top: -.22rem;}
    .planDiagnosis-caution__cont {margin-bottom: 1.07rem; padding: 1.24rem; font-size: 1.16rem;}

    /* 선택한 요금제 하단 바 */
    .planDiagnosis-select {
        margin: 0 -1.6rem;
        padding: 2.13rem 1.78rem;
        border-radius: 1.42rem 1.42rem 0 0;
    }
    .planDiagnosis-select__info {gap: .89rem;}
    .planDiagnosis-select__label {font-size: 1.24rem; line-height: 1.6rem;}
    .planDiagnosis-select__name {margin-top: .36rem; font-size: 1.42rem; line-height: 1.96rem;}
    .planDiagnosis-select__amount {font-size: 1.6rem; line-height: 2.13rem;}
    .planDiagnosis-select__amount b {font-size: 2.13rem;}
    .planDiagnosis-select__save {margin-top: .18rem; font-size: 1.24rem; line-height: 1.6rem;}
    .planDiagnosis-select__btns {gap: .71rem; margin-top: 1.42rem;}
    .planDiagnosis-select__btns .planDiagnosis-btn {height: 3.56rem; border-radius: 100px; font-size: 1.42rem;}

    /* 모달 : 바텀시트 */
    .modal-planDiagnosis .modal-dialog,
    .modal-planDiagnosis .modal-dialog-centered.modal-dialog-scrollable {
        justify-content: flex-end;
        width: 100%;
        max-width: none;
        height: 100%;
        min-height: 100%;
        max-height: 100%;
        margin: 0;
    }
    .modal-planDiagnosis .modal-content {
        max-height: 90%;
        border-radius: 1.42rem 1.42rem 0 0;
    }
    .modal-planDiagnosis .modal-head {padding: 2.13rem 4.44rem 0; text-align: center;}
    .modal-planDiagnosis .modal-head .title {font-size: 1.6rem;}
    .modal-planDiagnosis .modal-head .sub {margin-top: .18rem; font-size: 1.24rem; line-height: 1.78rem;}
    .modal-planDiagnosis .modal-body {padding: 1.78rem 1.78rem 0;}
    .modal-planDiagnosis .modal-body::after {height: 2.13rem;}
    .modal-planDiagnosis .btn-close {
        top: .89rem;
        right: .89rem;
        width: 4.44rem;
        height: 4.44rem;
        background-size: 1.78rem auto;
    }
    .modal-planDiagnosis .modal-foot .btn {height: 4.62rem; font-size: 1.42rem;}

    .modal-planDiagnosis__schedule {gap: 1.07rem; margin-bottom: 1.78rem; padding: 1.42rem; border-radius: .89rem;}
    .modal-planDiagnosis__scheduleIcon {width: 4.27rem; height: 4.27rem;}
    .modal-planDiagnosis__scheduleIcon img {width: 2.84rem; height: 2.84rem;}
    .modal-planDiagnosis__scheduleTitle {font-size: 1.42rem;}
    .modal-planDiagnosis__scheduleDesc {font-size: 1.16rem;}

    .modal-planDiagnosis__row dt {font-size: 1.24rem; line-height: 1.78rem;}
    .modal-planDiagnosis__row dd {gap: .89rem; margin-top: .18rem;}
    .modal-planDiagnosis__name,
    .modal-planDiagnosis__price {font-size: 1.42rem;}
    .modal-planDiagnosis__price b {font-size: 1.51rem;}
    .modal-planDiagnosis__row--current {padding-bottom: 1.07rem;}
    .modal-planDiagnosis__row--current::after {bottom: -.62rem; width: 1.42rem; height: 1rem;}
    .modal-planDiagnosis__row--change {padding: 1.42rem 0 1.78rem;}
    .modal-planDiagnosis__row--total {padding-top: 1.78rem;}
    .modal-planDiagnosis__saving {font-size: 1.42rem;}

    .modal-planDiagnosis .planDiagnosis-notice {margin-top: 1.78rem;}
    .modal-planDiagnosis .planDiagnosis-notice__title {font-size: 1.42rem;}
    .modal-planDiagnosis .planDiagnosis-notice__desc {font-size: 1.24rem;}

    .modal-planDiagnosis__agree {margin-top: 1.78rem; padding-top: 1.78rem; border-top: 1px solid #e1e1e1;}
    .modal-planDiagnosis__check {top: 1.78rem;}
    .modal-planDiagnosis__label {padding-left: 2.84rem;}
    .modal-planDiagnosis__label::before {top: 0; width: 1.96rem; height: 1.96rem;}
    .modal-planDiagnosis__agreeTitle {font-size: 1.33rem; line-height: 1.96rem;}
    .modal-planDiagnosis__agreeDesc {font-size: 1.24rem; line-height: 1.78rem;}
    .modal-planDiagnosis__error {margin-top: 1.78rem; font-size: 1.24rem;}
}

/* e: 261020 요금제 진단 */
