@charset "utf-8";
*{margin: 0; padding: 0;}
a{text-decoration: none; color: #333;}
ul{list-style: none;}
body{
	font-family: 'Noto Sans KR', sans-serif;
	font-size: 16px;
	color: #333;
	line-height: 22px;
	background: #fff;
}

/*header*/
#header_wrap{
	width: 100%;
    height: 10%;
}
.header{
	height: 10%;
	width: 70%;
	margin: auto;
    z-index: 99;
}

/*---------------------------------------------------------------------------*/
/*PC LANGUAGE*/
@media screen and (min-width: 1200px){
.mheader_language_wrap{display: none;}
.header_language_wrap{
    width: 70%;
    height: 35px;
	position: absolute;
	top: 0;
	right: 0%;
}
.header_language{
    width: 55%;
    text-align: right;
    margin: auto;
}
.header_language p{
    display: inline-block;
    font-size: 14px;
    padding-top: 6px;
	font-family: 'Noto Sans KR', sans-serif;
}
.header_language>p>a{
    display: block;
    color: #114676;
    font-weight: 900;
    letter-spacing: 1px;
}
.header_language>p>a:hover{
	cursor: pointer;
    color:#021242;
    transition-duration: 0.3s;
}
}

/*Tablet Language*/
@media screen and (min-width: 701px) and (max-width: 1199px){
.header_language_wrap{display: none;}
.mheader_language_wrap{
    width: 100%;
    height: 40px;
}
.header_language{
    width: 90%;
    text-align: right;
    margin: auto;
}
.header_language p{
    display: inline-block;
    font-size: 14px;
    padding-top: 6px;
	font-family: 'Noto Sans KR', sans-serif;
}
.header_language>p>a{
    display: block;
    color: #114676;
    font-weight: 900;
    letter-spacing: 1px;
}
.header_language>p>a:hover{
	cursor: pointer;
    color:#021242;
    transition-duration: 0.3s;
}
}

/*Mobile Language*/
@media screen and (max-width: 700px){
.header_language_wrap{display: none;}
.mheader_language_wrap{
	width: 100%;
	height: 40px;
}
.header_language{
	width: 90%;
	text-align: right;
	margin: auto;
}
.header_language p{
	display: inline-block;
	font-size: 14px;
	padding-top: 6px;
	font-family: 'Noto Sans KR', sans-serif;
}
.header_language>p>a{
	display: block;
	color: #114676;
	font-weight: 900;
	letter-spacing: 1px;
}
.header_language>p>a:hover{
	cursor: pointer;
	color:#021242;
	transition-duration: 0.3s;
}
}

