@charset "utf-8";
/* 
* content CSS Document
* KOWEB
*/

/* sub visual */
.subVisual{ overflow: hidden; display: flex; align-items: end; position:relative; height:9.58333333em; padding-bottom: 4%; font-size: var(--fs48); color: #fff; }
.subVisual::before{ content: ''; position: absolute; inset: 0; background: 50% / cover; }
.subVisual.about::before{ background-image:url('/images/content/visual1.jpg'); }
.subVisual.business::before{ background-image:url('/images/content/visual2.jpg'); }
.subVisual.equipment::before{ background-image:url('/images/content/visual3.jpg'); }
.subVisual.koweb_online_counsel::before{ background-image:url('/images/content/visual4.jpg'); }
.subVisual.common::before{ background-image:url('/images/content/visual4.jpg'); }
.subVisual .inr{ display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; }
.subVisual h2{ font-size: inherit; line-height: 1;}
.subVisual .subVisual_txt {display: flex; align-items: center; font-size: var(--fs30); font-weight: 800;  margin-bottom: 20rem;}
.subVisual .subVisual_txt p {color: #0062B1;  text-shadow: -1px 0 rgba(255, 255, 255, 0.6), 0 1px rgba(255, 255, 255, 0.6), 1px 0 rgba(255, 255, 255, 0.6), 0 -1px rgba(255, 255, 255, 0.6); }
.subVisual .subVisual_txt span {display: block; margin-left: 10rem; color: #00A26A; text-shadow: -1px 0 rgba(255, 255, 255, 0.6), 0 1px rgba(255, 255, 255, 0.6), 1px 0 rgba(255, 255, 255, 0.6), 0 -1px rgba(255, 255, 255, 0.6);}
.subVisual .subVisual_txt p.subVisual_cs {text-shadow: none; font-size: 20rem; font-weight: 300; color: #fff;margin-bottom: 5rem;}
.breadcrumb{ position: relative; top: 5rem; font-size: 13rem; }
.breadcrumb__ul{ display: flex; gap: 32rem; justify-content: flex-end;}
.breadcrumb__li{ position: relative; }
.breadcrumb__li:empty{ display: none; }
.breadcrumb__li + li::before{ content: ''; position: absolute; top: 7rem; left: -17rem; display: inline-block; width: 3rem; height: 3rem; background: currentColor; border-radius: 50%; }
@media(prefers-reduced-motion:no-preference){
	.subVisual::before{ animation: sub_visual_bg 1.8s both; }
	@keyframes sub_visual_bg {
		0%{ transform: scale(1.05); }
		100%{ transform: scale(1); }
	}
	.subVisual .inr > *{ opacity: 0; animation: fadeInLeft .6s .2s both; }
	.subVisual .inr > *:nth-child(2){ animation-delay: .4s; }
	@keyframes fadeInLeft {
		0%{ transform: translateX(40rem); opacity: 0; }
		100%{ transform: translateX(0); opacity: 1; }
	}
}
@media(max-width:768px){
	.lnb__inr {height: 55rem;}
	.lnb__summary::after {width: 11rem; height: 5rem;}
	.subVisual .inr {padding-bottom: 20rem;}
	.subVisual .subVisual_txt {margin-bottom: 10rem;}
	.breadcrumb {display: none;}
	.subVisual .subVisual_txt p.subVisual_cs {font-size: 15rem;}
}
/* lnb */
.lnb{ --border: #e1e1e1; position:relative; border-bottom: 1px solid var(--border); font-weight: 300; z-index: 9; }
.lnb__inr{ position: relative; display: grid; grid-template-columns: 64rem 1fr 1fr; height: 65rem; }
.lnb__inr > *{ height: inherit; border-right: 1px solid var(--border); }
.lnbHome{ display: flex; align-items: center; justify-content: center; border-left: 1px solid var(--border); }
.lnbHome__svg{ height: 15rem; fill: var(--gray); }
.gnb2:not(:has(.sub_menu)) .lnb__summary:not(:has(+ *))::after{ display: none; }
.lnb__summary{ display: flex; align-items: center; justify-content: space-between; height: 100%; padding: 2rem 25rem 0 25rem; box-sizing: border-box; font-size: 15rem; font-weight: 300; color: var(--gray); }
.lnb__summary[data-menu-snb="2"]{ cursor: pointer; }
.lnb__summary::after{ content: ''; position: relative; display: inline-block; background: #999; }
.lnb__summary::after{ top: -1rem; left: 2rem; width: 12rem; height: 6rem; clip-path: polygon(0 0, 100% 0, 50% 100%); }
.lnb__summary:not(:has(+ *))::after{ top: -1rem; left: 1rem; width: 10rem; height: 7rem; clip-path: polygon(0 0, 100% 0, 100% 2rem, 0 2rem, 0 5rem, 100% 5rem, 100% 100%, 0 100%); }
.lnb__gnb[open] .lnb__summary::after{ transform: rotate(-180deg); }
.lnb__gnb .sub_menu{ background: #fff; box-shadow: 0 4rem 4rem #0003; }
.lnb__gnb .sub_menu a{ display: block; padding: 10rem 20rem; }
@media(prefers-reduced-motion:no-preference){
	.lnb__gnb{ clip-path: inset(0 -10rem); transition: 0s linear; }
	.lnb__gnb[open]{ clip-path: inset(0 -10rem -500rem); transition-duration: .4s; }
	.lnb__gnb[open] .lnb__summary::after{ transition: .4s; }
}
@media(min-width:768px){
	.lnb__inr{ grid-template-columns: 64rem 236rem 236rem; }
}

/* common content */
#content{ min-height:300px; padding: clamp(90rem, calc( 140 / var(--inner) * 100vw ), 140rem) 0; }
.sub_title{ margin-bottom: 3.75em; text-align:center; }
.sub_title h2{ font-size:var(--fs40); }
.sub_title h2:has(+ p){ margin-bottom: .475em }
.common__p{ font-size: 15rem; font-weight: 500; color: #b5b5b5; }
.common__bullet{ position: relative; }
.common__bullet::before{ content: ''; position: absolute; top: 1.2ch; left: 0.4ch; display: inline-block; width: 3rem; height: 3rem; background: #b5b5b5; }

/* 회사소개 - 대표인사말 */
.speech{ contain: layout; position: relative; }
.speech::before{ content: ''; position: absolute; right: 0; bottom: 0; transform: translate(12%, 35.5%); display: inline-block; aspect-ratio: 483/221; width: min(483rem, 66%); background: url('/images/common/logo_black.svg') no-repeat 50% / contain; opacity: .03; }
.speech__inr{ display: grid; grid-template-columns: [left] minmax(4vw, auto) [inner_start] clamp(1px, 46%, 750px) [center] clamp(1px, 46%, 750px) [inner_end] minmax(4vw, auto) [right]; }
.speech__img{ background: url('/images/content/speech.jpg') no-repeat 50% / cover; border-radius: 0 15rem 15rem 0; }
.speech__txt{ padding: 43rem 0 45rem; }
.speech__h2{ font-size: var(--fs35); line-height: 1.5; }
.speech__h2 img {height: 42rem; max-width: 100%;}
.speech .common_p{ margin-top: 16rem; }
.speech__p{ font-size: 17rem; font-weight: 300; line-height: 1.76470588; }
.common_p + .speech__p{ margin-top: 40rem; }
.speech__p + p{ margin-top: 21rem; }
.speech__ceo{ margin-top: 27rem; display: flex; align-items: baseline; gap: 17rem; }
.speech__ceo::before{ content: ''; display: inline-block; width: 1rem; height: 10rem; background: #b2b2b2; }
.speech__company{ order: -1; }
.speech__ceo b{ font-weight: 500; }
.speech__name{ position: relative; top: 2rem; margin-left: 10rem; font-size: 30rem; letter-spacing: .03em; }
@media(min-width:1280px){
	.speech__txt{ margin-left: -17rem; }
	.speech__img{ grid-column: left / center; width: 44.79166667vw; }
	.speech__txt{ grid-column: center / inner_end; }
}
@media(max-width:1279px){
	.speech__img{ grid-column: left / inner_end; height: 300rem; }
	.speech__txt{ grid-column: inner_start / inner_end; }
}
@media(max-width:767px){
	.speech__txt br{ display: none; }
}

/* 회사소개 - 연혁 */
.historyBanner{ display: grid; place-content: center; gap: 14rem; height: 300rem; padding-bottom: 0.5%; background: var(--black) no-repeat 50% / cover; text-align: center; color: #fff; }
.historyBanner.ban1{ background-image: url('/images/content/history1.jpg'); }
.historyBanner__h3{ font-size: var(--fs40); font-weight: 700; }
.historyBanner__p{ font-size: 18rem; font-weight: 500; }
.history__ul{ position: relative; padding: 84rem 0 0; }
.history__ul::before{ content: ''; position: absolute; inset: 0 auto calc( clamp(90rem, calc( 140 / var(--inner) * 100vw ), 140rem) * -1) 26%; width: 1px; background: #ddd; }
.history__li{ position: relative; display: grid; grid-template-columns: auto 1fr; gap: 14.8%; }
.history__li::before{ content: ''; position: absolute; inset: calc( var(--fs45) * 0.62222222 ) auto auto calc(26% - 5rem); display: inline-block; width: 11rem; height: 11rem; background: #fff; border: 1px solid var(--black); border-radius: 50%; }
.history__li + li{ margin-top: 78rem; }
.history__year{ text-align: right; font-size: var(--fs45); font-weight: 700; color: var(--primary); }
.history__right{ padding-top: calc( var(--fs45) * 0.51111111 ); }
.history__event{ display: grid; grid-template-columns: auto 1fr; gap: 2.6ch; font-size: 17rem; }
.history__month{ font-weight: 600; }
.history__event + .history__event{ margin-top: 15rem; }
@media(min-width:768px){
	.history__ul::before{ left: 45%; }
	.history__li{ grid-template-columns: 45fr 55fr; gap: 14.8%; }
	.history__li::before{ left: calc(45% - 5rem); }
	.history__year{ padding-right: 7.2%; }
}

/* 회사소개 - 인허가사항 */
.certificate__ul{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 43rem clamp(20rem, calc( 34 / var(--inner) * 100vw ), 34rem); text-align: center; font-size: 17rem; font-weight: 500; }
.certificate__bg{ display: grid; align-items: center; justify-content: center; aspect-ratio: 50/65; padding: 10rem; background: #f3f3f3; }
.certificate__img{ aspect-ratio: 176/235; max-height: 235rem; box-shadow: 0rem 2rem 20rem rgba(0, 0, 0, 0.05); }
.certificate__figc{ margin-top: 26rem; }
@media(min-width:768px){
	.certificate__ul{ grid-template-columns: repeat(3, 1fr); }
	.certificate__bg{ aspect-ratio: 1; }
}
@media(min-width:1280px){
	.certificate__ul{ grid-template-columns: repeat(4, 1fr); }
}

/* 회사소개 - 오시는 길 */
#wrap .location .root_daum_roughmap{ width: 100%; border: 1px solid #ddd; }
.root_daum_roughmap svg{ pointer-events: none; }
.location .map_border,
.location .wrap_controllers{ display: none }
.locationInfo{ position: relative; margin: -44rem auto 0; display: flex; flex-wrap: wrap; gap: 1.5ch 68rem; width: 83.33333333%; padding: 30.5rem 15rem; background: #232323; box-shadow: 0px 2rem 10rem rgba(0, 0, 0, 0.1); font-size: 17rem; color: #fff; z-index: 1; }
.locationInfo__b{ margin-right: 1ch; text-transform: uppercase; font-weight: 500; }
.locationPublic{ margin-top: 73rem; font-size: 17rem; }
.locationPublic__li{ --margin: clamp(40rem, calc( 55 / var(--inner) * 100vw ), 55rem); display: grid; gap: 1ch 0; }
.locationPublic__li + li{ margin-top: var(--margin); border-top: 1px dashed #e1e1e1; padding-top: var(--margin); }
.locationPublic__h3{ font-size: var(--fs24); font-weight: 700; }
.locationPublic__h3 + *{ padding-top: 2rem; }
.locationPublic__num{ position: relative; top: -1px; left: -1px; margin-right: 5rem; display: inline-flex; align-items: center; justify-content: center; width: 20rem; height: 20rem; background: #20bd45; border-radius: 50%; font-size: 13rem; line-height: 1; color: #fff; }
.locationPublic .common__bullet{ padding-left: 16rem; }
.locationPublic .common__bullet + li{ margin-top: 11rem; }
.locationPublic__kind{ display: flex; flex-wrap: wrap; gap: .5ch 3.5ch; }
.locationPublic__kind b{ font-weight: 500; }
@media(min-width:768px){
	#wrap .location .root_daum_roughmap,
	#wrap .location .root_daum_roughmap .wrap_map{ height: 549rem; }
	.locationInfo{ justify-content: center; }
	.locationPublic__li{ grid-template-columns: minmax(5.5ch, 24.06666667%) 1fr; }
}
@media(max-width:767px){
	.root_daum_roughmap{ aspect-ratio: 1/1; }
	.location .root_daum_roughmap .wrap_map{ height: 100%; }
}

/* 사업분야 - 대기자가측정, 보유 장비 - 측정장비, 분석장비 */
.biz__banner{ height: 320rem; background: no-repeat 50% / cover; }
.biz__banner.ban1{ background-image: url('/images/content/biz1.jpg'); }
.biz__banner.ban2{ background-image: url('/images/content/biz2.jpg'); }
.biz__banner.ban3{ background-image: url('/images/content/biz3.jpg'); }
.biz__ul{ margin-top: 73rem; }
.biz__li{ display: grid; gap: 20rem 0; }
.biz__li + li{ margin-top: 78rem; }
.biz__h3{ font-size: var(--fs30); font-weight: 700; line-height: 1.26666667; }
.biz__h3 small{ margin-top: clamp(10rem, calc( 17 / var(--inner) * 100vw ), 17rem); display: block; font-size: 17rem; font-weight: 400; }
.biz .common__bullet{ margin-top: 3rem; padding-left: 12rem; font-size: 17rem; }
.biz .common__bullet + li{ margin-top: 14rem; }
.bizMetric{ counter-set: number; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; border: 1px solid; background: #e5e5e5; border-color: currentColor #e5e5e5 #e5e5e5; font-size: 15rem; }
.bizMetric__li{ display: flex; align-items: baseline; gap: 9rem; padding: 17rem 19rem; background: #fff; }
.bizMetric__li:not([aria-hidden="true"])::before{ counter-increment: number; content: counter(number); display: inline-flex; align-items: center; justify-content: center; width: 20rem; height: 20rem; background: var(--black); border-radius: 50%; font: 11rem / 1 'Poppins', 'Pretendard', 'Malgun Gothic', 'Dotum', 'Gulim', Sans-serif; color: #fff; }
.biz__table{ border-top: 1px solid var(--black); text-align: center; font-size: 15rem; line-height: 1.33333333; }
.biz__table.table1 col{ width: 17.6754386%; }
.biz__table.table1 col:first-child{ width: 15.78947368%; }
.biz__table.table1 col:last-child{ width: 13.50877193%; }
.biz__table.table2 col{ width: 27.19298246%; }
.biz__table.table2 col:first-child{ width: 7.89473684%; }
.biz__table.table2 col:nth-child(2){ width: 37.71929825%; }
.biz__table :is(th, td) img {width: 100%; max-width: 100%;}
.biz__table :is(th, td){ padding: 18rem 17rem 16rem; border: 1rem solid #e5e5e5; }
.biz__table :is(th, td):first-child{ border-left: 0; }
.biz__table :is(th, td):last-child{ border-right: 0; }
.biz__table th{ background: #f8f8f8; border-style: dashed; font-weight: 400; }
@media(min-width:768px){
	.biz__li{ grid-template-columns: minmax(18%, 5ch) 1fr; }
	.bizMetric{ grid-template-columns: repeat(3, 1fr); }
}
@media(min-width:1280px){
	.bizMetric{ margin-top: 6rem; }
	.bizMetric{ grid-template-columns: repeat(4, 1fr); }
	.biz .wrap_table{ margin-top: 6rem; }
}
@media(max-width:1279px){
	.bizMetric__li[aria-hidden="true"]{ display: none; }
}
@media(max-width:767px){
	.bizMetric__li[aria-hidden="true"]{ display: none; }
	.biz__table :is(th, td){ padding: 10rem; }
}