/* common */
#subWrap{ position: relative; }
#sv .subVisual{ position: relative; width: 100%; z-index: 10;}
#sv .subVisual .innerBox{ padding: 170px 0 0; color:#222; display:flex; justify-content:space-between; }
#sv .subVisual .innerBox .txtBox{ overflow: hidden;}
#sv .subVisual .innerBox p.sTxt{ text-transform: uppercase; font-weight: 500; color:#666; }
#sv .subVisual .innerBox .path1{ font-weight: bold; margin: 15px 0 0;}
#sv .subVisual .innerBox .path1 a{ pointer-events:none; color:#222; }
#sv .subVisual .innerBox #lnb,#sv .subVisual .innerBox #lnb > li > a,#sv .subVisual .innerBox #lnb > li{ display:flex; align-items:center; }
#sv .subVisual .innerBox #lnb > li img.arrow{ margin: 0 15px;}
#sv .subVisual .innerBox #lnb li{ position: relative; font-weight: 500; color:rgba(0,0,0,0.9); }
#sv .subVisual .innerBox #lnb li button{ color:#222; font-weight: 500; display:flex; align-items:center; }
#sv .subVisual .innerBox #lnb li button .txt a{ pointer-events:none; color:rgba(0,0,0,0.9); }
#sv .subVisual .innerBox #lnb li button img.arrow{ margin: 0 0 0 15px; transition:all 0.5s; }
#sv .subVisual .innerBox #lnb li.on button img{ transform:rotate(180deg); }
#sv .subVisual .innerBox #lnb li .depth2{ position: absolute; top: calc(100% + 20px); transform:translateX(-50%); left: 50%; width: 150px;  background: #fff; box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.07); border-radius:10px; padding: 20px 0 10px; display:none; }
#sv .subVisual .innerBox #lnb li .depth2 li { margin-bottom: 10px; }
#sv .subVisual .innerBox #lnb li .depth2 li.on{ display:none; }
#sv .subVisual .innerBox #lnb li .depth2 li a { display:inline-block;width: 100%; text-align: center; color:#222; transition:all 0.3s; font-weight: 400;}
#sv .subVisual .innerBox #lnb li .depth2 li:hover a{ color:var(--mainC); }

#subContents{ padding: 100px 0 210px;}

#quotes span{ font-size:120px; color:rgba(0,0,0,0.1); font-weight: bold;}
#quotes .left{ margin: -20px 5px 0 0;}
#quotes .right{ margin: 40px 0 0 5px;}

#titleBox{ display:inline-block; color:#222; font-weight: bold; margin-bottom: 50px;}
#titleBox:before{ content:''; display:block; width: 21px; height: 12px; background:url(/img/sub/titleDot.png) no-repeat; background-size:cover; margin: 0 auto 20px;}
#titleBox.right{ display:flex; align-items:center; }
#titleBox.right:before{ display:inline-block; margin: 0 20px 0 0;}

#imgBak{ position: relative; }
#imgBak:before{ content:''; display:block; position: absolute; top: 35px; left: 35px; width: 100%; height: 100%; background: #FDF6F8; border-radius:20px;z-index: -1;  }

#visualTitle{ text-align: center; margin-bottom: 60px; }
#visualTitle .title{ color:#222; font-weight: bold; margin-bottom: 30px; }
#visualTitle .txt{ line-height: 1.65; color:#444; }
#visualTitle .txt span{ color:var(--mainC); }

