@charset "utf-8";
.company-welcome-photo {position: relative;}
.company-welcome-photo .caption {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; text-align: center; font-size: clamp(25px, calc(56 / var(--inner) * 100vw), 56px); font-weight: 700; line-height: 1.2143em; letter-spacing: -0.03em; font-family: 'GmarketSans'; text-shadow: 8px 8px 16px 0 rgba(0, 0, 0, 0.25);}
.company-welcome-photo .caption .txt1 {font-size: clamp(56px, calc(80 / var(--inner) * 100vw), 80px); line-height: 1em;}
.strength-items {display: grid; grid-template-columns: repeat(2, 1fr); gap: 25px var(--space-25);}
.strength-item {display: flex; gap: var(--space-25);}
.strength-title {width: 38%; max-width: 260px; padding: var(--space-25); background: var(--primary-color); border-radius: 8px;}
.strength-item:nth-child(2) .strength-title,
.strength-item:nth-child(3) .strength-title  {background: var(--secondary-color);}
.strength-item .txt {padding: var(--space-8) 0;}
.dot-list li, .dot-tit {text-indent: -1em; padding-left: 1em;}
.dot-list li:before, .dot-tit:before {content: '•'; margin-right: 10px; color: var(--primary-color);}
h5.dot-tit:before, .dot-list.type2 li:before {color: var(--dark-color);}
.bg-title {width: fit-content; font-size: var(--font-size-18); font-weight: 700; background: var(--primary-color); color: #fff; padding: 6px 16px; border-radius:4px 4px 16px 4px;}
.deco-tit {display: flex; align-items: center; gap: 8px;}
.deco-tit:before {content: ''; display: block; width: clamp(10px, calc(16 / var(--inner) * 100vw), 16px); height: clamp(10px, calc(16 / var(--inner) * 100vw), 16px); background:var(--primary-color); border-radius: 4px 4px 8px 4px;}


.direction-map {height: clamp(270px, calc(600 / var(--inner) * 100vw), 600px); margin-bottom: var(--space-40);}
.root_daum_roughmap .wrap_map, .root_daum_roughmap{width: 100% !important; height: 100% !important;}	
.directions {display: flex; margin-top:var(--space-40);}
.directions h3 {width: 220px;}
.directions .address-info {margin-bottom:30px;}
.directions .address-info .comp {color:var(--primary-color); font-weight:600; margin-bottom:2px;}
.directions .address-info .addr {color:#242424; font-size:23px; font-weight:600; line-height:1.33em; letter-spacing:-.03em; margin-bottom:5px;}
.directions .address-info .etc {color:#454545;}
.directions .address-info .etc span {display:inline-block; margin-right:16px;}
.directions .address-info .etc span:last-child {margin-right:0;}
.directions .contact-info dl {display:flex; margin-bottom: var(--space-15);}
.directions .contact-info dt {width:100px;  color:var(--dark-color); font-size:1.125em; font-weight:500;}
.directions .contact-info dt svg {vertical-align:middle; margin:-.2em 15px 0 0;}
.directions .contact-info dt path {fill:var(--primary-color);}
.directions .contact-info dd {flex:1 1 auto; min-width:0; width:1%; color:#454545;}

@media (max-width: 1024px) {
	.directions .address-info .addr {font-size:20px;}
	.directions .contact-info dt {padding-left:20px; width:140px;}
}

@media (max-width: 640px) {
	.directions .address-info .addr {font-size:18px;}
	.directions .address-info {margin-bottom:20px;}
	.directions .contact-info dl {padding:16px 0;}
	.directions .contact-info dt {padding-left:5px; width:110px;}
	.directions .contact-info dt svg {margin-right:10px;}
}

.product-process {display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px var(--space-100); padding: clamp(20px, calc(60 / var(--inner) * 100vw), 60px); border: 1px solid #ddd; border-radius: var(--radius-16); overflow: hidden;}
.page-process .product-process {display: block; border: 0; background: url('/images/sub/bg-heat-process.jpg') no-repeat center center / cover;}
.product-process h4 {text-indent: -.5em; padding-left: .5em;}
.product-process h4:before {content:'•'; font-weight: 800; margin-right: 5px; color: var(--primary-color);}
.page-process .product-process h4:before {content: none;}
.product-process ul {display: flex; flex-direction: column; align-items: center;gap: calc(var(--space-15) * 2 + clamp(34px, calc(48 / var(--inner) * 100vw), 48px));}
.page-process .product-process ul {width: fit-content; margin: 0 auto;}
.product-process li {position: relative; display: flex; align-items: center; justify-content: center; gap: var(--space-15); padding: var(--space-15); border: 1px solid #ddd; border-radius: 8px;}
.page-process .product-process li {flex-direction: column; gap: var(--space-10); width: fit-content; background: #fff; border: 1px solid var(--primary-color);}
.product-process li:not(:last-child):after {content: ''; position: absolute; top: calc(100% + var(--space-15)); left: 50%; transform: translateX(-50%); display: block; width: clamp(34px, calc(48 / var(--inner) * 100vw), 48px); height: clamp(34px, calc(48 / var(--inner) * 100vw), 48px); background: url('/images/sub/process-arrow.png') no-repeat center center / contain;}
.product-process li:last-child {background: var(--primary-color); border-color: var(--primary-color); color: #fff;}
.chk-boxes {display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-15);}
.chk-box {display: flex; flex-direction: column; align-items: center; gap: var(--space-15); border: 1px solid #ddd; border-radius: var(--radius-16); padding: var(--space-50) 10px;}
.chk-box:before {content: ''; display: block; width: 28px; height: 24px; background: url('/images/sub/chk-box-icon.svg') no-repeat center center / contain;}
.business-gallery {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-40); padding: clamp(15px, calc(48 / var(--inner) * 100vw), 48px) clamp(15px, calc(79 / var(--inner) * 100vw), 79px); border: 1px solid #ddd; border-radius: var(--radius-16);}
.business-gallery.type2 {grid-template-columns: repeat(4, 1fr); padding: clamp(15px, calc(39 / var(--inner) * 100vw), 39px);}
.business-gallery-item {position: relative; padding-bottom: 133.3335%; border-radius: var(--radius-16); overflow: hidden;}
.business-gallery-item img, .business-gallery-item video {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}

.patent-notice {display: flex; align-items: center; justify-content: center; gap: var(--space-25); padding: var(--space-40); border-radius: var(--radius-16); background: #F2F2F2;}
.patent-list {display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(10px, calc(24 / var(--inner) * 100vw), 24px);}
.page-process .wrap {padding-left: 15px;}
.gray-box {border-radius: var(--radius-16); background: #F2F2F2; padding: var(--space-40);}
.gray-box .dot-list {padding-left: 15px;}