@media screen and (max-width:1600px){
	/* common */
	.w1600,.w1590{ padding: 0 20px;}
	.font85{ font-size:75px; }
	.font80{ font-size:70px; }
	.font70{ font-size:60px; }
	
	/* header */
	header .headerBox > div { padding: 0 20px;}

	/* main */
	main .visual .txtBox{ left: 0; padding: 0 20px;}
	main .products .w1590 > .txtBox{ margin-bottom: 40px;}
	main .news .w1590 > .txtBox{ margin-bottom: 50px;}

	/* sub */
	#quotes img{ width:30px;}

}

@media screen and (max-width:1400px){
	/* common */
	.w1300{ padding: 0 20px;}
	.font85{ font-size:65px; }
	.font80{ font-size:60px; }
	.font70{ font-size:50px; }
	.font55,.font54{ font-size:40px; }
	.font50{ font-size:35px; }

	/* sub */
	#history section .ctnBox .txtBox{ margin-left: 50px; flex-shrink:0; }
	#history section.second .ctnBox .txtBox{ margin-left: 0; margin-right: 50px;}

	#process .intro .txtBox .txt br{ display:none; }
	#process .intro figure{ width: 50%;}

	#lab .info .ctnBox .itemBox .txtBox .topBox .txt br{ display:none; }
}

@media screen and (max-width:1200px){
	/* common */
	.font85{ font-size:55px; }
	.font80{ font-size:50px; }
	.font70{ font-size:45px; }
	.font56,.font55,.font54{ font-size:35px; }
	.font50{ font-size:32px; }
	.font46{ font-size:31px; }
	.font40{ font-size:30px; }
	.font36{ font-size:28px; }
	.font30,.font28{ font-size:26px; }

	#viewBtn{ width: 200px; height: 60px;}

	/* header */
	header .headerBox nav{ display:none; }
	header .headerBox .sideBox .langBtn{ margin-right: 20px;}

	#allMenu{ width: 80%;}
	#allMenu #allGnb #gnb > li > a{ font-size:40px; }

	/* main */
	main .visual .videoBox video{ width: auto; height: 100%; }

	main .service{ height: 100vh;}
	main .service .imgBox figure{ width: 70%; margin: 0 0 0 auto;}

	main .products,main .news{ height: auto; padding: 100px 0;}
	main .products > div > .txtBox{ margin-bottom: 30px;}
	main .products .ctnBox{ gap:20px; }
	main .products .ctnBox .itemBox{ width: calc((100% - 20px) / 2); height: 300px;}
	main .products .ctnBox .itemBox .txt{ transform: rotate(0); top: 30px; right: 30px;}
	main .products .ctnBox .itemBox #viewBtn{ bottom: 30px;}

	main .technology .ctnBox02{ margin-top: 0; }

	main .technology .ctnBox02 .txtBox .txt br{ display:none; }
	main .technology .ctnBox02 .txtBox{ padding-left: 30px; }

	main .news{ margin-top: 0;}
	main .news .ctnBox{ gap:30px 20px; }
	main .news .ctnBox .itemBox{ width: calc((100% - 20px) / 2);}

	/* sub */
	#subContents{ padding: 100px 0 150px;}

	#about section:not(:last-child){ margin-bottom: 100px;}
	#about .visual{ padding: 0 20px;}
	#about .visual .title{ width: 80%; }
	#about .value .ctnBox{ justify-content: center;}
	#about .value .ctnBox .itemBox{ width: 350px; height: 350px;}

	#greeting section:not(:last-child), 
	#greeting .info > div:not(:last-child){ margin-bottom: 100px; }
	#greeting .intro .txt br{ display:none; }

	#history section:not(:last-child){ margin-bottom: 100px;}

	#organization .ctnBox .bottom:before{ width: 88.5%; }

	#process .intro{ margin-bottom: 100px;}
	#process .content{ padding: 100px 0 150px;}
	#process .content .ctnBox{ gap: 30px; padding: 0 30px;}
	#process .content .ctnBox:before{ top: 58px;}
	#process .content .ctnBox dl{ width: calc((100% - 90px) / 4); }

	#factory section:not(:last-child){ margin-bottom: 100px;}
	#factory section .titleBox{ margin-bottom: 60px;}
	#factory .intro .imgBox .leftBox{ width: 70%;}
	#factory .intro .imgBox .leftBox .txtBox .Box{ gap: 30px; }
	#factory .intro .imgBox .leftBox .txtBox .Box ul{ width: 50%; }
	#factory .intro .imgBox .leftBox .txtBox .Box ul li br{ display:none; }
	#factory .manu .ctnBox{ gap:30px; }
	#factory .manu{ padding: 100px 0;}
	#factory .manu .ctnBox:not(:last-child){ margin-bottom: 100px;}
	#factory .pack .ctnBox:not(:last-child){ margin-bottom: 100px;}

	#quality section:not(:last-child){ margin-bottom: 100px;}
	#quality .mana .imgBox:not(:last-child){ margin-bottom: 100px;}
	#quality .certi .ctnBox{ gap:70px 20px; }
	#quality .certi .ctnBox .itemBox{  width: calc((100% - 40px) / 3); }

	.Product section:not(:last-child){ margin-bottom: 100px;}

	#proprietary .ctnBox{ gap:100px 25px; }
	#proprietary .ctnBox .itemBox .txt br{ display:none; }
	
	#lab .intro{ margin-bottom: 100px;}
	#lab .intro .txtBox .txt br{ display:none; }
	#lab .intro figure{ flex-shrink:0; width: 40%;}
	#lab .intro .txtBox .title{ margin: 60px 0;}
	#lab .info{ padding-top: 100px;}
	#lab .info .ctnBox .itemBox .txtBox .topBox{ padding: 30px 20px;}

	#performance .intel{ margin-bottom: 100px;}

	.news_view{ padding-top: 80px;}

	#location section:not(:last-child){ margin-bottom: 100px; }

	/* footer */
	footer .topBox{ flex-direction:column; align-items: normal; }
	footer .topBox .logo{ margin: 0 0 30px 0; width: 100px;}
	footer .topBox .infoBox ul{ flex-wrap:wrap; gap:10px; line-height: 1.5;}
	footer .topBox .infoBox ul:first-child{ gap:10px; }
}

