@charset "utf-8";

.sub-tab {margin-bottom:clamp(24px, calc(80 / var(--inner) * 100vw), 80px);}
.sub-tab ul {display:flex; gap:clamp(6px, calc(20 / var(--inner) * 100vw), 20px);}
.sub-tab ul li {flex:1;}
.sub-tab ul li a {display:flex; align-items:center; justify-content:center; height:clamp(48px, calc(70 / var(--inner) * 100vw), 70px); padding:2px 8px; border-radius:8px; background:#f4f4f4; color:#888; font-size:clamp(14px, calc(20 / var(--inner) * 100vw), 20px); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; text-align:center;}
.sub-tab ul li.active a {background:var(--color-primary); color:#fff; font-weight:700;}
.sub-tab.st2 ul li.active a {background:#B13C03;}
.sub-tab.st3 ul li.active a {background:#034EA2;}
.sub-tab.st4 ul li.active a {background:#0691E0;}
.sub-tab.st5 ul li.active a {background:#399C03;}
.sub-tab.st6 ul li.active a {background:#CD371C;}
.sub-tab.st7 ul li.active a {background:#E65D17;}
.sub-tab.st8 ul li.active a {background:#233C7D;}

.doc-cnt:not(:last-child) {margin-bottom:var(--space-120);}

.doc-tit {padding-left:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); position: relative; margin-bottom:var(--space-40); font-size:clamp(20px, calc(32 / var(--inner) * 100vw), 32px); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.doc-tit:before {content:''; position: absolute; left:0; top:.1em; width:clamp(4px, calc(6 / var(--inner) * 100vw), 6px); height:clamp(18px, calc(25 / var(--inner) * 100vw), 25px); border-radius:40px; background:var(--color-primary);}

.greeting .content {margin-top:var(--space-80); display:flex; flex-direction:column; gap:var(--space-40); width:100%; max-width:1400px;}
.greeting .content h3 {font-size:var(--font-size-40); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#121212;}
.greeting .content h3 span {color:var(--color-primary);}
.greeting .content .line {position:relative; height:3px; height:1px; background:#ddd;}
.greeting .content .line:before {content:''; position:absolute; bottom:0; left:0; width:100px; height:3px; background:var(--color-primary);}
.greeting .content .txt {font-size:clamp(16px, calc(20 / var(--inner) * 100vw), 20px); color:#505050; line-height:1.7em; letter-spacing:-0.03em;}
.greeting .content .sign {margin-top:var(--space-10); font-size:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); line-height:1.3em; letter-spacing:-0.03em; color:#121212;}
.greeting .content .sign strong {font-weight:600;}

.history .visual {position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--space-20); height:clamp(200px, calc(350 / var(--inner) * 100vw), 350px); padding:0 30px;border-radius:16px; overflow:hidden; color:#fff; text-align:center; background:url("/images/sub/history.jpg") no-repeat 50% 100% / cover;}
.history .visual .en {font-size:clamp(16px, calc(20 / var(--inner) * 100vw), 20px); font-weight:600; line-height:1.3em; letter-spacing:-0.03em;}
.history .visual .txt {font-size:clamp(20px, calc(32 / var(--inner) * 100vw), 32px); line-height:1.5em; letter-spacing:-0.03em;}
.history .visual .txt strong {font-weight:600;}
.history .timeline {position:relative; padding-top:var(--space-100);}
.history .timeline:before {content:''; position:absolute; top:0; left:50%; width:1px; height:100%; background:#ddd; transform:translateX(-50%);}
.history .timeline .item {position:relative; display:flex; align-items:flex-start; gap:var(--space-40); margin-bottom:var(--space-100);}
.history .timeline .item:last-child {margin-bottom:0;}
.history .timeline .item:nth-child(odd) {margin-left:50%;}
.history .timeline .item:nth-child(even) {flex-direction:row-reverse; margin-right:50%; text-align:right;}
.history .timeline .item .year {display:flex; align-items:center; justify-content:space-between; width:175px; font-size:var(--font-size-40); font-weight:700; line-height:.8em; letter-spacing:-0.03em; color:var(--color-primary);}
.history .timeline .item:nth-child(even) .year {flex-direction:row-reverse;}
.history .timeline .item .dot {width:32px; height:32px; background:url("/images/sub/history-dot.png") no-repeat 50% 50% / contain;}
.history .timeline .item:nth-child(odd) .dot {margin-left:-16px;}
.history .timeline .item:nth-child(even) .dot {margin-right:-16px;}
.history .timeline .item .list {display:flex; flex-direction:column; gap:clamp(6px, calc(25 / var(--inner) * 100vw), 25px); flex:1; min-width:0;}
.history .timeline .item .list li {display:flex; font-size:clamp(16px, calc(20 / var(--inner) * 100vw), 20px); color:#505050; line-height:1.6em; letter-spacing:-0.03em;}
.history .timeline .item:nth-child(even) .list li {flex-direction:row-reverse;}
.history .timeline .item .list li .month {min-width:46px;; font-weight:600;}


.biz-gall {display:grid; grid-template-columns:repeat(3, 1fr); gap:clamp(24px, calc(40 / var(--inner) * 100vw), 40px) clamp(16px, calc(40 / var(--inner) * 100vw), 40px);}
.biz-gall .item .img {aspect-ratio:440/300; border-radius:16px; overflow:hidden; background:#fff;}
.biz-gall .item .img img {width:100%; height:100%; object-fit:cover;}
.biz-gall .item p {margin-top:var(--space-20); font-size:clamp(15px, calc(20 / var(--inner) * 100vw), 20px); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#121212; text-align:center;}

.rnd-gall {display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-40);}
.rnd-gall .item p {margin-top:var(--space-20); font-size:clamp(15px, calc(20 / var(--inner) * 100vw), 20px); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#121212; text-align:center;}

.location {display:flex; flex-direction:column; gap:var(--space-80); max-width:1400px; margin:0 auto;}
.location .map-info {display:flex; align-items:stretch; width:100%;}
.location .map-cnt {flex:1; min-width:0; border-radius:16px 0 0 16px; overflow:hidden;}
.root_daum_roughmap_landing {width:100% !important;}
.root_daum_roughmap .wrap_map {height:570px !important;}
.root_daum_roughmap .cont {display:none;}
.root_daum_roughmap .border1,
.root_daum_roughmap_landing .border3, 
.root_daum_roughmap_landing .border4 {display:none !important;}
.root_daum_roughmap .wrap_controllers {border:0 !important;}

.location .info {display:flex; flex-direction:column; justify-content:center; width:386px; padding:var(--space-40); border-radius:0 16px 16px 0; background:var(--color-primary); color:#fff;}
.location .info h3 {margin-bottom:var(--space-40); padding-bottom:var(--space-40); border-bottom:1px solid #ddd; font-size:var(--font-size-28); font-weight:700; line-height:1.3em; letter-spacing:-0.03em;}
.location .info .desc {display:flex; flex-direction:column; gap:var(--space-30);}
.location .info dt {margin-bottom:var(--space-15); font-size:var(--font-size-20); font-weight:600; line-height:1.3em; letter-spacing:-0.03em;}
.location .info dd {font-size:var(--font-size-16); line-height:1.75em; letter-spacing:-0.03em;}
.location .factory-info {display:flex; gap:var(--space-20);}
.location .factory-info .item {display:flex; align-items:center; gap:var(--space-30); flex:1; min-width:0; padding:var(--space-40); border:1px solid #ddd; border-radius:8px; background:#fff;}
.location .factory-info .icon {width:72px; height:72px;}
.location .factory-info .icon svg {width:100%; height:100%;}
.location .factory-info h4 {margin-bottom:var(--space-25); font-size:var(--font-size-22); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#121212;}
.location .factory-info dl {margin-bottom:var(--space-15); display:flex; gap:var(--space-15); font-size:var(--font-size-18); color:#505050; line-height:1.3em; letter-spacing:-0.03em;}
.location .factory-info dl:last-child {margin-bottom:0;}
.location .factory-info dt {font-weight:600;}

.product-banner {margin-bottom:var(--space-120); position:relative; display:flex; align-items:center; justify-content:center; min-height:clamp(250px, calc(450 / var(--inner) * 100vw), 450px); padding:var(--space-60) var(--space-40); color:#fff; text-align:center; background-repeat:no-repeat; background-position:50% 50%; background-size:cover;}
.product-banner .en {margin-bottom:var(--space-5); font-size:var(--font-size-16); font-weight:600; line-height:1.3em; letter-spacing:-0.03em;}
.product-banner h3 {margin-bottom:var(--space-25); font-size:var(--font-size-40); font-weight:700; line-height:1.3em; letter-spacing:-0.03em;}
.product-banner .txt-1 {margin-bottom:var(--space-15); font-size:clamp(17px, calc(24 / var(--inner) * 100vw), 24px); font-weight:600; line-height:1.4em; letter-spacing:-0.03em;}
.product-banner .txt-2 {font-size:clamp(14px, calc(18 / var(--inner) * 100vw), 18px); font-weight:400; line-height:1.4em; letter-spacing:-0.03em;}
.product-banner .badges {display: flex; justify-content: center; gap:var(--space-10); margin-top:var(var(--space-50));}
.product-banner .badge {display:inline-flex; align-items:center; justify-content:center; padding:5px var(--space-8); border-radius:8px; background:#0691E0; font-size:var(--font-size-14); font-weight:600; line-height:1.3em; letter-spacing:0; color:#fff;}
.product-banner .badge.type2 {background: #fff;}

.table01 table {width:100%; border-collapse:collapse; border-spacing:0; border-top:1px solid var(--color-primary);}
.table01 thead th {border-right:1px solid #ddd; padding:var(--space-30) var(--space-20); border-bottom:1px solid #ddd; font-size:var(--font-size-18); font-weight:600; line-height:1em; letter-spacing:-0.03em; text-align:center; background:#f4f4f4; color:#121212;}
.table01 thead th.bg {background:rgba(6,145,224,.05); color:var(--color-primary); font-weight:700;}
.table01 tbody td {padding:var(--space-20); border-right:1px solid #ddd; border-bottom:1px solid #ddd; font-size:var(--font-size-16); font-weight:400; color:#505050; line-height:1.75em; letter-spacing:-0.03em;}
.table01 tbody td.bg {background:rgba(6,145,224,.05); font-weight:600; color:#121212;}
.table01 thead th:last-child,
.table01 tbody td:last-child {border-right:0;}
.table01 .list-1 ul {display: flex; flex-direction:column; gap:var(--space-15);}
.table01 .list-1 ul li {padding-left:var(--space-10); position: relative; font-weight:600; color:#121212;} 
.table01 .list-1 ul li:before {position: absolute; left:0; background:#121212; content:''; flex-shrink:0; width:4px; height:4px; margin-top:12px; border-radius:50%;}
.table01 .list-1.st2 ul li {font-weight:400; color:#505050;}
.table01 .list-1.st2 ul li strong {font-weight:600; color:#121212;}
.table01 .list-2 ul {display: flex; flex-direction:column; gap:var(--space-15);}
.table01 .list-2 ul li {padding-left:var(--space-10);position: relative; font-weight:400; color:#505050;}
.table01 .list-2 ul li:before {position: absolute; left:0; background:#505050; content:''; flex-shrink:0; width:4px; height:4px; margin-top:12px; border-radius:50%;}

.table02 table {width:100%; border-collapse:collapse; border-spacing:0; border-top:1px solid var(--color-primary);}
.table02 thead th {padding:var(--space-30) var(--space-20); border-right:1px solid #ddd; border-bottom:1px solid #ddd; font-size:var(--font-size-18); font-weight:600; line-height:1em; letter-spacing:-0.03em; text-align:center; vertical-align:middle; background:#f4f4f4; color:#121212;}
.table02 thead th:nth-child(2),
.table02 thead th:nth-child(3) {font-weight:700;}
.table02 tbody td {padding:var(--space-20); border-right:1px solid #ddd; border-bottom:1px solid #ddd; font-size:var(--font-size-16); font-weight:400; line-height:1.75em; letter-spacing:-0.03em; text-align:center; vertical-align:middle; background:#fff; color:#505050;}
.table02 tbody .img {margin-bottom:var(--space-5); aspect-ratio:270/200; border-radius:16px; overflow:hidden;}
.table02 tbody .img img {width:100%; height:100%; object-fit:cover;}
.table02 thead th:last-child,
.table02 tbody td:last-child {border-right:0;}
.table02 .link-go {display: flex; align-items:center; justify-content: center; gap:var(--space-8);}
.table02 .link-go .arrow {transition:.3s; width: 40px; height: 40px; border:1px solid #ddd; display: flex; align-items: center; justify-content: center; border-radius:50%;}
.table02 .link-go:hover {color: var(--color-primary);}
.table02 .link-go:hover .arrow {background: var(--color-primary); color:#fff; border-color:var(--color-primary);}

.prod-type-cell {display:flex; flex-direction:column; gap:var(--space-20); text-align:center; color:#121212; font-weight:600;}

.feature-list ul {display:flex; flex-direction:column; gap:var(--space-20);}
.feature-list ul li {padding-left:var(--space-10); position: relative; font-size:var(--font-size-18); font-weight:400; line-height:1.4em; letter-spacing:-0.03em; color:#505050;}
.feature-list ul li:before {position: absolute; left:0; top:.6em; content:''; width:4px; height:4px; border-radius:50%; background:#505050;}

/* recruit modal */
.fancybox-skin:has(.pop-recruit) {background:transparent; box-shadow:none;}
.pop-recruit {width:90vw; max-width:700px; padding:var(--space-60); border-radius:32px; background:#fff;}
.pop-recruit-head {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-10);}
.pop-recruit-head .title-area {flex:1; min-width:0;}
.pop-recruit-head h2 {font-size:var(--font-size-32); font-weight:700; line-height:1.5em; letter-spacing:-0.03em; color:#121212;}
.pop-recruit-head .desc {margin-top:var(--space-10); font-size:var(--font-size-18); font-weight:400; line-height:1.67em; letter-spacing:-0.03em; color:#121212;}
.pop-recruit-head .btn-close {flex-shrink:0; width:48px; height:48px; padding:0; border:0; background:none; cursor:pointer;}
.pop-recruit-head .btn-close svg {width:100%; height:100%;}
.pop-recruit-line {margin:var(--space-50) 0; height:1px; background:#ddd;}
.pop-recruit-body {display:flex; flex-direction:column; gap:var(--space-50);}
.recruit-sec {display:flex; flex-direction:column; gap:var(--space-30);}
.recruit-tit {font-size:var(--font-size-20); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:var(--color-primary);}
.recruit-list {display:flex; flex-direction:column; gap:var(--space-15);}
.recruit-list li {position:relative; padding-left:10px; font-size:var(--font-size-16); font-weight:400; line-height:1.625em; letter-spacing:-0.03em; color:#505050;}
.recruit-list li:before {content:""; position:absolute; left:0; top:11px; width:4px; height:4px; border-radius:50%; background:#505050;}
.pop-recruit-foot {font-size:var(--font-size-24); font-weight:600; line-height:1.75em; letter-spacing:-0.03em; color:#121212;}


/* sport court */
.feature-box {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-40);}
.feature-box .feature-list {flex:1; min-width:0;}
.feature-icon {flex-shrink:0; display:flex; align-items:center; justify-content:center; width:150px; height:150px;}
.feature-icon img {max-width:100%; max-height:100%; object-fit:contain;}
.shock-detail {position:relative; display:flex; align-items:flex-start; justify-content:center; gap:var(--space-40); margin-top:var(--space-60); padding:var(--space-50); border:1px solid #ddd; border-radius:16px; background:#f4f4f4;}
.shock-detail .item {flex:1; max-width:295px; text-align:center;}
.shock-detail .item .img {aspect-ratio:1/1; border-radius:8px; overflow:hidden; background:#fff;}
.shock-detail .item .img img {width:100%; height:100%; object-fit:cover;}
.shock-detail .item p {margin-top:var(--space-30); font-size:var(--font-size-18); font-weight:400; line-height:1.55em; letter-spacing:-0.03em; color:#505050;}
.shock-detail .item.has-mark {position:relative;}
.shock-detail .item .mark {position:absolute; top:68px; right:-91px; width:134px; height:18px;}
.shock-detail .item .mark img {width:100%; height:100%;}
.shock-detail .arrow {position:absolute; left:58%; top:126px; width:134px; transform:translateX(-50%);}
.shock-detail .arrow img {width:100%;}

/* courtsol */
.usage-gall {display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-40);}
.usage-gall .item {display:flex; align-items:center; gap:var(--space-20);}
.usage-gall .icon {flex-shrink:0; display:flex; align-items:center; justify-content:center; width:150px; height:150px; border:1px solid #ddd; border-radius:8px; background:#fff;}
.usage-gall .icon img {max-width:124px; max-height:124px; object-fit:contain;}
.usage-gall .txt {font-size:var(--font-size-18); font-weight:400; line-height:1.55em; letter-spacing:-0.03em; color:#505050;}
.system-compare {display:flex; gap:var(--space-40);}
.system-card {flex:1; display:flex; flex-direction:column; align-items:center; gap:var(--space-40); padding:var(--space-50) var(--space-30); border:1px solid #ddd; border-radius:16px; background:#f4f4f4;}
.system-card.highlight {background:#f2f9fd;}
.system-card h4 {font-size:var(--font-size-24); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:#121212; text-align:center;}
.system-card.highlight h4 {color:var(--color-primary);}
.acryl-types {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-40);}
.acryl-types .item {display:flex; align-items:center; justify-content:center; gap:clamp(24px, calc(60 / var(--inner) * 100vw), 60px); padding:var(--space-40) var(--space-20); border:1px solid #ddd; border-radius:16px; background:#fff;}
.acryl-types .item .img {flex-shrink:0; width:clamp(120px, calc(180 / var(--inner) * 100vw), 180px); height:clamp(180px, calc(270 / var(--inner) * 100vw), 270px); border-radius:4px; overflow:hidden;}
.acryl-types .item .img img {width:100%; height:100%; object-fit:cover;}
.acryl-types .item .cnt {display:flex; flex-direction:column;}
.acryl-types .item .tit {margin-bottom:var(--space-15); font-size:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:var(--color-primary);}
.acryl-types .item .tit:has(+ .desc) {margin-bottom:var(--space-40);}
.acryl-types .item .opt {margin-bottom:var(--space-40); font-size:clamp(16px, calc(20 / var(--inner) * 100vw), 20px); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.acryl-types .item .desc {font-size:clamp(15px, calc(18 / var(--inner) * 100vw), 18px); font-weight:400; line-height:1.55em; letter-spacing:-0.03em; color:#505050;}

/* grass master */
.grass-system + .grass-system {margin-top:var(--space-40);}
.grass-system .diagram-cell {text-align:center; vertical-align:middle;}
.grass-system .thk {margin-top:var(--space-20); font-size:var(--font-size-16); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.chip-feature-list {display:flex; flex-direction:column; gap:var(--space-20);}
.chip-feature-list .item {display:flex; align-items:center; gap:var(--space-20); padding:var(--space-30); border-radius:8px; background:rgba(6,145,224,.05);}
.chip-feature-list .num {flex-shrink:0; width:26px; font-size:var(--font-size-20); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:var(--color-primary);}
.chip-feature-list .tit {flex-shrink:0; min-width:89px; font-size:var(--font-size-20); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.chip-feature-list .desc {flex:1; min-width:0; font-size:var(--font-size-18); font-weight:400; line-height:1.4em; letter-spacing:-0.03em; color:#505050;}
.water-compare .img {max-width:550px; border-radius:16px; overflow:hidden;}
.water-compare .img img {width:100%;}
.water-compare .feature-list {margin-top:var(--space-40);}
.grass-type-visual {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-40);}
.grass-type-visual .item .img {aspect-ratio:680/400; border-radius:16px; overflow:hidden;}
.grass-type-visual .item .img img {width:100%; height:100%; object-fit:cover;}
.grass-type-visual .item .txt {margin-top:var(--space-20); font-size:var(--font-size-18); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212; text-align:center;}
.grass-type-box {margin-top:var(--space-40); padding:var(--space-40); border-radius:16px; background:#f4f4f4;}
.grass-type-box .box-tit {margin-bottom:var(--space-30); font-size:var(--font-size-28); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.grass-type-box.st2 {display:inline-block;}
.grass-type-cards {display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-20);}
.grass-type-cards .card {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); padding:var(--space-20); border-radius:16px; background:#fff; text-align:center;}
.grass-type-cards .code {font-size:var(--font-size-18); font-weight:400; line-height:1.2em; letter-spacing:-0.03em; color:#505050;}
.grass-type-cards .chip-img {width:90%; max-width:197px; aspect-ratio:197/187;}
.grass-type-cards .chip-img img {width:100%; height:100%; object-fit:cover;}
.grass-type-cards .chip-info {display:flex; flex-direction:column; gap:var(--space-15);}
.grass-type-cards .tit {font-size:var(--font-size-22); font-weight:700; line-height:1.2em; letter-spacing:-0.03em; color:#121212;}
.grass-type-cards .desc {font-size:var(--font-size-16); font-weight:400; line-height:1.4em; letter-spacing:-0.03em; color:#505050;}
.grass-type-infill {display:flex; align-items:flex-start; gap:var(--space-30);}
.grass-type-infill .sand-card {flex-shrink:0; display:flex; flex-direction:column; align-items:center; gap:var(--space-20); padding:var(--space-20); border-radius:16px; background:#fff;}
.grass-type-infill .sand-card .chip-img {width:90%; max-width:197px; aspect-ratio:197/187;}
.grass-type-infill .sand-card .chip-img img {width:100%; height:100%; object-fit:cover;}
.grass-type-infill .sand-card .tit {font-size:var(--font-size-22); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:#121212; text-align:center;}
.grass-type-infill .infill-info {display:flex; flex-direction:column; gap:var(--space-40);}
.grass-type-infill .info-block h5 {margin-bottom:var(--space-16); font-size:var(--font-size-20); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.grass-type-infill .info-block ul {display:flex; flex-direction:column; gap:var(--space-8);}
.grass-type-infill .info-block li {font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:-0.03em; color:#505050;}

/* superlex */
.doc-lead {font-size:var(--font-size-24); font-weight:700; line-height:1.4em; letter-spacing:-0.03em; color:#121212;}
.superlex-feature {display:flex; flex-direction:column; gap:var(--space-60);}
.superlex-feature .feature-group {display:flex; flex-direction:column; gap:var(--space-40);}
.superlex-feature .chip-feature-list .tit {min-width:101px;}
.superlex-type-group {display:flex; flex-direction:column; gap:var(--space-30);}
.type-head {display:flex; flex-direction:column; gap:var(--space-20);}
.type-head.dual {flex-direction:row; flex-wrap:wrap; align-items:center; gap:var(--space-40);}
.type-head.dual .type-item {display:flex; flex-direction:column; gap:var(--space-20);}
.type-divider {flex-shrink:0; width:1px; height:30px; background:#ddd;}
.type-name {font-size:var(--font-size-24); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.type-use {display:flex; align-items:center; gap:6px; font-size:var(--font-size-18); font-weight:400; line-height:1em; letter-spacing:-0.03em; color:#505050;}
.type-use:before {content:''; flex-shrink:0; width:4px; height:4px; border-radius:50%; background:#505050;}
.superlex-type-box {display:flex; align-items:center; justify-content:center; gap:var(--space-40); padding:var(--space-40); border:1px solid #ddd; border-radius:16px; background:#fff;}
.superlex-type-box .prod-visual {flex:1 1 500px; max-width:537px;}
.superlex-type-box .prod-visual img {width:100%; height:auto; vertical-align:top;}
.superlex-type-box .layer-panel {flex:1 1 500px; max-width:500px;}
.superlex-type-box .layer-panel img {width:100%; height:auto; vertical-align:top;}

/* indoor */
.indoor-tech-group {display:flex; flex-direction:column; gap:var(--space-30);}
.indoor-tech-box {display:flex; flex-direction:column; align-items:center; gap:var(--space-40); padding:clamp(40px, calc(80 / var(--inner) * 100vw), 80px) clamp(24px, calc(50 / var(--inner) * 100vw), 50px); border-radius:16px; background:#f4f4f4;}
.indoor-tech-head {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); text-align:center;}
.indoor-tech-tit {font-size:clamp(20px, calc(28 / var(--inner) * 100vw), 28px); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212; text-align:center;}
.indoor-tech-desc {font-size:var(--font-size-16); font-weight:400; line-height:1.75em; letter-spacing:-0.03em; color:#878787; text-align:center;}
.indoor-tech-line {display:block; width:50px; height:2px; background:var(--color-primary);}
.indoor-x3lt {display:flex; align-items:stretch; justify-content:center; gap:var(--space-20); width:100%;}
.indoor-x3lt .card {display:flex; flex:1; flex-direction:column; align-items:center; gap:var(--space-30); padding:var(--space-30); border-radius:16px; min-width:0;}
.indoor-x3lt .card.st1 {background:#edf4f8;}
.indoor-x3lt .card.st2 {background:rgba(6,145,224,.05);}
.indoor-x3lt .card-lead {font-size:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); font-weight:400; line-height:1.4em; letter-spacing:-0.03em; color:#121212; text-align:center;}
.indoor-x3lt .card-lead strong {font-weight:600;}
.indoor-x3lt .card-line {display:block; width:100%; height:1px; background:#ddd;}
.indoor-x3lt .card-num {font-size:clamp(40px, calc(60 / var(--inner) * 100vw), 60px); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:var(--color-primary);}
.indoor-x3lt .card-stat {display:flex; align-items:center; gap:10px; color:var(--color-primary);}
.indoor-x3lt .stat-label {font-size:var(--font-size-18); font-weight:400; line-height:1em; letter-spacing:-0.03em;}
.indoor-x3lt .card-info {display:flex; flex-direction:column; gap:var(--space-15); width:100%;}
.indoor-x3lt .card-tit {font-size:var(--font-size-20); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.indoor-x3lt .card-desc {font-size:var(--font-size-16); font-weight:400; line-height:1.75em; letter-spacing:-0.03em; color:#505050;}
.indoor-x3lt .card-add {flex-shrink:0; display:flex; align-items:center; align-self:center; width:25px;}
.indoor-x3lt .card-add img {width:100%; height:auto;}
.indoor-wear {display:flex; align-items:stretch; justify-content:center; gap:var(--space-40); width:100%;}
.indoor-wear .wear-card {display:flex; flex:1; max-width:406px; flex-direction:column; align-items:center; gap:var(--space-30); padding:var(--space-30); border-radius:16px; background:rgba(6,145,224,.05); min-width:0;}
.indoor-wear .wear-lead {font-size:var(--font-size-24); font-weight:600; line-height:1.4em; letter-spacing:-0.03em; color:#121212; text-align:center;}
.indoor-wear .wear-lead .reg {font-weight:400;}
.indoor-wear .card-line {display:block; width:100%; height:1px; background:#ddd;}
.indoor-wear .wear-body {display:flex; flex-direction:column; gap:50px; width:100%;}
.indoor-wear .card-stat {display:flex; align-items:center; gap:10px; color:var(--color-primary);}
.indoor-wear .stat-label {font-size:var(--font-size-18); font-weight:400; line-height:1em; letter-spacing:-0.03em;}
.indoor-wear .card-num {font-size:clamp(40px, calc(60 / var(--inner) * 100vw), 60px); font-weight:700; line-height:1em; letter-spacing:-0.03em;}
.indoor-wear .card-info {display:flex; flex-direction:column; gap:var(--space-15); width:100%;}
.indoor-wear .card-tit {font-size:var(--font-size-20); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#121212;}
.indoor-wear .card-desc {font-size:var(--font-size-16); font-weight:400; line-height:1.75em; letter-spacing:-0.03em; color:#505050;}
.indoor-wear .wear-arrow {flex-shrink:0; align-self:center; width:10px; height:10px; margin:0 4px; border-top:2px solid #505050; border-right:2px solid #505050; transform:rotate(45deg);}
.indoor-wear .wear-diagram {display:flex; flex-direction:column; gap:var(--space-40); width:100%; padding:var(--space-30); border-radius:16px; background:#fff;}
.indoor-wear .diagram-tit {font-size:var(--font-size-16); font-weight:600; line-height:1.6em; letter-spacing:-0.03em; color:#121212;}
.indoor-wear .wear-desc {width:100%; font-size:var(--font-size-16); font-weight:400; line-height:1.75em; letter-spacing:-0.03em; color:#505050;}
.indoor-surface {display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-20); width:100%;}
.indoor-surface .item {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); text-align:center;}
.indoor-surface .ico {display:flex; align-items:center; justify-content:center; width:80%; max-width:120px; margin:0 auto; aspect-ratio:1/1;}
.indoor-surface .ico img {width:100%; height:100%; object-fit:contain;}
.indoor-surface .tit {font-size:var(--font-size-20); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#121212;}
.indoor-surface .desc {font-size:var(--font-size-16); font-weight:400; line-height:1.6em; letter-spacing:-0.03em; color:#505050;}
.indoor-detail-visual {margin-bottom:var(--space-40); padding:var(--space-60) var(--space-20); border:1px solid #ddd; border-radius:16px; overflow:hidden; background:#fff; text-align:center;}
.indoor-detail-list .tit {min-width:105px;}

/* project */
.project-list {display:grid; grid-template-columns:repeat(2, 1fr); border-top:2px solid #233c7d;}
.project-year {display:flex; align-items:flex-start; gap:clamp(30px, calc(60 / var(--inner) * 100vw), 60px); padding:clamp(24px, calc(50 / var(--inner) * 100vw), 50px) clamp(10px, calc(20 / var(--inner) * 100vw), 20px); border-bottom:1px solid #ddd; min-width:0;}
.project-year .year {display:flex; align-items:flex-start; gap:8px; flex-shrink:0; margin:0; font-size:clamp(28px, calc(40 / var(--inner) * 100vw), 40px); font-weight:700; line-height:1em; letter-spacing:-0.03em; color:#0691e0;}
.project-year .dot {flex-shrink:0; width:8px; height:8px; margin-top:0.15em; border-radius:50%; background:#0691e0;}
.project-year .items {display:flex; flex:1; flex-direction:column; gap:var(--space-15); min-width:0; margin:0; padding:0; list-style:none;}
.project-year .items li {display:flex; align-items:flex-start; gap:clamp(12px, calc(20 / var(--inner) * 100vw), 20px); font-size:clamp(16px, calc(20 / var(--inner) * 100vw), 20px); line-height:1.5em; letter-spacing:-0.03em; color:#505050;}
.project-year .month {flex-shrink:0; width:26px; font-weight:600;}
.project-year .text {flex:1; min-width:0; font-weight:400; word-break:keep-all;}
