@charset "utf-8";

/* font */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");

/* reset */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	font-size: 0.625em;
}

/* 10px */
body,
h1,
h2,
h3,
h4,
h5,
h6,
button {
	font-family: "Pretendard", sans-serif;
	line-height: 1;
}

ul,
ol,
li {
	list-style: none;
}

a {
	text-decoration: none;
}

img,
fieldset {
	border: none;
	vertical-align: middle;
}

strong,
em,
b,
i,
address {
	font-weight: normal;
	font-style: normal;
}

table {
	border-collapse: collapse;
}

button {
	border: none;
	background-color: transparent;
	cursor: pointer;
}

p {
	word-break: keep-all;
}

/* common */
.blind {
	position: absolute;
	left: -9999px;
}

.ir_pm {
	text-indent: -9999px;
	overflow: hidden;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

/* animation */
@keyframes top {
	from {
		transform: translateY(200px);
		opacity: 0;
	}

	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes right {
	from {
		transform: translateX(-100%);
	}
}

@keyframes left {
	from {
		transform: translateX(100%);
	}
}

/* layout */
#wrap {}

section>div {
	width: 88.888%;
	margin: 0 auto;
}

.btn1 {
	width: 90px;
	height: 37px;
	border: 1px solid #fff;
	border-radius: 37px;
	background-color: transparent;
	text-align: center;
	font-size: 14px;
	line-height: 35px;
	display: inline-block;
	color: #fff;
	transition: all .3s;
}

.btn1:hover:after {
	transition: all 0s .2s;
}

.btn1 span svg {
	width: 11px;
	height: 8px;
	display: inline-block;
	margin-left: 8px;
	vertical-align: 2px;
	color: #fff;
	transition: all .3s;
}

.btn1:hover {
	background-color: #fff;
	color: #000;
}

.btn1:hover span svg {
	color: #000;
}

/* header */
header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 60px;
	background-color: #fff;
	z-index: 100;
}

.header_inner {
	width: 88.888%;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}

.logo {
	position: absolute;
	left: 0;
	top: 24px;
}

.logo a {
	display: block;
	width: 76px;
	height: 13px;
	background: url(/img/logo_header.png) no-repeat center/contain;
}

.btn_nav {
	position: absolute;
	right: 0;
	top: 19px;
	width: 22px;
	height: 22px;
}

.btn_nav span {
	display: block;
	width: 19px;
	height: 2px;
	margin-left: auto;
	background-color: #000;
	border-radius: 1px;
}

.btn_nav span:nth-child(2) {
	width: 13px;
	margin: 6px 0;
	margin-left: auto;
}

nav {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #f9f9f9;
	padding-top: 62px;
}

nav.on {
	display: block;
}

nav .gnb {
	width: 100%;
	margin: 0 auto;
	border-top: 1px solid #e8e8e8;
}

nav .gnb>li {}

nav .gnb>li>a {
	font-size: 16px;
	line-height: 64px;
	color: #111;
	font-weight: 500;
	padding: 0 5.555%;
	border-bottom: 1px solid #e8e8e8;
	width: 100%;
	display: block;
	position: relative;
}

nav .gnb>li>a:after {
	content: "";
	width: 13px;
	height: 13px;
	background: url(/img/icon_nav_arrow.png) no-repeat center/contain;
	position: absolute;
	right: 5.555%;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
}

nav .gnb>li>a.on:after {
	transform: translateY(-50%) rotate(0);
}

nav .gnb .sub {
	background-color: #fff;
	border-bottom: 1px solid #e8e8e8;
	padding: 24px 5.555%;
	display: none;
}

nav .gnb .sub li {
	margin-bottom: 22px;
}

nav .gnb .sub li:last-child {
	margin-bottom: 0;
}

nav .gnb .sub li a {
	font-size: 15px;
	color: #333;
	font-weight: 500;
}

nav .gnb .sub li a:hover {
	color: #0c1994;
	font-weight: 700;
}

.sitemap {
	display: none;
}

#sitemap_wrap {
	display: none;
}

html.on,
body.on {
	overflow: visible;
}

/* visual */
main {}

#visual {
	margin-top: 60px;
}

#visual .con {
	width: 100%;
}

.visual_slider {}

.visual_slider .swiper-slide {
	width: 88.888%;
	height: 520px;
	margin: 0 5.556%;
	padding-top: 50px;
	background: url(/img/bg_visual1.png) no-repeat 85% center/cover;
	border-radius: 20px;
}

.visual_slider .swiper-slide.v2 {
	background-image: url(/img/bg_visual2.png);
	background-position: 60% center;
}

.visual_slider .swiper-slide.v3 {
	background-image: url(/img/bg_visual3.png);
	background-position: 70% center;
}

.visual_slider .visual_text {
	width: 87.5%;
	margin: 0 auto;
	color: #fff;
}

.visual_slider .visual_text h2 {
	font-size: 30px;
	line-height: 38px;
	margin-bottom: 16px;
}

.visual_slider .visual_text p {
	font-size: 15px;
	line-height: 24px;
}

#visual .visual_pagination {
	width: 250px;
	bottom: 31px;
	display: flex;
	justify-content: space-between;
	left: 50%;
	transform: translateX(-50%);
}

.visual_pagination .swiper-pagination-bullet {
	width: 80px;
	height: 2px;
	background-color: rgba(217, 217, 217, .3);
	opacity: 1;
	margin: 0;
	border-radius: 2px;
}

.visual_pagination .swiper-pagination-bullet:after {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	background-color: #d9d9d9;
}

.visual_pagination .swiper-pagination-bullet-active:after {
	width: 100%;
	transition: all 4s linear;
}

.visual_slider .visual_text h2,
.visual_slider .visual_text p {
	opacity: 0;
}

.visual_slider .swiper-slide-active .visual_text h2 {
	animation: top 1s;
	opacity: 1;
}

.visual_slider .swiper-slide-active .visual_text p {
	animation: top 1s .5s backwards;
	opacity: 1;
}

/* quality */
#quality {
	position: relative;
	height: 250vh;
}

#quality .quality_pin {
	position: sticky;
	top: 0;
	height: 100vh;
	min-height: 560px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.quality_text {
	text-align: center;
}

.quality_text div {}

.quality_text .line {
	height: 50px;
	line-height: 50px;
}

.quality_text div span {
	display: block;
	font-size: 34px;
	font-weight: bold;
	letter-spacing: -2%;
	margin-bottom: 8px;
	clip-path: inset(0 100% 0 0);
	will-change: clip-path;
}

.quality_text div span b {
	display: inline-block;
	width: 0;
	height: 50px;
	border-radius: 4px;
	background: url(/img/bg_quality1.png) no-repeat center/cover;
	vertical-align: middle;
	--box-w: 90px;
	will-change: width;
}

.quality_text .line:nth-of-type(1) b {
	margin-left: 8px;
}

.quality_text .line:nth-of-type(3) b {
	margin-right: 8px;
	background-image: url(/img/bg_quality2.png);
}

.quality_text p {
	font-size: 16px;
	line-height: 24px;
	color: #444;
	margin-top: 36px;
	opacity: 0;
	will-change: opacity;
}

/* product */
#product {
	background-color: #111;
	padding: 24px 0 99px;
	position: relative;
}

#product .bg {
	border-radius: 12px;
	background: url(/img/bg_product.png) no-repeat #111 center top/auto 720px;
	position: sticky;
	left: 4.444%;
	top: 84px;
	width: 91.111%;
	height: 720px;
}

#product .con {
	padding-top: 60px;
	position: relative;
	margin-top: -550px;
}

.pro_title {
	margin: 0 6.097%;
	color: #fff;
	margin-bottom: 80px;
	position: relative;
	z-index: 5;
}

.pro_title h2 {
	font-size: 34px;
	letter-spacing: -1%;
	margin-bottom: 12px;
}

.pro_title p {
	font-size: 14px;
	line-height: 20px;
	margin-bottom: 30px;
}

.pro_title a {}

#product .bg,
#product .con {
	opacity: 0;
}

#product.on .bg,
#product.on .con {
	opacity: 1;
	animation: top .4s;
}

.pro_list {
	width: 87.804%;
	margin: 0 auto;
	position: relative;
}

.pro_list .pro_card {
	width: 82.142%;
	margin-bottom: 60px;
	margin-left: auto;
	color: #fff;
}

.pro_list .pro_card:nth-child(2n) {
	width: 92.857%;
	margin-left: 0;
}

.pro_list .pro_card:last-child {
	margin-bottom: 0;
}

.pro_list .pro_card.card1 {}

.pro_list .pro_card span {
	display: block;
	width: 100%;
	height: 260px;
	border-radius: 10px;
	margin-bottom: 18px;
	overflow: hidden;
}

.pro_list .pro_card i {
	display: block;
	width: 100%;
	height: 100%;
	background: url(/img/bg_pro1.png) no-repeat center/cover;
	transition: all .5s;
}

.pro_list .pro_card.card2 i {
	background-image: url(/img/bg_pro2.png);
}

.pro_list .pro_card.card3 i {
	background-image: url(/img/bg_pro3.png);
}

.pro_list .pro_card.card4 i {
	background-image: url(/img/bg_pro4.png);
}

.pro_list .pro_card span i:hover {
	transform: scale(1.05);
}

.pro_list .pro_card:nth-child(2n) span {
	height: 176px;
}

.pro_list .pro_card div {}

.pro_list .pro_card div h3 {
	font-size: 18px;
	letter-spacing: -1%;
	margin-bottom: 6px;
}

.pro_list .pro_card div p {
	font-size: 14px;
	line-height: 20px;
	letter-spacing: -1%;
}

/* cases */
#cases {
	background-color: #111;
}

#cases .con {
	padding: 80px 6.097% 139px;
	border-radius: 12px;
	background-color: #fff;
	position: relative;
	opacity: 0;
	width: 91.111%;
	opacity: 0;
}

#cases.on .con {
	opacity: 1;
	animation: top .4s;
}

.cases_title {
	margin-bottom: 40px;
}

.cases_title>span {
	display: block;
	font-size: 14px;
	color: #0c1994;
	margin-bottom: 12px;
	letter-spacing: -1%;
	font-weight: 800;
}

.cases_title h2 {
	font-size: 30px;
	line-height: 38px;
	letter-spacing: -2%;
}

.cases_title a {
	border: 1px solid #000;
	position: absolute;
	bottom: 60px;
	color: #000;
}

.cases_title a svg {
	color: #000;
}

.cases_title a:after {
	background-image: url(/img/icon_btn.png);
}

/* .cases_slider {padding-bottom:100px;} */
.cases_slider>div {
	display: block;
}

.cases_slider .swiper-slide {
	margin-bottom: 32px;
}

.cases_slider .swiper-slide:nth-child(3) {
	margin-bottom: 0;
}

.cases_slider .swiper-slide:nth-child(3)~div {
	display: none;
}

.cases_slider .swiper-slide:last-child {
	margin-bottom: 0;
}

.cases_slider .swiper-slide.card1 {}

.cases_slider .swiper-slide.card1 a {}

.cases_slider .swiper-slide a span {
	display: block;
	height: 180px;
	border-radius: 8px;
	background: url(/img/bg_visual1.png) no-repeat center/cover;
	margin-bottom: 24px;
}

/* 업데이트 1차 */
.cases_slider .swiper-slide a .product_img {
	height: 180px;
	border-radius: 8px;
	margin-bottom: 24px;
	overflow: hidden;
	position: relative;
}

.cases_slider .swiper-slide a .product_img img {
	height: 100%;
	width: 100%;
	position: absolute;
	object-fit: cover;
}

.cases_slider .swiper-slide.card2 a span {
	background-image: url(/img/bg_cases2.png);
}

.cases_slider .swiper-slide.card3 a span {
	background-image: url(/img/bg_cases3.png);
}

.cases_slider .swiper-slide.card4 a span {
	background-image: url(/img/bg_cases1.png);
}

