 @charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */
.root_daum_roughmap {width:100% !important; height:clamp(250px, calc( 440 / var(--inner) * 100vw ), 440px) !important;}
.root_daum_roughmap .wrap_map {height:clamp(250px, calc( 440 / var(--inner) * 100vw ), 440px) !important;}
.roughmap_lebel_text {line-height:0 !important; font-size:0 !important;}
.roughmap_lebel_text:after {content:"메디홈즈"; font-size:12px; line-height:15px;}

.bullet-item .bullet-list {position:relative; padding-left:15px; margin-top:10px; line-height:1.3;}
.bullet-item .bullet-list:first-child {margin-top:0;}
.bullet-item .bullet-list::before {position:absolute; content:''; left:0; top:9px; width:3px; height: 3px; background:var(--color-primary); border-radius: 50%;}
.bullet-item .bullet-list.none {padding-left: 0;}
.bullet-item .bullet-list.none::before {display: none;}
.bulletitem2 { padding-left: 0.6em; text-indent: -0.6em;}

.bg-gray {background:#fafafa;}
.overhidden {overflow: hidden;}
.subsec-pd {padding: clamp(50px, calc( 100 / var(--inner) * 100vw ), 100px) 0;}
.subsec-pd2 {padding: 50px 0;}

.radiobx {display: flex; flex-wrap: wrap;}
.radiobx .item {display: flex;align-items: center; min-height: clamp(38px, calc( 44 / var(--inner) * 100vw ), 44px);}
.radiobx .item:not(:last-child) {margin-right: clamp(15px, calc( 40 / var(--inner) * 100vw ), 40px);}

.commtextbx {display: flex;flex-direction: column;justify-content: center; gap: var(--padding-35);  text-align: center;}
.commtextbx .sub1_1-logo img {width: 120px;}
.commtextbx .line {margin:0 auto; width: 2px; height:var(--padding-60); background:var(--color-primary);}
.commtextbx .commtit {font-size:var(--font-size-50); font-weight: bold; line-height: 1.2;}
.commtextbx .commdec {font-size:var(--font-size-18); color: var(--color-body); line-height: 1.44;}
.commtextbx .commdec.ty2 {font-size: var(--font-size-20);}
.commtextbx.white {color: #fff;}
.commtextbx.white .commdec {color: #fff;}

.subsec-titbx {margin-bottom: var(--padding-60); text-align: center; letter-spacing: -0.6px;}
.subsec-titbx .subtit {font-size: var(--font-size-32); font-weight: bold;}
.subsec-titbx .subdec {padding-top: var(--padding-35); font-size: var(--font-size-18); color: var(--color-body); line-height: 1.44;}
.subsec-titbx.white {color: #fff;}
.subsec-titbx.ty2 {margin-bottom: var(--padding-40);}

.checktitbx {margin-bottom: var(--padding-40); letter-spacing: -0.6px;}
.checktitbx .checktit {padding-left: clamp(25px, calc( 42 / var(--inner) * 100vw ), 42px); position: relative; font-size:var(--font-size-32); font-weight: bold;}
.checktitbx .checktit:before {content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: clamp(15px, calc( 30 / var(--inner) * 100vw ), 30px); height: clamp(15px, calc( 30 / var(--inner) * 100vw ), 30px); background: url(../images/sub/check.svg) no-repeat center center / contain; }
.checktitbx .checkdec {margin-top:var(--padding-20); font-size: var(--font-size-22); color: var(--color-body);}
.checktitbx .checkdec.ty2 {font-size: var(--font-size-18);}

.corelist {display: flex; justify-content: center; align-items: center; gap: var(--padding-30); flex-wrap: wrap;}
.corelist .item {width: calc((100% - 4 * var(--padding-30)) / 5) ; position: relative; display: flex; flex-direction: column; align-items: center; gap: var(--padding-45); flex-shrink: 0;}
.corelist .item:not(:last-child):after {content: ''; position: absolute; right: calc(var(--padding-30) / -2 - 0.5px); top: 50%; transform: translateY(-50%); width: 1px; height: clamp(60px, calc( 142 / var(--inner) * 100vw ), 142px); background: #DDDDDD;}
.corelist .icon {position: relative; width:  clamp(45px, calc( 78 / var(--inner) * 100vw ), 78px); height: auto; aspect-ratio: 1 / 1; background: rgba(255, 108, 29, 0.20); border-radius: 9999px;}
.corelist .icon img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 34px; height: auto; display: block;}
.corelist .tit {align-self: stretch; text-align: center; font-size: var(--font-size-22); font-weight: 600; line-height: 1.27; color: var(--color-body);}

.visionlist {display: flex; justify-content: flex-start; align-items: stretch; gap: var(--padding-30); flex-wrap: wrap; letter-spacing: -0.5px; text-align: center;}
.visionlist .item {width:  calc((100% - 2 * var(--padding-30)) / 3) ; display: flex; flex-direction: column; align-items: center;  gap: var(--padding-20); padding: var(--padding-50) 12px; background: #fff; border-radius: 16px; overflow: hidden; flex-shrink: 0;}
.visionlist .icon {width: clamp(40px, calc( 50 / var(--inner) * 100vw ), 50px); height: clamp(40px, calc( 50 / var(--inner) * 100vw ), 50px); margin: 0;}
.visionlist .icon img {width: 100%; height: auto; display: block;}
.visionlist .num {font-size: var(--font-size-16); font-weight: 600; color: var(--color-primary); }
.visionlist .tit {align-self: stretch; font-size: var(--font-size-22); font-weight: 600; line-height: 1.18; }
.visionlist .desc {align-self: stretch; font-size: var(--font-size-18); color: var(--color-body); line-height: 1.44; white-space: pre-line;}

.sub1_1_4 {background: url(../images/sub/sub1_1_4-bg.jpg) no-repeat center center / cover;}

.sub1_1_5 .flxWrap {gap: 30px; justify-content: space-between;}
.sub1_1_5 .titbx {flex: 1;}
.sub1_1_5 .historybx {width: clamp(450px, calc( 550 / var(--inner) * 100vw ), 550px);}
.history .item {display:flex;}
.history .item h3 {margin-bottom:40px; font-size: 40px; font-weight: 700; letter-spacing: -.03em; line-height: 1.4em; color: #242424; text-align:left; width:150px; line-height:1em; margin:-8px 0 0;}
.history .item h3 .small {display: block; margin-top: var(--padding-10); font-size: var(--font-size-18); line-height: 1.77; font-weight: 400;}
.history .list {flex:1 1 auto; min-width:0; width:1%; padding:0 0 60px 100px; position:relative;}
.history .list:before {position:absolute; content:""; background:#fff; margin-left:-12px; top:0; left:0; width:24px; height:24px; border-radius:100%; border:7px solid var(--color-primary);}
.history .list:after {position:absolute; content:""; left:0; top:0; width:1px; height:100%; background:#ddd; z-index:-1;}
.history .list li {margin-bottom:var(--padding-30); line-height:1.33em; color: #454545; font-size: var(--font-size-18);}
.history .list li:last-child {margin-bottom:0;}
.history .list li span {display: block;}
.history .list li .tit {font-weight: bold;}
.history .list li .declist {display: flex;flex-direction: column;gap: 2px; margin-top:10px;}
.history .item:last-child .list {padding-bottom:0;} 
.history .item:last-child .list:after {display:none;}
@media (max-width: 1024px) {
	.history .item h3 {width:140px; font-size: 32px;}
    .history .list {padding-left: 50px;}
	.history .list:before {width:22px; height:22px; border-width:5px; margin-left:-11px; top:-3px}
}
@media (max-width: 640px) {
    .sub1_1_5 .historybx {width: 100%;}
	.history .item {border:0; display:block;}
	.history .item h3 {font-size: 24px; margin-bottom:15px; padding-left:25px; width: 100%;}
    .history .item h3 .small {display: inline-block; margin-top: 0; padding-left: 5px; line-height: 1;}
	.history .list {padding-bottom:50px; width:100%; padding-left:25px;}
	.history .list:after {display:none;}
	.history .list:before {width:14px; height:14px; top:-33px; margin-left:0; border-width: 4px;}
}

.teamlist {display: flex; justify-content: center; align-items: center; gap:var(--padding-20); flex-wrap: wrap; list-style: none; padding: 0; margin: 0;}
.teamlist .item {position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: var(--padding-24); width: calc((100% - 5 * var(--padding-20)) / 6); flex-shrink: 0;}
.teamlist .item:not(:last-child):after {content: '+'; position: absolute; right: -18px; top: 50%; transform: translateY(-50%); font-size: var(--font-size-24); font-weight: 700; color: var(--color-primary); line-height: 1.5;}
.teamlist .item .circle {width: clamp(130px, calc( 185 / var(--inner) * 100vw ), 185px); height: clamp(130px, calc( 185 / var(--inner) * 100vw ), 185px); background: #fff; border-radius: 9999px; display: flex; align-items: center; justify-content: center; border: var(--padding-12) solid #FFE2D2;}
.teamlist .item .tit {font-size: var(--font-size-22); font-weight: 700; line-height: 1.64; color: #2C2C2C; text-align: center;}

.location-area .contain {max-width: 1460px !important;}
.location-area .map {width: 100%; height:clamp(250px, calc( 440 / var(--inner) * 100vw ), 440px) }
.location-area .map iframe {width: 100%; height: 100%;}
.location-area .mapwrap {position: relative;}
.mapinfoflx {display: flex; align-items: center;justify-content: space-between; gap: 20px; position: relative; margin-top: -50px; z-index: 100;}
.mapinfoflx .titbx {display: flex;flex-direction: column;justify-content: space-between; /*padding: var(--padding-40);*/ position: relative;box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.15); width:clamp(280px, calc( 350 / var(--inner) * 100vw ), 350px); height: 240px; background: var(--color-primary); color: #fff; letter-spacing: -0.6px;}
.mapinfoflx .titbx img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit:cover;}
.mapinfoflx .titbx .top {font-size:clamp(14px, calc( 17 / var(--inner) * 100vw ), 17px) ;}
.mapinfoflx .infolist {display: flex; align-items: flex-end; gap: var(--padding-40); flex-wrap: wrap;}
.mapinfoflx .infoitem {padding-left:16px; position: relative; display: flex; gap: 10px; font-size: var(--font-size-22);}
.mapinfoflx .infoitem:after {position: absolute; content: ''; left: 0; top: 10px; width: 6px; height: 6px; background: var(--color-primary);}
.mapinfoflx .infoitem .name {color: var(--color-primary); font-weight: 600; }
.mapinfoflx .infoitem .dec { color: rgba(69, 69, 69, 1);}
 
.bannerbx {margin-bottom:var(--padding-100);}
.bannerbx a {display:block;border-radius: 16px;;overflow:hidden;}
.youtubebx {position:relative; padding-bottom:56.25%; overflow:hidden; overflow: hidden; border-radius: 16px;}
.youtubebx iframe {position:absolute; top:50%; left:0; transform:translateY(-50%); width:100%; height:auto; max-width:100%; min-height:100%;object-fit : cover;}
.crmicontxt {margin: var(--padding-50) 0 var(--padding-80);}

.crmicontxt .crmfeat {display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--padding-30);}
.crmicontxt .crmfeat .item {display: flex; flex-direction: column; align-items: center; gap: var(--padding-20);justify-self: center; letter-spacing: -0.6px; text-align: center;}
.crmicontxt .crmfeat .icon {width: clamp(40px, calc( 50 / var(--inner) * 100vw ), 50px); height: clamp(40px, calc( 50 / var(--inner) * 100vw ), 50px); }
.crmicontxt .crmfeat .icon img {width: 100%; height: auto; display: block;}
.crmicontxt .crmfeat .tit {margin: 0; font-size: var(--font-size-22); font-weight: 600; line-height: 1.27; color: var(--color-primary); }
.crmicontxt .crmfeat .desc {margin: 0; align-self: stretch; font-size: var(--font-size-18); color: var(--color-body); line-height: 1.33;  }

.sublogolist .list {display: grid;grid-template-columns: repeat(5, 1fr); gap: var(--padding-30);}
.sublogolist .list img {width: 100%;}
.sublogolist .logotit {margin-top:var(--padding-40); font-size: var(--font-size-26); font-weight: bold; text-align: center;}

.imglist {display: flex;flex-wrap: wrap;gap: var(--padding-30);}
.imgitem.wid-100 {width: 100%;}
.imgitem.wid-25 {width:  calc((100% - 3 * var(--padding-30)) / 4);}
.imgitem.wid-33 {width:  calc((100% - 2 * var(--padding-30)) / 3);}
.imgitem img {width: 100%;}
.imgitem .tit {display: block; margin-top:var(--padding-20); font-size:var(--font-size-22); font-weight: 600; line-height: 1.2; text-align: center; letter-spacing: -0.6px;}
.imgitem .tit.ty2 {font-size: var(--font-size-20);}

.sec2contain-bg {margin-top: 40px; padding: 50px 0;}
.sec2contain-bg .bg-tit {margin-bottom: var(--padding-60); font-size: var(--font-size-30); font-weight: bold; line-height: 1.2; text-align: center;}
.steplist {display: grid;grid-template-columns: repeat(3 , 1fr); gap: var(--padding-30);}
.stepitem {display: flex;flex-direction: column;align-items: center; gap: var(--padding-20); text-align: center; position: relative;}
.stepitem .dot {margin: 0 auto; width: clamp(20px, calc( 24 / var(--inner) * 100vw ), 24px); height: clamp(20px, calc( 24 / var(--inner) * 100vw ), 24px); border-radius: 50%; background: #fff; border: 7px solid var(--color-primary);}
.stepitem .num {display: flex;align-items: center;justify-content: center; width:clamp(25px, calc( 30 / var(--inner) * 100vw ), 30px); height: clamp(25px, calc( 30 / var(--inner) * 100vw ), 30px); border-radius: 50%; background: var(--color-primary); color: #fff; font-weight: 700; line-height: 1;}
.stepitem .tit {font-size:var(--font-size-22); font-weight: 600; line-height: 1.2;}
.stepitem .bulletitem2 {font-size: var(--font-size-18); line-height: 1.44; color: var(--color-body); padding-left: 0.6em;  text-indent: -0.6em; } 
.stepitem .dec {font-size: var(--font-size-18); line-height: 1.44; color: var(--color-body);} 
.steplist.border {position: relative; z-index: 1;}
.steplist.border:after {position: absolute; content: ''; top:  clamp(8px, calc( 10 / var(--inner) * 100vw ), 10px); right: 0;  width: 100%; border: 2px dashed #ddd; z-index: -1;}
.steplist.border .dot {margin-bottom: 20px;}

.infiniteimg {display: flex;justify-content: center; flex-wrap: wrap;gap:var(--padding-70);}
.infiniteimg .item:not(.infinite) {width: 40%;}
.infiniteimg .infinite {display: flex;align-items: center;justify-content: center;}
.infiniteimg .infinite img {width:clamp(35px, calc( 84 / var(--inner) * 100vw ), 84px);}
.infiniteimg .checktxt {display: flex;flex-direction: column;gap: var(--padding-20); text-align: center; padding-top:var(--padding-30);}
.infiniteimg .txtitem { font-size: var(--font-size-22); font-weight: 600; line-height: 1.27;}
.infiniteimg .txtitem:not(.none) {position: relative; padding-left: clamp(23px, calc( 27 / var(--inner) * 100vw ), 27px); text-align: left; width: 50%; margin: 0 auto;} 
.infiniteimg .txtitem:not(.none):after {position: absolute; content: ''; left: 0; top: clamp(4px, calc( 6 / var(--inner) * 100vw ), 6px); width: clamp(15px, calc( 20 / var(--inner) * 100vw ), 20px); height: clamp(15px, calc( 20 / var(--inner) * 100vw ), 20px); background: url(../images/sub/check.svg) no-repeat center center / contain;}

.bgflxWrap {display: flex;align-items: center;justify-content: center; flex-wrap: wrap; gap: var(--padding-140);}
.bgflxWrap .imgbx {width: 45%;}
.bgflxWrap .textbx {flex: 1; display: flex;flex-direction: column;gap: var(--padding-40); letter-spacing: -0.6px;}
.bgflxWrap .dott {display: block; padding-left:clamp(25px, calc( 34 / var(--inner) * 100vw ), 34px); position: relative; margin-bottom: var(--padding-20); font-size:var(--font-size-22); font-weight: 600; line-height: 1.2;}
.bgflxWrap .dott:after {position: absolute; content: ''; left: 0; top: 50%; transform: translateY(-50%); width: clamp(15px, calc( 22 / var(--inner) * 100vw ), 22px); height: clamp(15px, calc( 22 / var(--inner) * 100vw ), 22px); background:#fff;border: clamp(4px, calc( 7 / var(--inner) * 100vw ), 7px) solid var(--color-primary); border-radius: 50%;}
.bgflxWrap .dec {font-size:var(--font-size-18); line-height: 1.44;}

.flowstep {display: flex; align-items: center; justify-content: center; flex-wrap: wrap; margin: -15px 0;}
.flowstep .item {display: flex; align-items: center; position: relative; padding: 15px clamp(20px, calc( 35 / var(--inner) * 100vw ), 35px);}
.flowstep .item:not(:last-child):after {position: absolute; content: ''; right: clamp(-12px, calc( -12 / var(--inner) * 100vw ), -6px); top: 50%; transform: translateY(-50%); width: clamp(14px, calc( 26 / var(--inner) * 100vw ), 26px); height: auto;  aspect-ratio: 26 / 30;background: url(../images/sub/right.svg) no-repeat center / contain; flex-shrink: 0;}
.flowstep .circle {width: clamp(140px, calc(228 / var(--inner) * 100vw), 228px); height: auto;  aspect-ratio: 1 / 1; border-radius: 9999px; border: clamp(4px, calc( 6 / var(--inner) * 100vw ), 6px) solid var(--color-primary); background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--padding-10); flex-shrink: 0;}
.flowstep .icon {width:  clamp(45px, calc(80 / var(--inner) * 100vw), 80px); height:  clamp(45px, calc(80 / var(--inner) * 100vw), 80px); }
.flowstep .icon img {width: 100%; height: auto; display: block;}
.flowstep .txt {font-size: var(--font-size-18); line-height: 1.33; color: #121212; text-align: center;}
.flowstep + .commtextbx {margin-top: var(--padding-80); }
.outsource-wrap {display: flex;flex-direction: column;gap: var(--padding-100);}
.outcontents {display: flex;align-items: center;flex-wrap: wrap; gap:var(--padding-100);}
.outcontents .imgbx {width: clamp(300px, calc( 550 / var(--inner) * 100vw ), 550px);}
.outcontents .imgbx img {border-radius:16px;}
.outcontents .textbx {flex: 1; letter-spacing: -0.5px;}
.outcontents .title {padding-left: clamp(28px, calc(42 / var(--inner) * 100vw), 42px); position: relative; font-size:var(--font-size-32); font-weight: 600; line-height: 1;}
.outcontents .title:before {position: absolute; content: ''; left: 0; top: 4px;  width: clamp(18px, calc(30 / var(--inner) * 100vw), 30px); height: auto; aspect-ratio: 1 / 1; background: url(../images/sub/check.svg) no-repeat center center / contain;}
.outcontents .subtit {margin-top: var(--padding-20); font-size: var(--font-size-18); font-weight: 500; line-height: 1.33;}
.outcontents .bullet-item {margin-top: var(--padding-40);}
.outcontents:nth-child(even) {flex-direction: row-reverse;}
.outsource-bg { margin-top: var(--padding-100); padding: var(--padding-100) 20px; background: url(../images/sub/outsourc-bg.jpg) no-repeat center center /cover; border-radius: 16px; overflow: hidden; text-align: center; color: #fff; letter-spacing: -0.6px;} 
.outsource-bg .outlogo img {width: clamp(90px, calc(120 / var(--inner) * 100vw), 120px);}
.outsource-bg .tit1 {margin-top: var(--padding-40); font-size:var(--font-size-32); font-weight: bold; line-height: 1.5;}
.outsource-bg .tit2 {margin-top: var(--padding-20); font-size:var(--font-size-18); font-weight: 400; line-height: 1.33;}

.flxborder {display: flex;align-items: center;flex-wrap: wrap;gap: var(--padding-100);}
.flxborder .imgbx {width: 42%; text-align: center;}
.flxborder .textbx {flex: 1; letter-spacing: -0.5px;} 
.flxborder .inner {padding: var(--padding-50); background: #fff; border-radius:24px;box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.20);}
.flxborder .title {font-size:var(--font-size-32); font-weight: bold;}
.flxborder .title + .bdinfolist {margin-top: var(--padding-40);}
.flxborder .bdinfolist .item {display: flex; padding: clamp(15px, calc(20 / var(--inner) * 100vw), 20px) 0; font-size: var(--font-size-18); color: var(--color-body); line-height: 1.44; border-bottom: 1px solid #ddd;}
.flxborder .bdinfolist .item:first-child {padding-top: 0;}
.flxborder .bdinfolist .item:last-child {padding-bottom: 0; border-bottom: 0;}
.flxborder .bdinfolist .name {width: clamp(90px, calc(100 / var(--inner) * 100vw), 100px); font-weight: 600;}
.flxborder .bdinfolist .decbx {flex: 1;}
.flxborder .coloritem {display: flex;align-items: center; gap:var(--padding-15);}
.flxborder .coloritem .dot {display: inline-block; width: 15px; height: 15px; border-radius: 50%;}
.flxborder .titbx {display: flex;align-items: center;gap:10px; margin-bottom: 10px;}
.flxborder .titbx img {width: clamp(15px, calc(26 / var(--inner) * 100vw), 26px); height: auto; aspect-ratio: 1 / 1;}
.flxborder .titbx .tit {font-size:var(--font-size-22); font-weight: 600; line-height: 1.2;}


.sleepfeat {display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: var(--padding-20); }
.sleepfeat .item {width:  calc((100% - 3 * var(--padding-20)) / 4); display: flex; flex-direction: column; align-items: center; gap: var(--padding-20); }
.sleepfeat .img {overflow: hidden; border-radius: 16px; width: 100%;}
.sleepfeat .img img {width: 100%;}
.sleepfeat .item:first-child .img {outline: 1px solid #DDDDDD; outline-offset: -1px;}
.sleepfeat .tit {margin: 0; align-self: stretch; text-align: center; font-size: var(--font-size-18); line-height: 1.44; color: var(--color-body);}
.sleepbullet-wrap {display: flex;flex-direction: column;gap: var(--padding-30); margin-top: var(--padding-100);}
.sleepbullet-inner {padding: var(--padding-50); border-radius: 24px;background: #FFF;box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.20);}
.sleepbullet-list {display: grid;grid-template-columns: repeat(3,1fr); gap: var(--padding-30); letter-spacing:-0.5px;}
.sleepbullet-list.ty2 {grid-template-columns: repeat(4,1fr);}
.sleepbullet-list .name {display: block; margin-bottom:var(--padding-20); font-size:var(--font-size-22); font-weight: bold;} 
.sleepbullet-list .bullet-list {margin-top: 7px;}
.sleepbullet-list .bullet-list:first-child {margin-top: 0;}

.mask-grid {display: grid;grid-template-columns: repeat(3,1fr); gap:var(--padding-30);}
.mask-grid .item {padding: var(--padding-40) var(--padding-20); background: #fff; border-radius:16px; text-align: center;}
.mask-grid .textbx {display: flex;flex-direction: column;gap: var(--padding-18);}
.mask-grid .num {margin-bottom: 4px; font-weight: 600; color: var(--color-primary);}
.mask-grid .tit {font-size:var(--font-size-22); font-weight: 600; line-height: 1.2;}
.mask-grid .dec {font-size:var(--font-size-18); color: var(--color-body);}
.mask-grid .imgbx {padding-top: var(--padding-20);}

.sleeptype {display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; gap: 25px;}
.sleeptype .left-group {display: flex; align-items: center; flex-shrink: 0; }
.sleeptype .start {width: clamp(150px, calc(250 / var(--inner) * 100vw), 250px); height: auto; aspect-ratio: 1 / 1; flex-shrink: 0; border-radius: 9999px; border: 6px solid rgba(255, 108, 29, 0.30); background: #fff; display: flex; align-items: center; justify-content: center; margin-top: 3px;}
.sleeptype .start .txt {color: var(--color-body); font-size: var(--font-size-22); font-weight: 700; line-height: 1.27; text-align: center;}
.sleeptype .connector {display: flex; align-items: center; flex-shrink: 0; width: clamp(90px, calc(205 / var(--inner) * 100vw), 205px);}
.sleeptype .line {display: block; width: clamp(85px, calc(200 / var(--inner) * 100vw), 200px); height: 0; border-top: 1px solid var(--color-primary);}
.sleeptype .dot {display: block; width: 7px; height: 7px; border-radius: 9999px; background: var(--color-primary); flex-shrink: 0;}
.sleeptype .typeswrap { flex: 1;}
.sleeptype .types {display: flex; align-items: flex-start; justify-content: center; gap: 0; flex-wrap: nowrap; padding-top: 0;}
.sleeptype .item {width: clamp(150px, calc(250 / var(--inner) * 100vw), 250px); display: flex; flex-direction: column; align-items: center; gap: var(--padding-20); flex-shrink: 0;}
.sleeptype .item:not(:first-child) {margin-left: -15px; }
.sleeptype .circle {width: clamp(150px, calc(250 / var(--inner) * 100vw), 250px); height: auto; aspect-ratio: 1 / 1;  border-radius: 9999px; background: rgba(255, 108, 29, 0.20); flex-shrink: 0; display: flex; align-items: center; justify-content: center; position: relative; z-index: 1;}
.sleeptype .item:nth-child(2) .circle {z-index: 2;}
.sleeptype .item:nth-child(3) .circle {z-index: 3;}
.sleeptype .circle .tit {margin: 0; padding: 0 var(--padding-20); text-align: center; font-size: var(--font-size-22); font-weight: 700; line-height: 1.27; color: var(--color-primary);}
.sleeptype .desc {margin: 0; text-align: center; font-size: var(--font-size-18); line-height: 1.33; color: var(--color-body); position: relative; z-index: 10;} 
.sleeptype .decitem {margin-top: var(--padding-40); text-align: center; line-height: 1.33;}
.sleeptype .decitem .last {margin-top: var(--padding-20); font-weight: 600;}


.symptoms-grid {display: grid; grid-template-columns:  repeat(3,1fr); gap: var(--padding-30);}
.symptoms-grid .item {padding:var(--padding-40) var(--padding-20);  background: #fff; border-radius: 16px; text-align: center; letter-spacing: -0.5px;}
.symptoms-grid .img img {width: clamp(40px, calc(50 / var(--inner) * 100vw), 50px);}
.symptoms-grid .textbx {padding-top: var(--padding-20);}
.symptoms-grid .num {display: block; margin-bottom: var(--padding-20); color: var(--color-primary); font-weight: 600;}
.symptoms-grid .tit {font-size:var(--font-size-22); font-weight: 600; line-height: 1.18;}
.symptoms-grid .bulletlist {padding-top: var(--padding-20);}
.symptoms-grid .bulletitem2 {font-size: var(--font-size-18); line-height:1.44; color: var(--color-body);}

.methods-grid {display: flex;flex-direction: column;gap:var(--padding-30);}
.methods-grid .item {display: flex;flex-wrap: wrap;gap: 30px;}
.methods-grid .imgbx {width: 42%;}
.methods-grid .imgbx img {border-radius:16px;}
.methods-grid .textbx {display: flex;flex-direction: column; gap:var(--padding-25); flex: 1; letter-spacing: -0.6px;}
.methods-grid .tit {display: block; margin-bottom: var(--padding-20); font-size: var(--font-size-22); font-weight: 600; line-height: 1.2;}
.methods-grid .dec {font-size:var(--font-size-18); line-height: 1.33; color: var(--color-body);}

.storeimggrid {display: grid; grid-template-columns: repeat(2,1fr); gap:var(--padding-30);}
.storeimggrid .item img {border-radius:16px;}

.process-grid {padding-left: var(--padding-120);}
.process-item {display: flex;align-items: center;gap: var(--padding-85);}
.process-item .left-group {display: flex; align-items: center; flex-shrink: 0; }
.process-item .start {width: clamp(130px, calc(228 / var(--inner) * 100vw), 228px); height: auto; aspect-ratio: 1 / 1; flex-shrink: 0; border-radius: 9999px; border: clamp(4px, calc(6 / var(--inner) * 100vw), 6px) solid var(--color-primary); background: #fff; display: flex; align-items: center; justify-content: center; margin-top: 3px;}
.process-item .start img {width: clamp(45px, calc(80 / var(--inner) * 100vw), 80px); height: auto; aspect-ratio: 1 / 1;}
.process-item .connector {display: flex; align-items: center; flex-shrink: 0; width: clamp(90px, calc(205 / var(--inner) * 100vw), 205px);}
.process-item .line {display: block; width: clamp(85px, calc(200 / var(--inner) * 100vw), 200px); height: 0; border-top: 1px solid var(--color-primary);}
.process-item .dot {display: block; width: 7px; height: 7px; border-radius: 9999px; background: var(--color-primary); flex-shrink: 0;}
.process-item .typeswrap { flex: 1;}
.process-item .types span {display: block;}
.process-item .num {font-weight: 600; color: var(--color-primary);}
.process-item .tit {margin-top: var(--padding-15); font-size:var(--font-size-22); font-weight: 600; line-height: 1.18;}
.process-item .dec {margin-top: var(--padding-20); font-size: var(--font-size-18); line-height: 1.44; color: var(--color-body);}
.process-item:not(:first-child) {margin-top: -20px;}
.process-item:nth-child(even) .start {border-color: rgba(255, 108, 29, 0.30);}
.process-item:nth-child(even) .line {border-color: rgba(255, 108, 29, 0.30);}
.process-item:nth-child(even) .dot {background: rgba(255, 108, 29, 0.30);}

.bizcontact {display: flex; flex-direction: column; gap: var(--padding-40); list-style: none; padding: 0; margin: 0;}
.bizcontact .item {min-height: 130px; background: #fff; border-radius: 8px; border: 1px solid #DDDDDD;}
.bizcontact .inner {display: flex; flex-direction: column; justify-content: center; gap: var(--padding-22); padding: var(--padding-40); min-height: 130px;}
.bizcontact .tit {margin: 0; font-size: var(--font-size-22); font-weight: 600; line-height: 1.18; color: var(--color-primary);}
.bizcontact .detail {display: flex; flex-wrap: wrap; align-items: center; gap: var(--padding-60);}
.bizcontact .row {display: flex; align-items: center; gap: 8px;}
.bizcontact .label {font-size: var(--font-size-18); font-weight: 600; line-height: 1.44; color: var(--color-body);}
.bizcontact .val {font-size: var(--font-size-18); line-height: 1.44; color: var(--color-body);}

.down-grid {display: grid; grid-template-columns: repeat(2,1fr); gap: var(--padding-40);}
.down-item {display: flex;align-items: center;justify-content: space-between; gap: 20px; padding: var(--padding-40); border: 1px solid #ddd; border-radius: 8px;}
.down-item .txtbx {display: flex;align-items: center;gap:12px;}
.down-item .txtbx img {width:clamp(30px, calc(46 / var(--inner) * 100vw), 46px); height: auto; aspect-ratio: 1 / 1}
.down-item .txtbx .tit {font-size:var(--font-size-22); color: var(--color-body); font-weight: 600;}
.down-item .btn-down {display: block; width: 18px;}
