@charset "utf-8";

.pagecommon{--main-color:#755247;--main-dark:#513930;--text-color:#222;--sub-text-color:#666;--light-bg:#f4f2f0;overflow:hidden;color:var(--text-color);font-family:"Pretendard";word-break:keep-all}
.pagecommon img{display:block;width:100%;max-width:100%}
.pagecommon .inner{margin:0 auto}
.pagecommon .mobile-br{display:none}
.pagecommon .page-title{padding:0 0 55px;text-align:center}
.pagecommon .page-title h2{margin:0;color:#111;font-size:42px;font-weight:700;line-height:1.3;letter-spacing:-0.04em}
.pagecommon .common-visual .visual-img{overflow:hidden;width:100%;height:410px;max-width: 1240px;margin: 0 auto;border-radius:20px}
.pagecommon .common-visual .visual-img img{width:100%;height:100%;object-fit:cover;object-position:center}
.pagecommon .section-heading{text-align:center}
.pagecommon .section-heading b{font-size:20px}
.pagecommon .section-heading .eyebrow{display:block;margin-bottom:12px;color:#8b766e;font-size:15px;font-weight:600;line-height:1.5}
.pagecommon .section-heading h3{margin:0;color:#111;font-size:30px;font-weight:700;line-height:1.45;letter-spacing:-0.045em}
.pagecommon .section-heading p{margin:28px 0 0;font-size:16px;font-weight:500;line-height:1.7;letter-spacing:-0.025em}
.pagecommon .common-intro{padding:60px 0 75px}
.pagecommon .target-box{overflow:hidden;max-width:780px;margin:45px auto 0;border:2px solid var(--main-color);border-radius:6px;background:#fff;box-shadow:0 3px 10px rgba(74,48,39,0.30)}
.pagecommon .target-title{padding:17px 25px;background:var(--main-color);color:#fff;font-size:19px;font-weight:600;line-height:1.5;text-align:center}
.pagecommon .target-list{margin:0;padding:28px 55px;background:#fff;list-style:none}
.pagecommon .target-list li{display:flex;gap:20px;justify-content:flex-start}
.pagecommon .target-list li+li{margin-top:15px}
.pagecommon .target-list .num{flex:none;padding-top:2px;color:var(--main-color);font-size:17px;font-weight:600;font-family:'Italiana'}
.pagecommon .target-list p{margin:0;color:#444;font-size:17px;font-weight:500;line-height:1.65;letter-spacing:-0.025em}
.pagecommon .target-list strong{color:#222;font-weight:700}
.pagecommon .common-feature{padding:65px 0;background:var(--light-bg)}
.pagecommon .feature-list{width:calc(100% - 180px);max-width:900px;margin:0 auto}
.pagecommon .feature-item{padding:30px 34px;border-radius:4px;background:#fff}
.pagecommon .feature-item+.feature-item{margin-top:16px}
.pagecommon .feature-item h4{margin:0 0 14px;color:#382824;font-size:19px;font-weight:700;line-height:1.5;letter-spacing:-0.03em}
.pagecommon .feature-item p{margin:0;color:#777;font-size:15px;font-weight:400;line-height:1.75;letter-spacing:-0.02em}
.pagecommon .common-feature .tit{text-align:center;color:#111;margin-bottom:40px;font-size:30px;font-weight:700}
.pagecommon .common-program{padding:95px 0 50px}
.pagecommon .common-program .section-heading p{margin-top:20px}
.pagecommon .program-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:55px}
.pagecommon .program-item{position:relative;min-width:0;text-align:center}
.pagecommon .program-item+.program-item:before{position:absolute;top:0;bottom:0;left:-20px;border:1px dashed #e1e1e1;content:""}
.pagecommon .program-img{overflow:hidden;position:relative;width:100%;aspect-ratio:1.4/1;border-radius:12px;background:#f3f1f0}
.pagecommon .program-img img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 0.5s ease}
.pagecommon .program-item:hover .program-img img{transform:scale(1.04)}
.pagecommon .program-text{padding-top:22px}
.pagecommon .program-text .step{display:inline-flex;align-items:center;justify-content:center;min-width:75px;height:27px;padding:0 14px;border:1px solid #b9aaa4;border-radius:30px;color:#77645e;font-size:12px;font-weight:600;line-height:1}
.pagecommon .program-text h4{margin:15px 0 0;color:#222;font-size:20px;font-weight:700;line-height: 1.5;letter-spacing:-0.035em}
.pagecommon .rf-lifting .inner{padding:65px 55px 70px;background:#f5f4f2}
.pagecommon .rf-lifting-title{margin-bottom:42px;text-align:center}
.pagecommon .rf-lifting-title h3{margin:0;color:#111;font-size:30px;font-weight:700;line-height:1.4}
.pagecommon .rf-lifting-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pagecommon .rf-lifting-item{display:flex;overflow:hidden;min-width:0;background:#fff;border-radius:14px;flex-direction:column}
.pagecommon .rf-lifting-img{overflow:hidden;position:relative;width:100%;}
.pagecommon .rf-lifting-img img{display:block;width:100%;height: auto;transition:transform .5s ease}
.pagecommon .rf-lifting-item:hover .rf-lifting-img img{transform:scale(1.04)}
.pagecommon .rf-lifting-info{display:flex;padding: 30px 27px;min-height: 260px;flex:1;flex-direction:column}
.pagecommon .rf-lifting-name{display:flex;margin-bottom:18px;align-items:baseline;gap:15px}
.pagecommon .rf-lifting-name h4{margin:0;color:#111;font-size: 20px;font-weight:700;line-height:1.4}
.pagecommon .rf-lifting-name span{color:#8c837d;font-family: var(--e-font);font-size: 18px;font-weight:400;letter-spacing:.01em}
.pagecommon .rf-lifting-info p{margin:0;color:#666;font-size: 14px;font-weight:400;line-height: 1.7}
.pagecommon .rf-lifting-tag{width:fit-content;margin-top:auto;padding:7px 10px;color:#6f5147;border:1px solid #9c877f;font-size: 13px;font-weight: 600;line-height:1.3}
.pagecommon .top_tit{display:flex;align-items:center;gap:10px;max-width: 1000px;padding:15px;margin-bottom:40px;border-radius:10px;font-size:16px;font-weight: 600;color:#333;background-color:#f5f5f5;margin: 0 auto 30px;justify-content: center;}
.pagecommon .top_tit i{font-size:25px;color:var(--primary)}

/* 의료진 소개 */
#p33.pagecommon{color:#171717;font-size:15px;letter-spacing:0;word-break:keep-all}
#p33 .p33_inner{width:100%;margin:0 auto}
#p33 .p33_title{margin-bottom:110px;text-align:center}
#p33 .p33_title h2{margin:0 0 25px;color:#111;font-size:40px;font-weight:700;}
#p33 .p33_title p{margin:0;color:#1C1C1C;font-size:16px;font-weight:500;line-height:1.65;letter-spacing:-0.03em}
#p33 .doctor_list{display:flex;flex-direction:column;gap:125px}
#p33 .doctor_item{display:grid;grid-template-columns:400px minmax(0,1fr);align-items:start;gap:60px}
#p33 .doctor_img{width:100%;overflow:hidden;border-radius:12px;}
#p33 .doctor_img img{display:block;width:100%;aspect-ratio:390/485;object-fit:cover;object-position:center top}
#p33 .doctor_info{min-width:0}
#p33 .doctor_name{margin-bottom:50px}
#p33 .doctor_badge{display:inline-flex;align-items:center;justify-content:center;min-height:29px;margin-bottom:26px;padding:5px 13px;border-radius:3px;background:#866f66;color:#fff;font-size:15px;font-weight:500;line-height:1;letter-spacing:-0.03em}
#p33 .name_wrap{display:flex;align-items:baseline;gap:16px}
#p33 .name_wrap h3{margin:0;color:#111;font-size:36px;font-weight:700}
#p33 .name_wrap strong{color:#222;font-size:17px;font-weight:700}
#p33 .doctor_content{display:flex;flex-direction:column;gap:48px}
#p33 .doctor_section{width:100%}
#p33 .doctor_section h4{position:relative;padding-bottom:20px;color:#161616;font-size:20px;font-weight:700;line-height:1.4;letter-spacing:-0.04em}
#p33 .doctor_section ul{margin:0;padding:0;list-style:none}
#p33 .doctor_section li{position:relative;margin-bottom:10px;padding-left:13px;color:#777;font-weight:400;line-height:1.75;letter-spacing:-0.025em;overflow-wrap:anywhere}
#p33 .doctor_section li:last-child{margin-bottom:0}
#p33 .doctor_section li:before{position:absolute;top:0.78em;left:0;width:3px;height:3px;border-radius:50%;background:#777;content:""}
#p33 .doctor_section li span{display:inline-block;color:#888;font-size:13px;line-height:1.75}
#p46 .rf-lifting-info{min-height:310px}
#p46 .common-feature{background:none}
#p46 .feature-item{border: 2px solid #6f5147;}
#p46 .feature-item h4{color:#6f5147}
#p46 .feature-item p{color: #777}
#p46 .common-feature{padding:0 0 80px}
#p47 .program-list {grid-template-columns:repeat(4, minmax(0, 1fr))}
#p47 .program-text h4{margin:15px 0 20px}
#p47 .program-text p{font-size:15px;color:#777;line-height:1.5}
#p48 .program-text h4{margin:15px 0 20px}
#p48 .program-text p{font-size:15px;color:#777;line-height:1.56}
#p49 .program-text h4{margin:15px 0 20px}
#p49 .program-text p{font-size:15px;color:#777;line-height:1.56}

/* 반응형 [s] */
@media (max-width:1024px){
#p33 .p33_title h2{font-size:36px}
.pagecommon .rf-lifting .inner {padding: 34px 24px;}
.pagecommon .rf-lifting-title{margin-bottom:24px}
#p47 .program-list {grid-template-columns: repeat(2, minmax(0, 1fr))}
}

@media (max-width:900px){
#p33 .doctor_item{grid-template-columns:300px minmax(0, 1fr);gap: 40px;}
#p33 .name_wrap h3{font-size:30px}
#p33 .p33_title{margin-bottom:50px}
.pagecommon .rf-lifting-list {grid-template-columns: repeat(2, minmax(0, 1fr))}
}

@media (max-width:768px){
#p33 .p33_title h2{font-size:30px}
#p-location .location-title h3{font-size:24px}
.map_tit{font-size:30px}
.pagecommon .page-title h2{font-size:32px}
.pagecommon .page-title{padding:0 0 30px}
.pagecommon .top_tit {font-size:15px;justify-content:center;flex-direction:column;text-align:center;line-height: 1.5}
.pagecommon .section-heading h3{font-size:25px}
.pagecommon .common-intro {padding:40px 0}
.pagecommon .common-feature{padding: 34px;}
.pagecommon .common-feature .tit{font-size:23px;margin-bottom: 20px;}
.pagecommon .feature-list{width:100%;max-width:100%}
.pagecommon .common-program {padding: 40px 0 0;}
.pagecommon .program-list{margin-top:30px;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 20px;}
.pagecommon .common-visual .visual-img{height: auto;}
.pagecommon .program-item+.program-item:before{display:none}
.pagecommon .program-text h4{font-size:18px}
}
@media (max-width:700px){
#p33 .doctor_item{display:flex;flex-direction:column}
#p33 .doctor_img img{max-width:400px;margin:0 auto}
}
@media (max-width:660px) {
.pagecommon .rf-lifting-list {grid-template-columns: repeat(1, minmax(0, 1fr))}
#p46 .feature-item p br{display:none}
.pagecommon .target-list{padding:26px}
.pagecommon .target-list p{font-size:15px}
#p46 .rf-lifting-info{min-height:auto;gap: 10px;}
#p46 .rf-lifting-name{margin-bottom:0}
}
@media (max-width:600px) {
.pagecommon .section-heading p{font-size:15px}    
.pagecommon .section-heading p br{display:none}    
#p47 .program-text h4 {margin:12px 0}
#p47 .program-text p{font-size: 15px;}
.pagecommon .target-list li {gap: 10px;padding-bottom: 10px;flex-direction: column;align-items: center;border-bottom: 1px dashed #e1e1e1}
.pagecommon .target-list li:last-child{border-bottom:none}
}
@media (max-width:480px){
#p33 .pagecommon{padding:30px 15px}
#p33 .p33_title h2{font-size:26px}
#p33 .p33_title{margin-bottom:30px}
#p33 .p33_title p{font-size:15px}
#p33 .name_wrap{padding-bottom:20px;border-bottom:1px solid #e1e1e1}
#p33 .doctor_name{margin-bottom:20px}
#p33 .doctor_content{gap:30px}
#p33 .doctor_list{gap:50px}
#p33 .doctor_section h4{font-size:18px}
.map_tit{font-size: 26px;}
.pagecommon{padding:30px 15px}
.pagecommon .page-title h2 {font-size: 26px;}
.pagecommon .common-visual .visual-img{height:auto}
.pagecommon .section-heading h3 {font-size:20px}
.pagecommon .common-intro {padding:30px 0}
.pagecommon .target-title{font-size: 16px;padding: 18px;}
.pagecommon .target-list{padding:22px}
.pagecommon .target-list p{font-size:15px;text-align: center;}
.pagecommon .target-list .num{font-size:14px}
.pagecommon .common-feature{padding:30px 24px}
.pagecommon .common-feature .tit{font-size:18px}
.pagecommon .feature-item h4{font-size:16px}
.pagecommon .feature-item p{font-size:14px}
.pagecommon .program-list {grid-template-columns: repeat(1, minmax(0, 1fr))}
.pagecommon .program-text h4{font-size:17px}
.pagecommon .feature-item{padding:20px;text-align: center;}
.pagecommon .top_tit{font-size:14px}
.pagecommon .target-box{margin:40px auto 0}
.pagecommon .common-visual .visual-img{border-radius:10px}
.pagecommon .feature-item p br{display:none}
.pagecommon .section-heading b {font-size:18px}
.pagecommon .rf-lifting-title h3{font-size:20px}
.pagecommon .rf-lifting-name h4{font-size:17px}
.pagecommon .rf-lifting-name span{font-size:15px}
.pagecommon .rf-lifting-info{gap:10px}
.pagecommon .rf-lifting-name{margin-bottom:0}
.pagecommon .rf-lifting .inner {padding: 24px 15px;}
#p47 .program-list {grid-template-columns: repeat(1, minmax(0, 1fr))}
}
@media (max-width:380px){
#p33 .p33_title p br{display:none}
}
/* 반응형 [e] */