.cases_slider .swiper-slide.card5 a span {
	background-image: url(/img/bg_cases2.png);
}

.cases_slider .swiper-slide a h3 {
	font-size: 18px;
	line-height: 26px;
	letter-spacing: -1%;
	margin-bottom: 10px;
	color: #000;
}

.cases_slider .swiper-slide a p {
	font-size: 14px;
	line-height: 22px;
	letter-spacing: -2%;
	margin-bottom: 14px;
	color: #666;
}

.cases_slider .swiper-slide a b {
	font-size: 15px;
	letter-spacing: -1%;
	color: #999;
}

.cases_scrollbar {
	background-color: #d9d9d9;
	width: 100%;
}

.cases_scrollbar .swiper-scrollbar-drag {
	background-color: #000;
}

/* footer */
footer {
	padding: 60px 0 25px;
	background-color: #111;
}

footer .con {
	width: 88.888%;
	margin: 0 auto;
	color: #fff;
}

.f_top {
	margin-bottom: 87px;
	position: relative;
}

.f_top div {}

.f_top div h2 {
	font-size: 30px;
	margin-bottom: 14px;
}

.f_top div p {
	font-size: 15px;
	line-height: 26px;
	letter-spacing: -2%;
	color: #aeaeae;
	width: 70%;
}

.f_top a {
	display: block;
	width: 116px;
	height: 116px;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 0;
}

.circle-badge {
	--size: 116px;
	width: var(--size);
	height: var(--size);
}

.circle-badge svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.circle-badge .rotate-text {
	font-size: 8.5px;
	fill: rgba(255, 255, 255, .6);
}

.circle-badge .img-placeholder {
	fill: none;
	stroke: rgba(255, 255, 255, 0.5);
	stroke-dasharray: 2 2;
}

.circle-badge .img-placeholder-label {
	font-size: 5px;
	fill: rgba(255, 255, 255, 0.6);
	text-anchor: middle;
	dominant-baseline: middle;
}

.f_bottom {}

.f_bottom .left {
	margin-bottom: 50px;
}

.f_bottom .left strong {
	display: block;
	width: 92px;
	height: 16px;
	background: url(/img/logo_footer.png) no-repeat center/contain;
	margin-bottom: 36px;
}

.f_bottom .left .f_info {}

.f_bottom .left .f_info span {
	display: flex;
	margin-bottom: 6px;
	font-size: 15px;
	line-height: 24px;
	color: #e0e0e0
}

.f_bottom .left .f_info span b {
	width: 33.75%;
	color: #888;
}

.f_bottom .left .f_info span a {
	color: #e0e0e0;
}

.f_bottom .right {}

.f_bottom .right .link {
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
}

.f_bottom .right .link a {
	font-size: 14px;
	color: #c9c9c9;
}

.f_bottom .right .sns {
	display: block;
	text-align: center;
	margin-bottom: 30px;
}

.f_bottom .right .sns a {
	display: inline-block;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: url(/img/sns_blog.png) no-repeat #292929 center/16px;
	text-indent: -9999px;
	overflow: hidden;
}

.f_bottom .right .sns a:last-child {
	background-image: url(/img/sns_instagram.png);
	margin-left: 12px;
}

.f_bottom>p {
	font-size: 13px;
	line-height: 22px;
	text-align: enter;
	padding: 16px 0;
	text-align: center;
	border-top: 1px solid #262626;
}



/* sub */
.con_title_visual {
	margin-top: 120px;
}

.con_title_visual .con {
	width: 88.888%;
	margin: 0 auto;
}

.con_title_visual .con_h {
	display: none;
}

.con_title_visual .con_visual {}

.con_title_visual h2 {
	margin-bottom: 60px;
	font-size: 40px;
	letter-spacing: -2%;
}


/* about_kateco */
.con_title_visual .con_visual div {
	width: 88.888%;
	height: 228px;
	border-radius: 16px;
	background: url(/img/bg_sub_about_kateco.png) no-repeat center/cover;
	margin: 0 auto 40px;
}

#about_con {
	margin-bottom: 32px;
}

#about_con .left {}

#about_con .left strong {
	font-size: 26px;
	line-height: 38px;
	letter-spacing: -3%;
	font-weight: bold;
}

#about_con .left strong br {
	display: none;
}

#about_con .left strong br:nth-of-type(2) {
	display: block;
}

#about_con .left strong b {
	color: #0c1994;
	font-weight: bold;
}

#about_con .right {
	margin-top: 32px;
	margin-bottom: 80px;
}

#about_con .right p {
	font-size: 14px;
	line-height: 25px;
	font-weight: 600;
	letter-spacing: -1%;
	color: #666;
	margin-bottom: 24px;
}

#about_con .right p strong {
	color: #000;
	font-weight: 600;
}

#about_con .right p:last-child {
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 0;
	color: #000;
}

#about_con .right p em {
	display: inline-block;
	width: 80px;
	height: 28px;
	background: url(/img/img_sign.png) no-repeat center/contain;
	margin-left: 14px;
	text-indent: -9999px;
	overflow: hidden;
	vertical-align: -8px;
}

#value {
	background-color: #f5f5f5;
	padding: 80px 0 80px;
}

#value .con {}

#value .con_title {
	margin-bottom: 40px;
}

#value .con_title h2 {
	font-size: 32px;
	letter-spacing: -1%;
	margin-bottom: 16px;
}

#value .con_title p {
	font-size: 15px;
	line-height: 24px;
	letter-spacing: -2%;
}

.value_list {}

.value_list .value_card {
	height: 175px;
	border-radius: 12px;
	background-color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
}

.value_list .value_card:last-child {
	margin-bottom: 0;
}

.value_list .value_card span {
	display: block;
	width: 28.125%;
	height: 90px;
	background: url(/img/icon_about_value1.png) no-repeat center/contain;
}

.value_list .value_card:nth-child(2) span {
	background-image: url(/img/icon_about_value2.png);
}

.value_list .value_card:nth-child(3) span {
	background-image: url(/img/icon_about_value3.png);
}

.value_list .value_card .text {
	margin-left: 24px;
	width: 50%;
}

.value_list .value_card .text h3 {
	font-size: 22px;
	letter-spacing: -1%;
	font-weight: 800;
}

.value_list .value_card .text h3:after {
	content: "";
	display: block;
	width: 1px;
	height: 16px;
	background-color: #e4e7ed;
	margin: 10px auto;
}

.value_list .value_card .text strong {
	font-size: 16px;
	line-height: 26px;
	letter-spacing: -2%;
	font-weight: 600;
}

.value_list .value_card .text p {
	font-size: 15px;
	line-height: 26px;
	letter-spacing: -2%;
	color: #777;
	font-weight: 500;
}

/* about_history */
#history_wrap {
	padding-bottom: 80px;
}

#history_wrap .con {}

.history_tab_sticky {
	position: sticky;
	top: 60px;
	z-index: 50;
	background-color: #fff;
	padding: 16px 0;
	margin-bottom: 49px;
}

.history_tab {
	text-align: center;
}

.history_tab .swiper-wrapper {
	justify-content: flex-start;
	align-items: center;
}

.history_tab a {
	display: inline-block;
	width: 156px;
	height: 48px;
	line-height: 48px;
	border-radius: 48px;
	color: #fff;
	font-size: 15px;
	margin-right: 0;
	font-weight: 600;
	color: #888;
	letter-spacing: -3%;
	background-color: #f8f8f8;
}

.history_tab a {
	display: inline-block;
	width: 50%;
	height: 48px;
	line-height: 48px;
	border-radius: 48px;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	color: #888;
	letter-spacing: -3%;
	background-color: #f8f8f8;
}

.history_tab a.on {
	background-color: #0c1994;
	color: #fff;
}

.history_con {}

.history_con .left {
	margin-bottom: 48px;
}

.history_con .left h3 {
	font-size: 16px;
	color: #0c1994;
	font-weight: 800;
	margin-bottom: 10px;
	letter-spacing: -3%;
}

.history_con .left p {
	font-size: 28px;
	font-weight: bold;
	line-height: -2%;
	line-height: 36px;
	color: #333;
}

.history_con .left strong {
	font-weight: bold;
	color: #0c1994;
}

.history_con .left span {
	display: block;
	height: 220px;
	border-radius: 0 50px;
	background: url(/img/bg_sub_history_left1.png) no-repeat center/cover;
	margin-top: 30px;
}

.history_con .left .history_img {
	display: block;
	width: auto;
	height: 220px;
	padding: 0;
	margin-top: 28;
	border-radius: 0 50px;
	overflow: hidden;
	position: relative;
}

.history_con .left .history_img img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	margin: 0;
	padding: 0;
	border-radius: 0 50px;
	object-fit: cover;
	object-position: center;
	position: absolute;
}

.history_con .left:nth-of-type(2) span {
	background-image: url(/img/bg_sub_history_left2.png);
}

.history_con .left:nth-of-type(3) span {
	background-image: url(/img/bg_sub_history_left3.png);
}

.history_con .right {
	position: relative;
	padding-left: 9%;
	margin-bottom: 100px;
}

.history_con .right:last-child {
	margin-bottom: 0;
}

.history_con .right>div {
	margin-bottom: 32px;
}

.history_con .right>div:last-child {
	margin-bottom: 0;
}

.history_con .right h4 {
	font-size: 30px;
	letter-spacing: -2%;
	color: #0c1994;
	margin-bottom: 16px;
}

.history_con .right h4::before {
	content: "";
	background: url(/img/icon_history_circle_off.png) no-repeat center/10px;
	width: 24px;
	height: 24px;
	display: block;
	position: absolute;
	left: 0;
	margin-left: 0;
	margin-top: 2px;
}

.history_con .right div:nth-child(2) h4::before {
	background-image: url(/img/icon_history_circle.png);
	background-size: contain;
}

.history_con .right ul {}

.history_con .right ul li {
	margin-bottom: 8px;
	font-size: 15px;
	line-height: 28px;
	color: #111;
	display: flex;
}

.history_con .right ul li:last-child {
	margin-bottom: 0;
}

.history_con .right ul li span {
	letter-spacing: -1%;
	font-weight: 800;
	display: inline-block;
	width: 30px;
}

.history_con .right ul li p {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 30px);
}

.history_con .right>i {
	position: absolute;
	left: 11px;
	top: 10px;
	width: 2px;
	height: 100%;
	background-color: #ececec;
}

.history_con .right>i span {
	position: absolute;
	width: 2px;
	top: 0;
	height: 105px;
	background-color: #0c1994;
}


/* about_contect */
#contect_wrap {
	padding-bottom: 80px;
}

#contect_wrap .con_title {}

#contect_wrap .con_title h3 {
	font-size: 14px;
	font-weight: 800;
	letter-spacing: -3%;
	margin-bottom: 12px;
}

#contect_wrap .con_title strong {
	font-size: 30px;
	font-weight: bold;
	line-height: 40px;
	letter-spacing: -2%;
	color: #333;
}

#contect_wrap .con_title strong b {
	font-weight: bold;
	color: #0c1994;
}

#contect_wrap .con_title p {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -2%;
	line-height: 25px;
	color: #555;
	margin: 24px 0 40px;
}

.contect_con {}

.contect_con .address {
	text-align: center;
	background-color: #f9f9f9;
	padding: 50px 0;
	margin-bottom: 24px;
}

.contect_con .address div {}

.contect_con .address div:after {
	content: "";
	width: 56.25%;
	height: 1px;
	display: block;
	background-color: #6d6d6d;
	margin: 44px auto;
}

.contect_con .address div:last-child:after {
	content: none;
}

.contect_con .address div h4 {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: -1%;
	line-height: 24px;
	color: #111;
	margin-bottom: 22px;
}

.contect_con .address div h4:before {
	content: "";
	width: 16px;
	height: 16px;
	margin-right: 12px;
	display: inline-block;
	background: url(/img/icon_sub_contect1.png) no-repeat center/contain;
}

