@media screen and (max-width:1800px){
	/* common */
	.w1800{ padding: 0 20px; }

	/* sub */
	.subVisual .bg{ margin-left: 20px; width: calc(100% - 20px);} 

	.businessV > div{ padding: 90px 20px 0;}
	.businessV #tabBox{ padding: 0 20px;}

	#history .ctnBox .bar{ top: 40px; height: calc(100% - 40px);}

	#technology .phage .ctnBox .itemBox figure{ padding: 20px;}

	#product .m13 .content,
	#product section .content{ padding: 40px;}
	#product .m13 .content .ctnBox dl dd .imgBox { margin: 0;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap{ width: 35%;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox{ padding: 20px; width: 100%;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox figure{ flex-shrink:0; }
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox .txtBox .txt{ white-space:wrap; }	
	#product .m13 .content .ctnBox dl dd .imgBox .circle{ width: 30%;}
}

@media screen and (max-width:1700px){
	/* common */
	.font100{ font-size:80px; }
	.font90{ font-size:70px; }
	.font70{ font-size:60px; }
	.font66{ font-size:55px; }
	.font64{ font-size:52px; }
	.font60{ font-size:50px; }
	.font56{ font-size:46px; }
	
	.w1700{ padding: 0 20px;}		

	header .headerBox{ padding: 0 20px;}
	header .headerBox nav:hover #gnb > li > a{ padding: 0 40px;}

	/* main */
	main .visual .slideBox .swiper-slide{ padding: 100px 20px;}

	main .about .w1700 .title{ margin-right: 70px;}

	main .bio{ padding-top: 155px;}

	/* sub */
	.businessV .linkBox{ width: 20%;}
	.businessV .linkBox .tabBox{ flex-wrap:wrap; gap:10px; }
	.businessV .linkBox .tabBox li:not(:last-child){ margin-right: 0;}
	.businessV #material .content .ctnBox > .txtBox .txt br{ display:none; }
	.businessV #material .content .ctnBox .imgBox3{ flex-wrap:wrap; }
	.businessV #material .content .ctnBox .imgBox3 .itemBox{ width: calc((100% - 30px) / 2);}
	.businessV #material .content .ctnBox .imgBox3 .itemBox .img dd span{ right: -40px;}

	#company .ctnBox{ padding: 0 0 7px;}
	#company .ctnBox .bg{ width: 100%; }
	#company .ctnBox .center{ width: 40%; }
	#company .ctnBox .center svg{ width: 100%;}
	#company .ctnBox .itemWrap{ width: 30%;}
	#company .ctnBox .itemWrap .itemBox{ width: 100%;}

	#history .ctnBox{ padding: 0;}

	#product .pro .content .ctnBox .tableBox{ width: 70%; flex-shrink: 1;}
	#product .pro .content .ctnBox .tableBox .table1 tr td p br{ display:none; }
	#product .pro .content .infoBox .txtBox{ margin-right: 40px;}
	#product .pro.pen .content .ctnBox .imgBox{ width: 30%; flex-shrink:0; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item .circle{ padding: 0 20px; width: 150px; height: 150px;}
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item .circle .txt2{ font-size:25px; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item02 .circle{ width: auto; height: auto; flex-direction:column; padding: 20px; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item02 .circle > div{ margin-right: 0; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item02 .circle ul{ display:flex; flex-wrap:wrap; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item02 .circle ul li{ width: 50%; text-align: center; font-size:15px; }

	.gallery2 .ctnBox .itemBox figure{ height: 400px;}

	#contact .ctnBox .itemBox > dt{ min-width:auto; width: 20%;}
	#contact .ctnBox .itemBox > dd{ width: 80%;}
	#contact .ctnBox .itemBox > dd input.w350, 
	#contact .ctnBox .itemBox > dd select.w350{ width: calc(100% / 3);}
}

@media screen and (max-width:1400px){
	/* common */
	.font46{ font-size:40px; }

	#allMenu #allGnb .ctnBox1{ align-items:flex-start; padding-top: 200px;}
	#allMenu #allGnb .ctnBox1 #gnb li a{ padding: 18px 30px; font-size:40px; }
	#allMenu #allGnb .ctnBox2{ padding: 230px 30px 0;}

	/* main */
	main .research .txtBox .numBox{ padding: 20px 30px;}
	main .research .imgBox{ width: 540px; height: 540px;}
	main .research .imgBox > *{ width: 100%; text-align: center; }

	/* sub */
	.businessV .ctnWrap{ flex-wrap:wrap; }
	.businessV .linkBox{ position: relative; top: auto;  left: auto; min-height: auto; width: 100%;}
	.businessV .linkBox .txtBox .title{ margin: 0 0 30px;}
	.businessV .linkBox .txtBox .listBox{ display:flex; }
	.businessV .linkBox .txtBox .listBox li:not(:last-child){ margin-bottom: 0; margin-right: 15px;}
	.businessV .content{ margin-top: 50px;}
	.businessV #material .content .ctnBox .imgBox3{ padding: 40px;}

	#company .ctnBox .itemWrap .itemBox{ padding: 30px 20px;}
	
	#ceo .ctnBox .imgBox{ width: 40%;}

	#product .m13 .content .img{ width: 300px; height: 300px;}
	#product .m13 .content .img img{  height: 100%; }
	#product .m13 .content .ctnBox .inquiryBox{ margin: 60px auto 0;}

	#product .pro .content .infoBox > *{ width: calc((100% - 30px) / 2);}
	#product .pro .content .infoBox .txtBox{ margin-right: 30px;}
	#product .pro .content .infoBox .txtBox ul li span{ max-width:150px; }

	.ir .topCtn .tabBox li:not(:last-child):after{ margin: 0 30px;}

	.gallery .ctnBox{ gap:60px 20px; }
	.gallery .ctnBox .itemBox{ width: calc((100% - 60px) / 4);}

	#contact .ctnBox .itemBox{ padding: 20px; padding-left: 0;}
}

@media screen and (max-width:1200px){
	/* common */
	.font100{ font-size:70px; }
	.font90{ font-size:60px; }
	.font70{ font-size:45px; }
	.font66{ font-size:43px; }
	.font64{ font-size:42px; }
	.font60{ font-size:40px; }
	.font56{ font-size:38px; }
	.font46{ font-size:35px; }
	.font40{ font-size:32px; }
	.font36,.font34{ font-size:28px; }
	.font28{ font-size:25px; }

	header .headerBox nav{ display:none; }

	/* main */
	main section:not(.visual,.bio){ height: auto; padding: 150px 0;}
	main .about .w1700{ flex-direction:column; align-items:flex-start; justify-content:center; }
	main .about .w1700 .title{ margin-right: 0; margin-bottom: 40px;}

	main .research .w1700{ flex-wrap:wrap; }
	main .research .w1700 .txtBox{ width: 100%; margin-bottom: 40px;}

	/* sub */
	#subContents{ padding: 100px 0 150px; }
	.subVisual .bg{ height: 350px;}

	#bgLinear{ width: calc(100% + 30px); height: calc(100% + 30px); }

	#business .ctnBox .itemBox .txtBox{ padding: 40px;}

	.businessV .ctnWrap:not(#material),
	.businessV #monitoring section:not(#water),
	.businessV #device section:not(:first-child),
	.businessV #develop section:not(:first-child){ padding-top: 100px;}
	.businessV #tabBox.fixed{ top: 20px;}
	.businessV .linkBox { margin-right: 0; }
	.businessV .linkBox .tabBox.fixed{ position: fixed; top: 30px; left: 20px; z-index: 100; width: calc(100% - 40px); }
	.businessV .linkBox .tabBox li{ width: calc((100% - 30px) / 4);}
	.businessV .content h3.title{ margin-bottom: 30px;}
	.businessV #material .content section:not(:first-child){ padding-top: 100px;}
	.businessV #material .content .ctnBox:not(:last-child){ margin-bottom: 80px;}

	#company h3.title{ margin-bottom: 40px;}
	#company h3.title br{ display:none; }
	#company .ctnBox{ flex-wrap:wrap; }
	#company .ctnBox .bg{ bottom: auto; top: 100px;}
	#company .ctnBox .center{ width: 100%; order:-1; width: 90%; margin: 0 auto 40px;}
	#company .ctnBox .center svg{ height: 100%;}
	#company .ctnBox .center path.line,
	#company .ctnBox .center circle.dot{ display:none; }
	#company .ctnBox .itemWrap{ width: 100%}
	#company .ctnBox .itemWrap .itemBox:not(:last-child){ margin-bottom: 20px;}
	#company .ctnBox .itemWrap .itemBox dd p{ min-height: 80px; padding: 20px;}
	#company .ctnBox .itemWrap.left { margin-bottom: 20px; margin-right: 0;}
	#company .ctnBox .itemWrap.left .itemBox dt{ text-align: left;}
	#company .ctnBox .itemWrap.right{ margin-left: 0;}

	#ceo .ctnBox > .txtBox ul{ padding: 40px 20px;}
	#ceo .ctnBox > .txtBox .txt br{ display:none; }

	#history .ctnBox .itemBox:not(:last-child){ margin-bottom: 100px;}
	#history .ctnBox .itemBox .txtBox{ margin-top: 100px;}
	#history .ctnBox .itemBox > * { width: calc((100% - 150px) / 2);}
	#history .ctnBox .itemBox div:first-child{ margin-right: 150px;}
	#history .ctnBox .itemBox .imgBox .year span.circle{ left: -87px;}
	#history .ctnBox .itemBox:nth-child(2n-1) .imgBox .year span{ right: -87px;}

	#location .ctnBox{ height: auto; }
	#location .ctnBox .tabBox{ position: relative; top: auto; left: auto; display:flex; margin-bottom: 30px;}
	#location .ctnBox .tabBox .itemBox{ width: calc((100% - 20px) / 3); max-width: none; }
	#location .ctnBox .tabBox .itemBox:not(:last-child){ margin-bottom: 0; margin-right: 10px;}
	#location .ctnBox .tabBox .itemBox .title{ flex-direction:column; align-items: flex-start; }
	#location .ctnBox .tabBox .itemBox .title div{ margin-top: 10px;}
	#location .ctnBox .mapBox,
	#location .ctnBox .mapBox .wrap_map{ height: 500px !important;}

	#technology section:not(:last-child){ margin-bottom: 100px;}
	#technology .phage .ctnBox, 
	#technology .phage .ctnBox .itemWrap{ gap:30px; }
	#technology .phage .ctnBox{ padding: 40px;}
	#technology .phage .ctnBox .itemWrap{ width: 100%;}
	#technology .phage .ctnBox .itemWrap .itemBox,
	#technology .phage .ctnBox .itemBox{ width: calc((100% - 60px) / 3);}
	#technology .tech .ctnBox{ padding: 40px;}

	#product .m13 .content{ padding: 20px; flex-direction:column; align-items:center; }
	#product .m13 .content .img{ margin: 0 0 30px;}
	#product .m13 .content .ctnBox .inquiryBox{ display:block; }
	#product .m13 .content .ctnBox dl dd .imgBox{ flex-wrap:wrap; }
	#product .m13 .content .ctnBox dl dd .imgBox .circle{ order:-1; width: 100%; margin-bottom: 30px; }
	#product .m13 .content .ctnBox dl dd .imgBox .circle .m{ display:none; }
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap{ margin-left: 0; width: calc((100% - 20px) / 2); }
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox{ flex-direction:column; align-items:center; justify-content:center; height: auto; text-align: center; }
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox:not(:last-child){ margin-bottom: 20px;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox figure{ order:-1; }
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox .txtBox{ margin-left: 0; margin-top: 20px;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap.left{ margin-right: 20px;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap.left .itemBox{ justify-content: center; }
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap.left .itemBox .txtBox{ text-align: center; margin-right: 0; margin-left: 0; }

	#product section:not(:last-child){ margin-bottom: 100px;}
	#product section .content{ padding: 20px;}
	#product section dl dt{ padding: 0 20px;}
	#product .pro .content .infoBox{ flex-direction:column; margin-bottom: 80px;}
	#product .pro .content .infoBox > *{ width: 100%; }
	#product .pro .content .infoBox .txtBox{ margin-right: 0; margin-bottom: 30px;}
	#product .pro .content .infoBox .txtBox figure{ text-align: center; }
	#product .pro .content .infoBox .txtBox ul{ padding: 30px;}
	#product .pro .content .ctnBox{ flex-wrap:wrap; }
	#product .pro .content .ctnBox .imgBox{ margin-right: 0; }
	#product .pro .content .ctnBox .tableBox{ width: 100%;}
	#product .pro .content .ctnBox .tableBox table tr th{ height: 70px; padding: 0 3px; }
	#product .pro .content .ctnBox .tableBox table tr td{ height: auto; padding: 10px;}
	#product .pro .content .ctnBox .imgBox .title{ position: relative; top: auto; left: auto; margin-bottom: 30px; text-align: left; }
	#product .pro .content .ctnBox .imgBox,
	#product .pro.pen .content .ctnBox .imgBox,
	#product .pro.pim .content .ctnBox .imgBox{ height: auto; width: 100%; margin-right: 0; margin-bottom: 30px; display:block; text-align: center; }

	.ir .topCtn{ flex-direction:column; }
	.ir .topCtn .tabBox{ margin-left: 0; margin-bottom: 30px;}
	.ir .topCtn .searchBox{	 width: 100%;}
	.ir .topCtn .searchBox select{ width: 30%; }
	.ir .topCtn .searchBox .inputBox{ width: 70%;}

	#view .ctnBox .titleBox .title{ width: 100%; margin-right: 0; margin-bottom: 20px;}
	#view .ctnBox .infoBox{ padding: 80px 20px 100px;}
	#view .ctnBox .infoBox figure{ margin-bottom: 60px;}
	#view .ctnBox .fileBox{ margin-bottom: 60px;}

	.gallery .ctnBox{ gap:40px 20px; }
	.gallery .ctnBox .itemBox{ width: calc((100% - 20px) / 2);}

	.gallery2 .ctnBox .itemBox figure{ width: 400px; height: 510px; margin: 0 auto 20px; }

	#contact .ctnBox .itemBox > dd input.w500, 
	#contact .ctnBox .itemBox > dd .fileBox .txt.w500{ width: 100%;}
	#contact .bBtn{ margin: 80px auto 0;}
}  

@media screen and (max-width:960px){
	/* common */
	.font100{ font-size:55px; }
	.font90{ font-size:45px; }
	.font70{ font-size:40px; }
	.font66{ font-size:37px; }
	.font64,.font60{ font-size:35px; }
	.font56{ font-size:33px; }
	.font46{ font-size:30px; }
	.font40{ font-size:28px; }
	.font36,.font34{ font-size:26px; }
	.font28{ font-size:23px; }
	.font22{ font-size:19px;}
	.font20{ font-size:18px;}
	.font19{ font-size:17px;}
	.font18{ font-size:16px;}
	.font17{ font-size:15px;}
	
	.mobile{ display:block; }
	.pc{ display:none; }

	header .headerBox > div{ height: 70px;}
	header .headerBox .logo a{ display:block; width: 150px;}
	header .headerBox .logo a svg{ width: 100%; }

	#allMenu .bg{ display:none; }
	#allMenu #allGnb .ctnBox1 #gnb li a{ font-size: 25px; }
	#allMenu #allGnb .ctnBox2{ padding-top: 220px;}
	#allMenu #allGnb .ctnBox2 #gnb > li .depth2 li a{ font-size:20px; }
	#allMenu #allClose{ top: 30px; right: 20px;}

	#topBtn{ bottom: 20px; right: 20px;}

	/* main */
	main section:not(.visual,.bio){ padding: 100px 0;}

	main .visual .slideBox .swiper-slide .txtBox .title{ white-space:nowrap; }
	main .visual .slideBox .swiper-slide.slide01 .txtBox{ flex-direction:column; align-items: normal; padding-bottom: 100px;}
	main .visual .slideBox .swiper-slide.slide01 .txtBox > div{ margin-bottom: 40px;}

	main .about .txtBox  br.mo{ display:block; }
	
	main .research .w1700{ text-align: center; justify-content: center; }
	main .research .txtBox .numBox{ width: 100%; justify-content:center; }
	main .research .txtBox .numBox .itemBox:not(:last-child){ margin-right: 40px;}
	main .research .txtBox .numBox .itemBox .num,
	main .research .txtBox .numBox .itemBox:first-child .num{ width: 85px;}
	main .research .imgBox{ width: 400px; height: 400px;}
	main .research .imgBox .inner{ width: calc(100% - 50px); height: calc(100% - 50px);}
	main .research .imgBox .img{ width: 50%;}

	main .bio{ position: relative; height: auto; padding: 80px 0 200px; background: none; }
	main .bio:before{ content:''; display:block; position: absolute; top: -10%; left: 0; width: 100%; height: 110%; background: url(/img/main/bioBg.png) no-repeat 45% 50%; background-size:cover; }
	main .bio .title{ margin-bottom: 50px;}
	main .bio .ctnBox{ padding: 0 20px;}
	main .bio .ctnBox .txt2{ white-space:normal; }
	main .bio .txtBox{ margin-left: 100px;}
	main .bio .txtBox .numBox{ margin: 50px 0;}
	main .bio .txtBox .numBox .txt:not(:last-child){ margin-bottom: 50px;}
	main .bio .txtBox .numBox .txt span{ margin-left: 10px;}
	main .bio .txtBox .numBox .txt:last-child span{ width: 50px;}

	/* sub */
	.subVisual .lnb{ height: 60px; border-radius: 20px; transition:all 0.5s; }
	.subVisual .lnb .home{ flex-shrink:0; }
	.subVisual .lnb .home a{ width: 60px; }
	.subVisual .lnb > li:not(.home){ width: 50%; }
	.subVisual .lnb > li:last-child{ border-right: none; }
	.subVisual .lnb > li p{ min-width:auto; padding: 0 20px;}
	.subVisual .lnb > li p img{ margin-left: 30px;}
	.subVisual .lnb > li ul li{ height: 60px; }
	.subVisual .lnb > li ul li a{ padding: 0 20px;}
	.subVisual .title{ margin: 60px 0 30px;}
	.subVisual .bg{ height: 250px; border-radius: 30px 0px 0px 30px;}
	.subVisual .lnb.border,
	.subVisual .lnb.border .path2.on p{ border-radius: 20px 20px 0 20px;}

	#subContents{ padding: 80px 0 100px; }

	#bgLinear{ width: calc(100% + 15px); height: calc(100% + 15px)}

	#business{ margin-top: -40px;}
	#business .ctnBox{ grid-template-rows: auto; grid-template-columns:auto;}
	#business .ctnBox .itemBox{ height: 200px;}
	#business .ctnBox .itemBox .txtBox{ padding: 30px;}
	#business .ctnBox .itemBox .txtBox ul{ right: 30px;}
	#business .ctnBox .itemBox.type2{ grid-row: auto; height: 300px;}
	#business .ctnBox .itemBox:not(.type2):before{ content:''; display:block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0,0,0,0.5); z-index: 1;}

	.businessV > div{ padding-top: 70px;}
	.businessV .ctnWrap:not(#material),
	.businessV #monitoring section:not(#water),
	.businessV #device section:not(:first-child),
	.businessV #develop section:not(:first-child){ padding-top: 80px;}
	.businessV .content{ margin-top: 40px;}
	.businessV #material .content section:not(:first-child){ padding-top: 80px;}
	.businessV #material .content h3.title{ margin-bottom: 30px;}
	.businessV #material .content .ctnBox:not(:last-child){ margin-bottom: 60px;}
	.businessV #material .content .ctnBox .imgBox1,
	.businessV #material .content .ctnBox .imgBox2{ flex-wrap:wrap; gap:20px; }
	.businessV #material .content .ctnBox .imgBox1 figure{ width: 100%; height: 200px;}
	.businessV #material .content .ctnBox .imgBox2 > *{ width: 100%; text-align: center; }
	.businessV #material .content .ctnBox .imgBox2 figure{ width: 100%; height: 300px; position: relative; overflow: hidden; border-radius:50px; }
	.businessV #material .content .ctnBox .imgBox2 figure.type2{ height: 620px;}
	.businessV #material .content .ctnBox .imgBox2 figure img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%; min-height:100%; object-fit:cover; }
	.businessV #material .content .ctnBox .imgBox3{ padding: 30px 20px; gap:0; }
	.businessV #material .content .ctnBox .imgBox3 .itemBox{ position: relative; width: 100%; }
	.businessV #material .content .ctnBox .imgBox3 .itemBox:not(:last-child){ margin-bottom: 90px;}
	.businessV #material .content .ctnBox .imgBox3 .itemBox .img dd{ position: static;}
	.businessV #material .content .ctnBox .imgBox3 .itemBox .img dd span{ transform:translateX(-50%); top: auto; left: 50%; right: auto; bottom: -70px;}
	.businessV #material .content .nose .ctnBox { flex-wrap:wrap; }
	.businessV #material .content .nose .ctnBox > *{ width: 100%; height: 300px; border-radius:20px; }
	.businessV #material .content .nose .ctnBox figure{ margin-bottom: 30px;}

	.businessV #monitoring section .ctnBox{ flex-direction: column; }
	.businessV #monitoring section .ctnBox .imgBox{ margin: 30px 0;}
	.businessV #develop #foundry .ctnBox .itemBox{ flex-wrap:wrap; }
	.businessV #develop #foundry .ctnBox .itemBox dl{ width: 100%; }
	.businessV #develop #research .ctnBox .itemBox .imgBox{ flex-wrap:wrap; justify-content: center;text-align: center; height: auto; padding: 20px;}
	.businessV #develop #research .ctnBox .itemBox.item01{ margin-bottom: 40px;}
	.businessV #develop #research .ctnBox .itemBox.item01 .imgBox figure:not(:last-child){ margin-bottom: 20px;}
	.businessV #develop #research .ctnBox .itemBox.item02{ width: 100%; margin-bottom: 40px; }
	.businessV #develop #research .ctnBox .itemBox.item02 .imgBox{ gap:10px; }
	.businessV #develop #research .ctnBox .itemBox.item02 .imgBox figure{ width: calc((100% - 10px) / 2);}
	.businessV #develop #research .ctnBox .itemBox.item03{ width: 100%;}

	#ceo .ctnBox{ flex-wrap:wrap; }
	#ceo .ctnBox .imgBox{ width: 100%; margin-right: 0; text-align: center; align-items: center;}
	#ceo .ctnBox .imgBox .txtBox{ margin: 30px auto 0;}

	#history{ overflow: hidden;}
	#history .ctnBox{ padding-left: 50px;}
	#history .ctnBox .bar{ transform:none; left: 10px;}
	#history .ctnBox .itemBox{ flex-wrap:wrap; }
	#history .ctnBox .itemBox:not(:last-child){ margin-bottom: 80px;}
	#history .ctnBox .itemBox > *{ width: 100%; }
	#history .ctnBox .itemBox .txtBox{ margin: 20px 0 0; order:2; transform: translate3d(0, 0, 0);}
	#history .ctnBox .itemBox .imgBox .year{ text-align: left;}
	#history .ctnBox .itemBox .imgBox .year span.circle{ width: 20px; height: 20px;}
	#history .ctnBox .itemBox .imgBox .year span.circle:after{ width: 12px; height: 12px; }
	#history .ctnBox .itemBox .imgBox .year span.circle:before{ width: 40px; height: 40px;}
	#history .ctnBox .itemBox:nth-child(2n) .txtBox dl{ flex-direction:row; text-align: left; }
	#history .ctnBox .itemBox:nth-child(2n) .txtBox dl dt{ margin-right: 15px; margin-left: 0;}
	#history .ctnBox .itemBox .imgBox .year span.circle,
	#history .ctnBox .itemBox:nth-child(2n-1) .imgBox .year span{ right: auto; left: -49px;}

	#location .ctnBox .tabBox{ flex-wrap:wrap; }
	#location .ctnBox .tabBox .itemBox{ width: 100%; min-height:auto; padding: 30px 20px;}
	#location .ctnBox .tabBox .itemBox:not(:last-child){ margin-bottom: 10px; margin-right: 0;}
	#location .ctnBox .tabBox .itemBox .title{ flex-direction:row; align-items: center; }
	#location .ctnBox .tabBox .itemBox .title div{ margin-top: 0;}
	#location .ctnBox .tabBox .itemBox .txt br{ display:none; }

	#technology section:not(:last-child){ margin-bottom: 80px;}
	#technology .phage .ctnBox, 
	#technology .phage .ctnBox .itemWrap{ gap:20px; }
	#technology .phage .ctnBox .itemWrap .itemBox, 
	#technology .phage .ctnBox .itemBox{ width: calc((100% - 20px) / 2); }
	#technology .phage .ctnBox{ padding: 20px;}
	#technology .phage .ctnBox .itemBox figure{ min-height:auto; }
	#technology .phage .ctnBox .itemWrap .itemBox:last-child{ width: 100%;}
	#technology .phage .ctnBox .itemBox .title{ padding: 0 10px;}
	#technology .tech .ctnBox{ padding: 20px; }
	#technology .tech .ctnBox > div{ gap:20px; flex-wrap:wrap; }
	#technology .tech .ctnBox .txtBox .itemBox{ padding: 20px; width: 100%; min-height:auto; }
	#technology .tech .ctnBox .txtBox .itemBox .txt br{ display:none; }
	#technology .tech .ctnBox .imgBox .itemBox{ width: 100%;}
	#technology .tech .ctnBox .imgBox .itemBox .orderBox{ flex-wrap:wrap; }
	#technology .tech .ctnBox .imgBox .itemBox .orderBox p{ width: 100%; flex-direction:column; }
	#technology .tech .ctnBox .imgBox .itemBox .orderBox p img{ margin: 0px; height: 15px; transform:rotate(90deg); margin: 10px 0;}
	#technology .tech .ctnBox .imgBox .itemBox .orderBox p br{ display:none; }

	#product section:not(:last-child){ margin-bottom: 80px;}
	#product section dl dt{ height: 70px;}
	#product section dl dd{ padding: 20px;}
	#product .m13 .content .ctnBox dl dd .imgBox .itemWrap .itemBox{ min-height:235px; }
	#product .pro .content .infoBox{ margin-bottom: 60px;}
	#product .pro .content .infoBox .txtBox ul{ padding: 30px 20px;}
	#product .pro .content .infoBox .txtBox ul li{ flex-direction:column; align-items: flex-start;}
	#product .pro .content .infoBox .txtBox ul li span{ max-width: none; margin-right: 0;}

	#product .pro.pen .content .infoBox .imgBox dd{ gap:20px; }
	#product .pro.pen .content .infoBox .imgBox dd .itemBox{ width: 100%; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img{ flex-direction:column; }
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item:not(:last-child){ margin-bottom: 60px;}
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item .circle figure{ transform:translateX(-50%) rotate(90deg); top: auto; bottom: -90px; right: auto; left: 50%;
	width: 40px; height: 40px;}
	#product .pro.pen .content .infoBox .imgBox .itemBox:last-child .img .item02 .circle > div{ margin-bottom: 10px;}
	
	#product .pro.pim .content .infoBox .imgBox .img ul{ display:flex; }
	#product .pro.pim .content .infoBox .imgBox .img ul li:not(:last-child){ margin-bottom: 0; margin-right: 10px; }
	#product .pro.pim .content .infoBox .imgBox .img figure{ height: 250px; display: flex; align-items: flex-end;}
	#product .pro.pim .content .infoBox .imgBox .itemBox{ flex-wrap:wrap; padding: 20px;}
	#product .pro.pim .content .infoBox .imgBox .itemBox figure{ width: 100%; text-align: center; margin-bottom: 30px;}
	#product .pro.pim .content .infoBox .imgBox .itemBox .txtBox{ margin-left: 0; margin-bottom: 0;}

	#product .pro.pit .content .infoBox .imgBox dd .itemBox{ padding: 20px; flex-wrap:wrap; }
	#product .pro.pit .content .infoBox .imgBox dd .itemBox > figure{ margin-right: 0; margin-bottom: 30px;}

	.ir .topCtn .tabBox{ flex-wrap:wrap; gap:10px 0; justify-content:center; margin-left: 20px;}
	.ir .topCtn .tabBox li:not(:last-child):after{ margin: 0 20px; }
	.ir .topCtn .searchBox > *{ padding: 0 15px; height: 60px; border-radius:10px; }
	.ir .topCtn .searchBox select{ background-position: right 15px top 50%;}

	#notice .ctnBox .itemBox a{ flex-wrap:wrap; align-items: flex-start; padding: 10px 0;}
	#notice .ctnBox .itemBox p{ min-height:auto; display:flex; align-items:center; padding: 0 20px; margin: 10px 0;}
	#notice .ctnBox .itemBox .num,
	#notice .ctnBox .itemBox .title{ width: 100%;}
	#notice .ctnBox .itemBox .name,
	#notice .ctnBox .itemBox .day,
	#notice .ctnBox .itemBox .count{ width: calc(100% / 3); justify-content: center;}

	#view .ctnBox .infoBox{ padding: 60px 20px 80px;}
	#view .ctnBox .infoBox figure{ margin-bottom: 40px;}
	#view .ctnBox dl{ padding: 0 30px; height: 70px; }
	#view .ctnBox dl dt{ margin-right: 30px;}
	#view .ctnBox .fileBox{ margin-bottom: 40px;}
	#view .ctnBox #btnBox{ margin: 40px auto 0;}

	.gallery .ctnBox .itemBox{ width: 100%; }
	.gallery .ctnBox .itemBox a{ min-height:auto; height: auto;}

	.gallery2 .popBox figure{ width: 400px; height: 540px;}

	#contact .ctnBox .itemBox{ flex-direction:column;  align-items: flex-start; padding-left: 20px;}
	#contact .ctnBox .itemBox > dt{ padding-top: 0;  width: auto; margin-bottom: 20px; }
	#contact .ctnBox .itemBox > dd{ width: 100%; }
	#contact .ctnBox .itemBox > dd input[type="text"], 
	#contact .ctnBox .itemBox > dd select, 
	#contact .ctnBox .itemBox > dd .fileBox .txt{ height: 55px;}
	#contact .ctnBox .itemBox > dd input.w300{ width: 100%;}
	#contact .ctnBox .itemBox > dd .fileBox .btn,
	#contact .ctnBox .itemBox > dd .inputBox figure,
	#contact .ctnBox .itemBox > dd .inputBox .btn{ flex-shrink:0; }
	#contact .ctnBox .itemBox > dd .inputBox{ flex-wrap:wrap; }
	#contact .ctnBox .itemBox > dd .inputBox figure{ width: 150px;}
	#contact .ctnBox .itemBox > dd .inputBox input{ width: calc((100% - 37px) / 2); }
	#contact .ctnBox .itemBox > dd .inputBox select{ width: 100%;}
	#contact .ctnBox .itemBox > dd .btn{ width: 55px; height: 55px;}
	#contact .ctnBox .itemBox > dd .captchaBox input{ width: 100%;}
	#contact .bBtn{ margin: 60px auto 0;}
  
	/* footer */
	footer{ padding: 80px 0; border-radius:50px 50px 0 0; margin-top: -50px;}
	footer > div{ flex-direction:column;  }
	footer .leftBox .title{ margin-bottom: 50px;}
	footer .rightBox .footerGnb{ display:none; }
	footer .rightBox ul{ display:flex; align-items:center; margin-top: 30px;}
	footer .rightBox ul li:not(:last-child){ margin-bottom: 0; margin-right: 20px;}

	/* paging */
	.paging{ margin-top: 60px;}
}

@media screen and (max-width:640px){
	/* common */
}