﻿@charset "UTF-8";
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
body, html{line-height:1;background:#fff;color:#2F3037;font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:clamp(14px,3.3333vw,16px);letter-spacing:0;}
html,body{overscroll-behavior-y:none;}
body.is-popup-open{overflow:hidden;}
h1,h2,h3,h4,h5,h6, button,a{font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:"";content:none;}
table{border-collapse:collapse;border-spacing:0;}
button,input,select,textarea{margin:0;font:inherit;color:inherit;}
button{border:0;background:none;cursor:pointer;}
a{color:inherit;text-decoration:none;}
img{display:block;width:100%;height:auto;}
figcaption{display:none;}
*{box-sizing:border-box;}
.sm-page{min-height:100vh;min-height:100svh;background:#F5F5F7;}
.sm-page.is-step1{font-weight:600;}
.sm-page.is-white{background:#fff;}
.sm-wrap{position:relative;width:100%;max-width:480px;min-height:100vh;min-height:100svh;margin:0 auto;background:#F5F5F7;}
.sm-wrap.is-long{padding-bottom:calc(16.6667vw + env(safe-area-inset-bottom));}
.sm-wrap.is-white{background:#fff;}
.sm-header{display:flex;align-items:flex-start;justify-content:space-between;padding:4.1667vw 4.1667vw 0;}
.sm-logo{display:block;width:16.25vw;aspect-ratio:78/43;background:url("/Resources2/SelfMatching/images/svg_logo.png") no-repeat 0 0 / 100% auto;font-size:0;line-height:0;}
.sm-step{padding-top:3.125vw;color:#2F3037;font-weight:600;font-size:3.9583vw;line-height:1;font-family:"Outfit", sans-serif;}
.sm-step-num{color:#7F41E9;}
.sm-main{padding:7.9167vw 4.1667vw;}
.sm-main.is-step2{padding-top:12.5vw;}
.sm-main.is-step3{padding-top:8.3333vw;padding-bottom:calc(8.3333vw + env(safe-area-inset-bottom));background:#fff;}
.sm-title{font-weight:700;font-size:7.5vw;line-height:1.28;text-align:center;letter-spacing:0;}
.sm-title-point{color:#7F41E9;}
.sm-subtitle{margin-top:3.3333vw;color:#777b84;font-weight:500;font-size:4.1667vw;line-height:1.3;text-align:center;}
.sm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3.125vw;margin-top:13.9583vw;}
.sm-grid.is-subject{grid-template-columns:repeat(3,1fr);gap:2.2917vw;margin-top:10.8333vw;}
.sm-card{display:block;width:100%;}
.sm-card-input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.sm-card-box{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;aspect-ratio:213/267;border:1px solid #E3E3E8;border-radius:3.3333vw;background:#fff;overflow:hidden;cursor: pointer;}
.sm-card-input:checked + .sm-card-box{border-color:#7F41E9;background:linear-gradient(135deg,#8643ea 0%,#9828c6 100%);box-shadow:0 0.8333vw 1.6667vw rgba(61,39,107,0.28);}
.sm-card-input:checked + .sm-subject-box{border-color:#7F41E9;background:linear-gradient(135deg,#8643ea 0%,#9828c6 100%);box-shadow:none;}
.sm-card-input:focus-visible + .sm-card-box{outline:2px solid #7F41E9;outline-offset:2px;}
.sm-card-input:focus-visible + .sm-subject-box{outline:2px solid #7F41E9;outline-offset:2px;}
.sm-card-visual{display:flex;align-items:center;justify-content:center;width:29.1667vw;aspect-ratio:1;border-radius:50%;background:#f0f1f6;font-size:14.1667vw;line-height:1;}
.sm-card-name{margin-top:4.375vw;color:#292b33;font-weight:700;font-size:5vw;line-height:1.25;text-align:center;}
.sm-card-desc{display:block;margin-top:1.0417vw;font-weight:500;font-size:4.1667vw;}
.sm-card-input:checked + .sm-card-box .sm-card-visual{background:rgba(255,255,255,0.24);}
.sm-card-input:checked + .sm-card-box .sm-card-name{color:#fff;}
.sm-subject-box{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;aspect-ratio:140/137;border:1px solid #E3E3E8;border-radius:2.7083vw;background:#fff;cursor: pointer;}
.sm-subject-visual{display:block;width:14.5833vw;}
.sm-subject-name{margin-top:2.5vw;color:#292b33;font-weight:600;font-size:4.1667vw;line-height:1.2;}
.sm-card-input:checked + .sm-subject-box .sm-subject-name{color:#fff;}
.sm-divider{margin:8.3333vw 0;border-top:1px solid #d7d8dd;}
.sm-count{display:flex;align-items:center;justify-content:space-between;width:100%;padding:6.25vw 8.3333vw;border-radius:2.7083vw;background:#616B84;color:#fff;}
.sm-count-group{display:flex;flex-direction:column;gap:2.5vw;}
.sm-count-row{display:flex;align-items:center;gap:3.3333vw;font-weight:800;font-size:4.1667vw;line-height:1;}
.sm-count-label{display:inline-flex;align-items:center;justify-content:center;width:10.4167vw;min-height:4.5833vw;border-radius:4.5833vw;background:#394460;font-weight:400;font-size:2.9167vw;}
.sm-count-text{font-weight:400;}
.sm-count-text strong{font-weight:700;}
.sm-count-total{display:flex;align-self:stretch;align-items:center;justify-content:center;gap:3.3333vw;padding-left:10.8333vw;border-left:1px solid rgba(57,68,96,0.6);font-weight:800;font-size:5vw;}
.sm-bottom{position:fixed;left:50%;bottom:0;display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:480px;padding-bottom:env(safe-area-inset-bottom);background:linear-gradient(90deg,#696E74 0 50%,#7F41E9 50% 100%);transform:translateX(-50%);z-index:10;}
.sm-bottom-link{display:flex;align-items:center;justify-content:center;min-height:16.6667vw;color:#fff;font-weight:700;font-size:5.4167vw;line-height:1;background:#696E74;}
.sm-bottom-link.is-primary{background:#7F41E9;}

.sm-progress-bar{height:1.4583vw;border-radius:1.4583vw;background:#E7E9F0;overflow:hidden;}
/* 2026-07-07 진행률 width JS 계산 적용 */
.sm-progress-value{display:block;width:0;height:1.4583vw;border-radius:1.4583vw;background:#7F41E9;transition:width 0.45s ease;}
.sm-progress-info{display:flex;align-items:flex-start;justify-content:space-between;margin-top:3.125vw;}
.sm-progress-tag{display:inline-flex;align-items:center;justify-content:center;min-height:8.3333vw;padding:0 3.5vw;border-radius:8.3333vw;background:#E7E9F2;color:#7C7F94;font-weight:600;font-size:3.75vw;}
.sm-progress-page{color:#2F3037;font-weight:700;font-size:4.5833vw;line-height:1.2;font-family:"Outfit", sans-serif;}
.sm-progress-muted{color:#A4A6AB;font-weight:600;font-size:4.1667vw;}
.sm-question{margin-top:8.75vw;text-align:center;}
.sm-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:20.8333vw;min-height:10vw;padding:0 6.25vw;border-radius:10vw;background:#7F41E9;color:#fff;font-weight:700;font-size:5vw;}
.sm-badge:after{content:"";position:absolute;left:50%;bottom:-2.75vw;width:3.75vw;aspect-ratio:1;background:url("/Resources2/SelfMatching/images/tail.svg") no-repeat 0 0 / 100% auto;transform:translateX(-50%);}
.sm-question-title{margin-top:8.3333vw;color:#2F3037;font-weight:700;font-size:6.25vw;line-height:1.42;word-break: keep-all;}
.sm-question-num{font-weight:700;font-family:"Outfit", sans-serif;}
.sm-answer-list{display:flex;flex-direction:column;gap:3.75vw;margin-top:8.3333vw;}
.sm-answer{display:block;width:100%;}
.sm-answer-box{display:flex;align-items:center;justify-content:center;min-height:25vw;padding:5.2083vw 6.25vw;border:0.8333vw solid #EBEEFC;border-radius:2.9167vw;background:#EBEEFC;color:#3A3E55;font-weight:500;font-size:5vw;line-height:1.45;text-align:center;cursor: pointer; word-break: keep-all;}
.sm-answer-input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.sm-answer-input:checked + .sm-answer-box{border-color:#7F41E9;background:#fbf4ff;color:#7F41E9;font-weight:600;box-shadow:0 0.8333vw 1.25vw rgba(63,45,115,0.24);word-break: keep-all;}
.sm-answer-input:focus-visible + .sm-answer-box{outline:2px solid #7F41E9;outline-offset:2px;word-break: keep-all;}
.sm-prev-line{display:inline-flex;align-items:center;gap:2.0833vw;padding-top:4.5833vw;color:#71767d;font-weight:600;font-size:5vw;}
.sm-prev-icon{display:inline-block;width:6.25vw;aspect-ratio:1;background:url("/Resources2/SelfMatching/images/ico_prev.svg") no-repeat 0 0 / 100% auto;}
.sm-result-actions{margin-top:4.5833vw;}
.sm-result-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:16.25vw;margin-top:7.0833vw;border-radius:2.9167vw;background:#7F41E9;color:#fff;font-weight:800;font-size:5.4167vw;line-height:1;}
.sm-wrap.is-result{padding-bottom:calc(8.3333vw + env(safe-area-inset-bottom));}
.rs-main{display:flex;flex-direction:column;gap:8.3333vw;padding:8.3333vw 4.1667vw 0;}
.rs-hidden-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.rs-result-img{position:relative;width:100%;}
.rs-down-btn{position:absolute;right:5.2083vw;bottom:5.2083vw;width:10vw;aspect-ratio:1;background:url("/Resources2/SelfMatching/images/svg_down.svg") no-repeat 50% 50% / 100% auto;}
.rs-section{display:flex;flex-direction:column;gap:3.125vw;}
.rs-section-title{color:#2f3037;font-weight:700;font-size:5.8333vw;line-height:1.1786;}
.rs-product{overflow:hidden;border:1px solid #e3e3e8;border-radius:3.125vw;background:#fff;}
.rs-product-img{width:100%;aspect-ratio:440/260;overflow:hidden;}
.rs-product-img img{height:100%;object-fit:cover;}
.rs-product-body{padding:6.25vw; text-align: center;}
.rs-product-title{position:relative;display:inline-block;color:#2f3037;font-weight:800;font-size:5.8333vw;line-height:1.1786;text-align:center;z-index:1;}
.rs-product-title:after{content:"";position:absolute;left:50%;bottom:-0.4167vw;width:100%;height:2.2917vw;background:#12ffbc;transform:translateX(-50%);z-index:-1;}
.rs-product-desc{margin-top:4.1667vw;color:#2f3037;font-weight:500;font-size:4.1667vw;line-height:1.5;word-break: keep-all; text-align: left;}
.rs-book{padding:6.25vw 2.0833vw;border:1px solid #e3e3e8;border-radius:3.125vw;background:#fff;}
.rs-tab-list{display:flex;flex-wrap:wrap;justify-content:center;gap:2.5vw;width:79.1667vw;margin:0 auto;}
.rs-tab{display:flex;align-items:center;justify-content:center;width:17.9167vw;min-height:10.625vw;padding:0 2.0833vw;border-radius:10.625vw;background:#f2f3f7;color:#4e515b;font-weight:500;font-size:4.1667vw;line-height:1.35;}
.rs-tab.is-active{background:#7F41E9;color:#fff;font-weight:700;}
.rs-book-panel{width:79.1667vw;margin:6.25vw auto 0;}
.rs-level-head{padding:4.1667vw 4.1667vw 5.2083vw;border-radius:7.2917vw 7.2917vw 0 0;background:#7F41E9;text-align:center;}
.rs-level-label{display:inline-flex;align-items:center;justify-content:center;min-height:6.4583vw;padding:0 3.3333vw;border:1px solid #fff;border-radius:10.4167vw;color:#fff;font-weight:500;font-size:3.3333vw;}
.rs-level-title{margin-top:2.0833vw;color:#fff;font-weight:700;font-size:6.25vw;line-height:1.2;}
.rs-level-title span{font-weight:400;}
.rs-level-title strong{color:#12ffbc;font-weight:700;}
.rs-level-title .js-book-name{font-weight:700;}
.rs-level-body{display:flex;flex-direction:column;gap:4vw;padding:5vw 6.25vw;border-radius:0 0 3.125vw 3.125vw;background:#f8f1ff;}
.rs-level-item{display:grid;grid-template-columns:10vw 1fr;gap:3.125vw;align-items:center;}
.rs-level-item strong{display:flex;align-items:center;justify-content:center;width:10vw;aspect-ratio:1;border-radius:50%;background:#7F41E9;color:#12ffbc;font-weight:700;font-size:4.5833vw;}
.rs-level-item p{color:#394460;font-weight:500;font-size:4.5833vw;line-height:1.4091;}
.rs-book-desc{margin-top:4.5833vw;color:#394460;font-weight:500;font-size:4.375vw;line-height:1.5238;text-align:center; padding:0 40px;word-break: keep-all;}
.rs-book-desc strong{font-weight:700;}
.rs-actions{display:flex;flex-direction:column;gap:5.2083vw;width:100%;padding:15.4167vw 4.1667vw 0;background:#f5f5f7;}
.rs-apply,.rs-contract{display:flex;align-items:center;justify-content:center;min-height:16.25vw;border-radius:3.125vw;color:#fff;font-weight:700;font-size:5vw;line-height:1;}
.rs-apply{background:#00C1AB;}
.rs-action-row{display:grid;grid-template-columns:1fr 16.25vw 16.25vw;gap:3.3333vw;}
.rs-contract{background:#7F41E9;}
.rs-icon-btn{display:block;width:16.25vw;aspect-ratio:1;border:1px solid #e3e3e8;border-radius:3.125vw;background:#fff no-repeat 50% 50% / 6.25vw auto;}
.rs-icon-btn.is-share{background-image:url("/Resources2/SelfMatching/images/svg_share.svg");}
.rs-icon-btn.is-replay{background-image:url("/Resources2/SelfMatching/images/svg_replay.svg");}
.rs-popup[hidden]{display:none;}
.rs-popup{position:fixed;left:50%;top:0;bottom:0; width:100%;max-width:480px;height:auto;transform:translateX(-50%);z-index:30;}
.rs-popup-dim{position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,0.55);opacity:0;transition:opacity 0.28s ease;}
.rs-popup-panel{position:absolute;left:0;bottom:0;width:100%;padding:2.0833vw 6.25vw calc(12.5vw + env(safe-area-inset-bottom));border-radius:6.25vw 6.25vw 0 0;background:#fff;transform:translateY(100%);transition:transform 0.32s ease;}
.rs-popup.is-open .rs-popup-dim{opacity:1;}
.rs-popup.is-open .rs-popup-panel{transform:translateY(0);}
.rs-popup-close{display:block;width:10.4167vw;height:1.25vw;margin:0 auto;border-radius:1.25vw;background:#E6E7EA;}
.rs-popup-title{margin-top:6.25vw;color:#2f3037;font-weight:600;font-size:5.4167vw;line-height:1;text-align:center;}
.rs-popup-links{display:flex;flex-direction:column;gap:4.1667vw;margin-top:6.25vw;padding-top:6.25vw;border-top:1px solid #d7d8dd;}
.rs-popup-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:15.4167vw;border-radius:3.125vw;color:#fff;font-weight:600;font-size:5vw;line-height:1;}
.rs-popup-link.is-wings{background:#00C1AB;}
.rs-popup-link.is-learning{background:#7F41E9;}
.rs-share-list{display:flex;justify-content:center;gap:20.8333vw;margin-top:6.25vw;padding-top:6.25vw;border-top:1px solid #d7d8dd;}
.rs-share-item{display:flex;flex-direction:column;align-items:center;width:18.75vw;}
.rs-share-img{display:block;width:18.75vw;}
.rs-share-name{margin-top:2.5vw;color:#2f3037;font-weight:500;font-size:4.1667vw;line-height:1.3;text-align:center;}
.fl-page{padding:40px;background:#f4f4f7;color:#2F3037;font-family:"Pretendard","Malgun Gothic",sans-serif;}
.fl-wrap{max-width:960px;margin:0 auto;}
.fl-title{font-size:28px;font-weight:800;line-height:1.3;}
.fl-table{width:100%;margin-top:24px;background:#fff;border:1px solid #d9dbe2;}
.fl-table th,.fl-table td{padding:14px 16px;border:1px solid #d9dbe2;font-size:15px;line-height:1.4;text-align:left;}
.fl-table th{background:#68738c;color:#fff;font-weight:800;}
.fl-link{color:#7F41E9;font-weight:800;text-decoration:underline;}
@media (max-width:640px){
    .fl-page{padding:24px 16px;}
    .fl-title{font-size:24px;}
    .fl-table{display:block;margin-top:18px;border:0;background:transparent;}
    .fl-table caption{display:none;}
    .fl-table thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
    .fl-table tbody{display:flex;flex-direction:column;gap:12px;}
    .fl-table tr{display:block;border:1px solid #d9dbe2;background:#fff;}
    .fl-table td{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:start;padding:12px 14px;border:0;border-top:1px solid #eceef3;font-size:clamp(13px,3.4667vw,15px);word-break:break-all;}
    .fl-table td:first-child{border-top:0;}
    .fl-table td:before{content:attr(data-label);color:#68738c;font-weight:800;word-break:keep-all;}
}
.intro-page{min-height:100vh;min-height:100svh;background:#B3BFFF;}
.intro-wrap{position:relative;width:100%;max-width:480px;min-height:100vh;min-height:100svh;margin:0 auto;background:#fff;overflow:hidden;}
.intro-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.intro-logo{position:absolute;left:4.1667vw;top:4.1667vw;display:block;width:16.25vw;aspect-ratio:78/43;background:url("/Resources2/SelfMatching/images/svg_logo.png") no-repeat 0 0 / 100% auto;font-size:0;line-height:0;z-index:2;}
.intro-visual{width:100%;}
.intro-start{position:absolute;left:0;bottom:0;display:flex;align-items:center;justify-content:center;width:100%;min-height:16.6667vw;background:#7F41E9;color:#fff;font-weight:800;font-size:5vw;line-height:1;}
.pf-page{min-height:100vh;min-height:100svh;background:#fff;}
.pf-popup[hidden]{display:none;}
.pf-popup{position:fixed;left:50%;top:0;width:100%;max-width:480px;height:100vh;height:100svh;background:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;transform:translateX(-50%);z-index:40;}
.pf-wrap{width:100%;max-width:480px;min-height:100vh;min-height:100svh;margin:0 auto;background:#fff;}
.pf-header{position:relative;display:flex;align-items:center;justify-content:center;min-height:18.3333vw;padding:6.25vw 12.5vw;border-bottom:1px solid #e3e3e8;}
.pf-title{color:#2f3037;font-weight:600;font-size:5.4167vw;line-height:1.0769;text-align:center;}
.pf-close{position:absolute;top:50%;right:4.1667vw;width:5.8333vw;aspect-ratio:1;background:url("/Resources2/SelfMatching/images/ico_close.svg") no-repeat 50% 50% / 100% auto;transform:translateY(-50%);}
.pf-main{padding:4.1667vw 4.1667vw 10vw;}
.pf-required{color:#df0011;font-weight:500;font-size:3.75vw;line-height:1;text-align:right;}
.pf-form{display:flex;flex-direction:column;gap:10.4167vw;}
.pf-section{display:flex;flex-direction:column;}
.pf-required + .pf-section{margin-top:-5.4167vw;}
.pf-label{display:block;color:#2f3037;font-weight:700;font-size:5.4167vw;line-height:1; padding-bottom:4.1667vw;}
.pf-mark{color:#df0011;}
.pf-age-list{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5vw;}
.pf-age,.pf-product{display:block;}
.pf-choice-input,.pf-check-input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.pf-age-box{display:flex;align-items:center;justify-content:center;min-height:20vw;padding:4.5833vw 2.0833vw;border-radius:3.125vw;background:#f2f3f7;color:#4e515b;font-weight:600;font-size:4.1667vw;line-height:1.3;text-align:center;}
.pf-choice-input:checked + .pf-age-box{background:#7F41E9;color:#fff;font-weight:700;}
.pf-choice-input:focus-visible + .pf-age-box,.pf-choice-input:focus-visible + .pf-product-box,.pf-check-input:focus-visible + .pf-check-box{outline:2px solid #7F41E9;outline-offset:2px;}
.pf-input{display:block;width:100%;min-height:13.75vw;padding:0 4.1667vw;border:1px solid #e3e3e8;border-radius:1.0417vw;background:#fff;color:#2f3037;font-weight:500;font-size:4.1667vw;line-height:1.2;}
.pf-input:focus{border-color:#7F41E9;outline:0;}
.pf-input::placeholder{color:#afafb1;}
.pf-label-row{display:flex;align-items:flex-start;justify-content:space-between;gap:4.1667vw;}
.pf-same{display:flex;align-items:center;gap:1.4583vw;color:#2f3037;font-weight:500;font-size:4.1667vw;line-height:1.3;white-space:nowrap;}
.pf-check-box{display:block;width:4.5833vw;aspect-ratio:1;background:url("/Resources2/SelfMatching/images/ico_check.svg") no-repeat 0 0 / 100% auto;}
.pf-check-input:checked + .pf-check-box{background-image:url("/Resources2/SelfMatching/images/ico_check_on.svg");}
.pf-address{display:flex;flex-direction:column;gap:2.0833vw;}
.pf-address-row{display:grid;grid-template-columns:1fr 37.2917vw;gap:2.0833vw;}
.pf-post-btn{display:flex;align-items:center;justify-content:center;min-height:13.75vw;border-radius:1.0417vw;background:#394460;color:#fff;font-weight:600;font-size:4.1667vw;line-height:1;}
.pf-product-list{display:grid;grid-template-columns:repeat(3,1fr);gap:2.7083vw;}
.pf-product-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:28.3333vw;padding:5vw 2.0833vw;border-radius:3.125vw;background:#f2f3f7;color:#4e515b;text-align:center;}
.pf-product-tag{display:inline-flex;align-items:center;justify-content:center;min-height:5.4167vw;padding:0 2.5vw;border:1px solid #4e515b;border-radius:10.4167vw;font-weight:500;font-size:3.3333vw;line-height:1;}
.pf-product-name{margin-top:2.0833vw;font-weight:600;font-size:4.1667vw;line-height:1.3;}
.pf-choice-input:checked + .pf-product-box{background:#7F41E9;color:#fff;}
.pf-choice-input:checked + .pf-product-box .pf-product-tag{border-color:#fff;background:#fff;color:#7F41E9;}
.pf-choice-input:checked + .pf-product-box .pf-product-name{font-weight:700;}
.pf-agree-section{gap:4.1667vw;padding-top:0.8333vw;}
.pf-agree-section .pf-label {border-bottom:1px solid #e3e3e8;}
.pf-agree-group{display:flex;flex-direction:column;gap:3.3333vw;}
.pf-agree-check{display:grid;grid-template-columns:6.25vw 1fr;gap:3.3333vw;align-items:start;color:#2f3037;font-weight:500;font-size:4.1667vw;line-height:1.5;}
.pf-agree-check .pf-check-box{width:6.25vw;margin-top:1.875vw;}
.pf-agree-check em{color:#df0011;}
.pf-policy{display:flex;flex-direction:column;width:100%;}
.pf-policy-row{display:grid;grid-template-columns:29.5455% 70.4545%;}
.pf-policy-row dt{display:flex;align-items:center;justify-content:center;min-height:18.3333vw;padding:4.1667vw;border:1px solid #e3e3e8;border-bottom:0;background:#f2f3f7;color:#394460;font-weight:500;font-size:3.75vw;line-height:1.3333;text-align:center;}
.pf-policy-row dd{display:flex;align-items:center;min-height:18.3333vw;padding:4.1667vw;border-top:1px solid #e3e3e8;border-right:1px solid #e3e3e8;color:#2f3037;font-weight:400;font-size:3.75vw;line-height:1.3333;}
.pf-policy-row:last-child dt,.pf-policy-row:last-child dd{border-bottom:1px solid #e3e3e8;}
.pf-policy-row .is-red{color:#df0011;}
.pf-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:16.25vw;margin-top:-2.0833vw;border-radius:3.125vw;background:#7F41E9;color:#fff;font-weight:700;font-size:5vw;line-height:1;}

/* intro */
.intro-wrap{background-color:#9daaef;}
.img_intro-wrap{position:absolute;left:0;bottom:16.6667vw;width:100%;}
.img_intro-wrap img{display:block;width:100%;height:auto;}
.tit-intro-wrap{position:absolute;top:25vw;left:0;width:100%;z-index:1;}
.tit-intro-wrap img{display:block;width:84%;height:auto;margin:0 auto;}
.ld-page{min-height:100vh;min-height:100svh; background-color: #B3BFFF;}
.ld-wrap{position:relative;width:100%;max-width:480px;min-height:100vh;min-height:100svh;margin:0 auto;background:#C8C3F2;overflow:hidden;}
.ld-hidden-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.ld-bg{position:absolute;left:-0.4167vw;bottom:0;width:100.4167vw;}
.ld-book{position:absolute;left:27.0833vw;top:46.6667vw;width:45.625vw;animation:ld-book-float 1.8s ease-in-out infinite;z-index:2;}
.ld-text{position:absolute;left:0;top:calc(50% + 0.8333vw);width:100%;color:#4e515b;font-weight:600;font-size:5.4167vw;line-height:1.3846;text-align:center;z-index:2;}
.ld-text-line{display:block;width:0;margin:0 auto;overflow:hidden;white-space:nowrap;}
.ld-text-line.is-line1{animation:ld-type-line1 4s steps(8,end) infinite;}
.ld-text-line.is-line2{animation:ld-type-line2 4s steps(5,end) infinite;}
.ld-cloud{position:absolute;display:block;z-index:1;}
.ld-cloud.is-c1{left:11.0417vw;top:27.5vw;width:11.875vw;}
.ld-cloud.is-c2{left:81.4583vw;top:72.7083vw;width:8.3333vw;}
.ld-cloud.is-c3{left:25vw;top:127.7083vw;width:13.75vw;}
.ld-cloud.is-c4{left:68.3333vw;top:114.375vw;width:11.25vw;}
@keyframes ld-book-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-2.0833vw);}}
@keyframes ld-type-line1{0%,100%{width:0;}24%,84%{width:8.2em;}}
@keyframes ld-type-line2{0%,26%,100%{width:0;}48%,70%{width:4.8em;}84%{width:0;}}
@media (min-width:481px){
    .sm-wrap.is-long{padding-bottom:80px;}
    .sm-header{padding:20px 20px 0;}
    .sm-logo{width:78px;}
    .sm-step{padding-top:15px;font-size:19px;}
    .sm-main{padding:38px 20px;}
    .sm-main.is-step2{padding-top:60px;}
    .sm-main.is-step3{padding-top:40px;padding-bottom:40px;}
    .sm-title{font-size:36px;}
    .sm-subtitle{margin-top:16px;font-size:20px;}
    .sm-grid{gap:15px;margin-top:67px;}
    .sm-grid.is-subject{gap:11px;margin-top:52px;}
    .sm-card-box{border-radius:16px;}
    .sm-card-input:checked + .sm-card-box{box-shadow:0 4px 8px rgba(61,39,107,0.28);}
    .sm-card-visual{width:140px;font-size:68px;}
    .sm-card-name{margin-top:21px;font-size:24px;}
    .sm-card-desc{margin-top:5px;font-size:20px;}
    .sm-subject-box{border-radius:13px;}
    .sm-subject-visual{width:70px;}
    .sm-subject-name{margin-top:12px;font-size:20px;}
    .sm-divider{margin:40px 0;}
    .sm-count{padding:30px 40px;border-radius:13px;}
    .sm-count-group{gap:12px;}
    .sm-count-row{gap:16px;font-size:20px;}
    .sm-count-label{width:50px;min-height:22px;border-radius:22px;font-size:14px;}
    .sm-count-total{gap:16px;padding-left:52px;font-size:24px;}
    .sm-count-total .sm-count-label{font-size:12px;}
    .sm-bottom-link{min-height:80px;font-size:26px;}
    .sm-progress{margin-top:30px;}
    .sm-progress-bar{height:7px;border-radius:7px;}
    .sm-progress-value{height:7px;border-radius:7px;}
    .sm-progress-info{margin-top:15px;}
    .sm-progress-tag{min-height:40px;padding:0 20px;border-radius:40px;font-size:18px;}
    .sm-progress-page{font-size:22px;}
    .sm-progress-muted{font-size:20px;}
    .sm-question{margin-top:42px;}
    .sm-badge{min-width:100px;min-height:48px;padding:0 30px;border-radius:48px;font-size:24px;}
    .sm-badge:after{bottom:-14px;width:18px;}
    .sm-question-title{margin-top:40px;font-size:30px;word-break: keep-all;}
    .sm-answer-list{gap:18px;margin-top:40px;}
    .sm-answer-box{min-height:120px;padding:25px 30px;border-width:4px;border-radius:14px;font-size:24px;word-break: keep-all;}
    .sm-answer-input:checked + .sm-answer-box{box-shadow:0 4px 6px rgba(63,45,115,0.24);word-break: keep-all;}
    .sm-prev-line{gap:10px;padding-top:22px;font-size:24px;}
    .sm-prev-icon{width:30px;}
    .sm-result-actions{margin-top:22px;}
    .sm-result-button{min-height:78px;margin-top:34px;border-radius:14px;font-size:26px;}
    .sm-wrap.is-result{padding-bottom:40px;}
    .rs-main{gap:40px;padding:40px 20px 0;}
    .rs-down-btn{right:25px;bottom:25px;width:48px;}
    .rs-section{gap:15px;}
    .rs-section-title{font-size:28px;}
    .rs-product{border-radius:15px;}
    .rs-product-body{padding:30px;}
    .rs-product-title{font-size:28px;}
    .rs-product-title:after{bottom:-2px;height:11px;}
    .rs-product-desc{margin-top:20px;font-size:20px;}
    .rs-book{padding:30px 10px;border-radius:15px;}
    .rs-tab-list{gap:12px;width:380px;}
    .rs-tab{width:86px;min-height:51px;padding:0 10px;border-radius:51px;font-size:20px;}
    .rs-book-panel{width:380px;margin-top:30px;}
    .rs-level-head{padding:20px 20px 25px;border-radius:35px 35px 0 0;}
    .rs-level-label{min-height:31px;padding:0 16px;border-radius:50px;font-size:16px;}
    .rs-level-title{margin-top:10px;font-size:30px;}
    .rs-level-body{gap:12px;padding:24px 30px;border-radius:0 0 15px 15px;}
    .rs-level-item{grid-template-columns:48px 1fr;gap:15px;}
    .rs-level-item strong{width:48px;font-size:22px;}
    .rs-level-item p{font-size:22px;}
    .rs-book-desc{margin-top:22px;font-size:21px;}
    .rs-actions{gap:25px;padding:74px 20px 0;}
    .rs-apply,.rs-contract{min-height:78px;border-radius:15px;font-size:24px;}
    .rs-action-row{grid-template-columns:1fr 78px 78px;gap:16px;}
    .rs-icon-btn{width:78px;border-radius:15px;background-size:30px auto;}
    .rs-popup-panel{padding:10px 30px 60px;border-radius:30px 30px 0 0;}
    .rs-popup-close{width:50px;height:6px;border-radius:6px;}
    .rs-popup-title{margin-top:30px;font-size:26px;}
    .rs-popup-links{gap:20px;margin-top:30px;padding-top:30px;}
    .rs-popup-link{min-height:74px;border-radius:15px;font-size:24px;}
    .rs-share-list{gap:100px;margin-top:30px;padding-top:30px;}
    .rs-share-item{width:90px;}
    .rs-share-img{width:90px;}
    .rs-share-name{margin-top:12px;font-size:20px;}
    .intro-logo{left:20px;top:20px;width:78px;}
    .img_intro-wrap{bottom:80px;width:480px;}
    .tit-intro-wrap{top:120px;width:480px;}
    .tit-intro-wrap img{width:424px;}
    .intro-start{min-height:80px;font-size:24px;}
    .ld-bg{left:-2px;width:482px;}
    .ld-book{left:130px;top:224px;width:219px;}
    .ld-text{top:calc(50% + 4px);font-size:26px;line-height:36px;}
    .ld-cloud.is-c1{left:53px;top:132px;width:57px;}
    .ld-cloud.is-c2{left:391px;top:349px;width:40px;}
    .ld-cloud.is-c3{left:120px;top:613px;width:66px;}
    .ld-cloud.is-c4{left:328px;top:549px;width:54px;}
    @keyframes ld-book-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
    .pf-header{min-height:88px;padding:30px 60px;}
    .pf-title{font-size:26px;}
    .pf-close{right:20px;width:28px;}
    .pf-main{padding:20px 20px 48px;}
    .pf-required{font-size:18px;}
    .pf-form{gap:50px;}
    .pf-required + .pf-section{margin-top:-26px;}
    .pf-label{font-size:26px; padding-bottom:20px;}
    .pf-age-list{gap:12px;}
    .pf-age-box{min-height:96px;padding:22px 10px;border-radius:15px;font-size:20px;}
    .pf-input{min-height:66px;padding:0 20px;border-radius:5px;font-size:20px;}
    .pf-label-row{gap:20px;}
    .pf-same{gap:7px;font-size:20px;}
    .pf-check-box{width:22px;}
    .pf-address{gap:10px;}
    .pf-address-row{grid-template-columns:1fr 179px;gap:10px;}
    .pf-post-btn{min-height:66px;border-radius:5px;font-size:20px;}
    .pf-product-list{gap:13px;}
    .pf-product-box{min-height:136px;padding:24px 10px;border-radius:15px;}
    .pf-product-tag{min-height:26px;padding:0 12px;border-radius:50px;font-size:16px;}
    .pf-product-name{margin-top:10px;font-size:20px;}
    .pf-agree-section{gap:20px;padding-top:4px;}
    .pf-agree-group{gap:16px;}
    .pf-agree-check{grid-template-columns:30px 1fr;gap:16px;font-size:20px;}
    .pf-agree-check .pf-check-box{width:30px;margin-top:9px;}
    .pf-policy-row dt{min-height:88px;padding:20px;font-size:18px;}
    .pf-policy-row dd{min-height:88px;padding:20px;font-size:18px;}
    .pf-submit{min-height:78px;margin-top:-10px;border-radius:15px;font-size:24px;}}
@supports (min-height:100dvh){
    .sm-page{min-height:100dvh;}
    .sm-wrap{min-height:100dvh;}
    .pf-page{min-height:100dvh;}
    .pf-popup{height:100dvh;}
    .pf-wrap{min-height:100dvh;}
    .intro-page{min-height:100dvh;}
    .intro-wrap{min-height:100dvh;}
    .ld-page{min-height:100dvh;}
    .ld-wrap{min-height:100dvh;}
}