.contect_con .address div:nth-child(2) h4:before {
	background-image: url(/img/icon_sub_contect2.png);
}

.contect_con .address div:nth-child(3) h4:before {
	background-image: url(/img/icon_sub_contect3.png);
}

.contect_con .address div p {
	font-size: 18px;
	letter-spacing: -2%;
	color: #454545;
	font-weight: 500;
}

.contect_con .address div:nth-child(2) a {
	margin-bottom: 10px;
	display: inline-block;
}

.contect_con .address div p a {
	color: #454545;
}

.contect_con .map {
	height: 380px;
	background: url(/img/img_sub_contect_map.png) no-repeat center/cover;
}




/* series */
.board_h2 {}

#series_wrap {}

#series_wrap .con {}

.tab_wrap {
	margin: 60px auto 40px;
	position: relative;
	width: 100%;
}

.tab_wrap .btn_select {
	width: 100%;
	height: 52px;
	border-radius: 4px;
	background-color: #fff;
	padding: 0 5%;
	font-size: 15px;
	font-weight: 600;
	line-height: 50px;
	color: #111;
	text-align: left;
	border: 1px solid #111;
}

.tab_wrap .tab {
	margin-bottom: 40px;
	position: absolute;
	left: 0;
	top: 58px;
	z-index: 10;
	width: 100%;
	overflow: hidden;
	border-radius: 4px;
	display: none;
	border: 1px solid #111;
}

.tab_wrap .tab.on {
	display: block;
}



/* .series_inner .btn_select:active + .tab {display: block;} */
.tab_wrap .tab+span {
	position: absolute;
	width: 12px;
	height: 12px;
	top: 50%;
	right: 5%;
	transform: translateY(-50%);
	background: url(/img/icon_sub_select.png) no-repeat center/contain;
	cursor: pointer;
}

.tab_wrap .tab.on+span {
	transform: translateY(-50%) rotate(180deg);
}

.tab_wrap .tab li {}

.tab_wrap .tab li button {
	display: block;
	width: 100%;
	height: 50px;
	line-height: 50px;
	background-color: #fff;
	padding: 0 5%;
	color: #666;
	text-align: left;
	font-size: 13px;
	font-weight: 500;
}

.tab_wrap .tab li button:hover {
	background-color: #f5f5f5;
	font-weight: 600;
	color: #000;
}

.series_inner {
	margin-bottom: 80px;
}

.series_con .item {
	height: 392px;
	margin-bottom: 16px;
	background-color: #F8F8F8;
	border-radius: 8px;
}

.series_con .item a {
	display: block;
	padding: 16px 5%;
	height: 100%;
	border-radius: 8px;
	position: relative;
}

.series_con .item .img_container {
	border-radius: 4px;
	height: 217px;
	background: #f7f7f7;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	margin-bottom: 24px;
}

.series_con .item .img_container img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 4px;
	object-fit: cover;
}

.series_con .item a:after {
	content: "";
	width: 26px;
	height: 19px;
	position: absolute;
	right: 7.5%;
	bottom: 24px;
	background: url(/img/icon_sub_board_arrow.png) no-repeat center/contain;
}

.series_con .item a span {
	display: block;
	height: 180px;
	background: url(/img/img_sub_series_th1.png) no-repeat center/cover;
	border-radius: 4px;
	margin-bottom: 24px;
}

.series_con .item a div {}

.series_con .item a div b {
	font-size: 14px;
	color: #0c1994;
	font-weight: bold;
}

.series_con .item a div p {
	font-size: 20px;
	line-height: 28px;
	letter-spacing: -1%;
	margin: 10px 0 20px;
	color: #000;
	font-weight: bold;
}

.series_con .item a div i {
	font-size: 15px;
	font-weight: 500;
	letter-spacing: -2%;
	color: #999;
}


.series_con .item a:hover {
	background: linear-gradient(to bottom, #1423A9, #000967);
}

.series_con .item a:hover :after {
	background-image: url(/img/icon_sub_board_arrow2.png);
}

.series_con .item a:hover div {}

.series_con .item a:hover div b {
	color: #fff;
}

.series_con .item a:hover div p {
	color: #fff;
}

.series_con .item a:hover div i {
	color: #fff;
}

.series_inner .more,
.reference_inner .more {
	display: block;
	width: 260px;
	height: 46px;
	line-height: 44px;
	border: 1px solid #787878;
	border-radius: 100px;
	text-align: center;
	margin: 40px auto 0;
	font-size: 15px;
	letter-spacing: -1%;
	color: #000;
}

.list_pagenation[data-mobile-more='true'] {
	display: none !important;
}



.list_pagenation {
	display: block;
	text-align: center;
	margin-bottom: 80px;
	margin-top: 40px;
}

.list_pagenation button {
	width: 24px;
	height: 24px;
	background: url(/img/icon_pagi_arrow.png) no-repeat center/10px;
	text-indent: -9999px;
	overflow: hidden;
}

.list_pagenation button.false {
	background-image: url(/img/icon_pagi_arrow_false.png);
	cursor: auto;
}

.list_pagenation button:first-child {
	transform: rotate(180deg);
}

.list_pagenation button:first-child.false {
	transform: translate(0);
}

.list_pagenation button:last-child.false {
	transform: rotate(180deg);
}

.list_pagenation span {
	margin: 0 24px;
}

.list_pagenation span a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	line-height: 44px;
	border-radius: 50%;
	font-size: 14px;
	font-weight: 600;
	margin-right: 4px;
	color: #000;
}

.list_pagenation span a:last-child {
	margin-right: 0;
}

.list_pagenation span a.on {
	background-color: #0c1994;
	color: #fff;
}



/* Remove for more */
.series_inner .list_pagenation {
	display: none;
}

/* Install guide responsive pagination */
#series_wrap .series_inner>.list_pagenation[data-mobile-more='true'] {
	display: none !important;
}

#series_wrap .series_inner>.kateco_load_more {
	display: block;
	margin-top: 40px;
	text-align: center;
}

.reference_inner .list_pagenation {
	display: none;
}


/* series_con */
.series_content {
	margin-bottom: 200px;
}

.series_content .title {
	border-top: 1px solid #000;
	border-bottom: 1px solid #e9e9e9;
	padding: 24px 0;
}

.series_content .title h3 {
	font-size: 20px;
	font-weight: 600;
	line-height: 28px;
	letter-spacing: -2%;
	margin-bottom: 14px;
	color: #111;
}

.series_content .title span {
	font-size: 14px;
	color: #888;
}

.series_content .con_box {
	padding: 40px 0;
	margin-bottom: 24px;
	border-bottom: 1px solid #e9e9e9
}

.series_content .con_box img {
	width: 100%;
	margin-bottom: 50px;
}

.series_content .con_box p {
	font-size: 15px;
	font-weight: 500;
	line-height: 26px;
	letter-spacing: -2%;
	color: #333;
}

.series_content .con_btn {
	display: block;
	width: 146px;
	height: 46px;
	line-height: 46px;
	text-align: center;
	background-color: #0c1994;
	border-radius: 46px;
	font-size: 15px;
	letter-spacing: -1%;
	color: #fff;
	margin-left: auto;
}

.series_content .con_list {
	border-top: 1px solid #E9E9E9;
	margin-top: 60px;
}

.series_content .con_list a {
	display: block;
	border-bottom: 1px solid #E9E9E9;
	height: 52px;
	line-height: 52px;
	font-size: 14px;
	letter-spacing: -2%;
	color: #333;
	padding: 0 2.5%;
	display: flex;
}

.series_content .con_list a span {
	width: 18.437%;
	position: relative;
}

.series_content .con_list a span:after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 4px;
	background: url(/img/icon_sub_list.png) no-repeat center/contain;
}

.series_content .con_list a:last-child span:after {
	transform: rotate(180deg);
}

.series_content .con_list a p {
	width: 72.188%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-left: 9.062%;
}

.series_content .con_list a p:hover {
	text-decoration: underline;
}




/* product */
#product_wrap {}

#product_wrap .con {}

.product_con {}

.product_con .item {
	height: 355px;
	margin-bottom: 16px;
	display: block;
	padding: 24px 9.375%;
	height: 100%;
	position: relative;
	text-align: center;
	background-color: #FAFAFA;
	border-radius: 6px;
}

.product_con .item span {
	display: block;
	height: 166px;
	background: url(/img/img_product_img.png) no-repeat center/auto 100%;
	margin-bottom: 16px;
}

.product_con .item div {}

.product_con .item div b {
	font-size: 14px;
	color: #0c1994;
	font-weight: bold;
}

.product_con .item div h3 {
	font-size: 20px;
	letter-spacing: -1%;
	margin: 8px 0 24px;
	font-weight: bold;
}

.product_con .item div a {
	display: inline-block;
	width: 260px;
	height: 46px;
	line-height: 46px;
	border-radius: 46px;
	border: 1px solid #787878;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: -1%;
	color: #000;
}

.product_con .item div a:hover {
	font-weight: 600;
	color: #fff;
	background-color: #0c1994;
}

.product_con .item .product_img {
	border-radius: 4px;
	position: relative;
	height: 220px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.product_con .item .product_img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	padding: 16 5%;
}


/* product_con */
.product_content {
	margin-bottom: 80px;
}

.product_content .title {
	margin-bottom: 36px;
	height: 36px;
	line-height: 36px;
	position: relative;
	text-align: center;
}

.product_content .title h3 {
	font-size: 30px;
	letter-spacing: -2%;
}

.product_content .title h3 span {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -2%;
	vertical-align: 6px;
}

.product_content .title button {
	position: absolute;
	left: 0;
	top: 0;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid #e9e9e9;
	background: url(/img/icon_sub_list_product.png) no-repeat #fff center/7px;
	text-indent: -9999px;
	overflow: hidden;
}

.product_content .title button.btn_prev {}

.product_content .title button.btn_next {
	left: auto;
	right: 0;
	transform: rotate(180deg);
}

.product_content .title button:hover {
	background-color: #0c1994;
	background-image: url(/img/icon_sub_list_product_w.png);
}

.product_content .title button:disabled:hover {
	background-color: #eeeeee;
	background-image: url(/img/icon_sub_list_product.png);
	cursor: no-drop;
}

.product_content .title button.btn_prev:hover {}

.product_content .con_box {}

.product_content .con_box .left {
	margin-bottom: 40px;
}

.product_content .con_box .left .big {
	height: 268px;
	background: url(/img/img_product_big.png) no-repeat #f7f7f7 center/cover;
	margin-bottom: 12px;
	border-radius: 6px;
}

.product_content .con_box .left .thumbnail {
	display: flex;
	justify-content: space-between;
}

.product_content .con_box .left .thumbnail a {
	display: block;
	width: 31.25%;
	height: 66px;
	border-radius: 2px;
	border: 1px solid transparent;
	background: url(/img/img_product_thum1.png) no-repeat center/cover;
	text-indent: -9999px;
	overflow: hidden;
}

.product_content .con_box .left .thumbnail a:nth-child(2) {
	background-image: url(/img/img_product_thum2.png);
}

.product_content .con_box .left .thumbnail a:nth-child(3) {
	background-image: url(/img/img_product_thum3.png);
}

.product_content .con_box .left .thumbnail a.on {
	border-color: #ddd;
}

.product_content .con_box .right {}

.product_content .con_box .right .right_t {
	margin-bottom: 40px;
}

.product_content .con_box .right .right_t span {
	display: block;
	width: 82px;
	height: 30px;
	line-height: 28px;
	border-radius: 30px;
	border: 1px solid #0c1994;
	color: #0c1994;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: -1%;
	text-align: center;
	margin-bottom: 12px;
}

.product_content .con_box .right .right_t h4 {
	font-size: 30px;
	letter-spacing: -1%;
}

