.flex{display:flex;}
.main_con *{color:#333;}
.main_c{color:var(--main_c)}
.main_c2{color:var(--main_c2)}

.in{max-width:1500px; margin:0 auto;}

.main_con {    }
.main_con h2{font-size:3em; margin-bottom:30px;  font-family: 'NPSfontBold'; font-weight:400;}
.main_con h3{font-size:3em; margin-bottom:20px; font-family:'NPSfontBold'}
.main_con h4{font-size:2.5em; margin-bottom:30px; font-weight:400;}
.main_con p{font-size:1.2em; line-height:1.5;}

.m_btnbox{margin-top:20px; }
.m_btn {border:1px solid #666; color:#666; border-radius:50px; padding:13px 43px;font-size:1em;display:inline-flex; justify-content:space-between;align-items:center;transition: all 0.3s ease-out;}
.m_btn:hover {background: linear-gradient(270deg, rgba(7, 49, 144, 1) 0%, rgba(205, 16, 46, 1) 100%);border:1px solid transparent; color:#fff; transition: all 0.3s ease-out;}

@media (max-width: 900px) { 
	.in{padding:0 3%; box-sizing:border-box;}
	.main_con h3{font-size:2.2em;}
	.main_con h4{font-size:2em;}
	.main_con p{font-size:1em;}
	.m_btn{font-size:.9em; padding:13px 35px;}
}

.business{padding:100px 0; position:relative; box-sizing:border-box;}
.business::after{content:''; background: url(/common/img/bg_w.png) center center / cover no-repeat, #fff; 
	top: -170px;
    left: 0;
    height: calc(100% + 170px);
    position: absolute;
    width: 100%;
    z-index: -1;
}
.business .in{gap:100px; align-items:center;}
.business .imgbox{gap:30px; width:65%;    align-items: center; }
.business li{width:45%; box-shadow:0px 10px 30px rgba(0, 0, 0, 0.2);}
.business li:last-child{width:55%; }
.business img{max-width:100%; vertical-align: top;}
.business .txtbox{width:35%;}
.business span{}
.business h3{margin-bottom:20px; font-weight:100; line-height:1.3; margin-top:5px; color:rgba(0,0,0,0.5)}
.business p{margin-bottom:30px;}
.business b{  background:linear-gradient(270deg,rgba(7, 49, 144, 1) 0%, rgba(205, 16, 46, 1) 100%);
  -webkit-background-clip: text;  /* 텍스트 영역에 배경 잘라내기 */
  -webkit-text-fill-color: transparent; /* 글자 색상을 투명하게 */ font-family:'NPSfontBold'}
.business a{margin-right:10px;}


@media (max-width: 900px) { 
	.business{padding:80px 0;}
	.business .in{flex-direction:column-reverse; gap:40px;}
	.business .imgbox{width:100%;}
	.business li:last-child{margin-top:40px;}
	.business .txtbox{width:100%;}
	.business h4{font-size:2em;}
}

.section01{background: url(/common/img/main_bn.png) no-repeat center / cover, linear-gradient(270deg, rgb(144 164 209) 0%, rgb(205 145 155) 100%); background-blend-mode:multiply; background-attachment: fixed;  width:100%;height:360px;display:flex;align-items:center;justify-content:center;flex-direction:column;}
.section01 *{color:#fff; }
.section01 .in{display:flex; justify-content:space-between; align-items: center; width:100%; max-width:1400px;}
.section01 .txtbox{font-size:1.2em;}
.section01 b{font-weight:400; font-size:1.1em;}
.section01 h3{margin-bottom:20px; margin-top:7px;}
.section01 p{margin-bottom:30px;}
.section01 .m_btn{border:1px solid #fff; color:#fff;}
.section01 .m_btn:hover{border:1px solid transparent;}

@media (max-width: 900px) { 
	.section01{background-attachment:scroll; height:300px;}
	.section01 .in{flex-direction:column;}
	.section01 .txtbox{font-size:1em;}
	.section01 b{font-size:1em;}
	.section01 h4 {margin-bottom:20px; font-size:2em;}


}	


.section02{margin:100px 0; position:relative;}
.section02::after {
    background: url(/common/img/logo_icon.png) no-repeat 0 0 / contain;
    content: '';
    position: absolute;
    left: 0;
    top: 0%;
    width: 525px;
    height: 357px;
    z-index: -1;
	opacity:.1;
}

.section02 .box{display:flex;}
.section02 .txtbox h3{margin-bottom:10px;}
.section02 .txtbox{margin-bottom:30px;}

figure{
  color: #fff;
  position: relative;
  overflow: hidden;
  width: 100%;
  text-align: center;
  height:500px;
  background: linear-gradient(270deg,rgba(7, 49, 144, 1) 0%, rgba(205, 16, 46, 1) 100%);
}
figure::after{content:''; position:absolute; top:0; left:0; width:100%; height:100%; background:#000; opacity:.2;}
figure * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

figure img {
  opacity: 1;
  width: 100%;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  object-fit: cover;
  height:100%;
}

figure figcaption {
  position: absolute;
  bottom: 0;
  left: 18%;
  right: 18%;
  height: 100%;
}

figure figcaption > div {
  overflow: hidden;
  width: 100%;
  position: relative;
  height: 50%;
}

figure p,
figure span {
  display: inline-block;
  width: 100%;
}

.section02 figure p {
  position: relative;
  bottom: 0;
  left: 0;
  position: absolute;
  font-size:2.3em;
  font-weight:600;
  color:rgba(255,255,255,.8);
  z-index:999;
  margin:0;
  font-family:'NPSfontBold'

}

figure span {
  background: #ffffff;
  border-radius:50px;
  color: #4d4d4d;
  -webkit-transform: translate3d(0%, -100%, 0);
  transform: translate3d(0%, -100%, 0);
  padding:15px 0;
}

figure a {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  position: absolute;
  color: #ffffff;
}


figure:hover img{
  opacity: 0.35;
  -webkit-filter: blur(5px);
  filter: blur(5px);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
figure:hover::after{display:none;}
figure:hover figcaption p,
figure.hover figcaption p {
  -webkit-transform: translate3d(0%, 100%, 0);
  transform: translate3d(0%, 100%, 0);
  opacity:0;
}

figure:hover figcaption span,
figure.hover figcaption span {
  -webkit-transform: translate3d(0%, 0%, 0);
  transform: translate3d(0%, 0%, 0);
}


@media (max-width: 900px) { 
	.section02{margin:60px 0;}
	.section02 .box{flex-wrap:wrap;}
	.section02::after{width:100%; height:100%;}
	figure{width:50%; height:50vw;}
	.section02 figure p{font-size:1.4em;}
}


.section03{padding:100px 0; box-sizing:border-box; background:#f5f5f5; position:relative;}
.section03 .in{display:flex; gap:20px; z-index:99; position:relative;}
.section03 iframe{width:60%; height:465px;}
.section03 .quick{width:40%;}
.section03 .quick dl{padding:80px 30px; box-sizing:border-box; background-blend-mode:multiply; background:url('/common/img/quick1.png') top right / cover no-repeat, 
linear-gradient(90deg, rgb(125 0 5) 0%, rgb(233 155 167) 100%) }
.section03 .quick dl:last-child{margin-top:20px; background:url('/common/img/quick2.png') center / cover no-repeat, 
 linear-gradient(90deg, rgba(0, 30, 97) 0%, rgb(185 202 241) 100%);}
.section03 .quick dt{font-size:2em; margin-bottom:10px; font-family:'NPSfontBold'; display:flex; gap:15px;}
.section03 .quick dd{font-size:1.1em; color:rgba(255,255,255,.8)}
.section03 .quick *{color:#fff;}

.section03 .bg0{position:absolute; top:70px; right:3%;font-weight:800;color:#fff; font-size: 13em; line-height:0; letter-spacing: 0; z-index:9; font-family: "Montserrat", sans-serif;}

@media (max-width: 900px) { 
	.section03 {padding:60px 0;}
	.section03 .in{flex-direction:column;}
	.section03 iframe{width:100%; height:300px;}
	.section03 .quick{width:100%;}
	.section03 .bg0{display:none;}
}

footer{font-size:1em; padding:60px 0;box-sizing: border-box; font-weight:400; background:#333;}
footer .in{padding:0 10%; display:flex; justify-content:space-between; align-items:start;}
.sub footer{background:none; border-top:1px solid #ddd;}
.sub footer .in{max-width:1500px;}
footer .titbox{ display:flex; gap:80px;}
footer *{color:#aaa;}
footer img{width:180px;}
footer .info{line-height:1.5;}
footer p{margin-top:10px;}

@media screen and (max-width:900px) {
	footer{padding:30px 0; font-size:.9em;}
	footer .in{flex-direction:column; gap:10px; padding:0 3%;}
	footer .titbox{flex-direction:column; gap:10px;}
}