/*------------------------------------------------------------------------------------*/
/*pc header*/
@media screen and (min-width: 1200px){
	.mgnb{display: none;}
	h1{
		float: left;
		width: 20%;
		padding: 3.5% 0;
	}
.gnb{
	padding-top: 50px;
    float: right;
    width: 55%;
    display: flex;
    justify-content: flex-start; /* 왼쪽부터 쌓기 */
    gap: 7%; /* 메뉴 간 간격 조절 */
}
.gnb li{
	position: relative;
	float: none; /* float 제거 */
    width: auto; /* 글자 길이에 맞춤 */
}
.gnb li a{
	display: block;
    padding: 10px 0; /* 위아래 패딩 */
    font-size: 16px;
    font-weight: 500;
    color: #114676;
}
.gnb li:hover .submenu1{
	display: block;
	z-index: 1010;
}

/*submenu1*/
.submenu1{
	display: none;
	position: absolute;
	top: 100%;
	right: 60%;
	opacity: 0;
	visibility: hidden;
	
}
.submenu1>li{
	display: block;
	color: #114676;
	font-weight: 600;
	font-size: 14px;
	position: relative;
	text-align: center;
	width: 200%;
	padding: 0%;
	}

.gnb li:hover .submenu1{
	opacity: 1;
	visibility: visible;
}
.submenu1>li>a{
	display: block;
	padding: 10% 0%;
	background: #114676;
	color: #fff;    
	transition-property: background-color;
	transition-duration: 0.5s;
	/* 변하는 속도가 점점 빨라지는 패턴 */
	transition-timing-function: ease-out;
	/* 0.5초 뒤에 transition이 변경되는 딜레이 시간 */
	transition-delay: 1ms;
}
.submenu1 li a:hover{
	background: #fff;
	color: #114676;    
	transition: 0.6s ease-out 20ms;
}

/*submenu2*/
.submenu2{
	display: none;
	position: absolute;
	top: 100%;
	right: 60%;
	opacity: 0;
	visibility: hidden;
}
.gnb li:hover .submenu2{
	opacity: 1;
	visibility: visible;
	z-index: 1010;
}
.submenu2>li{
	color: #114676;
	font-weight: 600;
	font-size: 14px;
	position: relative;
	text-align: center;
	width: 220%;
	padding: 0%;
	background: #114676;
	}
.submenu2>li>a{
	display: block;  
    padding: 9% 0%;
	background: #114676;
	color: #fff;  
	transition-duration: 0.5s;
	/* 변하는 속도가 점점 빨라지는 패턴 */
	transition-timing-function: ease-out;
	/* 0.5초 뒤에 transition이 변경되는 딜레이 시간 */
	transition-delay: 1ms;
}
	.submenu2>li:last-child>a{
	background: #114676;
	color: #fff;
	font-size: 16px;
			padding: 11% 0%;
}
.submenu2 li a:hover{
	background: #fff;
	color: #114676;    
	transition: 0.6s ease-out 20ms;
}
.submenu2 li a:active{
	background-color: #fff;
	color: #114676;
	font-weight: 600;
}
	
.gnb li:hover .submenu2{
	display: block;
}

/*submenu3*/
.submenu3{
	display: none;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 4.5%;
	left: 100%;
}
.gnb>li>.submenu2>li:nth-child(1) .submenu3{
	opacity: 1;
	visibility: visible;
}
.submenu3>li{
	width: 550%;
	background: rgba(255, 255, 255, 0.8);
}
.submenu3>li>a{
	display: block;
	padding: 8.5% 0;
	color: #222222;    
	transition-property: background-color;
	transition-duration: 0.5s;
	/* 변하는 속도가 점점 빨라지는 패턴 */
	transition-timing-function: ease-out;
	/* 0.5초 뒤에 transition이 변경되는 딜레이 시간 */
	transition-delay: 1ms;
}
.submenu3 li a:hover{
	color: #114676;    
	transition: 0.6s ease-out 20ms;
	z-index: 1010;
}

.submenu2 li:hover .submenu3{
	display: block;
}

/*submenu4*/
.submenu4{
	display: none;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 0%;
	left: 100%;
}
.gnb>li>.submenu2>li:nth-child(2) .submenu4{
	opacity: 1;
	visibility: visible;
}
.submenu4>li{
	width: 300%;
	background: rgba(255, 255, 255, 0.8);
}
.submenu4>li>a{
	display: block;
	padding: 8.8% 0;
	color: #222222;    
	transition-property: background-color;
	transition-duration: 0.5s;
	/* 변하는 속도가 점점 빨라지는 패턴 */
	transition-timing-function: ease-out;
	/* 0.5초 뒤에 transition이 변경되는 딜레이 시간 */
	transition-delay: 1ms;
}
.submenu4 li a:hover{
	color: #114676;    
	transition: 0.6s ease-out 20ms;
	z-index: 1010;
}


.submenu2 li:hover .submenu4{
	display: block;
	z-index: 1010;
}
	
/*submenu5*/
.submenu5{
	display: none;
	position: absolute;
	top: 100%;
	right: 60%;
	opacity: 0;
	visibility: hidden;
}
.submenu5>li{
	display: block;
	text-align: center;
	width: 260%;
	padding: 0%;
}
.gnb li:hover .submenu5{
	display: block;
	opacity: 1;
	visibility: visible;
	z-index: 1010;
}
.submenu5>li>a{
	display: block;
	padding: 11% 0;
	background: #114676;
	color: #fff;    
	transition-property: background-color;
	transition-duration: 0.5s;
	/* 변하는 속도가 점점 빨라지는 패턴 */
	transition-timing-function: ease-out;
	/* 0.5초 뒤에 transition이 변경되는 딜레이 시간 */
	transition-delay: 1ms;
}
.submenu5 li a:hover{
	background: #fff;
	color: #114676;    
	transition: 0.6s ease-out 20ms;
}

/*submenu6*/
.submenu6{
	display: none;
	position: absolute;
	top: 100%;
	left: -30%;
	opacity: 0;
	visibility: hidden;
}
.submenu6>li{
	display: block;
	text-align: center;
	width: 100%;
}
.gnb li:hover .submenu6{
	display: block;
	opacity: 1;
	visibility: visible;
	z-index: 1010;
}
.submenu6>li>a{
	display: block;
	padding: 10% 0;
	background: #114676;
	color: #fff;    
	transition-property: background-color;
	transition-duration: 0.5s;
	/* 변하는 속도가 점점 빨라지는 패턴 */
	transition-timing-function: ease-out;
	/* 0.5초 뒤에 transition이 변경되는 딜레이 시간 */
	transition-delay: 1ms;
}
.submenu6 li a:hover{
	background: #fff;
	color: #114676;    
	transition: 0.6s ease-out 20ms;
}
}	
	
	
	/*tablet header*/
	@media screen and (min-width: 701px) and (max-width: 1199px){
	.gnb{display: none;}
	.header{
		width: 100%;
	}
	h1{
		float: left;
		width: 30%;
		text-align:right;
		padding: 4%;
	}
	h1 img{
		width: 100%;
	}
	.mgnb{
		display: block;
	}
	.mgnb p{
		float: right;
		padding: 3% 0;
		width: 10%;
	}
	.mgnb p img{width:45%;}
	}
	
	
	/*mobile header*/
	@media screen and (max-width: 700px){
	.gnb{display: none;}
	.header{
		width: 100%;
	}
	h1{
		float: left;
		width: 40%;
		text-align:right;
		padding: 4%;
	}
	h1 img{
		width: 100%;
	}
	.mgnb{
		display: block;
	}
	.mgnb p{
		float: right;
		padding: 15px 1%;
		width:10%;
	}
	.mgnb p img{width:70%;}
	}
	
	/*-----------------------------------------------------------------------------*/