@media screen and (max-width:960px){
	/* common */
	.font85,.font80{ font-size:40px; }
	.font70{ font-size:35px; }
	.font56,.font55,
	.font54,
	.font50{ font-size:30px; }
	.font46{ font-size:29px; }
	.font40{ font-size:28px; }
	.font36{ font-size:26px; }
	.font30,.font28{ font-size:23px; }
	.font26{ font-size:22px; }
	.font24{ font-size:20px; }
	.font22{ font-size:19px; }
	.font20{ font-size:18px; }
	.font19{ font-size:17px; }
	.font18{ font-size:16px; }
	.font17{ font-size:15px; }
	.font16{ font-size:14px; }

	body{ word-break:keep-all;}

	#labBtn{ width: 80px;} 
	#labBtn .arrow{ width: 50px; height: 50px;}

	/* header */
	header .headerBox > div{ height: 70px; }
	header .headerBox .logo a{ display:block; width: 80%;}

	#allMenu{ width: 100%; padding: 30px 20px;}
	#allMenu #allGnb #gnb > li > a{ font-size:35px; }
	#allMenu #allGnb #gnb .depth2 li:not(:last-child){ margin-bottom: 10px;}
	#allMenu #allGnb #gnb .depth2 li:not(:last-child):after{ margin: 0 10px;}
	#allMenu #allGnb #gnb .depth2 li a{ font-size:16px; }

	/* main */
	#fullpage{ overflow: hidden;}
	main .visual .txtBox{ bottom: 100px;}
	main .visual .txtBox .txt{ white-space: nowrap;}
	main .visual .txtBox .title br{ display:block; }
	@keyframes Blur2{
		0%{ letter-spacing: 0px; filter: blur(10px); -webkit-filter: blur(10px); opacity: 0; }
		100%{ letter-spacing: 0px; filter: blur(0); -webkit-filter: blur(0); opacity: 1;}
	}

	main .service{ height: auto; padding: 80px 0;}
	main .service .txtBox{ margin-top: 0px; position: relative; top: auto; left: auto;}
	main .service .txtBox .txt span br{ display:none; }
	main .service .txtBox .title .flexBox .split:first-child{ margin-right: 10px;}
	main .service .imgBox{ position: relative; transform:none; top: auto; right: auto; margin-top: 40px;}
	main .service .imgBox figure{ width: calc(100% - 40px); margin: 0 auto; }

	main .products .w1590 .txtBox{ flex-direction:column; align-items: flex-start; gap:20px; padding-top: 0;}
	main .products .ctnBox .itemBox{ width: 100%; height: 200px;}
	main .products .ctnBox .itemBox .txt{ top: 20px; right: 20px;}

	main .technology{ padding: 80px 0;}
	main .technology.type2{ padding-top: 0; }
	main .technology .ctnBox{ height: auto; padding: 0; }
	main .technology .ctnBox .txtBox .txt br{ display:none; }
	main .technology .ctnBox .flexBox{ flex-direction:column; height: auto;}
	main .technology .ctnBox .flexBox > div{ width: 100%; }
	main .technology .ctnBox .flexBox .imgBox{ height: 300px; position: relative; transform: none; top: auto; margin-top: 40px;}
	main .technology .ctnBox .txtBox #viewBtn{ margin-top: 60px;}
	main .technology .ctnBox02 .txtBox{ padding-left: 0; margin-top: 40px;}
	main .technology .ctnBox02 .flexBox .imgBox{ margin-top: 0;}

	main .news .ctnBox .itemBox{ width: 100%;}
	main .news .w1590 .txtBox{ flex-direction:column; align-items: flex-start; gap:40px; padding-top: 0;}
	main .news .w1590 .txtBox{ margin-bottom: 50px;}

	/* sub */
	#subContents{ padding: 50px 0 100px;}
	#sv .subVisual .innerBox{ padding: 120px 0 0; flex-direction:column; gap:20px; }

	#quotes .left{ margin: 0 5px 0 0;}
	#quotes .right{ margin: 20px 0 0 5px;}

	#imgBak:before{ top: 20px; left: 20px;}

	#titleBox.right{ margin-bottom: 40px;}

	#about section:not(:last-child){ margin-bottom: 80px;}
	#about section > .title{ margin-bottom: 40px;}
	#about .visual .title{ width: 85%; gap:0; }
	#about .info{ flex-direction:column; align-items: flex-start;}
	#about .info .txtBox{ width: 100%; margin-bottom: 30px;}
	#about .info .txtBox .txt br{ display:none; }
	#about .info .txtBox .bg{ width: 50%; margin: -20px 0 0 auto;}
	#about .info #imgBak{ width: 100%;}
	#about .outline .ctnBox { gap:20px; }
	#about .outline .ctnBox .itemBox{ padding: 30px 20px; width: calc((100% - 20px) / 2); height: auto;}
	#about .value .ctnBox{ flex-wrap:wrap; margin-top: 60px;}
	#about .value .ctnBox .itemBox{ width: 100%; height: auto; padding: 30px 20px; border-radius:20px; }
	#about .value .ctnBox .itemBox:not(:first-child){ margin-left: 0; margin-top: 30px;}
	#about .value .ctnBox .itemBox figure{ width: 60px; height: 60px;}
	#about .value .ctnBox .itemBox figure svg{ width: 100%; }
	#about .value .ctnBox .itemBox .txt br{ display:none; }

	#greeting section:not(:last-child), 
	#greeting .info > div:not(:last-child){ margin-bottom: 80px; }
	#greeting .intro .title{ letter-spacing:0; width: 80%; margin: 0 auto 40px;}
	#greeting .intro .title .left{ margin: 0 5px 0 -40px;}
	#greeting .intro .txt02{ margin-top: 30px;}
	#greeting .info .ctnBox{ flex-wrap:wrap; }
	#greeting .info .ctnBox .itemBox{ width: 100%; }
	#greeting .info > div:not(.titleBox) .title{ margin-bottom: 30px;}
	#greeting .info .type .ctnBox .itemBox figure{ height: 130px; padding: 0 60px;}

	#history{ margin-bottom: 0;}
	#history section:not(:last-child){ margin-bottom: 80px;}
	#history section > .title{ margin-bottom: 40px;}
	#history section .ctnBox{ flex-direction:column; }
	#history section .ctnBox > *{ width: 100%; }
	#history section .ctnBox .txtBox{ margin: 0; order:1; }
	#history section .ctnBox .txtBox .bar{ margin-right: 30px;}
	#history section .ctnBox .txtBox .yearBox .itemBox .year:before{ left: -35px;}
	#history section .ctnBox .imgBox{ order:0; position: relative; top: 0; left: 0; height: auto; margin-bottom: 30px; width: 100%; height: 200px; border-radius:20px; overflow: hidden;}
	#history section .ctnBox .imgBox img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%; min-height:100%; object-fit:cover; }
	#history section.second .ctnBox{ text-align: left; }
	#history section.second .ctnBox .txtBox{ flex-direction: row-reverse; }
	#history section.second .ctnBox .txtBox .bar{ margin-left: 0; margin-right: 30px;}
	#history section.second .ctnBox .txtBox .yearBox .itemBox ul li{ flex-direction: row;}
	#history section.second .ctnBox .txtBox .yearBox .itemBox ul li span{ margin-right: 15px; margin-left: 0;}
	#history section.second .ctnBox .txtBox .yearBox .itemBox .year:before{ left: -35px; right: auto;}

	#organization .ctnBox .top{ width: 180px; height: 180px;}
	#organization .ctnBox .top span{ width: 130px; height: 130px;}
	#organization .ctnBox .center p{ width: 130px;}
	#organization .ctnBox .center .line{ width: 40px;}
	#organization .ctnBox .bottom{ gap:20px; }
	#organization .ctnBox .bottom:before{ display:none; }
	#organization .ctnBox .bottom dl{ width: calc((100% - 40px) / 3);}
	#organization .ctnBox .bottom dl dt{ margin-top: 0px;}
	#organization .ctnBox .bottom dl dt:before{ display:none; }

	#process .intro{ flex-direction:column; margin-bottom: 80px;}
	#process .intro figure{ width: auto;}
	#process .content{ padding: 80px 0 100px;}

	#factory section:not(:last-child){ margin-bottom: 80px;}
	#factory section .titleBox{ margin-bottom: 40px;}
	#factory .manu{ padding: 80px 0;}
	#factory .manu .ctnBox:not(:last-child){ margin-bottom: 60px;}
	#factory .intro .imgBox{ flex-wrap:wrap; gap:15px}
	#factory .intro .imgBox .leftBox{ width: 100%; height: 300px; }
	#factory .intro .imgBox .leftBox .txtBox{ padding: 20px; background:rgba(0,0,0,0.2); height: 100%; display:flex; flex-direction:column; justify-content: flex-end }
	#factory .intro .imgBox .leftBox .txtBox .Box{ flex-wrap:wrap; gap:0; }
	#factory .intro .imgBox .leftBox .txtBox .Box ul{ width: 100%;}
	#factory .intro .imgBox .rightBox{ width: 100%; height: 150px; flex-direction: row; gap:15px}
	#factory .intro .imgBox .rightBox .fitBox{ height: 100%; }
	#factory .manu .ctnBox{ flex-direction:column; }
	#factory .manu .ctnBox .txtBox{ order:2; }
	#factory .manu .ctnBox .txtBox dl dt{ height: 40px;}
	#factory .pack .ctnBox:not(:last-child){ margin-bottom: 60px;}
	#factory .pack .ctnBox .txtBox{ padding: 20px; margin-bottom: 20px;}
	#factory .pack .ctnBox .txtBox p{ flex-wrap:wrap; }
	#factory .pack .ctnBox .txtBox p.line{ margin: 0 20px;}
	#factory .pack .ctnBox .imgBox{ gap:10px; }

	#quality .visual{ padding-top: 50px;}
	#quality section:not(:last-child){ margin-bottom: 80px;}
	#quality .mana .imgBox:not(:last-child){ margin-bottom: 80px;}
	#quality .mana .txtBox{ padding-bottom: 0; }
	#quality .mana .txtBox .title{ margin-bottom: 0px;}
	#quality .mana .txtBox dl{ flex-wrap:wrap; }
	#quality .mana .txtBox dl dd{ width: 100%; padding: 20px 0; }
	#quality .mana .txtBox dl dd:not(:last-child){ border-bottom:1px solid #dfdfdf; }
	#quality .mana .txtBox dl dd:not(:last-child):after{ display:none; }
	#quality .mana .imgBox{ gap:20px; flex-wrap: wrap; }
	#quality .mana .imgBox .item{ width: 100%; }
	#quality .mana .imgBox .item:not(:last-child){ margin-bottom: 20px;}
	#quality .mana .imgBox .title{ margin-bottom: 20px;}
	#quality .mana .imgBox .txt{ padding-bottom:20px;}
	#quality .certi .ctnBox{ gap:40px 20px; }
	#quality .certi .ctnBox .itemBox{  width: calc((100% - 20px) / 2); }
	#quality .certi .ctnBox .itemBox .fitBox{ height: 290px;}

	#global .mapBox{ padding: 50px 0;}
	#global .ctnBox{ gap:30px; flex-wrap:wrap; }
	#global .ctnBox .itemBox{ width: 100%; }
	#global .ctnBox .itemBox figure{ position: relative; width: 100%; height: 250px; border-radius:30px; overflow: hidden;}
	#global .ctnBox .itemBox figure img{ position: absolute; transform:translate(-50%,-50%); top: 50%;left: 50%; min-width:100%; min-height:100%; object-fit:cover; }

	.Product section:not(:last-child){ margin-bottom: 80px;}
	.Product .fitBox{ height: 250px;}
	.Product .iconBox{ gap:30px; } 
	.Product .txtBox .txt { width: 80%; margin: 0 auto;}
	.Product .txtBox .txt br{ display:none; }

	#proprietary .ctnBox{ gap:80px 25px; }
	#proprietary .ctnBox .itemBox{ width: 100%; }
	#proprietary .ctnBox .itemBox figure{ position: relative; width: 100%; height: 300px; overflow: hidden; border-radius:10px; }
	#proprietary .ctnBox .itemBox figure img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%;min-height:100%; object-fit:cover; }

	#lab .intro{ margin-bottom: 80px;}
	#lab .intro{ flex-direction:column; }
	#lab .intro .txtBox .title{ margin: 0 0 40px;}
	#lab .intro figure{ width: 100%; }
	#lab .info{ padding-top: 80px;}
	#lab .info .ctnBox:before{ display:none; }
	#lab .info .ctnBox .itemBox{ flex-wrap:wrap; justify-content:center; gap:40px }
	#lab .info .ctnBox .itemBox:before{  transform: translateX(-50%); top: 217px;}
	#lab .info .ctnBox .itemBox > *{ width: 100%; }
	#lab .info .ctnBox .itemBox .txtBox{ position: relative; z-index: -2; order:2; height: auto;}
	#lab .info .ctnBox .itemBox .txtBox:before{ content:''; display:block; position: absolute;  transform: translateX(-50%); left: 50%; top: -50px; width: 1px; height: 50px; background: #EFEFEF;}
	#lab .info .ctnBox .itemBox .txtBox .btmBox{ margin: 30px 10px;}
	#lab .info .ctnBox .itemBox .txtBox .topBox #titleBox{ margin-bottom: 20px;}
	#lab .info .ctnBox .itemBox figure{ position: relative; width: 100%; border-radius:20px; height: 200px; overflow: hidden;}
	#lab .info .ctnBox .itemBox figure img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%;min-height:100%; object-fit:cover; }

	#performance .intel{ margin-bottom: 80px;}
	#performance .ctnBox{ gap:30px 20px; }
	#performance .ctnBox .itemBox{ width: calc((100% - 40px) / 3);}
	#performance .ctnBox .itemBox .title{ word-break:break-all; }
 
 	#letter .ctnBox{ gap:40px 20px; }
	#letter .ctnBox .itemBox{ width: calc((100% - 40px) / 3);}
	#letter .ctnBox .itemBox figure{ height: 180px;}

	.news_view{ padding-top: 60px;}

	#location .mapBox{ height: 350px;}
	#location section:not(:last-child){ margin-bottom: 80px; }
	#location .txt{ flex-direction:column; align-items: flex-start;}
	#location .txt li:first-child{ align-items:flex-start; }
	#location .txt li:not(:last-child){ margin-bottom: 15px;}
	#location .txt li:not(:last-child):after{ display:none; }

	#inquiry .infoBox{ flex-wrap:wrap; gap:20px; }
	#inquiry .infoBox li{ padding: 20px; width: 100%; }

	/* footer */
	footer .topBox .logo{ width: 80px;}

}

@media screen and (max-width:640px){
	/* sub */
	#process .content .ctnBox{ flex-wrap:wrap; padding: 0;}
	#process .content .ctnBox dl{ width: calc((100% - 30px) / 2);}
	#process .content .ctnBox:not(:last-child):after{ content: ''; width: 100%; height: 1px; background: #dfdfdf; position: absolute; transform: translateX(-50%); bottom: 36%; left: 50%;  z-index: 0;}

	#performance .ctnBox .itemBox{ width: calc((100% - 20px) / 2);}

	#letter .ctnBox .itemBox{ width: calc((100% - 20px) / 2);}

}