.product_content .con_box .right .right_t h4 b {
	font-size: 14px;
	letter-spacing: -1%;
	font-weight: 600;
	vertical-align: 6px;
}

.product_content .con_box .right .right_t p {
	font-size: 15px;
	line-height: 24px;
	letter-spacing: -2%;
	color: #888;
	padding-top: 20px;
	margin-top: 20px;
	border-top: 1px solid #ddd;
}

.product_content .con_box .right .product_info {
	border-top: 1px solid #000;
	width: 100%;
	margin-bottom: 36px;
}

.product_content .con_box .right .product_info .item {
	display: flex;
}

.product_content .con_box .right .product_info .item .pro_t {
	padding: 18px 4.375%;
	border-bottom: 1px solid #ddd;
	text-align: left;
	background-color: #f7f7f7;
	font-size: 14px;
	letter-spacing: -1%;
	font-weight: 600;
	width: 50%;
	line-height: 20px;
	display: flex;
	align-items: center;
}

.product_content .con_box .right .product_info .item .pro_con {
	padding: 18px 4.375%;
	border-bottom: 1px solid #ddd;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -1%;
	color: #666;
	width: 50%;
	line-height: 20px;
	display: flex;
	align-items: center;
}

.product_content .con_box .right .link {}

.product_content .con_box .right .link button,
.product_content .con_box .right .link a {
	display: block;
	width: 320px;
	height: 48px;
	line-height: 46px;
	border-radius: 48px;
	border: 1px solid #cecece;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	color: #000;
	letter-spacing: -2%;
	margin: 0 auto 10px;
}

.product_content .con_box .right .link button:disabled {
	color: #999;
	background-color: #e5e5e5;
	border: 1px solid #d5d5d5;
	cursor: not-allowed;
	opacity: 0.7;
}

.product_content .con_box .right .link button:last-child,
.product_content .con_box .right .link a:last-child {
	color: #fff;
	margin-bottom: 0;
	background-color: #0c1994;
	border: none;
}

.product_content .con_box .right .link button:disabled,
.product_content .con_box .right .link button:last-child:disabled {
	color: #999;
	background-color: #e5e5e5;
	border: 1px solid #d5d5d5;
	cursor: not-allowed;
	opacity: 0.7;
}


/* patent */
#patent_wrap {}

#patent_wrap .con {}

.patent_con {
	display: flex;
	flex-wrap: wrap;
	gap: 32px 3.75%;
}

.patent_con .item {
	margin-bottom: 32px;
	text-align: center;
	width: 48.125%;
}

.patent_con .item span {
	display: block;
	height: 207px;
	border-radius: 4px;
	background: url(/img/img_patent_img.png) #f7f7f7 no-repeat center/auto 179px;
	margin-bottom: 20px;
	position: relative;
}

.patent_con .item .patent_img {
	border-radius: 4px;
	background: #f7f7f7;
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
}

.patent_con .item .patent_img a {
	width: 100%;
	height: 207px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
}

.patent_con .item .patent_img img {
	display: block;
	width: auto;
	height: 180px;
	max-height: 250px;
	max-width: 100%;
	object-fit: cover;
}

.patent_con .item .patent_img:hover a {
	border: 1.5px solid #0c1994;
}

.patent_con .item .patent_img:hover::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		url(/img/icon_patent_a.png) no-repeat center / 54px,
		rgba(247, 247, 247, .2);
}

.patent_con .item span a {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px;
	text-indent: -9999px;
	overflow: hidden;
}

.patent_con .item span:hover a {
	border: 1.5px solid #0c1994;
	background: url(/img/icon_patent_a.png) no-repeat rgba(247, 247, 247, .2) center/54px;
}

.patent_con .item div {}

.patent_con .item div h3 {
	font-size: 16px;
	letter-spacing: -1%;
	margin-bottom: 8px;
}

.patent_con .item div p {
	font-size: 14px;
	letter-spacing: -2%;
	color: #777
}


.dim {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .8);
	z-index: 100;
	display: none;
}

.patent_popup {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background-color: #fff;
	border-radius: 12px;
	overflow: hidden;
	width: 88.888%;
}

.patent_popup .left {
	height: 300px;
	background-color: #f3f3f3;
	padding-top: 63px;
}

.patent_popup .left span {
	display: block;
	width: 148px;
	height: 207px;
	box-shadow: 0 4px 20px 0 rgba(0, 0, 0, .15);
	margin: 0 auto;
	background: url(/img/img_patent_img.png) no-repeat center/contain
}

.patent_popup .right {
	padding: 30px 6.25% 40px;
}

.patent_popup .right h3 {
	font-size: 22px;
	letter-spacing: -1%;
	margin-bottom: 20px;
}

.patent_popup .right .patent_info {
	border-top: 1px solid #000;
	width: 100%;
}

.patent_popup .right .patent_info .item {
	display: flex;
}

.patent_popup .right .patent_info .item .patent_t {
	padding: 18px 4.375%;
	border-bottom: 1px solid #ddd;
	text-align: left;
	background-color: #f7f7f7;
	font-size: 14px;
	letter-spacing: -1%;
	font-weight: 500;
	width: 28.571%;
	line-height: 20px;
}

.patent_popup .right .patent_info .item .patent_con {
	padding: 18px 4.375%;
	border-bottom: 1px solid #ddd;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -1%;
	color: #666;
	width: 71.429%;
	line-height: 20px;
}

.patent_popup .popup_close {
	width: 20px;
	height: 20px;
	background: url(/img/icon_popup_close.png) no-repeat center/contain;
	position: absolute;
	right: 6.25%;
	top: 20px;
	text-indent: -9999px;
	overflow: hidden;
}



/* notice */
#notice_wrap {}

#notice_wrap .con {}

.notice_inner {
	padding-bottom: 80px;
}

.notice_inner .list_wrap {
	border-top: 1px solid #000;
	width: 100%;
}

.notice_inner .list_wrap .item {
	padding: 24px 0;
	padding-left: 18.75%;
	border-bottom: 1px solid #ddd;
	position: relative;
}

.notice_inner .list_wrap .item a {
	color: #111;
}

.notice_inner .list_wrap .item div {
	font-size: 14px;
	font-weight: 500;
	color: #111;
	line-height: 20px;
}

.notice_inner .list_wrap .item .num {
	position: absolute;
	width: 18.75%;
	height: 100%;
	left: 0;
	top: 0;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}

.notice_inner .list_wrap .item .num strong {
	width: 48px;
	height: 27px;
	line-height: 27px;
	background-color: #0c1994;
	border-radius: 48px;
	display: inline-block;
	color: #fff;
	font-size: 11px;
}

.notice_inner .list_wrap .item div span {
	font-weight: 400;
	color: #777;
	line-height: 20px;
	display: block;
	font-size: 11px;
	font-weight: bold;
	white-space: nowrap;
}



/* reference */
#reference_wrap {}

#reference_wrap .con {}

.reference_inner {
	padding-bottom: 80px;
}

.reference_con {
	display: flex;
	flex-wrap: wrap;
	gap: 32px 3.75%;
}

.reference_con .item {
	margin-bottom: 32px;
	text-align: center;
	width: 48.125%;
}

.reference_con .item span {
	display: block;
	height: 207px;
	border-radius: 4px;
	background: url(/img/img_reference_img.png) #f7f7f7 no-repeat center/auto 179px;
	margin-bottom: 20px;
	position: relative;
}

.reference_con .item span a {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px;
	text-indent: -9999px;
	overflow: hidden;
}

.reference_con .item span:hover a {
	border: 1.5px solid #0c1994;
	background: url(/img/icon_reference_a.png) no-repeat rgba(247, 247, 247, .2) center/54px;
}

.reference_con .item div {}

.reference_con .item div h3 {
	font-size: 16px;
	letter-spacing: -1%;
	margin-bottom: 8px;
}

.reference_con .item div p {
	font-size: 14px;
	letter-spacing: -2%;
	color: #777
}

.reference_con .item .reference_img {
	border-radius: 4px;
	background: #f7f7f7;
	height: 207px;
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
}

.reference_con .item .reference_img img {
	display: block;
	width: auto;
	height: 207px;
	max-height: 250px;
	max-width: 100%;
	object-fit: cover;
}

.reference_con .item .reference_img:hover a {
	border: 1.5px solid #0c1994;
}

.reference_con .item .reference_img:hover::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		url(/img/icon_reference_a.png) no-repeat center / 54px,
		rgba(247, 247, 247, .2);
}

/* added reference images */
.reference_con .item .reference_img {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 207px;
	margin-bottom: 20px;
	border-radius: 4px;
	background-color: #f7f7f7;
	overflow: hidden;
	cursor: pointer;
}

.reference_con .item .reference_img img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 179px;
	object-fit: contain;
}

.reference_con .item .reference_img::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
}

.reference_con .item .reference_img:hover::after {
	border: 1.5px solid #0c1994;
	background: url("/img/icon_reference_a.png") no-repeat center / 54px;
	background-color: rgba(247, 247, 247, 0.2);
}

.reference_con> :not(.item):has(> .item) {
	width: 48.125%;
	min-width: 0;
}

.reference_con> :not(.item)>.item {
	width: 100%;
}

/* 기존 공통 CSS 아래에 추가합니다. */
/* 자료실 썸네일: 동일한 정사각형 영역 */
#reference_wrap .reference_con .item .reference_img {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 100%;
	height: auto;
	min-height: 0;
	max-height: none;
	aspect-ratio: 1 / 1;
	padding: 0;
	border-radius: 6px;
	overflow: hidden;
	background: #f7f7f7;
}

#reference_wrap .reference_con .item .reference_img img {
	position: absolute;
	inset: 20px auto auto 50%;
	display: block;
	box-sizing: border-box;
	width: calc((100% - 40px) * 0.7076923);
	height: calc(100% - 40px);
	min-width: 0;
	min-height: 0;
	max-width: none;
	max-height: none;
	margin: 0;
	padding: 0;
	object-fit: cover;
	object-position: center;
	transform: translateX(-50%);
}

.kateco_load_more {
	display: block;
	margin-top: 40px;
	text-align: center;
}

.kateco_load_more .btn_more {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	max-width: 260px;
	height: 46px;
	margin: 0 auto;
	padding: 0 20px;
	border: 1px solid #787878;
	border-radius: 100px;
	background: #fff;
	color: #000;
	font: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 44px;
	cursor: pointer;
}

.kateco_load_more .btn_more:disabled {
	opacity: 0.6;
	cursor: wait;
}

.kateco_load_more .btn_more:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.kateco_load_more p {
	margin: 12px 0 0;
	color: #777;
	font-size: 12px;
}


/* contact */
#contact_wrap {}

#contact_wrap .con {}

.contact_inner {
	padding-bottom: 80px;
}

.contact_form {
	border-top: 1px solid #000;
	width: 100%;
}

.contact_form .item {
	position: relative;
	padding: 16px 0 12px;
	border-bottom: 1px solid #ddd;
}

.contact_form .item label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -2%;
	line-height: 22px;
	margin-bottom: 6px;
}

.contact_form .item label span:after,
.contact_form .agree_wrap .agree_t label span:after {
	content: "*";
	font-size: 16px;
	font-weight: 700;
	color: #0c1994;
	margin-left: 2px;
}

.contact_form .item input,
.contact_form .item textarea {
	width: 100%;
	height: 48px;
	border-radius: 6px;
	background-color: #fff;
	padding: 0 3.75%;
	border: 1px solid #d7d7d7;
	font-size: 14px;
	color: #111;
	line-height: 46px;
}

.contact_form .tel_item div {
	display: flex;
	justify-content: space-between;
}

.contact_form .tel_item input {
	width: 31.875%;
}

.contact_form .item textarea {
	height: 180px;
	padding: 16px 3.75%;
	line-height: 1.3;
}

.contact_form .item input::placeholder,
.contact_form .item textarea::placeholder {
	font-size: 14px;
	letter-spacing: -3%;
	color: #999;
}