/*banner*/
@media screen and (min-width: 1200px){
.mbanner{display: none;}
#banner_wrap{
	width: 100%;
	overflow: hidden;
}
.banner_slider{
	width: 100%;
}
.banner_slider img{
	width: 100%;
}
}

/*tablet banner*/
@media screen and (min-width: 701px) and (max-width: 1199px){
.mbanner{display: none;}
#banner_wrap{
	width: 100%;
	overflow: hidden;
}
.banner_slider{
	width: 100%;
}
.banner_slider img{
	width: 100%;
}
}


/*mobile banner*/
@media screen and (max-width: 700px){
.banner_slider{display: none;}
.mbanner{
	width: 100%;
	overflow: auto;
}
.mbanner img{
	width: 100%;
}
}
/*-------------------------------------------------------------------------*/

/*contact-section*/

.contact-section {
  display: grid;
  gap: 20px;
  margin: 2% auto;
  width : 70%;
  padding: 0 20px;
  align-items: stretch; /* 각 카드 높이 동일하게 */
}

.contact-card {
  display: flex;
  flex-direction: column; /* 지도 위, 글 아래 정렬 */
  background: #f9f9f9;
  padding: 5px 5px 25px;
  text-align: center;
}

.map-frame {
  width: 100%;
  aspect-ratio: 1/1; /* 정사각형 지도 */
  overflow: hidden;
  margin-bottom: 15px;
  flex-shrink: 0; /* 지도 크기 유지 */
}

.contact-card h3 {
  margin: 10px 0;
  font-size: 18px;
  font-weight: bold;
}

