@charset "utf-8";
/* 공통 */
.sub-big { border-radius: 20px; overflow: hidden; margin-bottom: 100px; }
.sub-big img { width: 100%; height: 100%; object-fit: cover; }

/* 인사말 */
.gt .col { display: flex; align-items: center; padding: 40px; margin-bottom: 40px; border-radius: 20px; background: #eff6fb;}
.gt .col:last-child { margin-bottom: 0; }
.gt .col:nth-child(even) { background: #fff; border: 1px solid #ddd;}
.gt .col .info { flex: 1 1 auto; min-width: 0; width: 1%; padding-left: 40px; }
.gt .col .info h4 { margin-bottom: 20px; font-size: var(--font-size20); font-weight: 600; line-height: 1.5em; color: #242424; }

/* 연혁 */
.hst-big { background: url(../images/sub/hst-bg.jpg) center no-repeat; background-size: cover; border-radius: 20px; text-align: center; color: #fff; padding: 65px 15px; position: relative; }
.hst-big h4 { font-size: 16px; line-height: 1.5em; font-weight: 600; }
.hst-big h2 { font-size: var(--font-size36); font-weight: 600; line-height: 1.5em; margin: 10px 0 12px;}
.hst-big::after { content: ""; position: absolute; left: 0; right: 0; margin: auto; bottom: -15px; width: 30px; height: 30px; background: url(../images/sub/hst-img-dot.png) center no-repeat; background-size: contain; z-index: 1;}
.hst { position: relative; padding-top: 60px; }
.hst::before { content: ""; position: absolute; left: 0; right: 0; margin: auto; top: 0; width: 1px; height: 99%; background: #ddd; }
.hst .group { margin-bottom: 40px; width: 50%; margin-left: 50%; position: relative; padding-left: 85px; }
.hst .group::before { content: ""; position: absolute; left: -10px; top: 69px; width: 20px; height: 20px; background: url(../images/sub/hst-dots.png) center no-repeat; background-size: contain;}
.hst .group::after { content: ""; position: absolute; left: 0; top: 79px; width: 65px; height: 1px; background: #ddd; z-index: -1;}
.hst .group:last-child { margin-bottom: 0; }
.hst .group .year { font-size: var(--font-size32); line-height: 1.5em; margin-bottom: 20px; color: #242424; font-weight: 700; }
.hst .group ul li {display: flex; margin-bottom: 20px; }
.hst .group ul li:last-child { margin-bottom: 0; }
.hst .group ul li .month { width: 51px; font-weight: 700; color: var(--color-primary); }
.hst .group ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; color: #000; padding-top: 1px; }
.hst .group ul li .txt p { line-height: 1.5em; position: relative; padding-left: 12px; }
.hst .group ul li .txt p::before { content: ""; position: absolute; left: 0; top: 10px; width: 3px; height: 3px; border-radius: 3px; background: #454545; }
.hst .group:nth-child(even) { padding-right: 0; padding-right: 85px; width: 50%; margin-left: 0; text-align: right; }
.hst .group:nth-child(even)::before { left: auto; right: -10px; }
.hst .group:nth-child(even)::after { left: auto; right: 0; }
.hst .group:nth-child(even) ul li { flex-direction: row-reverse;}
.hst .group:nth-child(even) ul li .txt p {padding-left: 0; padding-right: 12px; }
.hst .group:nth-child(even) ul li .txt p::before { left: auto; right: 0; }

/* 오시는 길 */
.map { border-radius: 20px; overflow: hidden;}
.lct-top { padding: 60px 0; text-align: center; }
.lct-top .tit { display: flex; justify-content: center; align-items: center; margin-bottom: 16px; }
.lct-top .tit strong { font-size: var(--font-size22); font-weight: 600; line-height: 1.4em; padding-left: 8px; color: #242424; display: inline-block; }
.lct-top .info span { display: inline-block; padding-right: 20px; }
.lct-top .info span:last-child { padding-right: 0; }
.lct-btm { display: flex; justify-content: center; }
.lct-btm .item { padding: 37px 100px; display: flex; align-items: center; border-right: 1px solid #ddd;} 
.lct-btm .item:last-child { border: none; }
.lct-btm .item strong { display: inline-block; padding-left: 27px; font-weight: 600; color: #242424; line-height: 1.5em; }

/* 장비페이지(공통) */
.eq-tit { margin-bottom: 50px; font-size: var(--font-size40); position: relative; font-weight: 600; color: #242424; padding-left: 24px; line-height: 1.5em; }
.eq-tit::before { content: ""; position: absolute; left: 0; width: 4px; height: 40px; top: 10px; background: var(--color-primary); }
.eq-summary { display: flex; align-items: flex-start; margin-bottom: 100px; gap: 80px; }
.eq-summary .thumb { margin-left: 24px; }
/* .eq-summary .thumb { position: relative; padding-bottom: 90%; display: block; overflow: hidden; margin-left: 24px;} */
/* .eq-summary .thumb img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); width: auto; height: auto !important; max-width:100%; min-height:100%; object-fit: contain; } */
/* .eq-summary .thumb img { position: absolute; top: 50%; left: 0; transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); width: auto; height: auto !important; object-fit: contain; } */
.eq-summary .info { flex: 1 1 auto; min-width: 0; width: 1%; }
.eq-tbl-wrap { overflow: auto;}
.eq-tbl { width: 100%; border-collapse: collapse; border-top: 1px solid #ddd;}
.eq-tbl tr { border-bottom: 1px solid #ddd;}
.eq-tbl th { padding: 6px 10px; font-size: var(--font-size18); font-weight: 600; line-height: 1.5em; color: #242424; background: #eff6fb; border-right: 1px solid #ddd;}
.eq-tbl th:last-child { border-right: none; }
.eq-tbl td { padding: 6px 10px; border-right: 1px solid #ddd; font-size: var(--font-size18); line-height: 1.5em; text-align: center; }
.eq-tbl td:last-child { border-right: none; }
.eq-tbl td.fw { background: #eff6fb; color: #242424; font-weight: 600; }
.eq-tbl td.clr { color: var(--color-primary);}
.eq-detail h4 { display: inline-block; position: relative; line-height: 1.5em; font-size: var(--font-size30); font-weight: 600; color: #242424; padding-bottom: 40px; }
.eq-detail h4::before { content: ""; position: absolute; left: 0; bottom: -1px; width: 100%; height: 1px; background: var(--color-primary); }
.eq-detail .wrap { padding: 40px 0; border-top: 1px solid #ddd;}
.sub5-img { text-align: center; }

/* 납품실적 */
.pf .col { margin-bottom: 55px; padding: 40px; border-radius: 20px; background: #eff6fb; position: relative; }
.pf .col:last-child { margin-bottom: 0; }
.pf .col p { line-height: 1.8em; }
.pf .col .tit { position: absolute; top: -17px; left: 40px; font-size: var(--font-size18); font-weight: 600; line-height: 1.5em; color: #fff; background: #fff; padding: 5px 20px; border-radius: 40px; background: var(--color-primary);}
.pf .col:nth-child(even) { background: #fff; border: 1px solid #ddd;}

/* 셀프빨래방 */
:root { --self-bg:#f4f7fb; --self-surface:#ffffff; --self-text:#242424; --self-text-sub:#6b7280; --self-line:#e8edf3; --self-radius-lg:24px; --self-radius-md:16px; }
.contents .self-inner { width:100%; max-width:1400px; padding-left: 30px; padding-right: 30px; margin: auto; }
.contents .self-visual-hero { position:relative; padding:0 0 80px; background:#fff; overflow:hidden; }
.contents .self-eyebrow { display:inline-block; margin-bottom:20px; padding:8px 16px; border-radius:999px; background:rgba(16,151,242,0.1); color:var(--color-primary); font-size:14px; font-weight:700; letter-spacing:-0.02em; }
.contents .self-visual-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,360px); gap:40px; align-items:center; }
.contents .self-visual-hero__content { min-width:0; }
.contents .self-visual-hero__title { max-width:none; font-size:clamp(16px,4vw,36px); font-weight:700; line-height:1.35; letter-spacing:-0.04em; color:var(--self-text); }
.contents .self-visual-hero__title em { font-style:normal; color:#242424; }
.contents .self-visual-hero__desc { max-width:760px; margin-top:24px; font-size:var(--font-size20); line-height:1.45; color:var(--self-text-sub); letter-spacing:-0.02em; }
.contents .self-visual-hero__desc em { font-style:normal; font-weight:400; color:inherit; }
.contents .self-visual-hero__brand { display:flex; align-items:center; justify-content:center; box-sizing:border-box; width:100%; max-width:360px; height:220px; padding:0; border:1px solid #ddd; border-radius:var(--self-radius-lg); background:var(--self-surface); overflow:hidden; }
.contents .self-visual-hero__brand img { display:block; width:280px; height:84px; max-width:100%; object-fit:contain; }
.contents .self-solutions { padding:80px 0; background:var(--self-bg); }
.contents .self-solutions__intro { margin-bottom:40px; text-align:center; }
.contents .self-solutions__intro h3 { font-size:var(--font-size32); font-weight:700; line-height:1.4; color:var(--self-text); letter-spacing:-0.03em; }
.contents .self-solutions__intro p { margin-top:12px; font-size:var(--font-size18); color:var(--self-text-sub); }
.contents .self-solution-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.contents .self-solution-list > .self-solution-card:only-child { grid-column:1 / -1; width:100%; max-width:calc((100% - 24px) / 2); justify-self:center; }
.contents .self-solution-card { border-radius:var(--self-radius-lg); background:var(--self-surface); overflow:hidden; }
.contents .self-solution-card__body { display:flex; flex-direction:column; justify-content:flex-start; height:100%; padding:32px 28px 36px; }
.contents .self-solution-card__title { font-size:26px; font-weight:700; line-height:1.3; color:var(--self-text); letter-spacing:-0.03em; }
.contents .self-solution-card__text { margin-top:16px; font-size:var(--font-size18); line-height:1.7; color:#454545; }
.contents .self-feature-box { margin-top:24px; padding:20px; border-radius:var(--self-radius-md); border:1px solid var(--self-line); }
.contents .self-feature-box__head { display:flex; flex-direction:column; align-items:flex-start; gap:24px; margin-bottom:16px; }
.contents .self-feature-box__head h4 { order:1; font-size:var(--font-size18); font-weight:600; color:var(--self-text); }
.contents .self-feature-box__price { order:0; display:flex; flex-wrap:wrap; align-items:center; gap:0 6px; text-align:left; }
.contents .self-feature-box__price-label { font-size:var(--font-size18); font-weight:600; color:var(--self-text); }
.contents .self-feature-box__price-value { font-size:22pt; font-weight:700; color:var(--color-primary); }
.contents .self-feature-box__price small { display:inline; font-size:15px; font-weight:500; color:var(--self-text-sub); }
.contents .self-feature-box__list { display:flex; flex-direction:column; gap:8px; margin:0; padding:0; list-style:none; }
.contents .self-feature-box__list li { position:relative; padding:0 0 0 14px; font-size:15px; line-height:1.6; color:var(--self-text); }
.contents .self-feature-box__list li::before { content:""; position:absolute; left:0; top:0.65em; width:4px; height:4px; border-radius:50%; background:var(--color-primary); transform:translateY(-50%); }
.contents .self-showcase { padding:80px 0 0; background:#fff; }
.contents .self-showcase__head { margin-bottom:32px; text-align:center; }
.contents .self-showcase__head h3 { font-size:var(--font-size32); font-weight:700; line-height:1.4; color:var(--self-text); letter-spacing:-0.03em; }
.contents .self-showcase__head p { margin-top:12px; font-size:var(--font-size18); color:var(--self-text-sub); }
.contents .self-showcase-alt { display:flex; flex-direction:column; gap:16px; }
.contents .self-showcase-alt__main { position:relative; width:100%; max-width:800px; margin:0 auto; flex:none; aspect-ratio:448 / 320; overflow:hidden; background:#eef2f6; }
.contents .self-showcase-alt__figure { position:absolute; inset:0; display:block; width:100%; height:100%; }
.contents .self-showcase-alt__main-img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.contents .self-showcase-alt__nav { position:absolute; top:50%; z-index:2; display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin-top:-22px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,0.92); color:#242424; box-shadow:0 2px 12px rgba(0,0,0,0.12); cursor:pointer; transition:background 0.2s ease, color 0.2s ease; }
.contents .self-showcase-alt__nav-icon { display:block; width:10px; height:16px; flex-shrink:0; }
.contents .self-showcase-alt__nav--prev .self-showcase-alt__nav-icon { margin-left:-2px; }
.contents .self-showcase-alt__nav--next .self-showcase-alt__nav-icon { margin-right:-2px; }
.contents .self-showcase-alt__nav:hover { background:var(--color-primary); color:#fff; }
.contents .self-showcase-alt__nav--prev { left:16px; }
.contents .self-showcase-alt__nav--next { right:16px; }
.contents .self-showcase-alt__thumbs { display:flex; flex-wrap:nowrap; justify-content:center; gap:10px; width:100%; margin:0; padding:0; list-style:none; }
.contents .self-showcase-alt__thumbs > li { flex:1 1 0; min-width:0; max-width:140px; }
.contents .self-showcase-alt__thumb { display:block; width:100%; aspect-ratio:448 / 320; padding:0; border:2px solid transparent; background:none; cursor:pointer; overflow:hidden; transition:border-color 0.2s ease; }
.contents .self-showcase-alt__thumb.is-active { border-color:var(--color-primary); }
.contents .self-showcase-alt__thumb img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; image-rendering:auto; }