.contact_form .agree_wrap {
	margin-top: 32px;
}

.contact_form .agree_wrap .agree_t {
	line-height: 20px;
	position: relative;
	margin-bottom: 32px;
}

.contact_form .agree_wrap .agree_t input {}

.contact_form .agree_wrap .agree_t input[type="checkbox"] {
	display: none;
}

.contact_form .agree_wrap .agree_t input[type="checkbox"]+label {
	display: inline-block;
	position: relative;
	padding-left: 26px;
	font-size: 15px;
	letter-spacing: -2%;
	color: #111;
	font-weight: 600;
	vertical-align: -2px;
}

.contact_form .agree_wrap .agree_t input[type="checkbox"]+label strong {
	color: #0c1994;
	font-weight: 600;
}

.contact_form .agree_wrap .agree_t input[type="checkbox"]+label::before {
	display: block;
	content: '';
	width: 20px;
	height: 20px;
	position: absolute;
	left: 0;
	top: 0;
	border: 1px solid #777;
	border-radius: 50%;
}

.contact_form .agree_wrap .agree_t input[type="checkbox"]:checked+label::before {
	border-color: #0c1994;
	background: url(/img/icon_contact_radio.png) no-repeat #0c1994 center/6px;
}

.contact_form .agree_wrap .agree_t button {
	font-size: 14px;
	letter-spacing: -3%;
	font-weight: 500;
	color: #333;
	position: absolute;
	right: 0;
	top: 2px;
	margin-right: 3px;
}

.contact_form .agree_wrap .agree_t button span {
	display: inline-block;
	width: 8px;
	height: 5px;
	background: url(/img/icon_contact_arrow.png) no-repeat center/contain;
	margin-left: 6px;
	vertical-align: 3px;
	transform: rotate(180deg);
}

.contact_form .agree_wrap .agree_t button.on span {
	transform: rotate(0);
}

.contact_form .agree_wrap .agree_box {
	padding: 16px 5%;
	background-color: #f8f8f8;
	border-radius: 4px;
	margin-bottom: 40px;
	display: none;
}

.contact_form .agree_wrap .agree_box p {
	font-size: 14px;
	line-height: 22px;
	letter-spacing: -2%;
	color: #333;
	margin-bottom: 10px;
}

.contact_form .agree_wrap .agree_box p:last-child {
	margin-top: 0;
}

.contact_form .btn_wrap {
	text-align: center;
	margin-top: 40px;
}

.contact_form .btn_wrap button {
	display: inline-block;
	width: 156px;
	height: 48px;
	border: 1px solid #cecece;
	border-radius: 48px;
	color: #000;
	font-size: 15px;
	font-weight: 700;
}

.contact_form .btn_wrap .btn_send {
	border: 1px solid #cecece;
	color: #fff;
	background-color: #0c1994;
	margin-left: 8px;
	border: none;
}


/* sitemap */
#sitemap_wrap {}