.contact-card p {
  margin: 5px 0;
  font-size: 14px;
}
/*PC-contact-section*/
@media screen and (min-width: 1200px){	
.contact-section {
  grid-template-columns: repeat(3, 1fr); /* 기본 3열 */
}
}
/*tablet contact-section*/
@media screen and (min-width: 701px) and (max-width: 1199px){
.contact-section {
    grid-template-columns: repeat(2, 1fr); /* 태블릿 2열 */
}
}
/*mobile contact-section*/
@media screen and (max-width: 700px){
.contact-section {
    grid-template-columns: 1fr; /* 모바일 1열 */
  }
}
/*-------------------------------------------------------------------------*/
/*Section1*/
#section1_wrap{
    width: 100%;
}
.line2{
	width: 4%;
	border-top: 3px solid #114676;
	margin-bottom: 3%;
}
.section1_tit{
	width: 70%;
	overflow: hidden;
	margin: 5% auto 0;
	line-height: 28px;
}
.contact-section_title{
	font-size: 28px;
    color: #114676;
    line-height: 33px;
    font-weight: 550;
    margin-bottom: 3%;
}
/*pc Section1*/
@media screen and (min-width: 1200px){
.msection1{display: none;}
.section1{
    width: 100%;
    margin: 0 auto;
    overflow: auto;
}
.section1_left{
    width: 50%;
    float: left;
    padding-top: 7%;
}
.section1_title{
    font-size: 30px;
    padding-bottom: 3%;
}
table{
    width: 100%;
}
td{    
    padding: 2% 0;    
}
input{
    width: 100%;
    border: none;
    padding: 5%;
    background: #d1dce8;
}
input:nth-child(5){
    height: 10%;
    padding-right: 5%;
}
input::placeholder{
    font-size: 18px;
    padding-left: 1%;
}
textarea{
	border: none;
	padding: 5px;
	width: 100%;
	height: 200px;
    resize: vertical;
    background: #d1dce8;
}
textarea::placeholder{
    font-size: 18px;
    padding: 5%;
    font-family: 'NEXON Lv1 Gothic OTF';
}
.button{
    float: right;
    width: 20%;
    overflow: auto;
    background: #929fab;
    text-align: center;
    padding: 5%;
}
.button a{
    display: block;
    padding-top: 27px;
    color: #fff; 
    letter-spacing: 3px;
}
.button:hover{
    background: #fff;
    border: 2px solid #929fab;
    transition-duration: 0.5s;
}
.button a:hover{
    color: #333;
    transition-duration: 0.5s;
}
.section1_right{
    width: 70%;
    margin: auto;
    overflow: hidden;
}
.section1_title{
    font-size: 30px;
    padding: 5% 0 2%;
}
.section1_text{
    padding-bottom: 10px;
    font-size: 20px;
    padding: 1.5% 0 0;
    line-height: 35px;
}
.section1_text2{
    line-height: 25px;
    padding-bottom: 15px;
}
span{
    color: #114676;
    font-weight: 600;
    text-decoration-line: underline;
}
.right1{
    width: 100%;
    text-align: center;
    font-size: 20px;
    margin-bottom: 5%;
}
.right2{
    width: 100%;
    text-align: center;
    font-size: 15px;
    margin-bottom: 5%;
}
.line{
    width: 70%;
    margin: auto;
    border-top: 1px solid #114676;
    padding: 3% 0 0;
}
.contact_second{
    width: 70%;
    margin: auto;
}
.notice{
    font-size: 23px;
    text-align: center;
    padding-top: 5%;
}
.left{
    width: 50%;
    float: left;
    line-height: 30px;
}
.section1_title2{
    font-size: 30px;
    padding: 2% 0 2%;
}
}

/*tablet Section1*/
@media screen and (min-width: 701px) and (max-width: 1199px){
.section1{display: none;}
.msection1{
    width: 85%;
    margin: 0 auto 6%;
    overflow: auto;
}
.section1_left{
    width: 85%;
    padding-top: 7%;
}
.section1_title{
    font-size: 30px;
    padding-bottom: 3%;
}
tr{width: 100%;}
td{    
    padding: 2% 0;    
}
input{
    width: 100%;
    border: none;
    padding: 5%;
    background: #d1dce8;
}
input:nth-child(5){
    height: 10%;
    padding-right: 5%;
}
input::placeholder{
    font-size: 18px;
    padding-left: 1%;
}
textarea{
	border: none;
	padding: 5.2%;
	width: 100%;
	height: 200px;
    resize: vertical;
    background: #d1dce8;
}
textarea::placeholder{
    font-size: 18px;
    padding: 5%;
    font-family: 'NEXON Lv1 Gothic OTF';
}
.button{
    float: right;
    overflow: auto;
    background: #929fab;
    text-align: center;
    padding: 5%;
    width: 20%;
}
.button a{
    display: block;
    padding-top: 27px;
    color: #fff; 
    letter-spacing: 3px;
}
.button:hover{
    background: #fff;
    border: 2px solid #929fab;
    transition-duration: 0.5s;
}
.button a:hover{
    color: #333;
    transition-duration: 0.5s;
}
.section1_right{
    width: 85%;
    padding-top: 20%;
}
.section1_title2{
    font-size: 30px;
    padding: 5% 0;
}
.section1_text{
    padding-bottom: 10px;
}
.section1_text2{
    line-height: 25px;
    padding-bottom: 15px;
}
span{
    color: #114676;
}
}