#about section:not(:last-child){ margin-bottom: 250px; }
#about section > .title{ color:#222; font-weight: bold; text-align: center; margin-bottom: 70px;}
#about .visual{ position: relative; width: 100%; height: 500px; background: url(/img/sub/aboutBg01.png) no-repeat; background-size:cover; }
#about .visual .title{ display:flex; gap:9px; justify-content:center; align-items:flex-start; color:#fff; font-weight: bold; position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; width: 100%;  filter: blur(10px); -webkit-filter: blur(10px);  letter-spacing: 20px; transition: all 1.7s;}
#about .visual .title img{ margin-top: -15px;}
#about .visual .title.aos-animate{ letter-spacing:0;  -webkit-filter: blur(0);}
#about .info{ display:flex; align-items:flex-end; padding-bottom: 35px;}
#about .info .txtBox{ flex-shrink:0; }
#about .info .txtBox .title{ color:#222; font-weight: bold; margin-bottom: 60px;  }
#about .info .txtBox .title span{ display:block; color:#666; font-weight: 300; margin-top: 10px;}
#about .info .txtBox .txt{ color:#222; font-weight: 300; line-height: 1.75; letter-spacing: -0.4px;}
#about .info .txtBox .txt span{ font-weight: 600;}
#about .info .txtBox .bg{ margin-top: -35px;}
#about .outline .ctnBox{ display:flex; gap: 35px; flex-wrap:wrap; }
#about .outline .ctnBox .itemBox{ width: calc((100% - 70px) / 3); height: 280px; padding: 40px 50px 45px 40px; box-shadow: 0px 2px 15px 0px rgba(0, 0, 0, 0.07); background: #fff; display:flex; flex-direction:column; justify-content:space-between; border: 2px solid rgba(228, 75, 121, 0); transition:all 0.5s; }
#about .outline .ctnBox .itemBox figure{ text-align: right; }
#about .outline .ctnBox .itemBox .svg g,
#about .outline .ctnBox .itemBox .svg path{ transition:all 0.3s; }
#about .outline .ctnBox .itemBox .txtBox .title{ color:#222; font-weight: 600; margin-bottom: 15px;}
#about .outline .ctnBox .itemBox .txtBox .txt{ color:#666; font-weight: 300; letter-spacing: -0.36px; transition:all 0.5s; }
#about .outline .ctnBox .itemBox:hover{ border: 2px solid rgba(228, 75, 121, 0.15); }
#about .outline .ctnBox .itemBox:hover .txtBox .txt{ color:var(--mainC); }
#about .outline .ctnBox .itemBox:hover .svg g{ opacity: 1;}
#about .outline .ctnBox .itemBox:hover .svg path{ stroke: var(--mainC); }
#about .value .ctnBox{ display:flex; margin-top: 80px;}
#about .value .ctnBox .itemBox{ position: relative; width: calc((100% + 80px) / 3); height: 460px; text-align: center; border:1px solid #DFDFDF; border-radius:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; }
#about .value .ctnBox .itemBox:not(:first-child){ margin-left: -40px;}
#about .value .ctnBox .itemBox:before{ content:''; display:block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius:50%;
background: radial-gradient(50% 50% at 50% 50%, rgba(228, 75, 121, 0.10) 0%, rgba(228, 75, 121, 0.00) 100%);	opacity: 0; transition:all 0.5s; }
#about .value .ctnBox .itemBox .title{ color:#222; font-weight: bold; margin: 30px 0 15px; }
#about .value .ctnBox .itemBox .txt{ color:#222; font-weight: 300; line-height: 1.6;}
#about .value .ctnBox .itemBox .svg g,
#about .value .ctnBox .itemBox .svg path{ transition:all 0.3s; }
#about .value .ctnBox .itemBox.on:before{ opacity: 1;}
#about .value .ctnBox .itemBox.on .svg g{ opacity: 1;}
#about .value .ctnBox .itemBox.on .svg path{ stroke: var(--mainC); }
#about .value .txtBox{ text-align: center; color:#222; line-height: 1.65; letter-spacing: -0.34px;}
#about .value .txtBox span{ color:var(--mainC); }