@media all and (min-width:768px) {

	.series_con {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.series_con .item {
		width: 49%;
	}

	.product_con {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 1% 1%;
	}

	.product_con .item {
		width: 49%;
	}

	.patent_con {
		gap: 32px 2%;
	}

	.patent_con .item {
		width: 32%;
	}

	.reference_con {
		gap: 32px 2%;
	}

	.reference_con .item {
		width: 32%;
	}

	.reference_con> :not(.item):has(> .item) {
		width: 32%;
	}

}

@media all and (min-width:1024px) {
	.btn1 {
		width: 100px;
		height: 40px;
		border-radius: 40px;
		font-size: 15px;
		line-height: 40px;
	}

	/* header */
	header {
		height: 90px;
	}

	.logo {
		left: 0;
		top: 35px;
	}

	.logo a {
		width: 114px;
		height: 20px;
	}

	.btn_nav {
		display: none;
	}

	nav {
		display: block;
		position: absolute;
		left: 50%;
		right: 5.555%;
		top: 0;
		width: auto;
		height: 90px;
		background-color: transparent;
		padding-top: 0;
		transform: translateX(-50%);
		width: 65%;
		max-width: 800px;
	}

	nav.on {
		display: block;
	}

	nav .gnb {
		width: auto;
		margin: 0;
		border: none;
		float: right;
		width: 100%;
	}

	nav .gnb>li {
		width: 20%;
		position: relative;
		margin-left: 0;
		float: left;
	}

	nav .gnb>li>a {
		font-size: 17px;
		line-height: 90px;
		padding: 0;
		border-bottom: none;
		width: auto;
		display: block;
		position: relative;
		text-align: center;
		transition: transform .25s ease;
	}

	nav .gnb>li:nth-child(1)>a {
		transform: translateX(8px);
	}

	nav .gnb>li:nth-child(2)>a {
		transform: translateX(4px);
	}

	nav .gnb>li:nth-child(3)>a {
		transform: translateX(0);
	}

	nav .gnb>li:nth-child(4)>a {
		transform: translateX(-4px);
	}

	nav .gnb>li:nth-child(5)>a {
		transform: translateX(-8px);
	}

	nav:hover .gnb>li>a {
		transform: translateX(0);
	}

	nav .gnb>li>a:after {
		content: none;
	}

	nav .gnb .sub {
		border-bottom: none;
		padding: 0 15%;
		display: block;
		position: absolute;
		left: 0;
		top: 90px;
		z-index: 10;
		background-color: transparent;
		width: 100%;
		height: 0;
		overflow: hidden;
		border-right: 1px solid #ECECEC;
		transition: height .25s ease;
	}

	nav .gnb li:first-child .sub {
		border-left: 1px solid #ECECEC;
	}

	nav .gnb .sub li {
		margin-bottom: 0;
	}

	nav .gnb .sub li:first-child {
		margin-top: 30px;
	}

	nav .gnb .sub li:last-child {
		margin-bottom: 30px;
	}

	nav .gnb .sub li a {
		font-size: 16px;
		line-height: 40px;
	}

	nav .bg {
		position: fixed;
		width: 100vw;
		height: 0;
		left: 50%;
		top: 90px;
		background-color: #fff;
		border-top: 0 solid #D7D3D1;
		border-bottom: 0 solid #D7D3D1;
		overflow: hidden;
		transform: translateX(-50%);
		transition: height .25s ease, border-top-width .25s ease, border-bottom-width .25s ease;
	}

	nav .gnb>li:hover .sub {
		background-color: #f5f5f5;
	}

	nav .gnb>li:hover .sub:before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		background-color: #0c1994;
		width: 100%;
		height: 2px;
	}

	nav:hover .sub {
		height: 280px;
	}

	nav:hover .bg {
		height: 281px;
		border-top-width: 1px;
		border-bottom-width: 1px;
	}

	.sitemap {
		width: 23px;
		height: 23px;
		background: url(/img/icon_sitemap.png) no-repeat center/contain;
		text-indent: -9999px;
		overflow: hidden;
		position: absolute;
		right: 0;
		top: 34px;
		display: block;
	}

	.sitemap.on {
		background-image: url(/img/icon_sitemap_on.png);
	}

	/* swiper */
	.swiper-wrapper {
		padding-bottom: 100px;
	}

	.swiper-wrapper .product_img {
		height: 260px;
		border-radius: 4px;
		background: #f7f7f7;
		overflow: hidden;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 20px;
	}

	.swiper-wrapper .product_img img {
		display: block;
		max-width: 100%;
		max-height: 100%;
		width: auto;
		height: auto;
		object-fit: contain;
	}

	/* visual */
	#visual {
		margin-top: 90px;
	}

	.visual_slider .swiper-slide {
		width: 88.888%;
		height: 860px;
		padding-top: 328px;
	}

	.visual_slider .visual_text {
		width: auto;
		margin-left: 11.111%;
	}

	.visual_slider .visual_text h2 {
		font-size: 64px;
		line-height: 74px;
		margin-bottom: 34px;
	}

	.visual_slider .visual_text p {
		font-size: 18px;
		line-height: 1;
	}

	.visual_slider .visual_text p br {
		display: none;
	}

	#visual .visual_pagination {
		width: 440px;
		bottom: 150px;
	}

	.visual_pagination .swiper-pagination-bullet {
		width: 140px;
		height: 3px;
	}

	/* quality */
	.quality_text .line {
		height: 80px;
		line-height: 80px;
		display: inline-block;
	}

	.quality_text .line:first-child {
		display: block;
		margin-bottom: 12px;
	}

	.quality_text div span {
		font-size: 68px;
	}

	.quality_text div span b {
		height: 80px;
		border-radius: 10px;
		--box-w: 150px;
	}

	.quality_text .line:nth-of-type(1) b {
		margin-left: 12px;
	}

	.quality_text .line:nth-of-type(3) b {
		margin-left: 12px;
		margin-right: 12px
	}

	.quality_text p {
		font-size: 17px;
		line-height: 1;
		margin-top: 50px;
	}

	.quality_text p br {
		display: none;
	}

	/* product */
	#product {
		padding: 60px 0 280px;
	}

	#product .bg {
		border-radius: 30px;
		background-size: 100%;
		top: 150px;
		height: 1080px;
		width: 93.75%;
		left: 3.125%;
	}

	#product .con {
		padding-top: 60px;
		position: relative;
		width: 88.888%;
		margin: 0 auto;
		padding: 0 6.25%;
		margin-top: -800px;
	}

	.pro_title {
		margin: 0;
		color: #fff;
		margin-bottom: 80px;
		position: sticky;
		left: 0;
		top: 300px;
	}

	.pro_title h2 {
		font-size: 58px;
		margin-bottom: 20px;
	}

	.pro_title p {
		margin-bottom: 40px;
	}

	.pro_list {
		width: 60%;
		margin-left: auto;
		margin-right: 0;
	}

	/* cases */
	#cases .con {
		padding: 180px 6.25%;
		border-radius: 30px;
		width: 93.75%;
		margin: 0 3.125%;
	}

	.cases_title {
		margin-bottom: 80px;
		position: relative;
	}

	.cases_title>span {
		font-size: 16px;
		margin-bottom: 16px;
	}

	.cases_title h2 {
		font-size: 50px;
		line-height: 64px;
	}

	.cases_title a {
		bottom: 0;
		right: 0;
	}

	.cases_slider {
		padding-bottom: 100px;
	}

	.cases_slider>div {
		display: flex;
	}

	.cases_slider .swiper-slide {
		margin-bottom: 0;
	}

	.cases_slider .swiper-slide:nth-child(3)~div {
		display: block;
	}

	.cases_slider .swiper-slide a span {
		height: 280px;
		border-radius: 12px;
		margin-bottom: 30px;
	}

	.cases_slider .swiper-slide a h3 {
		font-size: 22px;
		line-height: 30px;
		margin-bottom: 14px;
	}

	.cases_slider .swiper-slide a p {
		font-size: 17px;
		line-height: 26px;
		margin-bottom: 16px;
	}

	.cases_slider .swiper-slide a b {
		font-size: 16px;
		line-height: 26px;
	}

	/* 업데이트 1차 */
	.cases_slider .swiper-slide a .product_img {
		height: 280px;
		border-radius: 12px;
		margin-bottom: 30px;
	}

	/* footer */
	footer {
		padding: 140px 0 40px;
	}

	.f_top a {
		width: 154px;
		height: 154px;
	}

	.circle-badge {
		--size: 154px;
	}


	/* sub */
	.con_title_visual {
		margin-top: 190px;
	}

	.con_title_visual .con_h {
		margin-bottom: 40px;
		display: block;
	}

	.con_title_visual .con_h>a {
		display: inline-block;
		width: 14px;
		height: 12px;
		background: url(/img/icon_sub_home.png) no-repeat center/contain;
		text-indent: -9999px;
		overflow: hidden;
	}

	.con_title_visual .con_h>span {
		display: inline-block;
		width: 10px;
		height: 10px;
		margin: 0 16px;
		background: url(/img/icon_sub_title_arrow.png) no-repeat center/10px;
	}

	.con_title_visual .con_h p {
		display: inline-block;
		font-size: 16px;
		letter-spacing: -1%;
		color: #666;
		position: relative;
		z-index: 10;
	}

	.con_title_visual .con_h p:last-of-type {
		color: #000;
	}

	.con_title_visual .con_h p>a {
		color: #000;
	}

	.con_title_visual .con_h p>a:after {
		content: "";
		display: inline-block;
		width: 8px;
		height: 5px;
		background: url(/img/icon_sub_title_link.png) no-repeat center/contain;
		margin-left: 10px;
		vertical-align: 2px;
	}

	.con_title_visual .con_h p.active>a:after {
		transform: rotate(180deg);
	}

	.con_title_visual .con_h p span {
		width: 136px;
		height: 138px;
		border-radius: 8px;
		box-shadow: 0 4px 8px 0 rgba(0, 0, 0, .1);
		position: absolute;
		padding: 24px 20px;
		left: -20px;
		top: 30px;
		background-color: #fff;
		display: none;
	}

	.con_title_visual .con_h p.t_list2 span {
		height: auto;
		overflow: hidden;
	}

	.con_title_visual .con_h p.t_list2 a {
		font-size: 16px;
	}

	.con_title_visual .con_h p.t_list2 a.on {
		font-size: 16px;
		font-weight: bold;
		color: #0c1994;
	}

	.con_title_visual .con_h p.active span {
		display: block;
	}

	.con_title_visual .con_h p span a {
		font-size: 15px;
		color: #555;
		display: block;
		margin-bottom: 18px;
		font-size: 500;
	}

	.con_title_visual .con_h p span a:last-child {
		margin-bottom: 0;
	}

	.con_title_visual .con_h p span a.on {
		font-weight: bold;
		color: #0c1994;
	}

	.con_title_visual .con_visual {}

	.con_title_visual h2 {
		margin-bottom: 181px;
		font-size: 64px;
		letter-spacing: -2%;
	}

	.con_title_visual h2.board_h2 {
		margin-bottom: 100px;
	}


	/* about_kateco */
	.con_title_visual .con_visual {
		overflow: hidden;
	}

	.con_title_visual .con_visual div {
		height: 540px;
		border-radius: 16px;
		margin-bottom: 130px;
	}

	#about_con {
		margin-bottom: 150px;
	}

	#about_con .left {}

	#about_con .left strong {
		font-size: 44px;
		line-height: 61px;
	}

	#about_con .left strong br {
		display: none;
	}

	#about_con .right {
		margin-top: 32px;
		margin-bottom: 80px;
	}

	#about_con .right p {
		font-size: 18px;
		line-height: 32px;
		margin-bottom: 40px;
	}

	#about_con .right p:last-child {
		font-size: 18px;
	}

	#about_con .right p em {
		width: 102px;
		height: 36px;
		margin-left: 20px;
		vertical-align: -12px;
	}

	#value {
		padding: 130px 0 180px;
	}

	#value .con_title {
		margin-bottom: 50px;
	}

	#value .con_title h2 {
		font-size: 48px;
		margin-bottom: 24px;
	}

	#value .con_title p {
		font-size: 18px;
		line-height: 28px;
	}

	.value_list {
		display: flex;
		justify-content: space-between;
	}

	.value_list .value_card {
		width: 31.875%;
		height: 520px;
		border-radius: 16px;
		padding-top: 70px;
		display: block;
		margin-bottom: 0;
		text-align: center;
	}

	.value_list .value_card span {
		display: block;
		margin: 0 auto 42px;
		width: 180px;
		height: 180px;
	}

	.value_list .value_card .text {
		margin-left: 0;
		width: 100%;
	}

	.value_list .value_card .text h3 {
		font-size: 34px;
	}

	.value_list .value_card .text h3:after {
		height: 24px;
		margin: 14px auto;
	}

	.value_list .value_card .text strong {
		font-size: 20px;
		line-height: 32px;
	}

	.value_list .value_card .text p {
		font-size: 18px;
		line-height: 32px;
	}


	/* about_history */
	#history_wrap {
		padding-bottom: 200px;
	}

	.history_tab_sticky {
		top: 90px;
		margin-bottom: 120px;
	}

	.history_tab a {
		width: 180px;
		height: 60px;
		line-height: 60px;
		border-radius: 60px;
		font-size: 20px;
		margin-right: 20px;
	}

	.history_con .left {
		margin-bottom: 48px;
	}

	.history_con .left h3 {
		font-size: 24px;
		margin-bottom: 16px;
	}

	.history_con .left p {
		font-size: 44px;
		line-height: 54px;
	}

	.history_con .left .history_img,
	.history_con .left span {
		height: 360px;
		border-radius: 0 70px;
		margin-top: 50px;
	}

	.history_con .right>div {
		margin-bottom: 72px;
	}

	.history_con .right h4 {
		font-size: 42px;
		margin-bottom: 24px;
	}

	.history_con .right h4::before {}

	.history_con .right ul li {
		margin-bottom: 10px;
		font-size: 18px;
	}

	.history_con .right ul li span {
		width: 80px;
	}

	.history_con .right ul li p {
		width: calc(100% - 38px);
	}

	.history_tab a {
		display: inline-block;
		color: #fff;
		font-weight: 600;
		color: #888;
		letter-spacing: -3%;
	}


	/* about_contect */
	#contect_wrap {
		padding-bottom: 200px;
	}

	#contect_wrap .con_title h3 {
		font-size: 20px;
		margin-bottom: 16px;
	}

	#contect_wrap .con_title strong {
		font-size: 50px;
		line-height: 54px;
	}

	#contect_wrap .con_title p {
		font-size: 18px;
		line-height: 30px;
		margin: 50px 0 80px;
	}

	.contect_con .address {
		padding: 0;
		margin-bottom: 40px;
		display: flex;
		justify-content: space-between;
		height: 220px;
		align-items: center;
	}

	.contect_con .address div {
		width: 33.333%;
		position: relative;
	}

	.contect_con .address div:after {
		content: "";
		position: absolute;
		width: 1px;
		height: 120px;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		background-color: #6d6d6d;
		margin: 0;
	}

	.contect_con .address div h4 {
		font-size: 22px;
		margin-bottom: 30px;
	}

	.contect_con .address div h4:before {
		width: 18px;
		height: 18px;
		margin-right: 16px;
	}

	.contect_con .address div p {
		font-size: 20px;
	}

	.contect_con .map {
		height: 540px;
	}


	/* series */
	.board_h2 {}

	#series_wrap {}

	#series_wrap .con {}

	.tab_wrap {
		margin: 100px 0 80px;
		position: relative;
		border-bottom: 1px solid #e8e8e8;
		width: 100%;
	}

	.tab_wrap .btn_select {
		display: none;
	}

	.tab_wrap .tab {
		margin-bottom: 0;
		height: 64px;
		position: static;
		overflow: hidden;
		border-radius: 0;
		display: block;
		box-shadow: none;
		margin: 0 auto;
		border: none;
	}

	.tab_wrap .tab+span {
		display: none;
	}

	.tab_wrap .tab li {
		float: left;
		width: 140px;
	}

	.tab_wrap .tab li button {
		display: block;
		width: 100%;
		height: 64px;
		line-height: 64px;
		background-color: transparent;
		padding: 0 5%;
		color: #111;
		text-align: center;
		font-size: 18px;
		letter-spacing: -2%;
		color: #999;
		font-weight: 600;
	}

	.tab_wrap .tab li button:hover {
		background-color: transparent;
		color: #0c1994;
	}

	.tab_wrap .tab li button.on {
		font-weight: bold;
		color: #0c1994;
		border-bottom: 2px solid #0c1994;
	}

	.tab_wrap.product_con_tab {
		margin-bottom: 60px;
	}

	.series_inner {
		padding-bottom: 200px;
	}

	/* .series_con {display:flex; flex-wrap:wrap; justify-content:space-between;} */
	.series_con .item {
		width: 32%;
		border-radius: 8px;
	}

	.series_con .item {
		height: 463px;
	}

	.series_con .item .img_container {
		border-radius: 6px;
	}


	.series_con .item a {
		padding: 20px 4.950%;
		height: 100%;
		border-radius: 10px;
	}

	.series_con .item a:after {
		right: 7.425%;
		bottom: 30px;
	}

	.series_con .item a span {
		height: 218px;
		border-radius: 6px;
		margin-bottom: 30px;
	}

	.series_con .item a div b {
		font-size: 16px;
	}

	.series_con .item a div p {
		font-size: 22px;
		line-height: 32px;
		margin: 12px 0 20px;
	}

	.series_con .item a div i {
		font-size: 16px;
	}

	.series_inner .more,
	.reference_inner .more {
		display: none;
	}

	.series_inner .list_pagenation {
		display: block;
	}

	#series_wrap .series_inner>.list_pagenation[data-mobile-more='true'] {
		display: block !important;
	}

	#series_wrap .series_inner>.kateco_load_more {
		display: none;
	}



	.reference_inner .list_pagenation {
		display: block;
	}

	.list_pagenation {
		display: block;
		text-align: center;
		margin-top: 80px;
	}

	.list_pagenation button {
		width: 24px;
		height: 24px;
		background: url(/img/icon_pagi_arrow.png) no-repeat center/10px;
		text-indent: -9999px;
		overflow: hidden;
	}

	.list_pagenation button:first-child {
		transform: rotate(180deg);
	}

	.list_pagenation span {
		margin: 0 24px;
	}

	/* 업데이트 1차 */
	/* .list_pagenation span a {
        display: inline-block;
        width: 40px;
        height: 40px;
        line-height: 40px;
        border-radius: 50%;
        font-size: 14px;
        font-weight: 600;
        margin-right: 4px;
        color: #000;
    } */
	/* .list_pagenation span a {
            display:inline-block; width:40px; 
            height:40px; line-height:44px; 
            border-radius:50%; 
            font-size:14px; 
            font-weight:600; 
            margin-right:4px; 
            color:#000;
    } */


	.list_pagenation span a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px !important;

	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;

	box-sizing: border-box !important;
	padding: 0 !important;
	line-height: 1 !important;
	border-radius: 50% !important;
	vertical-align: middle;
	text-align: center;
}

	.list_pagenation span a:last-child {
		margin-right: 0;
	}

	.list_pagenation span a.on {
		background-color: #0c1994;
		color: #fff;
	}

	/* series_con */
	.series_content .title {
		padding: 40px 0;
	}

	.series_content .title h3 {
		font-size: 28px;
		line-height: 36px;
		margin-bottom: 24px;
	}

	.series_content .title span {
		font-size: 15px;
	}

	.series_content .con_box {
		padding: 80px 10% 100px;
		margin-bottom: 30px;
	}

	.series_content .con_box img {
		width: 100%;
		margin-bottom: 50px;
	}

	.series_content .con_box p {
		font-size: 18px;
		line-height: 30px;
	}

	.series_content .con_btn {
		width: 160px;
		height: 49px;
		line-height: 49px;
		border-radius: 49px;
		font-size: 16px;
	}

	.series_content .con_list {
		margin-top: 80px;
	}

	.series_content .con_list a {
		height: 57px;
		line-height: 57px;
		font-size: 16px;
		padding: 0 2.5%;
	}


	/* product */
	.product_con {}

	.product_con .item {
		width: 32%;
		height: 470px;
		padding: 40px 0;
	}

	.product_con .item span {
		height: 180px;
		margin-bottom: 24px;
	}

	.product_con .item div b {
		font-size: 15px;
	}

	.product_con .item div h3 {
		font-size: 22px;
		margin: 12px 0 34px;
	}

	.product_con .item div a {
		height: 51px;
		line-height: 51px;
		border-radius: 51px;
		font-size: 16px;
	}

	/* product_con */
	.product_content {
		margin-bottom: 200px;
	}

	.product_content .title {
		margin: 0;
		height: 220px;
		line-height: 50px;
		padding: 85px 0;
		margin-bottom: 60px;
	}

	.product_content .title h3 {
		font-size: 42px;
	}

	.product_content .title h3 span {
		font-size: 24px;
		vertical-align: 6px;
	}

	.product_content .title button {
		width: 46px;
		height: 46px;
		background-size: 8px;
		top: 50%;
		transform: translateY(-50%);
	}

	.product_content .title button.btn_next {
		transform: translateY(-50%) rotate(180deg);
	}

	.product_content .con_box {
		display: flex;
		justify-content: space-between;
	}

	.product_content .con_box .left {
		width: 48.437%;
		margin-bottom: 0;
	}

	.product_content .con_box .left .big {
		height: 440px;
		margin-bottom: 26px;
		border-radius: 8px;
	}

	.product_content .con_box .left .thumbnail a {
		display: block;
		width: 31.25%;
		height: 130px;
		border-radius: 4px;
	}

	.product_content .con_box .right {
		width: 46.875%;
	}

	.product_content .con_box .right .right_t {
		margin-bottom: 60px;
	}

	.product_content .con_box .right .right_t span {
		margin-bottom: 16px;
	}

	.product_content .con_box .right .right_t h4 {
		font-size: 34px;
	}

	.product_content .con_box .right .right_t h4 b {
		font-size: 20px;
	}

	.product_content .con_box .right .right_t p {
		padding-top: 32px;
		margin-top: 40px;
	}

	.product_content .con_box .right .product_info {
		margin-bottom: 30px;
	}

	.product_content .con_box .right .link {
		text-align: center;
	}

	.product_content .con_box .right .link button,
	.product_content .con_box .right .link a {
		width: 48%;
		height: 60px;
		line-height: 60px;
		border-radius: 58px;
		font-size: 17px;
		margin-right: 16px;
		display: inline-block;
	}

	.product_content .con_box .right .link button:last-child,
	.product_content .con_box .right .link a:last-child {
		margin-right: 0;
	}


	/* patent */
	#patent_wrap {
		margin-top: 180px;
	}

	.patent_con {}

	.patent_con .item {
		margin-bottom: 50px;
	}

	.patent_con .item span {
		height: 340px;
		border-radius: 6px;
		background-size: auto 260px;
		margin-bottom: 32px;
	}

	.patent_con .item .patent_img a {
		width: 100%;
		height: 340px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 4px;
	}

	.patent_con .item .patent_img img {
		display: block;
		width: auto;
		height: 340px;
		object-fit: cover;
	}

	.patent_con .item span a {
		border-radius: 6px;
	}

	.patent_con .item span:hover a {
		border-width: 2px;
		background-image: 54px;
	}

	.patent_con .item div h3 {
		font-size: 22px;
		margin-bottom: 14px;
	}

	.patent_con .item div p {
		font-size: 16px;
	}

	.patent_popup {
		border-radius: 16px;
		overflow: hidden;
		height: 620px;
		display: flex;
	}

	.patent_popup .left {
		width: 46.666%;
		height: 100%;
		padding-top: 81px;
	}

	.patent_popup .left span {
		width: 325px;
		height: 458px;
	}

	.patent_popup .right {
		width: 53.334%;
		padding: 171px 10.5% 0;
	}

	.patent_popup .right h3 {
		font-size: 36px;
		margin-bottom: 30px;
	}

	.patent_popup .right .right .patent_info {
		border-top: 1px solid #000;
		width: 100%;
	}

	.patent_popup .popup_close {
		width: 27px;
		height: 27px;
		right: 3.333%;
		top: 40px;
	}




	/* notice */
	#notice_wrap {
		margin-top: 180px;
	}

	.notice_inner {
		padding-bottom: 200px;
	}

	.notice_inner .list_wrap .item {
		padding: 0 0;
		height: 100px;
		padding-left: 0;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.notice_inner .list_wrap .item div {
		font-size: 20px;
	}

	.notice_inner .list_wrap .item .num {
		position: static;
		width: 10%;
		height: auto;
		display: block;
	}

	.notice_inner .list_wrap .item .num strong {
		width: 78px;
		height: 40px;
		line-height: 40px;
		border-radius: 40px;
		font-size: 17px;
	}

	.notice_inner .list_wrap .item div:nth-child(2) {
		width: calc(100% - 230px);
		text-align: left;
	}

	.notice_inner .list_wrap .item div span {
		color: #777;
		font-size: 20px;
		font-weight: normal;
	}



	/* reference */
	#reference_wrap {
		margin-top: 180px;
	}

	.reference_inner {
		padding-bottom: 200px;
	}

	.reference_con .item {
		margin-bottom: 50px;
	}

	.reference_con .item span {
		height: 340px;
		border-radius: 6px;
		background-size: auto 260px;
		margin-bottom: 32px;
	}

	.reference_con .item span a {
		border-radius: 6px;
	}

	.reference_con .item span:hover a {
		border-width: 2px;
		background-image: 54px;
	}

	.reference_con .item div h3 {
		font-size: 22px;
		margin-bottom: 14px;
	}

	.reference_con .item div p {
		font-size: 16px;
	}

	/* Added */
	.reference_con .item .reference_img {
		height: 340px;
		margin-bottom: 32px;
		border-radius: 6px;
	}

	.reference_con .item .reference_img img {
		max-height: 260px;
	}

	.reference_con .item .reference_img:hover::after {
		border-width: 2px;
	}

	.list_pagenation[data-mobile-more='true'] {
		display: block !important;
	}

	.kateco_load_more {
		display: none;
	}


	/* contact */
	#contact_wrap {
		margin-top: 180px;
	}

	.contact_inner {
		padding-bottom: 200px;
	}

	.contact_form .item {
		padding: 20px 16px 20px;
		display: flex;
		align-items: center;
	}

	.contact_form .item label {
		font-size: 16px;
		letter-spacing: -3%;
		margin-bottom: 0;
		width: 14.843%;
	}

	.contact_form .item label span:after,
	.contact_form .agree_wrap .agree_t label span:after {
		vertical-align: 4px;
	}

	.contact_form .item input,
	.contact_form .item textarea {
		width: 420px;
		height: 52px;
		border-radius: 4px;
		padding: 0 16px;
		font-size: 16px;
		line-height: 50px;
	}

	.contact_form .tel_item div {
		display: flex;
		justify-content: flex-start;
	}

	.contact_form .tel_item input {
		width: 152px;
		margin-right: 8px;
	}

	.contact_form .item textarea {
		width: calc(100% - 190px);
		height: 220px;
		padding: 16px;
		line-height: 22px;
	}

	.contact_form .item input::placeholder,
	.contact_form .item textarea::placeholder {
		font-size: 16px;
	}

	.contact_form .agree_wrap {
		margin-top: 31px;
	}

	.contact_form .agree_wrap .agree_t {
		line-height: 24px;
		position: relative;
		margin-bottom: 20px;
	}

	.contact_form .agree_wrap .agree_t input[type="checkbox"]+label {
		padding-left: 30px;
		font-size: 16px;
	}

	.contact_form .agree_wrap .agree_t input[type="checkbox"]+label::before {
		width: 24px;
		height: 24px;
		top: 2px;
	}

	.contact_form .agree_wrap .agree_t input[type="checkbox"]:checked+label::before {
		background-size: 9px;
	}

	.contact_form .agree_wrap .agree_t button {
		font-size: 16px;
	}

	.contact_form .agree_wrap .agree_box {
		padding: 24px 30px;
		margin-bottom: 84px;
	}

	.contact_form .agree_wrap .agree_box p {
		font-size: 15px;
		line-height: 24px;
		margin-bottom: 20px;
	}

	.contact_form .btn_wrap {
		margin-top: 60px;
	}

	.contact_form .btn_wrap button {
		display: inline-block;
		width: 200px;
		height: 58px;
		border-radius: 58px;
		font-size: 17px;
	}

	.contact_form .btn_wrap .btn_send {
		margin-left: 12px;
	}

	/* sitemap */
	html.on,
	body.on {
		overflow: hidden;
	}

	nav.site {
		display: none;
	}

	#sitemap_wrap {
		padding-top: 80px;
		position: fixed;
		left: 0;
		top: 90px;
		width: 100%;
		height: 100%;
		background-color: #fff;
		z-index: 200;
		opacity: 0;
		visibility: hidden;
		overflow: hidden;
		transition: opacity .3s ease, visibility 0s linear .3s;
		display: none;
	}

	#sitemap_wrap.on {
		opacity: 1;
		visibility: visible;
		transition: opacity .3s ease, visibility 0s linear 0s;
		display: block;
	}

	#sitemap_wrap .con {
		display: flex;
		width: 88.888%;
		margin: 0 auto;
	}

	.depth2 {
		width: 16.666%;
		border-left: 1px solid #dcdcdc;
		padding: 30px 3% 170px;
	}

	.depth2:first-child {
		border-left: none;
	}

	.depth2 h3 {
		font-size: 20px;
		color: #111;
		font-weight: 700;
		margin-bottom: 32px;
	}

	.depth2>ul {}

	.depth2>ul>li {}

	.depth2>ul>li>a {
		font-size: 16px;
		line-height: 34px;
		color: #666;
		font-weight: 500;
		font-weight: 600;
	}

	.depth2>ul>li>a:hover {
		color: #0c1994;
	}

	.depth2.depth2_pro {
		width: 33.333%;
	}

	.depth2.depth2_pro>ul {
		display: flex;
		flex-wrap: wrap;
	}

	.depth2.depth2_pro>ul>li {
		width: 50%;
	}

	.depth2.depth2_pro>ul>li>a {
		color: #111;
		font-weight: 500;
		margin-bottom: 12px;
	}

	.depth3 {
		margin-bottom: 32px;
	}

	.depth3 li {}

	.depth3 li a {
		font-size: 14px;
		font-weight: 500;
		color: #666;
		line-height: 30px;
	}

}


