/* 섹션 레이아웃 (.comp_section) — 좌측 제목 36rem + 우측 본문 98rem, 상단 구분선 (component-view 전용)
   텍스트(섹션 스타일) / 탭 콘텐츠(섹션 우측 컬럼) / 아코디언(섹션) 이 공유한다.
   support.css 의 .support.warranty section .inner / .quality .content 타이포 / .qna_list 규칙을
   .component_view .comp_section 스코프로 이식. 원본 미수정. (.txt → p 폴백, .qna_list → .comp_accordion 변형 자동 생성) */
.component_view .comp_section .inner {
    position: relative;
    display: flex;
    gap: 10rem;
    padding-top: 10rem;
    margin-top: 10rem;
}
.component_view .comp_section .inner::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: calc(100% - 16rem);
    height: 1px;
    background: #D9D9D9;
}
.component_view .comp_section .hgroup {
    width: 36rem;
}
.component_view .comp_section .hgroup h3 {
    line-height: 1.45;
    font-size: 3.2rem;
    font-weight: 900;
}
.component_view .comp_section .content {
    width: 98rem;
}
.component_view .comp_section .content .txt,
.component_view .comp_section .content p {
    margin-top: 1.2rem;
    color: #000;
    line-height: 1.6;
    font-size: 1.8rem;
    font-weight: 600;
}
.component_view .comp_section .content .txt:first-child,
.component_view .comp_section .content p:first-child {
    margin-top: 0;
}
.component_view .comp_section .content .txt a,
.component_view .comp_section .content p a {
    position: relative;
    color: #2A66FF;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.component_view .comp_section .content .desc {
    margin-top: 6rem;
    line-height: 1.6;
    font-size: 1.8rem;
    font-weight: 500;
}
.component_view .comp_section .content .desc:first-child {
    margin-top: 0;
}
.component_view .comp_section .content .shgroup {
    margin-top: 8rem;
    padding: 2.4rem 2.15rem;
    background: #F3F3F3;
}
.component_view .comp_section .content .shgroup + .txt,
.component_view .comp_section .content .shgroup + p {
    margin-top: 4rem;
}
.component_view .comp_section .content .shgroup h4 {
    line-height: 1.25;
    font-size: 2rem;
}
.component_view .comp_section .content h5 {
    position: relative;
    margin-top: 5rem;
    padding-left: 1.6rem;
    line-height: 1.25;
    font-size: 2rem;
}
.component_view .comp_section .content h5::before {
    content: "";
    position: absolute;
    left: 0;
    top: .5rem;
    width: .4rem;
    height: 1.4rem;
    background: var(--point-color);
}
.component_view .comp_section .content h5:first-child {
    margin-top: 0;
}
.component_view .comp_section .grade_list {
    display: flex;
    gap: 1.6rem;
    margin-top: 2rem;
}
.component_view .comp_section .grade_list > li {
    position: relative;
    width: 31.6rem;
    height: auto;
    padding: 3.6rem 3rem;
    border: 1px solid #D9D9D9;
    border-radius: .4rem;
    text-align: center;
}
.component_view .comp_section .grade_list > li .title {
    display: block;
    margin-bottom: 2rem;
    color: #000;
    text-transform: uppercase;
    line-height: 1.25;
    font-size: 2.8rem;
}
.component_view .comp_section .grade_list .group {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}
.component_view .comp_section .grade_list .group .block {
    padding: 2.8rem 3rem;
    background: #F3F3F3;
}
.component_view .comp_section .grade_list .group .date .num {
    display: block;
    line-height: 1.25;
    font-size: 4rem;
}
.component_view .comp_section .grade_list .group .date .months {
    display: block;
    color: #888;
    line-height: 1.25;
    font-size: 1.4rem;
}
.component_view .comp_section .grade_list .group .caption {
    margin-top: 1.6rem;
    line-height: 1.45;
    font-size: 1.4rem;
    font-weight: 500;
    opacity: .8;
}
.component_view .comp_section .grade_list .goods {
    margin-top: 2rem;
}
.component_view .comp_section .grade_list .goods .title {
    display: block;
    line-height: 1.25;
    font-size: 2rem;
}
.component_view .comp_section .grade_list .goods .goods_lsit li {
    position: relative;
    display: inline-block;
    margin-right: .8rem;
    padding-right: 1rem;
    line-height: 1.25;
    font-size: 1.4rem;
    font-weight: 500;
}
.component_view .comp_section .grade_list .goods .goods_lsit li::before {
    content: "";
    position: absolute;
    right: 0;
    top: .3rem;
    width: .2rem;
    height: 1.2rem;
    background: #000;
    opacity: .2;
}
.component_view .comp_section .grade_list .goods .goods_lsit li:last-child {
    margin-right: 0;
    padding-right: 0;
}
.component_view .comp_section .grade_list .goods .goods_lsit li:last-child::before {
    display: none;
}
.component_view .comp_section .num_list {
    margin-top: 2.4rem;
    margin-left: 2rem;
}
.component_view .comp_section .num_list > li {
    list-style: decimal;
    margin-top: 1.6rem;
    line-height: 1.6;
    font-size: 1.6rem;
    font-weight: 500;
}
.component_view .comp_section .num_list > li:first-child {
    margin-top: 0;
}
.component_view .comp_section .num_list .dot_list {
    margin-top: .8rem;
}
.component_view .comp_section .dot_list {
    margin-top: 2.4rem;
}
.component_view .comp_section .dot_list li {
    position: relative;
    margin-top: .4rem;
    padding-left: 1.1rem;
    line-height: 1.6;
    font-size: 1.6rem;
}
.component_view .comp_section .dot_list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1rem;
    width: .5rem;
    height: .5rem;
    border-radius: 99rem;
}
.component_view .comp_section .dot_list li:first-child {
    margin-top: 0;
}
.component_view .comp_section .dot_list.black li {
    color: #000;
}
.component_view .comp_section .dot_list.black li::before {
    background: #000;
}
.component_view .comp_section .dot_list.gray li {
    color: #666;
}
.component_view .comp_section .dot_list.gray li::before {
    background: #666;
}
.component_view .comp_section .qna_list > li,
.component_view .comp_accordion .qna_list > li {
    margin-top: 2rem;
}
.component_view .comp_section .qna_list > li:first-child,
.component_view .comp_accordion .qna_list > li:first-child {
    margin-top: 0;
}
.component_view .comp_section .qna_list > li .question a,
.component_view .comp_accordion .qna_list > li .question a {
    position: relative;
    display: block;
    padding: 2.15rem 5.4rem 2.15rem 2.4rem;
    line-height: 1.25;
    font-size: 2rem;
    font-weight: 700;
    background: #F3F3F3;
}
.component_view .comp_section .qna_list > li .question a::before,
.component_view .comp_accordion .qna_list > li .question a::before {
    content: "";
    position: absolute;
    right: 2.4rem;
    top: 50%;
    transform: translateY(-50%);
    width: 2rem;
    height: 2rem;
    background: url("../../images/support/ico_open.svg") no-repeat left top / 100% 100%;
}
.component_view .comp_section .qna_list > li.on .question a::before,
.component_view .comp_accordion .qna_list > li.on .question a::before {
    background-image: url("../../images/support/ico_close.svg");
}
.component_view .comp_section .qna_list > li .answer,
.component_view .comp_accordion .qna_list > li .answer {
    display: none;
}
.component_view .comp_section .qna_list > li .block,
.component_view .comp_accordion .qna_list > li .block {
    padding: 4rem 0;
}
.component_view .comp_section .qna_list > li .block .txt,
.component_view .comp_section .qna_list > li .block p,
.component_view .comp_accordion .qna_list > li .block .txt,
.component_view .comp_accordion .qna_list > li .block p {
    margin-top: 1.6rem;
    font-size: 1.6rem;
}
.component_view .comp_section .qna_list > li .block .txt:first-child,
.component_view .comp_section .qna_list > li .block p:first-child,
.component_view .comp_accordion .qna_list > li .block .txt:first-child,
.component_view .comp_accordion .qna_list > li .block p:first-child {
    margin-top: 0;
}
.component_view .comp_section .qna_list > li .block .dot_list,
.component_view .comp_accordion .qna_list > li .block .dot_list {
    margin-top: 1.6rem;
    margin-left: 1rem;
}
.component_view .comp_section .qna_list > li .block .caption,
.component_view .comp_accordion .qna_list > li .block .caption {
    display: flex;
    gap: 1rem;
    margin-top: 1.6rem;
}
.component_view .comp_section .qna_list > li .block .caption span,
.component_view .comp_accordion .qna_list > li .block .caption span {
    display: block;
    width: .8rem;
    margin-top: .2rem;
    color: var(--point-color);
    line-height: 1.6;
    font-size: 1.6rem;
    font-weight: 600;
}
.component_view .comp_section .qna_list > li .block .caption.num span,
.component_view .comp_accordion .qna_list > li .block .caption.num span {
    width: auto;
    color: #000;
    margin-top: 0;
}
.component_view .comp_section .qna_list > li .block .caption .txt,
.component_view .comp_section .qna_list > li .block .caption p,
.component_view .comp_accordion .qna_list > li .block .caption .txt,
.component_view .comp_accordion .qna_list > li .block .caption p {
    margin-top: 0;
}
.component_view .comp_section .disclaimer,
.component_view .comp_accordion .disclaimer {
    margin-top: 4rem;
    line-height: 1.6;
    font-size: 1.8rem;
    font-weight: 500;
}
.component_view .comp_section .disclaimer .title,
.component_view .comp_accordion .disclaimer .title {
    font-weight: 900;
}
@media (max-width: 1919px) {
    .component_view .comp_section .inner {
        gap: calc(100vw * (100 / 1919));
        padding-top: calc(100vw * (100 / 1919));
        margin-top: calc(100vw * (100 / 1919));
    }
    .component_view .comp_section .inner::before {
        width: calc(100% - calc(100vw * (160 / 1919)));
    }
    .component_view .comp_section .hgroup {
        width: calc(100vw * (360 / 1919));
    }
    .component_view .comp_section .hgroup h3 {
        font-size: calc(100vw * (32 / 1919));
    }
    .component_view .comp_section .content {
        width: calc(100vw * (980 / 1919));
    }
    .component_view .comp_section .content .txt,
.component_view .comp_section .content p {
        margin-top: calc(100vw * (12 / 1919));
        font-size: calc(100vw * (16 / 1919));
    }
    .component_view .comp_section .content .desc {
        margin-top: calc(100vw * (60 / 1919));
        font-size: calc(100vw * (18 / 1919));
    }
    .component_view .comp_section .content .shgroup {
        margin-top: calc(100vw * (80 / 1919));
        padding: calc(100vw * (24 / 1919)) calc(100vw * (21.5/ 1919));
    }
    .component_view .comp_section .content .shgroup + .txt,
.component_view .comp_section .content .shgroup + p {
        margin-top: calc(100vw * (40 / 1919));
    }
    .component_view .comp_section .content .shgroup h4 {
        font-size: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .content h5 {
        margin-top: calc(100vw * (50 / 1919));
        padding-left: calc(100vw * (16 / 1919));
        font-size: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .content h5::before {
        top: calc(100vw * (5 / 1919));
        width: calc(100vw * (4 / 1919));
        height: calc(100vw * (14 / 1919));
    }
    .component_view .comp_section .grade_list {
        gap: calc(100vw * (16 / 1919));
        margin-top: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .grade_list > li {
        width: calc(100vw * (316 / 1919));
        padding: calc(100vw * (36 / 1919)) calc(100vw * (30 / 1919));
        border-radius: calc(100vw * (4 / 1919));
    }
    .component_view .comp_section .grade_list > li .title {
        margin-bottom: calc(100vw * (20 / 1919));
        font-size: calc(100vw * (28 / 1919));
    }
    .component_view .comp_section .grade_list .group {
        gap: calc(100vw * (12 / 1919));
    }
    .component_view .comp_section .grade_list .group .block {
        padding: calc(100vw * (28 / 1919)) calc(100vw * (30 / 1919));
    }
    .component_view .comp_section .grade_list .group .date .num {
        font-size: calc(100vw * (40 / 1919));
    }
    .component_view .comp_section .grade_list .group .date .months {
        font-size: calc(100vw * (14 / 1919));
    }
    .component_view .comp_section .grade_list .group .caption {
        margin-top: calc(100vw * (16 / 1919));
        font-size: calc(100vw * (14 / 1919));
    }
    .component_view .comp_section .grade_list .goods {
        margin-top: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .grade_list .goods .title {
        font-size: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .grade_list .goods .goods_lsit li {
        margin-right: calc(100vw * (8 / 1919));
        padding-right: calc(100vw * (10 / 1919));
        font-size: calc(100vw * (14 / 1919));
    }
    .component_view .comp_section .grade_list .goods .goods_lsit li::before {
        top: calc(100vw * (3 / 1919));
        width: calc(100vw * (2 / 1919));
        height: calc(100vw * (12 / 1919));
    }
    .component_view .comp_section .num_list {
        margin-top: calc(100vw * (24 / 1919));
        margin-left: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .num_list > li {
        margin-top: calc(100vw * (16 / 1919));
        font-size: calc(100vw * (16 / 1919));
    }
    .component_view .comp_section .num_list .dot_list {
        margin-top: calc(100vw * (8 / 1919));
    }
    .component_view .comp_section .dot_list {
        margin-top: calc(100vw * (24 / 1919));
    }
    .component_view .comp_section .dot_list li {
        margin-top: calc(100vw * (4 / 1919));
        padding-left: calc(100vw * (11 / 1919));
        font-size: calc(100vw * (16 / 1919));
    }
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (10 / 1919));
        width: 5px;
        height: 5px;
    }
    .component_view .comp_section .qna_list > li,
.component_view .comp_accordion .qna_list > li {
        margin-top: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .qna_list > li .question a,
.component_view .comp_accordion .qna_list > li .question a {
        padding: calc(100vw * (21.5 / 1919)) calc(100vw * (54 / 1919)) calc(100vw * (21.5 / 1919)) calc(100vw * (24 / 1919));
        font-size: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .qna_list > li .question a::before,
.component_view .comp_accordion .qna_list > li .question a::before {
        right: calc(100vw * (24 / 1919));
        width: calc(100vw * (20 / 1919));
        height: calc(100vw * (20 / 1919));
    }
    .component_view .comp_section .qna_list > li .block,
.component_view .comp_accordion .qna_list > li .block {
        padding: calc(100vw * (40 / 1919)) 0;
    }
    .component_view .comp_section .qna_list > li .block .txt,
.component_view .comp_section .qna_list > li .block p,
.component_view .comp_accordion .qna_list > li .block .txt,
.component_view .comp_accordion .qna_list > li .block p {
        margin-top: calc(100vw * (16 / 1919));
        font-size: calc(100vw * (16 / 1919));
    }
    .component_view .comp_section .qna_list > li .block .dot_list,
.component_view .comp_accordion .qna_list > li .block .dot_list {
        margin-top: calc(100vw * (16 / 1919));
        margin-left: calc(100vw * (10 / 1919));
    }
    .component_view .comp_section .qna_list > li .block .caption,
.component_view .comp_accordion .qna_list > li .block .caption {
        gap: calc(100vw * (10 / 1919));
        margin-top: calc(100vw * (16 / 1919));
    }
    .component_view .comp_section .qna_list > li .block .caption span,
.component_view .comp_accordion .qna_list > li .block .caption span {
        width: calc(100vw * (8 / 1919));
        margin-top: calc(100vw * (2 / 1919));
        font-size: calc(100vw * (16 / 1919));
    }
    .component_view .comp_section .disclaimer,
.component_view .comp_accordion .disclaimer {
        margin-top: calc(100vw * (40 / 1919));
        font-size: calc(100vw * (18 / 1919));
    }
}
@media (max-width: 1600px) {
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (10/ 1600));
        width: 3px;
        height: 3px;
    }
}
@media (max-width: 1180px) {
    .component_view .comp_section .inner {
        display: block;
        padding-top: calc(100vw * (100 / 1180));
        margin-top: calc(100vw * (100 / 1180));
    }
    .component_view .comp_section .inner::before {
        width: calc(100% - calc(100vw * (100 / 1180)));
    }
    .component_view .comp_section .hgroup {
        width: 100%;
    }
    .component_view .comp_section .hgroup h3 {
        font-size: calc(100vw * (32 / 1180));
    }
    .component_view .comp_section .content {
        width: 100%;
    }
    .component_view .comp_section .content .txt,
.component_view .comp_section .content p {
        margin-top: calc(100vw * (12 / 1180));
        font-size: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .content .desc {
        margin-top: calc(100vw * (24 / 1180));
        font-size: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .content .desc:first-child {
        margin-top: calc(100vw * (24 / 1180));
    }
    .component_view .comp_section .content .shgroup {
        margin-top: calc(100vw * (80 / 1180));
        padding: calc(100vw * (20 / 1180)) calc(100vw * (24/ 1180));
    }
    .component_view .comp_section .content .shgroup + .txt,
.component_view .comp_section .content .shgroup + p {
        margin-top: calc(100vw * (40 / 1180));
    }
    .component_view .comp_section .content .shgroup h4 {
        font-size: calc(100vw * (22 / 1180));
    }
    .component_view .comp_section .content h5 {
        margin-top: calc(100vw * (50 / 1180));
        padding-left: calc(100vw * (16 / 1180));
        font-size: calc(100vw * (22 / 1180));
    }
    .component_view .comp_section .content h5:first-child {
        margin-top: calc(100vw * (50 / 1180));
    }
    .component_view .comp_section .content h5::before {
        top: calc(100vw * (5 / 1180));
        width: calc(100vw * (4 / 1180));
        height: calc(100vw * (14 / 1180));
    }
    .component_view .comp_section .grade_list {
        gap: calc(100vw * (16 / 1180));
        margin-top: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .grade_list > li {
        width: calc(100vw * (350 / 1180));
        padding: calc(100vw * (36 / 1180)) calc(100vw * (30 / 1180));
        border-radius: calc(100vw * (4 / 1180));
    }
    .component_view .comp_section .grade_list > li .title {
        margin-bottom: calc(100vw * (10 / 1180));
        font-size: calc(100vw * (28 / 1180));
    }
    .component_view .comp_section .grade_list .group {
        gap: calc(100vw * (12 / 1180));
    }
    .component_view .comp_section .grade_list .group .block {
        padding: calc(100vw * (28 / 1180)) calc(100vw * (30 / 1180));
    }
    .component_view .comp_section .grade_list .group .date .num {
        font-size: calc(100vw * (40 / 1180));
    }
    .component_view .comp_section .grade_list .group .date .months {
        font-size: calc(100vw * (16 / 1180));
    }
    .component_view .comp_section .grade_list .group .caption {
        margin-top: calc(100vw * (16 / 1180));
        font-size: calc(100vw * (16 / 1180));
    }
    .component_view .comp_section .grade_list .goods {
        margin-top: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .grade_list .goods .title {
        font-size: calc(100vw * (22 / 1180));
    }
    .component_view .comp_section .grade_list .goods .goods_lsit {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: calc(100vw * (8 / 1180)) 0;
    }
    .component_view .comp_section .grade_list .goods .goods_lsit li {
        margin-right: calc(100vw * (8 / 1180));
        padding-right: calc(100vw * (10 / 1180));
        font-size: calc(100vw * (16 / 1180));
    }
    .component_view .comp_section .grade_list .goods .goods_lsit li::before {
        top: calc(100vw * (4 / 1180));
        width: calc(100vw * (2 / 1180));
        height: calc(100vw * (12 / 1180));
    }
    .component_view .comp_section .num_list {
        margin-top: calc(100vw * (24 / 1180));
        margin-left: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .num_list > li {
        margin-top: calc(100vw * (16 / 1180));
        font-size: calc(100vw * (18 / 1180));
    }
    .component_view .comp_section .num_list .dot_list {
        margin-top: calc(100vw * (8 / 1180));
    }
    .component_view .comp_section .dot_list {
        margin-top: calc(100vw * (8 / 1180));
    }
    .component_view .comp_section .dot_list li {
        margin-top: calc(100vw * (4 / 1180));
        padding-left: calc(100vw * (11 / 1180));
        font-size: calc(100vw * (18 / 1180));
    }
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (12 / 1180));
        width: 5px;
        height: 5px;
    }
    .component_view .comp_section .qna_list,
.component_view .comp_accordion .qna_list {
        margin-top: calc(100vw * (24 / 1180));
    }
    .component_view .comp_section .qna_list > li,
.component_view .comp_accordion .qna_list > li {
        margin-top: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .qna_list > li .question a,
.component_view .comp_accordion .qna_list > li .question a {
        padding: calc(100vw * (21.5 / 1180)) calc(100vw * (54 / 1180)) calc(100vw * (21.5 / 1180)) calc(100vw * (24 / 1180));
        font-size: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .qna_list > li .question a::before,
.component_view .comp_accordion .qna_list > li .question a::before {
        right: calc(100vw * (24 / 1180));
        width: calc(100vw * (20 / 1180));
        height: calc(100vw * (20 / 1180));
    }
    .component_view .comp_section .qna_list > li .block,
.component_view .comp_accordion .qna_list > li .block {
        padding: calc(100vw * (40 / 1180)) 0;
    }
    .component_view .comp_section .qna_list > li .block .txt,
.component_view .comp_section .qna_list > li .block p,
.component_view .comp_accordion .qna_list > li .block .txt,
.component_view .comp_accordion .qna_list > li .block p {
        margin-top: calc(100vw * (16 / 1180));
        font-size: calc(100vw * (18 / 1180));
    }
    .component_view .comp_section .qna_list > li .block .dot_list,
.component_view .comp_accordion .qna_list > li .block .dot_list {
        margin-top: calc(100vw * (16 / 1180));
        margin-left: calc(100vw * (10 / 1180));
    }
    .component_view .comp_section .qna_list > li .block .caption,
.component_view .comp_accordion .qna_list > li .block .caption {
        gap: calc(100vw * (10 / 1180));
        margin-top: calc(100vw * (18 / 1180));
    }
    .component_view .comp_section .qna_list > li .block .caption span,
.component_view .comp_accordion .qna_list > li .block .caption span {
        width: calc(100vw * (8 / 1180));
        margin-top: calc(100vw * (2 / 1180));
        font-size: calc(100vw * (16 / 1180));
    }
    .component_view .comp_section .disclaimer,
.component_view .comp_accordion .disclaimer {
        margin-top: calc(100vw * (40 / 1180));
        font-size: calc(100vw * (20 / 1180));
    }
}
@media (max-width: 1024px) {
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (11 / 1024));
        width: 3px;
        height: 3px;
    }
}
@media (max-width: 767px) {
    .component_view .comp_section .inner {
        padding-top: calc(100vw * (120 / 767));
        margin-top: calc(100vw * (120 / 767));
    }
    .component_view .comp_section .inner::before {
        width: calc(100% - calc(100vw * (80 / 767)));
    }
    .component_view .comp_section .hgroup h3 {
        font-size: calc(100vw * (48 / 767));
    }
    .component_view .comp_section .content .txt,
.component_view .comp_section .content p {
        margin-top: calc(100vw * (16 / 767));
        line-height: 1.5;
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .content .desc {
        margin-top: calc(100vw * (60 / 767));
        font-size: calc(100vw * (32 / 767));
    }
    .component_view .comp_section .content .desc:first-child {
        margin-top: calc(100vw * (40 / 767));
    }
    .component_view .comp_section .content .shgroup {
        margin-top: calc(100vw * (100 / 767));
        padding: calc(100vw * (45.5 / 767)) calc(100vw * (40/ 767));
    }
    .component_view .comp_section .content .shgroup + .txt,
.component_view .comp_section .content .shgroup + p {
        margin-top: calc(100vw * (40 / 767));
    }
    .component_view .comp_section .content .shgroup h4 {
        font-size: calc(100vw * (36 / 767));
    }
    .component_view .comp_section .content h5 {
        margin-top: calc(100vw * (50 / 767));
        padding-left: calc(100vw * (24 / 767));
        font-size: calc(100vw * (36 / 767));
    }
    .component_view .comp_section .content h5::before {
        top: calc(100vw * (10 / 767));
        width: calc(100vw * (8 / 767));
        height: calc(100vw * (24 / 767));
    }
    .component_view .comp_section .content h5:first-child {
        margin-top: calc(100vw * (50 / 767));
    }
    .component_view .comp_section .grade_list {
        flex-direction: column;
        gap: calc(100vw * (20 / 767));
        margin-top: calc(100vw * (20 / 767));
    }
    .component_view .comp_section .grade_list > li {
        width: 100%;
        padding: calc(100vw * (72 / 767)) calc(100vw * (40 / 767));
        border-radius: calc(100vw * (8 / 767));
    }
    .component_view .comp_section .grade_list > li .title {
        margin-bottom: calc(100vw * (20 / 767));
        font-size: calc(100vw * (44 / 767));
    }
    .component_view .comp_section .grade_list .group {
        gap: calc(100vw * (24 / 767));
    }
    .component_view .comp_section .grade_list .group .block {
        padding: calc(100vw * (56 / 767)) calc(100vw * (60 / 767));
    }
    .component_view .comp_section .grade_list .group .date .num {
        font-size: calc(100vw * (68 / 767));
    }
    .component_view .comp_section .grade_list .group .date .months {
        margin-top: calc(100vw * (12 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .grade_list .group .caption {
        margin-top: calc(100vw * (28 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .grade_list .goods {
        margin-top: calc(100vw * (40 / 767));
    }
    .component_view .comp_section .grade_list .goods .title {
        font-size: calc(100vw * (36 / 767));
    }
    .component_view .comp_section .grade_list .goods .goods_lsit {
        gap: calc(100vw * (16 / 767)) 0;
    }
    .component_view .comp_section .grade_list .goods .goods_lsit li {
        margin-right: calc(100vw * (16 / 767));
        padding-right: calc(100vw * (20 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .grade_list .goods .goods_lsit li::before {
        top: calc(100vw * (5.5 / 767));
        width: calc(100vw * (4 / 767));
        height: calc(100vw * (24 / 767));
    }
    .component_view .comp_section .num_list {
        margin-top: calc(100vw * (40 / 767));
        margin-left: calc(100vw * (36 / 767));
    }
    .component_view .comp_section .num_list > li {
        margin-top: calc(100vw * (20 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .num_list .dot_list {
        margin-top: calc(100vw * (8 / 767));
    }
    .component_view .comp_section .dot_list {
        margin-top: calc(100vw * (12 / 767));
    }
    .component_view .comp_section .dot_list li {
        margin-top: calc(100vw * (8 / 767));
        padding-left: calc(100vw * (20 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (18 / 767));
        width: 8px;
        height: 8px;
    }
    .component_view .comp_section .qna_list,
.component_view .comp_accordion .qna_list {
        margin-top: calc(100vw * (40 / 767));
    }
    .component_view .comp_section .qna_list > li,
.component_view .comp_accordion .qna_list > li {
        margin-top: calc(100vw * (20 / 767));
    }
    .component_view .comp_section .qna_list > li .question a,
.component_view .comp_accordion .qna_list > li .question a {
        padding: calc(100vw * (40 / 767)) calc(100vw * (130 / 767)) calc(100vw * (40 / 767)) calc(100vw * (40 / 767));
        font-size: calc(100vw * (36 / 767));
    }
    .component_view .comp_section .qna_list > li .question a::before,
.component_view .comp_accordion .qna_list > li .question a::before {
        right: calc(100vw * (40 / 767));
        width: calc(100vw * (36 / 767));
        height: calc(100vw * (36 / 767));
    }
    .component_view .comp_section .qna_list > li .block,
.component_view .comp_accordion .qna_list > li .block {
        padding: calc(100vw * (60 / 767)) 0;
    }
    .component_view .comp_section .qna_list > li .block .txt,
.component_view .comp_section .qna_list > li .block p,
.component_view .comp_accordion .qna_list > li .block .txt,
.component_view .comp_accordion .qna_list > li .block p {
        margin-top: calc(100vw * (40 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .qna_list > li .block .dot_list,
.component_view .comp_accordion .qna_list > li .block .dot_list {
        margin-top: calc(100vw * (20 / 767));
        margin-left: calc(100vw * (20 / 767));
    }
    .component_view .comp_section .qna_list > li .block .dot_list li,
.component_view .comp_accordion .qna_list > li .block .dot_list li {
        margin-top: calc(100vw * (20 / 767));
    }
    .component_view .comp_section .qna_list > li .block .caption,
.component_view .comp_accordion .qna_list > li .block .caption {
        gap: calc(100vw * (6 / 767));
        margin-top: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .qna_list > li .block .caption span,
.component_view .comp_accordion .qna_list > li .block .caption span {
        width: calc(100vw * (13 / 767));
        margin-top: calc(100vw * (4 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_section .disclaimer,
.component_view .comp_accordion .disclaimer {
        margin-top: calc(100vw * (40 / 767));
        font-size: calc(100vw * (36 / 767));
    }
}
@media (max-width: 650px) {
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (14 / 650));
        width: 6px;
        height: 6px;
    }
}
@media (max-width: 430px) {
    .component_view .comp_section .dot_list li {
        padding-left: calc(100vw * (10 / 430));
    }
    .component_view .comp_section .dot_list li::before {
        top: calc(100vw * (11 / 430));
        width: 4px;
        height: 4px;
    }
}
.component_view .comp_section table[data-sheets-root] {
    width: 100%;
    border-collapse: collapse;
    table-layout: auto;
    margin-top: 2.4rem;
    margin-bottom: 1rem;
    border: none;
}
.component_view .comp_section table[data-sheets-root] col {
    width: auto !important;
}
.component_view .comp_section table[data-sheets-root] tbody tr:first-child td {
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: center;
    vertical-align: middle;
    padding: 1.6rem 1rem;
    color: #000;
    background-color: #F6F6F6;
    border: 0.1rem solid #D9D9D9;
}
.component_view .comp_section table[data-sheets-root] tbody td {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: left;
    vertical-align: middle;
    padding: 1.2rem 1rem;
    color: #000;
    border: 0.1rem solid #D9D9D9;
}
.component_view .comp_section table[data-sheets-root] td strong {
    font-weight: 700;
}
.component_view .comp_section table[data-sheets-root] td em {
    font-style: italic;
}
.component_view .comp_section table[data-sheets-root] td u {
    text-decoration: underline;
}
.component_view .comp_section table[data-sheets-root] td div {
    margin: 0;
}
.component_view .comp_section .tab-panel {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
@media (max-width: 1919px) {
    .component_view .comp_section table[data-sheets-root] {
        margin-top: calc(100vw * (24 / 1919));
    }
    .component_view .comp_section table[data-sheets-root] tbody tr:first-child td {
        font-size: calc(100vw * (16 / 1919));
        padding: calc(100vw * (16 / 1919)) calc(100vw * (10 / 1919));
        border: calc(100vw * (1 / 1919)) solid #D9D9D9;
    }
    .component_view .comp_section table[data-sheets-root] tbody td {
        font-size: calc(100vw * (16 / 1919));
        padding: calc(100vw * (12 / 1919)) calc(100vw * (10 / 1919));
        border: calc(100vw * (1 / 1919)) solid #D9D9D9;
    }
}
@media (max-width: 1180px) {
    .component_view .comp_section table[data-sheets-root] tbody tr:first-child td,
.component_view .comp_section table[data-sheets-root] tbody td {
        font-size: calc(100vw * (16 / 1180));
        padding: calc(100vw * (10 / 1180)) calc(100vw * (10 / 1180));
        border: calc(100vw * (1 / 1180)) solid #D9D9D9;
    }
}
@media (max-width: 767px) {
    .component_view .comp_section table[data-sheets-root] {
        min-width: 60rem;
    }
    .component_view .comp_section table[data-sheets-root] tbody tr:first-child td,
.component_view .comp_section table[data-sheets-root] tbody td {
        font-size: calc(100vw * (28 / 767));
        padding: calc(100vw * (20 / 767)) calc(100vw * (10 / 767));
        border: calc(100vw * (1 / 767)) solid #D9D9D9;
    }
}

/* ── 배너 바로 뒤 첫 섹션: 상단 구분선·여백 제거 (support.css .replace .inner 와 동일) ── */
.component_view .top_visual + .comp_section .inner,
.component_view > .comp_section:first-child .inner {
    padding-top: 0 !important;
}
.component_view .top_visual + .comp_section .inner::before,
.component_view > .comp_section:first-child .inner::before {
    display: none;
}

/* ── 제목 없는 섹션(.no_title): 앞 섹션에 이어지는 본문 — 구분선 없이 우측 컬럼만 ── */
.component_view .comp_section.no_title .inner {
    padding-top: 0;
    margin-top: 4.8rem;
}
.component_view .comp_section.no_title .inner::before {
    display: none;
}
@media (max-width: 1919px) {
    .component_view .comp_section.no_title .inner {
        margin-top: calc(100vw * (48 / 1919));
    }
}
@media (max-width: 1180px) {
    .component_view .comp_section.no_title .inner {
        margin-top: calc(100vw * (48 / 1180));
    }
    .component_view .comp_section.no_title .hgroup {
        display: none;
    }
}

/* ── component.css .comp_text 기본 목록 스타일(disc, padding-left 2rem) 무효화 — 점은 ::before 로 그림 ── */
.component_view .comp_section .dot_list,
.component_view .comp_section .num_list {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}
.component_view .comp_section .dot_list li,
.component_view .comp_section .num_list li {
    list-style: none;
}

/* ── 탭 콘텐츠 · 섹션 우측 컬럼: 밑줄형 탭 (support.css .quality .tab-wrap 값) ── */
.component_view .ethics.comp_section {
    margin-top: 0;
}
.component_view .ethics.comp_section .tab_wrap.large {
    margin-bottom: 3.2rem;
    border-bottom: 1px solid #D9D9D9;
}
.component_view .ethics.comp_section .tab_wrap.large .tab_list {
    gap: 3.2rem;
    justify-content: flex-start;
}
.component_view .ethics.comp_section .tab_wrap.large .tab_list li a {
    padding-bottom: 1.2rem;
    color: #888;
    line-height: 1.25;
    font-size: 1.8rem;
    font-weight: 500;
}
.component_view .ethics.comp_section .tab_wrap.large .tab_list li.on a {
    color: #000;
    font-weight: 700;
}
.component_view .ethics.comp_section .tab_wrap.large .tab_list li.on a::before {
    bottom: -1px;
}
.component_view .ethics.comp_section .tab_content.tab1 {
    gap: 4.8rem;
}
.component_view .ethics.comp_section .tab_content {
    animation: none;
}
.component_view .ethics.comp_section .btn_area {
    margin-top: 5.2rem;
    margin-bottom: 5.2rem;
}
@media (max-width: 1919px) {
    .component_view .ethics.comp_section .tab_wrap.large {
        margin-bottom: calc(100vw * (32 / 1919));
    }
    .component_view .ethics.comp_section .tab_wrap.large .tab_list {
        gap: calc(100vw * (32 / 1919));
    }
    .component_view .ethics.comp_section .tab_wrap.large .tab_list li a {
        padding-bottom: calc(100vw * (12 / 1919));
        font-size: calc(100vw * (18 / 1919));
    }
}
@media (max-width: 1180px) {
    .component_view .ethics.comp_section .tab_wrap.large {
        margin-bottom: calc(100vw * (32 / 1180));
    }
    .component_view .ethics.comp_section .tab_wrap.large .tab_list {
        gap: calc(100vw * (32 / 1180));
    }
    .component_view .ethics.comp_section .tab_wrap.large .tab_list li a {
        padding-bottom: calc(100vw * (12 / 1180));
        font-size: calc(100vw * (18 / 1180));
    }
}
@media (max-width: 767px) {
    .component_view .ethics.comp_section .tab_wrap.large .tab_list {
        gap: calc(100vw * (40 / 767));
    }
    .component_view .ethics.comp_section .tab_wrap.large .tab_list li a {
        padding-bottom: calc(100vw * (20 / 767));
        font-size: calc(100vw * (28 / 767));
    }
}

/* ── 아코디언 기본(전체 폭) 레이아웃: 섹션 상단 여백 + 제목 ── */
.component_view .comp_accordion:not(.comp_section) {
    margin-top: 10rem;
}
.component_view .comp_accordion:not(.comp_section) .title {
    margin-bottom: 4rem;
    line-height: 1.45;
    font-size: 3.2rem;
    font-weight: 900;
}
@media (max-width: 1919px) {
    .component_view .comp_accordion:not(.comp_section) {
        margin-top: calc(100vw * (100 / 1919));
    }
    .component_view .comp_accordion:not(.comp_section) .title {
        margin-bottom: calc(100vw * (40 / 1919));
        font-size: calc(100vw * (32 / 1919));
    }
}
@media (max-width: 1180px) {
    .component_view .comp_accordion:not(.comp_section) {
        margin-top: calc(100vw * (100 / 1180));
    }
    .component_view .comp_accordion:not(.comp_section) .title {
        margin-bottom: calc(100vw * (40 / 1180));
        font-size: calc(100vw * (32 / 1180));
    }
}
@media (max-width: 767px) {
    .component_view .comp_accordion:not(.comp_section) {
        margin-top: calc(100vw * (120 / 767));
    }
    .component_view .comp_accordion:not(.comp_section) .title {
        margin-bottom: calc(100vw * (40 / 767));
        font-size: calc(100vw * (48 / 767));
    }
}

/* ── 아코디언 기본(전체 폭): 답변 본문 타이포 — .comp_section .content 폴백 규칙과 동일 값
   (margin·font-size 는 위 .block .txt/p 이중 스코프 규칙이 담당, 여기선 빠진 속성만) ── */
.component_view .comp_accordion:not(.comp_section) .qna_list > li .block .txt,
.component_view .comp_accordion:not(.comp_section) .qna_list > li .block p {
    color: #000;
    line-height: 1.6;
    font-weight: 600;
}
.component_view .comp_accordion:not(.comp_section) .qna_list > li .block .txt a,
.component_view .comp_accordion:not(.comp_section) .qna_list > li .block p a {
    position: relative;
    color: #2A66FF;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 2px;
}
@media (max-width: 767px) {
    .component_view .comp_accordion:not(.comp_section) .qna_list > li .block .txt,
    .component_view .comp_accordion:not(.comp_section) .qna_list > li .block p {
        line-height: 1.5;
    }
}

/* ── 아코디언 기본(전체 폭): 점 목록(.dot_list) — .comp_section .dot_list 규칙과 동일 값
   (블록 내 margin-top/left 는 위 .block .dot_list 이중 스코프 규칙이 우선) ── */
.component_view .comp_accordion:not(.comp_section) .dot_list {
    margin-top: 2.4rem;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}
.component_view .comp_accordion:not(.comp_section) .dot_list li {
    position: relative;
    margin-top: .4rem;
    padding-left: 1.1rem;
    line-height: 1.6;
    font-size: 1.6rem;
    list-style: none;
}
.component_view .comp_accordion:not(.comp_section) .dot_list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1rem;
    width: .5rem;
    height: .5rem;
    border-radius: 99rem;
}
.component_view .comp_accordion:not(.comp_section) .dot_list li:first-child {
    margin-top: 0;
}
.component_view .comp_accordion:not(.comp_section) .dot_list.black li {
    color: #000;
}
.component_view .comp_accordion:not(.comp_section) .dot_list.black li::before {
    background: #000;
}
.component_view .comp_accordion:not(.comp_section) .dot_list.gray li {
    color: #666;
}
.component_view .comp_accordion:not(.comp_section) .dot_list.gray li::before {
    background: #666;
}
@media (max-width: 1919px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list {
        margin-top: calc(100vw * (24 / 1919));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li {
        margin-top: calc(100vw * (4 / 1919));
        padding-left: calc(100vw * (11 / 1919));
        font-size: calc(100vw * (16 / 1919));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (10 / 1919));
        width: 5px;
        height: 5px;
    }
}
@media (max-width: 1600px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (10/ 1600));
        width: 3px;
        height: 3px;
    }
}
@media (max-width: 1180px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list {
        margin-top: calc(100vw * (8 / 1180));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li {
        margin-top: calc(100vw * (4 / 1180));
        padding-left: calc(100vw * (11 / 1180));
        font-size: calc(100vw * (18 / 1180));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (12 / 1180));
        width: 5px;
        height: 5px;
    }
}
@media (max-width: 1024px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (11 / 1024));
        width: 3px;
        height: 3px;
    }
}
@media (max-width: 767px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list {
        margin-top: calc(100vw * (12 / 767));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li {
        margin-top: calc(100vw * (8 / 767));
        padding-left: calc(100vw * (20 / 767));
        font-size: calc(100vw * (28 / 767));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (18 / 767));
        width: 8px;
        height: 8px;
    }
}
@media (max-width: 650px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (14 / 650));
        width: 6px;
        height: 6px;
    }
}
@media (max-width: 430px) {
    .component_view .comp_accordion:not(.comp_section) .dot_list li {
        padding-left: calc(100vw * (10 / 430));
    }
    .component_view .comp_accordion:not(.comp_section) .dot_list li::before {
        top: calc(100vw * (11 / 430));
        width: 4px;
        height: 4px;
    }
}

/* ── 아코디언 하단 문구(.disclaimer): 위 .content p 폴백 규칙(margin-top 1.2rem, 600)보다 우선하도록 p.disclaimer 로 재지정 ── */
.component_view .comp_section .content p.disclaimer,
.component_view .comp_accordion .content p.disclaimer,
.component_view .comp_accordion p.disclaimer {
    margin-top: 4rem;
    line-height: 1.6;
    font-size: 1.8rem;
    font-weight: 500;
}
@media (max-width: 1919px) {
    .component_view .comp_section .content p.disclaimer,
    .component_view .comp_accordion .content p.disclaimer,
    .component_view .comp_accordion p.disclaimer {
        margin-top: calc(100vw * (40 / 1919));
        font-size: calc(100vw * (18 / 1919));
    }
}
@media (max-width: 1180px) {
    .component_view .comp_section .content p.disclaimer,
    .component_view .comp_accordion .content p.disclaimer,
    .component_view .comp_accordion p.disclaimer {
        margin-top: calc(100vw * (40 / 1180));
        font-size: calc(100vw * (20 / 1180));
    }
}
@media (max-width: 767px) {
    .component_view .comp_section .content p.disclaimer,
    .component_view .comp_accordion .content p.disclaimer,
    .component_view .comp_accordion p.disclaimer {
        margin-top: calc(100vw * (40 / 767));
        font-size: calc(100vw * (36 / 767));
    }
}