.greetingBg{ position: relative; position:absolute; top: 0; left: 0;  width: 100%; z-index: -1;  text-align: center; }
.greetingBg:after{ content:''; display:block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(0deg, #FFF 0%, rgba(255, 255, 255, 0.00) 100%); }
.greetingBg.type2{ top: auto; bottom: 0; }
.greetingBg.type2:after{ display:none; }
#greeting{ overflow: hidden;}
#greeting section:not(:last-child),
#greeting .info > div:not(:last-child){ margin-bottom: 200px; }
#greeting .intro{ margin-top: 20px; text-align: center; }
#greeting .intro .title{ color:#222; font-weight: bold; margin-bottom: 70px; filter: blur(10px); -webkit-filter: blur(10px);  letter-spacing: 20px; transition: all 1.7s;}
#greeting .intro .title.aos-animate{ letter-spacing:0;  -webkit-filter: blur(0);}
#greeting .intro .txt{ line-height: 1.65; color:#666; }
#greeting .intro .txt:not(:last-child){ margin-bottom: 30px; }
#greeting .intro .txt02{ margin-top: 70px; color:#666; font-weight: 600; display: flex; align-items: center; justify-content: center;}
#greeting .intro .txt02 span{ font-weight: bold; color:#222; display:inline-block; margin-left: 15px; }
#greeting .info .titleBox{ text-align: center; }
#greeting .info .titleBox .txt{ line-height: 1.65; color:#222; }
#greeting .info .titleBox .txt span{ color:var(--mainC); }
#greeting .info > div:not(.titleBox) .title{ color:#222; text-align: center; font-weight: 600; margin-bottom: 50px;}
#greeting .info .ctnBox{ display:flex; gap:30px; }
#greeting .info .ctnBox .itemBox{ width: calc((100% - 30px) / 2); text-align: center; }
#greeting .info .type .ctnBox .itemBox{ background: #F8F8F8; border-radius:20px; padding: 20px; padding-top: 25px; }
#greeting .info .type .ctnBox .itemBox .txt{ margin-bottom: 25px; color:#222; }
#greeting .info .type .ctnBox .itemBox figure{ background: #fff; border-radius:15px; height: 230px; display:flex; justify-content:center; align-items:center; }
#greeting .info .color .ctnBox .itemBox{ border:1px solid #EFEFEF; border-radius:20px; padding: 30px; padding-bottom: 40px; background: #fff;}
#greeting .info .color .ctnBox .itemBox .Box{ height: 152px; border-radius:15px; background: var(--mainC); display:flex; flex-direction:column; justify-content:center; align-items:center; color:#fff; font-weight: 600; margin-bottom: 35px;}
#greeting .info .color .ctnBox .itemBox .Box span{ margin-top: 10px; font-weight: 300;}
#greeting .info .color .ctnBox .itemBox ul{ text-align: left;}
#greeting .info .color .ctnBox .itemBox ul li{ display:flex; align-items:center; }
#greeting .info .color .ctnBox .itemBox ul li:not(:last-child){ margin-bottom: 15px;}
#greeting .info .color .ctnBox .itemBox ul li:before{ content:''; display:block; width: 3px; height: 3px; border-radius:50%; background: var(--mainC); margin-right: 9.5px;}
#greeting .info .color .ctnBox .itemBox ul li span{ display:inline-block; margin-right: 35px; color:#222; font-weight: 500; width: 50px;}
#greeting .info .color .ctnBox .itemBox:last-child .Box{ background: #000; }
#greeting .info .color .ctnBox .itemBox:last-child ul li:before{ background: #000;}

#history{ margin-bottom: 10px;}
#history section:not(:last-child){ margin-bottom: 200px;}
#history section > .title{ text-align: center; color:#EFEFEF; font-weight: 800; margin-bottom: 70px;}
#history section .ctnBox{ position: relative; display:flex; }
#history section .ctnBox > *{ width: 50%; }
#history section .ctnBox .imgBox{ position: sticky; top: 50px; left: 0; height: 400px;}
#history section .ctnBox .txtBox{ display:flex; }
#history section .ctnBox .txtBox .bar{ position: relative; width: 1px; background: #EFEFEF; margin-right: 60px; margin-top: 20px;}
#history section .ctnBox .txtBox .bar span{ display:block; width: 3px; background: var(--mainC); position: absolute; left: -1px; top: 0; height: 100%;}
#history section .ctnBox .txtBox .yearBox{}
#history section .ctnBox .txtBox .yearBox .itemBox{}
#history section .ctnBox .txtBox .yearBox .itemBox:not(:last-child){ margin-bottom: 80px;}
#history section .ctnBox .txtBox .yearBox .itemBox .year{ position: relative; color:#222; font-weight: 600; margin-bottom: 25px; }
#history section .ctnBox .txtBox .yearBox .itemBox .year:before{ content:''; display:block; width: 9px; height: 9px; border-radius:50%; background: var(--mainC); position: absolute; transform:translateY(-50%); top: 50%; left: -65px; }
#history section .ctnBox .txtBox .yearBox .itemBox ul li{ display:flex; align-items:center; color:#222; font-weight: 500;}
#history section .ctnBox .txtBox .yearBox .itemBox ul li:not(:last-child){ margin-bottom: 17px;}
#history section .ctnBox .txtBox .yearBox .itemBox ul li.light{ font-weight: 400;}
#history section .ctnBox .txtBox .yearBox .itemBox ul li span{ width: 25px; margin-right: 15px; color:var(--mainC); font-weight: 600;}
#history section.second .ctnBox{ text-align: right; }
#history section.second .ctnBox .txtBox{ justify-content: flex-end;}
#history section.second .ctnBox .txtBox .bar{ margin-right: 0; margin-left: 60px; }
#history section.second .ctnBox .txtBox .yearBox{ position: relative; z-index: 5; }
#history section.second .ctnBox .txtBox .yearBox .itemBox .year:before{ left: auto; right:-65px; }
#history section.second .ctnBox .txtBox .yearBox .itemBox ul li{ flex-direction: row-reverse;}
#history section.second .ctnBox .txtBox .yearBox .itemBox ul li span{ margin-right: 0; margin-left: 15px;}

#organization .ctnBox .top{ position: relative; font-weight: 600; width: 230px; height: 230px; box-shadow:0px 2px 20px rgba(0, 0, 0, 0.10); color:#fff; border-radius:50%; margin: 0 auto;}
#organization .ctnBox .top:before{ content:'';  display:block; position: absolute; top: 100%; transform: translateX(-50%); left: 50%; width: 1px; height: 0; background: #d9d9d9; 
transition:all 0.5s 0.5s; }
#organization .ctnBox .top span{ display:flex; justify-content:center; align-items:center;  width: 175px; height: 175px; border-radius:50%; box-shadow:0px 2px 15px rgba(217, 27, 92, 0.40); background: var(--mainC); position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; }
#organization .ctnBox .top.aos-animate:before{ height: 180px;}
#organization .ctnBox .center{ margin: 55px 0 60px; width: 50%; display:flex; justify-content: flex-end; align-items:center; }
#organization .ctnBox .center p{ position: relative;width: 170px; height: 65px; display:flex; justify-content:center; align-items:center; color:#fff; background: #222; border-radius:10px; }
#organization .ctnBox .center p:after{ content:''; display:block; position: absolute; transform:translateY(-50%); top: 50%; right: -2px; width: 4px; height: 4px; border-radius:50%; background: var(--mainC);}
#organization .ctnBox .center .line{ width: 100px; height: 1px; background: #d9d9d9;}
#organization .ctnBox .bottom{ position: relative; display:flex; gap:30px; flex-wrap:wrap; overflow: hidden; }
#organization .ctnBox .bottom:before{ content:''; position: absolute; transform:translateX(-50%); top: 0; left: 50%; display:block; width: calc(100% - 158px); height: 1px; background: #d9d9d9;}
#organization .ctnBox .bottom dl{ width: calc((100% - 180px) / 7); }
#organization .ctnBox .bottom dl dt{ position: relative; display:flex; flex-direction:column; align-items:center; }
#organization .ctnBox .bottom dl dt span{ position: relative; width: 100%; height: 60px; display:flex; justify-content: center; align-items: center; border-radius: 10px; background: #FFF; box-shadow: 0px 2px 5px 0px rgba(217, 27, 92, 0.15); color:#222; font-weight: 600; text-align: center; }
#organization .ctnBox .bottom dl dt span:after{ content:''; display:block; position: absolute; transform:translateX(-50%); top: -2px; left: 49.9%; width: 3px; height: 3px; border-radius:50%; background: var(--mainC);}
#organization .ctnBox .bottom dl dt:before{ content:''; display:block; width: 1px; height: 60px; background: #d9d9d9; }
#organization .ctnBox .bottom dl dd{ position: relative; width: 100%; margin-top: 40px;}
#organization .ctnBox .bottom dl dd:before{ content:''; display:block; position: absolute; transform:translateX(-50%); left: 50%; bottom: 100%; width:1px; height: 40px; background: #d9d9d9;}
#organization .ctnBox .bottom dl dd p{ width: calc(100% - 10px); height: 60px; border-radius: 10px; border: 1px solid #E9E9E9; background: #FFF; margin: 0 auto; display:flex; justify-content:center; align-items:center; color:#444; }
#organization .ctnBox .bottom dl dd p:not(:last-child){ margin-bottom: 10px;}

#process .intro{ display:flex; align-items:center; justify-content:space-between; gap:50px; margin-bottom: 165px; }
#process .intro .txtBox .title{ color:#222; font-weight: bold; margin-bottom: 30px;}
#process .intro .txtBox .txt{ line-height: 1.65; color:#444; }
#process .intro .txtBox .txt span{ color:var(--mainC); }
#process .intro figure{ flex-shrink:0; }
#process .content{ padding: 130px 0 210px; background: #FEFAFB;}
#process .content .ctnBox{ position: relative; width: 100%;  display:flex; gap:160px; text-align: center; padding: 0 110px;}
#process .content .ctnBox:before{ content:''; width: 100%; height: 1px; background: #dfdfdf; position: absolute; transform:translateX(-50%); top: 63px; left: 50%; z-index: 0;}
#process .content .ctnBox:not(:last-child){ margin-bottom: 60px;}
#process .content .ctnBox dl{	width: 150px; position: relative; z-index: 5;}
#process .content .ctnBox dl dt{ color:var(--mainC); font-weight: 600; display:inline-flex; flex-direction:column; align-items:center; }
#process .content .ctnBox dl dt:after{ content:''; width: 5px; height: 5px; border-radius:50%; background: #222; border-radius:50%; margin: 30px 0;}
#process .content .ctnBox dl dd figure{ width: 120px; height: 120px; border-radius:50%; background: #fff; box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.07); display:flex; justify-content:center; align-items:center; margin: 0 auto 20px; }
#process .content .ctnBox dl dd p{ color:#222; font-weight: 600; }

#factory section{ overflow: hidden;}
#factory section:not(:last-child){ margin-bottom: 130px;}
#factory section .titleBox{ text-align: center; margin-bottom: 100px; }
#factory section .titleBox #titleBox{ margin-bottom: 25px; }
#factory section .titleBox .txt{ color:#444; }
#factory .intro .imgBox{ display:flex; gap:25px; border-radius:20px; overflow: hidden;}
#factory .intro .imgBox .leftBox{ position: relative; width: 62%; height: 630px;}
#factory .intro .imgBox .leftBox .txtBox{ position: absolute; bottom: 0; left: 0; width: 100%; padding: 40px; color:#fff; }
#factory .intro .imgBox .leftBox .txtBox .title{ font-weight: 700; line-height: 1.65; margin-bottom: 5px; }
#factory .intro .imgBox .leftBox .txtBox .Box{ display:flex; justify-content:space-between; align-items:flex-end; line-height: 1.65; font-weight: 300; letter-spacing: -0.34px;}
#factory .intro .imgBox .fitBox{ width: 100%; height: 100%; }
#factory .intro .imgBox .rightBox{ width: 38%; display:flex; flex-direction:column; gap:25px; }
#factory .intro .imgBox .rightBox .fitBox{ height: calc((100% - 25px) / 2)}
#factory .manu{ background: #FEFAFB; padding: 130px 0;}
#factory .manu .ctnBox{ display:flex; align-items:center; justify-content:space-between; gap: 60px; }
#factory .manu .ctnBox:not(:last-child){ margin-bottom: 150px;}
#factory .manu .ctnBox figure{ flex-shrink:0; }
#factory .manu .ctnBox .txtBox{ width: 100%; display:flex; gap:5px; }
#factory .manu .ctnBox .txtBox dl{ width: calc((100% - 10px) / 3); text-align: center; }
#factory .manu .ctnBox .txtBox dl dt{ display:flex; justify-content:center; align-items:center; height: 60px; border-radius:20px; background: #D4A8B6; color:#fff; font-weight: 600;}
#factory .manu .ctnBox .txtBox dl dd p{ display:flex; justify-content:center; align-items:center; margin-top: 5px; height: 60px; color:#000; border-bottom:1px solid #DFDFDF; }
#factory .pack .ctnBox:not(:last-child){ margin-bottom: 150px;}
#factory .pack .ctnBox > div{ display:flex; justify-content:space-between; }
#factory .pack .ctnBox .txtBox{ justify-content: center; align-items:center; border:1px solid #efefef; border-radius:20px; padding: 25px 0; margin-bottom: 45px; }
#factory .pack .ctnBox .txtBox p{ width: 50%; display:flex; align-items:center; color:#222; }
#factory .pack .ctnBox .txtBox p:first-child{ justify-content: flex-end; }
#factory .pack .ctnBox .txtBox p.line{ width: 1px; height: 12px; background: #dfdfdf; margin: 0 40px;}
#factory .pack .ctnBox .txtBox p .txt01{ font-weight: 500; }
#factory .pack .ctnBox .txtBox p .num{ color:var(--mainC); font-weight: 800; margin: 0 10px;}
#factory .pack .ctnBox .imgBox{ gap:40px; }

#quality section{ overflow: hidden;}
#quality section:not(:last-child){ margin-bottom: 200px; }
#quality section #titleBox{ width: 100%; text-align: center; }
#quality .visual{ height: 500px; background: url(/img/sub/qualityBg01.png) no-repeat 50% 50%; background-size:cover; text-align: center; padding-top: 200px; color:#fff; }
#quality .visual .title{ font-weight: bold;  margin-bottom: 30px;}
#quality .visual .txt{ line-height:1.65 ; }
#quality .mana .txtBox{ text-align: center; color:#222; padding-bottom: 30px; border-bottom:1px solid rgba(228, 75, 121, 0.4); margin-bottom: 30px;}
#quality .mana .txtBox .title{ margin-bottom: 40px; font-weight:  bold;}
#quality .mana .txtBox dl{ display:flex; }
#quality .mana .txtBox dl dd{ position: relative; width: calc(100% / 3); line-height: 1.9; }
#quality .mana .txtBox dl dd:not(:last-child):after{ position: absolute; transform:translateY(-50%); top: 50%; right: 0; content:''; width: 1px; height: calc(100% - 6px) ; background: #EFEFEF;}
#quality .mana .imgBox{ display:flex; gap:40px; justify-content:space-between; text-align: center; }
#quality .mana .imgBox:not(:last-child){ margin-bottom: 130px;}
#quality .mana .imgBox .title{ color:#222; font-weight: bold; margin-bottom: 40px;}
#quality .mana .imgBox .txt{ padding-bottom: 30px; border-bottom:1px solid rgba(228, 75, 121, 0.4); margin-bottom: 30px;color:#222; line-height: 1.65;}
#quality .certi .ctnBox{ display:flex; flex-wrap:wrap; gap:85px 35px; }
#quality .certi .ctnBox .itemBox{ width: calc((100% - 105px) / 4); text-align: center; }
#quality .certi .ctnBox .itemBox .fitBox{ width: 100%; height: 400px; border-radius:20px; border:1px solid #dfdfdf; margin-bottom: 20px;}
#quality .certi .ctnBox .itemBox .txt{ color:#222; font-weight: 600; letter-spacing: -0.36px;}

#global .mapBox{ background: #FEFAFB; padding: 85px 0 95px; margin-bottom: 80px;}
#global .ctnBox{ display:flex; gap:35px; }
#global .ctnBox .itemBox{ width: calc((100% - 70px) / 3);}
#global .ctnBox .itemBox .title{ color:#222; margin: 30px 0 20px; font-weight: 600; }
#global .ctnBox .itemBox ul li{ display:flex; align-items:center; color:#555; line-height: 1.6;}
#global .ctnBox .itemBox ul li:not(:last-child){ margin-bottom: 5px;}
#global .ctnBox .itemBox ul li:before{ content:''; display:block; width: 8px; height: 1px; background: #222; margin-right: 8px;}

.Product section:not(:last-child){ margin-bottom: 150px; }
.Product .fitBox{ position: relative; width: 100%; height: 400px; border-radius: 20px; overflow: hidden; opacity: 1;}
.Product .fitBox:after{ content:''; display:block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 1; background: rgba(255,255,255,0.5); transition:all 1s 0.5s;  filter: blur(30px); -webkit-filter: blur(30px);}
.Product .fitBox.aos-animate:after{ width: 0; opacity: 0; }
.Product .txtBox{ text-align: center; margin-top: 45px; }
.Product .txtBox .title{ color:#111; font-weight: bold;  margin-bottom: 20px;}
.Product .txtBox .title span{ display:block; color:var(--mainC); font-weight: 400; margin-top: 15px;}
.Product .txtBox .txt{ line-height:1.6;}
.Product .iconBox{ display:flex; flex-wrap:wrap; justify-content:center; margin-top: 35px; gap:40px; }
.Product .iconBox .item{ width: 100px; }
.Product .iconBox .item figure{ width: 100%; height: 100px; border-radius:50%; background: #FDF6F8; display:flex; justify-content:center; align-items:center; margin-bottom: 15px; }
.Product .iconBox .item .txt{ text-align: center; color:#333; }

#proprietary .ctnBox{ display:flex; flex-wrap:wrap; gap:145px 25px; }
#proprietary .ctnBox .itemBox{ width: calc((100% - 50px) / 3);}
#proprietary .ctnBox .itemBox .title{ color:#222; font-weight: bold; line-height: 1.65; margin: 30px 0 20px; }
#proprietary .ctnBox .itemBox .txt{ color:#666; line-height: 1.6; letter-spacing: -0.34px; }

#lab .intro{ display:flex; justify-content:space-between; gap:50px; margin-bottom: 110px;}
#lab .intro .txtBox .title{ color:#222; font-weight: bold; margin: 75px 0 100px;}
#lab .intro .txtBox .txt{ color:#444; line-height: 1.6; }
#lab .intro .txtBox .txt:last-child{ color:#222; font-weight: 600;}
#lab .intro .txtBox .txt:not(:last-child){ margin-bottom: 30px;}
#lab .intro .txtBox .txt span{ color:var(--mainC); }
#lab .intro figure{ flex-shrink:0; }
#lab .info { padding-top: 110px; border-top:1px solid #EFEFEF; }
#lab .info .ctnBox{ position: relative; }
#lab .info .ctnBox:before{ content:''; display:block; position: absolute; transform:translateX(-50%); left: 50%; top: 0; width: 1px; height: 100%; background: #EFEFEF; }
#lab .info .ctnBox .itemBox { position: relative; display:flex; gap:60px; align-items: center; opacity: 1;}
#lab .info .ctnBox .itemBox:before{ content:''; position:absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; width: 7px; height: 7px; border-radius:50%; background: #222; opacity: 0;
transition:all 1s 0.3s;}
#lab .info .ctnBox .itemBox.aos-animate:before{ opacity: 1;}
#lab .info .ctnBox .itemBox:not(:last-child){ margin-bottom: 80px;}
#lab .info .ctnBox .itemBox > *{ width: calc((100% - 60px) / 2); }
#lab .info .ctnBox .itemBox .txtBox { background: #F9F9F9; border-radius:20px; padding: 20px; height: 550px; }
#lab .info .ctnBox .itemBox .txtBox .topBox{ border-radius:20px; background: #fff; padding: 60px 40px; }
#lab .info .ctnBox .itemBox .txtBox .topBox #titleBox{ margin-bottom: 40px;}
#lab .info .ctnBox .itemBox .txtBox .topBox .txt{ color:#555; line-height: 1.6;}
#lab .info .ctnBox .itemBox .txtBox .btmBox{ margin: 40px 40px 0;}
#lab .info .ctnBox .itemBox .txtBox .btmBox .title{ background: #222; border-radius:10px; color:#fff; padding: 5px 30px; display:inline-block; margin-bottom: 20px; }
#lab .info .ctnBox .itemBox .txtBox .btmBox .txt{ line-height: 1.6; color:#555; }
#lab .info .ctnBox .itemBox .txtBox figure{ overflow: hidden; }

#performance .intel{ margin-bottom: 140px;}
#performance .ctnBox{ display:flex; gap: 80px 40px; flex-wrap:wrap; }
#performance .ctnBox .itemBox{ width: calc((100% - 120px) / 4);}
#performance .ctnBox .itemBox .title{ margin: 20px 0 10px; color:#222; font-weight: 600;}
#performance .ctnBox .itemBox .txt{ letter-spacing: -0.34px; }

#letter .ctnBox{ display:flex; gap:80px 20px; flex-wrap:wrap; }
#letter .ctnBox .itemBox{ width: calc((100% - 60px) / 4);}
#letter .ctnBox .itemBox figure{ position: relative; width: 100%; height: 260px; border-radius:10px; margin-bottom: 20px; }
#letter .ctnBox .itemBox figure:before{ content:''; display:block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.3); z-index: 1; opacity: 0; transition:all 0.5s; }
#letter .ctnBox .itemBox figure span{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; z-index: 5; color:#fff; padding: 11px 18px 10px; border-radius:50px; white-space: nowrap; border:1px solid rgba(255,255,255,0.3); opacity: 0; transition:all 0.5s; }
#letter .ctnBox .itemBox .epi{ color:var(--mainC); font-weight: 500; }
#letter .ctnBox .itemBox .title{ color:#222; font-weight: 600; margin: 5px 0 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
#letter .ctnBox .itemBox .day{ color:#999; }
#letter .ctnBox .itemBox:hover figure:before,
#letter .ctnBox .itemBox:hover figure span{ opacity: 1;}

.news_view{ padding-top: 110px;}

#location section:not(:last-child){ margin-bottom: 160px; }
#location .mapBox{ width: 100%; height: 580px; clip-path: inset(2px 2px 0 round 20px); margin-bottom: 35px;}
#location .mapBox .root_daum_roughmap,
#location .mapBox .root_daum_roughmap .wrap_map{ width: 100%; height: 100%; }
#location .title{ color:#222; font-weight: bold; margin-bottom: 25px;}
#location .txt{ color:#555; display:flex; align-items:center; }
#location .txt li{ display:flex; align-items:center; }
#location .txt li img{ margin-right: 5px;}
#location .txt li:not(:last-child):after{ content:''; display:block; width: 1px; height: 12px; background: #D9D9D9; margin: 0 30px;}
#location .txt li span{ width: 90px; height: 35px; display:flex; justify-content:center; align-items:center; background: #3155B5; border-radius:50px; color:#fff; font-weight: 600; margin-right: 20px;}

#inquiry .infoBox{ display:flex; gap:30px; margin-bottom: 50px;}
#inquiry .infoBox li{ width: calc((100% - 30px) / 2); display:flex; align-items:center; padding: 30px;border-radius: 10px; box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.07);}
#inquiry .infoBox li .title{ color:#222; font-weight: bold; margin-left: 15px; display:flex; align-items:center;}
#inquiry .infoBox li .title:after{ content:''; display:block; width: 1px; height: 16px; background: #e0e0e0; margin: 0 20px;}