@media all and (min-width:1600px) {
	section>div {
		width: 1400px;
		margin: 0 auto;
	}

	/* header */
	.header_inner {
		width: 89.583%;
	}

	nav {
		width: 800px;
	}

	nav .gnb>li {
		width: 160px;
	}

	/* visual */
	.visual_slider .swiper-slide {
		width: 93.75%;
		margin: 0 3.125%;
	}

	/* product */
	#product {
		padding: 160px 0 280px;
	}

	#product .bg {
		width: 93.75%;
		left: 3.125%;
	}

	#product .con {
		width: 1400px;
		padding: 0;
	}

	.pro_title p {
		font-size: 16px;
	}

	.pro_list {
		width: 100%;
		margin-left: auto;
		margin-right: 0;
	}

	.pro_list .pro_card {
		width: 440px;
		margin-bottom: 20px;
		margin-left: auto;
		color: #fff;
	}

	.pro_list .pro_card:nth-child(2n) {
		width: 560px;
		margin-left: 360px;
	}

	.pro_list .pro_card span {
		height: 540px;
		border-radius: 16px;
		margin-bottom: 30px;
	}

	.pro_list .pro_card:nth-child(2n) span {
		height: 380px;
	}

	.pro_list .pro_card div {}

	.pro_list .pro_card div:after {
		content: "";
		clear: both;
		display: block;
	}

	.pro_list .pro_card div h3 {
		font-size: 26px;
		margin-bottom: 0;
		float: left;
		width: 118px;
	}

	.pro_list .pro_card div p {
		font-size: 18px;
		line-height: 26px;
		float: left;
		width: calc(100% - 118px);
	}

	/* cases */
	#cases .con {
		padding: 180px 0;
		width: 93.75%;
		margin: 0 3.125%;
	}

	.cases_title {
		width: 1400px;
		margin: 0 auto 80px;
	}

	.cases_slider {
		width: 1400px
	}

	/* footer */
	footer {
		padding: 140px 0 40px;
	}

	footer .con {
		width: 1400px;
	}

	.f_top {
		margin-bottom: 100px;
	}

	.f_top div h2 {
		font-size: 68px;
		margin-bottom: 32px;
	}

	.f_top div p {
		font-size: 22px;
		line-height: 34px;
	}

	.f_top a {
		width: 154px;
		height: 154px;
	}

	.circle-badge {
		--size: 154px;
	}

	.f_bottom {}

	.f_bottom .left {
		margin-bottom: 70px;
		float: left;
	}

	.f_bottom .left .f_info {
		width: 728px;
		display: flex;
		flex-wrap: wrap;
	}

	.f_bottom .left .f_info span {
		margin-bottom: 8px;
		font-size: 16px;
		width: 50%;
	}

	.f_bottom .left .f_info span:nth-child(1) {
		order: 1;
	}

	.f_bottom .left .f_info span:nth-child(2) {
		order: 3;
	}

	.f_bottom .left .f_info span:nth-child(3) {
		order: 5;
	}

	.f_bottom .left .f_info span:nth-child(4) {
		order: 2;
	}

	.f_bottom .left .f_info span:nth-child(5) {
		order: 4;
	}

	.f_bottom .left .f_info span:nth-child(6) {
		order: 6;
	}

	.f_bottom .left .f_info span b {
		width: 94px;
	}

	.f_bottom .right {
		float: right;
		text-align: right;
		width: 415px;
	}

	.f_bottom .right .link {
		margin-bottom: 30px;
	}

	.f_bottom .right .link a {
		font-size: 16px;
		line-height: 24px;
	}

	.f_bottom .right .sns {
		display: block;
		text-align: right;
		margin-bottom: 30px;
	}

	.f_bottom .right .sns a {
		display: inline-block;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		font-size: 0;
		color: transparent;
	}

	.f_bottom .right .sns a:last-child {
		margin-left: 8px;
	}

	.f_bottom>p {
		clear: both;
		font-size: 15px;
		line-height: auto;
		text-align: right;
		padding: 30px 0 0;
		border-top: 1px solid #262626;
	}

	/* sub */
	.sub .con {
		width: 1280px;
		margin: 0 auto;
	}

	/* about_kateco */
	/* .con_title_visual {margin-top:190px;} */
	.con_title_visual .con {
		width: 1280px;
		margin: 0 auto;
	}

	.con_title_visual .con_visual div {
		width: 1200px;
		height: 540px;
		border-radius: 16px;
		background: url(/img/bg_sub_about_kateco.png) no-repeat center/cover;
		margin: 0 auto 130px;
	}

	/* about_kateco */
	#about_con .con {
		display: flex;
	}

	#about_con .left {
		width: 456px;
	}

	#about_con .left strong br {
		display: block;
	}

	#about_con .right {
		margin-top: 0;
		width: 824px;
	}

	#value {
		padding: 130px 0 180px;
	}

	.value_list .value_card {
		width: 408px;
	}

	.value_list .value_card span {
		display: block;
		margin: 0 auto 42px;
		width: 180px;
		height: 180px;
	}


	/* about_history */
	.history_con {
		display: flex;
		justify-content: space-between;
	}

	.history_con .left {
		width: 520px;
	}

	.history_con .right {
		width: 539px;
	}

	.history_con .right>div {
		margin-bottom: 72px;
	}

	.history_con .right h4 {
		font-size: 42px;
		margin-bottom: 24px;
	}

	.history_con .right h4::before {
		left: -111px;
	}

	.history_con .right ul li {
		margin-bottom: 10px;
		font-size: 18px;
	}

	.history_con .right ul li span {
		width: 80px;
	}

	.history_con .right ul li p {
		width: calc(100% - 38px);
	}

	.history_tab a {
		display: inline-block;
		color: #fff;
		font-weight: 600;
		color: #888;
		letter-spacing: -3%;
	}

	.history_con {}

	/* .history_con .left {width:520px;} */

	/* about_history */
	#history_wrap {
		padding-bottom: 200px;
	}

	.history_tab_sticky {
		margin-bottom: 120px;
		top: 90px;
	}

	.history_tab {
		margin-bottom: 0;
	}

	.history_tab a {
		width: 180px !important;
		height: 60px !important;
		line-height: 60px !important;
		border-radius: 60px !important;
		font-size: 20px !important;
		margin-right: 20px !important;
	}

	.history_tab .swiper-wrapper {
		transform: none !important;
		justify-content: center;
	}

	.history_tab a:last-child {
		margin-right: 0 !important;
	}

	/* sub */
	.sub .con {
		width: 1280px;
		margin: 0 auto;
	}

	/* about_kateco */
	/* .con_title_visual {margin-top:190px;} */
	.con_title_visual .con {
		width: 1280px;
		margin: 0 auto;
	}

	.con_title_visual .con_visual div {
		width: 1200px;
		height: 540px;
		border-radius: 16px;
		background: url(/img/bg_sub_about_kateco.png) no-repeat center/cover;
		margin: 0 auto 130px;
	}

	/* about_history - left/right가 그룹별로 짝지어 있으므로 grid로 left는 겹쳐서(sticky+fade), right는 세로로 흐르게 배치 */
	.history_con {
		display: grid;
		grid-template-columns: 520px 539px;
		justify-content: space-between;
		align-items: start;
	}

	.history_con .left {
		grid-column: 1;
		grid-row: 1 / -1;
		width: 520px;
		margin-bottom: 0;
		position: sticky;
		top: 300px;
		display: none;
		opacity: 0;
		transition: opacity .6s;
	}

	.history_con .left.active {
		display: block;
	}

	.history_con .left h3 {
		font-size: 24px;
		margin-bottom: 16px;
	}

	.history_con .left p {
		font-size: 44px;
		line-height: 54px;
	}

	.history_con .left history_img,
	.history_con .left span {
		height: 360px;
		border-radius: 0 70px;
		margin-top: 50px;
	}

	.history_con .right {
		grid-column: 2;
		width: 539px;
		padding-left: 0;
		margin-bottom: 72px;
	}

	.history_con .right>div {
		margin-bottom: 72px;
	}

	.history_con .right h4 {
		font-size: 42px;
		margin-bottom: 24px;
	}

	.history_con .right ul li {
		margin-bottom: 10px;
		font-size: 18px;
	}

	.history_con .right ul li span {
		width: 80px;
	}

	.history_con .right ul li p {
		width: calc(100% - 38px);
	}

	.history_con .right>i {
		left: -100px;
	}


	/* series */
	.tab_wrap .tab {
		width: 1280px;
	}


	/* series_con */
	.series_content .con_box {
		width: 100%;
		text-align: center;
	}

	.series_content .con_box img {
		width: 1000px;
		margin: 0 auto 50px;
	}

	.series_content .con_list a {
		padding: 0 20px;
	}

	.series_content .con_list a span {
		width: 76px;
	}

	.series_content .con_list a p {
		width: 1144px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		margin-left: 40px;
	}

	/* product */
	.product_con .item {
		width: 404px;
	}

	.product_con .item span {
		height: 220px;
	}



	/* product_con */
	.product_content .con_box .left {
		width: 620px;
		margin-bottom: 0;
	}

	.product_content .con_box .left .thumbnail a {
		width: 196px;
	}

	.product_content .con_box .right {
		width: 600px;
	}

	.product_content .con_box .right .product_info {
		margin-bottom: 30px;
	}

	.product_content .con_box .right .product_info .item .pro_t {
		width: 240px;
	}

	.product_content .con_box .right .product_info .item .pro_t br {
		display: none;
	}

	.product_content .con_box .right .product_info .item .pro_con {
		width: 360px;
	}

	.product_content .con_box .right .link {
		text-align: center;
	}

	.product_content .con_box .right .link button,
	.product_content .con_box .right .link a {
		width: 292px;
		margin-right: 12px;
	}

	.product_content .con_box .right .link button:last-child,
	.product_content .con_box .right .link a:last-child {
		margin-right: 0;
	}



	/* patent */
	.patent_con {
		gap: 50px 28px;
	}

	.patent_con .item {
		width: 299px;
	}

	.patent_popup {
		width: 1200px;
	}

	.patent_popup .left {
		width: 560px;
	}

	.patent_popup .right {
		width: 640px;
		padding: 171px 80px 0;
	}

	.patent_popup .popup_close {
		right: 40px;
	}


	/* notice */
	.notice_inner .list_wrap .item .num {
		width: 78px;
		margin-right: 50px;
	}


	/* reference */
	.reference_con {
		gap: 50px 28px;
	}

	.reference_con .item {
		width: 299px;
	}

	.reference_con> :not(.item):has(> .item) {
		width: 299px;
	}


	/* contact */
	.contact_form .item textarea {
		width: 1050px;
	}


	/* sitemap */
	#sitemap_wrap .con {
		width: 1400px;
	}

	.depth2 {
		padding: 30px 44px 170px;
	}

	.depth2 h3 {
		font-size: 24px;
		color: #111;
		font-weight: 700;
		margin-bottom: 32px;
	}

	.depth2>ul>li>a {
		font-size: 17px;
		line-height: 38px;
		color: #666;
		font-weight: 500;
		font-weight: 600;
	}

	.depth2>ul>li>a:hover {
		color: #0c1994;
	}

	.depth2.depth2_pro>ul>li>a {
		color: #111;
		font-weight: 600;
		margin-bottom: 12px;
	}

	.depth3 {
		margin-bottom: 32px;
	}

	.depth3 li a {
		font-size: 17px;
		font-weight: 500;
		color: #666;
		line-height: 34px;
	}
}