/*mobile Section1*/
@media screen and (max-width: 700px){
.section1{display: none;}
.msection1{
    width: 100%;
    margin: 0 auto 6%;
    overflow: auto;
}
.section1_left{
    width: 100%;
    padding-top: 7%;
}
.section1_title{
    font-size: 30px;
    padding-bottom: 3%;
}
tr{
    width: 85%;
}
td{ 
    padding: 2% 0;    
}
input{
    border: none;
    padding: 5% 0;
    background: #d1dce8;
}
input:nth-child(5){
    height: 10%;
    padding-right: 5%;
}
input::placeholder{
    font-size: 18px;
    padding-left: 1%;
}
textarea{
	border: none;
	padding: 5px;
	width: 98%;
	height: 200px;
    resize: vertical;
    background: #d1dce8;
}
textarea::placeholder{
    font-size: 18px;
    padding: 0;
    font-family: 'noto sans KR'
}
.button{
    float: right;
    width: 20%;
    overflow: auto;
    background: #929fab;
    text-align: center;
    padding: 5%;
}
.button a{
    display: block;
    padding-top: 27px;
    color: #fff; 
    letter-spacing: 3px;
}
.button:hover{
    background: #fff;
    border: 2px solid #929fab;
    transition-duration: 0.5s;
}
.button a:hover{
    color: #333;
    transition-duration: 0.5s;
}
.section1_right{
	margin: auto;
    width: 85%;
    padding-top: 20%;
}

.section1_title2{
    font-size: 30px;
    padding: 5% 0;
}
.section1_text{
    padding-bottom: 10px;
}
.section1_text2{
    line-height: 25px;
    padding-bottom: 15px;
}
span{
    color: #114676;
}
}
/*-------------------------------------------------------------------------*/
/*Section4*/
#section4_wrap{
	width: 100%;
	overflow: hidden;
	background-color: #ddd;
}

/*PC Section4*/
@media screen and (min-width: 1200px){
.msection4{display: none;}
.section4{
	width: 70%;
	margin: auto;
	padding: 2% 0;
	overflow: auto;
}
.section4_inner li{
	float: left;
	display: flex;
	line-height: 30px;
	font-size: 16px;
	font-weight: 600;
	width: 33.3%;
}
.section4_inner li img{
	width: 35px;
	height: 35px;
	padding-right: 2%;
}
}

/*tablet Section4*/
@media screen and (min-width: 701px) and (max-width: 1199px){
.section4{display: none;}
.msection4{
	width: 85%;
	margin: auto;
	padding: 5% 0;
}
.info_table{
	font-weight: 600;
	border-spacing: 10px;
	border: none;
	margin: 0;
}
.info_table tr{
	border: none;
	padding: 10% 0;
}
.info_table td{
	padding: 0.5% 0;
}
.table_text{
	padding-left: 3%;
}
}

/*mobile Section4*/
@media screen and (max-width: 700px){
.section4{display: none;}
.msection4{
	width: 85%;
	margin: auto;
	padding: 5% 0;
}
.info_table{
	font-weight: 600;
	border-spacing: 10px;
	border: none;
	margin: 0;
}
.info_table tr{
	border: none;
}
.info_table td{
	padding: 0.5% 0;
}
.table_text{
	padding-left: 3%;
}
}

/*-------------------------------------------------------------------------*/
/*Footer*/
#footer_wrap{
	width: 100%;
	overflow: hidden;
	background-color: #114676;
}
/*PC footer*/
@media screen and (min-width: 1200px){
.mfooter{display: none;}
.footer{
	width: 70%;
	margin: auto;
	overflow: auto;
	padding: 3.5% 0;
	background-color: inherit;
	text-align: center;
}
.footer_inner{
	color: #fff;
	margin-top: 0.5%;
	font-size: 16px;
}
}

/*tablet footer*/
@media screen and (min-width: 701px) and (max-width: 1199px){
.footer{display: none;}
.mfooter{
	width: 85%;
	margin: auto;
	overflow: auto;
	padding: 10% 0;
	background-color: inherit;
	text-align: center;
}
.footer_inner{
	color: #fff;
	margin-top: 0.5%;
	font-size: 16px;
}
}

/*mobile footer*/
@media screen and (max-width: 700px){
.footer{display: none;}
.mfooter{
	width: 85%;
	margin: auto;
	overflow: auto;
	padding: 10% 0;
	background-color: inherit;
	text-align: center;
}
.footer_inner{
	color: #fff;
	margin-top: 0.5%;
	font-size: 16px;
}
}