@media (prefers-reduced-motion: reduce) {
	.quality_text div span {
		clip-path: none !important;
	}

	.quality_text div span b {
		width: var(--box-w, 90px) !important;
	}

	.quality_text p {
		opacity: 1 !important;
	}
}


/* 약관 팝업 */
body.policy_lock {position:fixed; left:0; width:100%; overflow:hidden;}

.policy_dim {position:fixed; left:0; top:0; width:100%; height:100%; background-color:rgba(0,0,0,.8); z-index:200; display:none;}
.policy_dim.on {display:block;}

.policy_popup {position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); background-color:#fff; border-radius:16px; overflow:hidden; width:88.888%; max-width:520px; max-height:82vh; display:flex; flex-direction:column; padding-bottom:19px;}
.policy_popup .policy_head {position:relative; padding:60px 0 30px;}
.policy_popup .policy_head h3 {font-size:22px; letter-spacing:-1%; line-height:1.4; text-align:center; font-weight:600;}
.policy_popup .policy_close {width:20px; height:20px; background:url(/img/icon_popup_close.png) no-repeat center/contain; position:absolute; right:15px; top:21px; text-indent:-9999px; overflow:hidden;}
.policy_popup .policy_cont {width:87.5%; height:304px; border-radius:8px; background-color:#f5f5f5; padding:30px 7.142% 0; margin:0 auto; overflow-y:auto; -webkit-overflow-scrolling:touch;}
.policy_popup .policy_cont p {font-size:14px; line-height:24px; letter-spacing:-2%; color:#333; font-weight:500; word-break:keep-all; margin-bottom:20px;}
.policy_popup .policy_cont.on {display:block;}
.policy_popup .policy_loading {text-align:center; color:#999; padding:40px 0;}

@media all and (min-width:1024px){
  .policy_popup {width:80%; max-width:1080px; height:598px; border-radius:16px; padding-bottom:70px;}
  .policy_popup .policy_head {padding:90px 0 41px;}
  .policy_popup .policy_head h3 {font-size:32px;}
  .policy_popup .policy_close {width:27px; height:27px; right:40px; top:40px;}
  .policy_popup .policy_cont {width:87.037%; height:359px; padding:40px 4.255%;}
  .policy_popup .policy_cont p {font-size:15px; line-height:28px;}
  .policy_popup .policy_cont h4 {font-size:17px; margin:28px 0 10px;}
}

