@charset "utf-8"; 
 
@keyframes slide-up {
	from	{opacity:0; transform: translateY(80px);}
	to			{opacity:1.0; transform: translateY(0);}
}
@keyframes scroll-icon { 
	from	{top:3px;}
	to			{top:-10px;}
}
.main_section									{ position:relative; height:100vh; }
.main_inbox										{ /* display: flex; flex-flow:wrap;justify-content: center;  align-items: center;   */ }
 
@media screen and (max-width:1024px) { 
.main_section									{ height:initial !important; }
}

/* VISUAL  ================================================================================== */
.main_container								{padding:   0 0 0;}
.main_visual .bxslider						{visibility:hidden;}
.main_visual .mvideo_box				{position: relative;width: 100%; aspect-ratio:16/9; padding:0; margin:0;   }

.main_visual										{position:relative; top:0; left:0; overflow:hidden;  }  
.main_visual_item 							{ display:table; height:0 !important; padding-top:55%; }
.main_visual .bg 								{ overflow:hidden; position:absolute; width:100%; height:100%; top:0; left:0; filter: brightness(0.85); animation:imgScale 3s both; } 
.visual_txt											{position:absolute; text-align:center; width:100%; top:36%;   z-index:100; color:#fff;animation: slide-up 1.3s cubic-bezier(.3,.2,0,1) forwards;} 
.visual_txt .txt01								{font-weight:800; font-size:2em; line-height:1.2; margin:0 0 10px 0;  color:#ffae00; text-shadow: 3px 3px 5px rgba(0,0,0,0.4); transition:all 0.3s ease;}
.visual_txt .txt02								{font-weight:800; font-size:3.85em;  line-height:1.3; text-shadow: 3px 3px 5px rgba(0,0,0,0.4); transition:all 0.3s ease;}
.visual_txt .txt03								{font-weight:600; font-size:1.55em; line-height:1.4;  padding-top:20px; text-shadow: 3px 3px 5px rgba(0,0,0,0.4); transition:all 0.3s ease;}
.main_visual .scroll							{position:absolute; bottom:45px; left:50%;width:100px; transform: translateX(-50%);text-align:center; opacity:0.85; }
.main_visual .scroll::after					{position:relative; display:block; content:'Scroll'; color:#fff; font-size:0.85em; font-weight:400;}
.main_visual .scroll span					{position:relative;display:inline-block; width:15px; height:25px; background:url('../img/main/icon_scroll.png') no-repeat center 0; background-size:cover;   animation: scroll-icon 0.6s ease infinite alternate both;    } 
/* .main_visual .scroll span					{position:relative;top:0;display:inline-block; width:18px; height:28px; border:1px solid #fff; border-radius:50px;     }  
.main_visual .scroll span::after			{position:absolute;content:''; top:5px; left:calc(50% - 2px);width:4px; height:4px; background:#fff;  border-radius:50px; animation: scroll-icon 0.6s ease infinite alternate both;     }  */

 
@media screen and (max-width:1500px) { 
	.visual_txt .txt01							{font-size:1.6em;   }
	.visual_txt .txt02							{font-size:3em; }	
	.visual_txt .txt03							{ font-size:1.3em; padding-top:10px;}
} 
@media screen and (max-width:1200px) {  
	.visual_txt .txt01							{font-size:1.4em; margin:0 0 5px 0;  }
	.visual_txt .txt02							{font-size:2.7em;  }	
	.visual_txt .txt03							{ font-size:1.2em; }
} 
@media screen and (max-width:1024px) { 
	.visual_txt .txt01							{font-size:1.25em;  }
	.visual_txt .txt02							{font-size:2.4em;line-height:1.2;  }	
	.visual_txt .txt03							{ font-size:1.15em;  font-weight:500; }
	.main_visual .scroll						{display:none; }
 }
 
@media screen and (max-width:800px) {
	.main_visual_item 						{ display:block;  }
	.visual_txt										{ top:37%;   }
	.visual_txt .txt01							{font-size:1.3em;    }
	.visual_txt .txt02							{font-size:2em ;   }	
	.visual_txt .txt03							{ font-size:1em;   }
}
@media screen and (max-width:600px) {
	.main_visual_item 						{  height:260px !important;  }
	.visual_txt .txt01							{font-size:1.1em;    }
	.visual_txt .txt02							{font-size:1.7em ;   }	
	.visual_txt .txt03							{ font-size:0.9em;  display:none; }
	.main_visual .arrow span				{   padding:4px;  }
 
}
@media screen and (max-width:480px) {  
	.visual_txt .txt02							{font-size:1.55em ;  }	
}
   
/* MAIN_CONT  ================================================================================== */





/* main_news_wrap    ================================================================================== */ 
.main_news_wrap									{position:relative; padding: 0;  background:url('../img/main/main_news_bg02.png') no-repeat bottom right;  display: flex; align-items: center;   } 
.main_news_wrap::before					{position:absolute; content:'';width:100%; height:100%; left:0;top:0; background:url('../img/main/main_news_bg01.png') no-repeat 0 0; }   
.main_news_wrap .web_size				{ width:100%; display: flex; justify-content: space-between;    }
.main_news_wrap .tit_wrap				{position:relative;width:500px; padding-left:20px;transition:all 0.3s ease;}
.main_news_wrap .newsbox				{width:calc(100% - 500px);transition:all 0.3s ease;}
.main_news_wrap .tit_wrap .txt01		{font-size:1.6em; color:var(--color1);font-weight:800; padding:10px 0 30px 0;transition:all 0.3s ease;}
.main_news_wrap .tit_wrap .txt02		{font-size:2.95em; color:#000;font-weight:800; line-height:1.25em; transition:all 0.3s ease;}
.main_news_wrap .tit_wrap .btn		{position:relative;display:inline-block; text-align:center; margin-top:85px; padding-right:70px;  }	
.main_news_wrap .tit_wrap .btn a		{ color:#999; transition:all 0.3s ease;}
.main_news_wrap .tit_wrap .btn span		{ position:absolute; right:0;top:-10px; display:inline-block; width:50px;height:50px; line-height:50px; border-radius:50px; border:1px solid var(--color1); font-size:1.15em; color:var(--color1); transition:all 0.3s ease;}	
.main_news_wrap .tit_wrap .btn span i		{}
/*
.main_news_wrap .tit_wrap .btn span::before		{position:absolute; content:''; top:calc(50% - 4px); left:23px; width:6px;height:6px;border:solid var(--color1); border-width:2px 2px 0 0;  transform: rotate(45deg); -webkit-transform: rotate(45deg);  }
.main_news_wrap .tit_wrap .btn span::after			{position:absolute; content:''; top:calc(50% - 1px); left:15px; width:15px;height:2px;background:var(--color1); }
.main_news_wrap .tit_wrap .btn:hover span::before		{ border-color:#fff; }
.main_news_wrap .tit_wrap .btn:hover span::after			{ background:#fff; }
*/

.main_news_wrap .tit_wrap .btn:hover a				{ color:#444; }	
.main_news_wrap .tit_wrap .btn:hover span		{  background:var(--color1);  color:#fff; }	


@media screen and (max-width:1400px) {     
.main_news_wrap .tit_wrap				{width:35%; }	 
.main_news_wrap .newsbox				{width:65%; padding-right:20px;} 
.main_news_wrap .tit_wrap .txt01		{font-size:1.4em;   }	
.main_news_wrap .tit_wrap .txt02		{font-size:2.5em;   }	
}
@media screen and (max-width:1200px) {   
.main_news_wrap .tit_wrap .txt01		{font-size:1.3em; padding:0 0 30px 0;   }	
.main_news_wrap .tit_wrap .txt02		{font-size:2.3em;   }	
}
@media screen and (max-width:1024px) {      
.main_news_wrap									{  padding:80px 0; background-size:55% auto; }
.main_news_wrap::before					{ background-size:50% auto; }
.main_news_wrap .web_size				{ display: block;  }
.main_news_wrap .newsbox				{width:100%; padding:0 20px;} 
.main_news_wrap .tit_wrap				{width:100%; padding-bottom:35px; }	 
.main_news_wrap .tit_wrap .txt01		{font-size:1.2em;  padding:0 0 10px 0; }	
.main_news_wrap .tit_wrap .txt02		{font-size:2em;  }	
.main_news_wrap .tit_wrap .txt02 br		{display:none;  }	
.main_news_wrap .tit_wrap .btn				{position:absolute; right:20px; bottom:45px; margin-top:0; padding-right:45px;}
.main_news_wrap .tit_wrap .btn span		{ position:absolute; right:0;top:-4px;  width:32px;height:32px;  line-height:31px;  font-size:1.1em; }	
/*
.main_news_wrap .tit_wrap .btn span::before		{  left:13px;   }
.main_news_wrap .tit_wrap .btn span::after			{ left:10px; width:10px; }
*/
}
@media screen and (max-width:800px) {      
.main_news_wrap .tit_wrap .txt02		{font-size:1.7em;  }	
}
@media screen and (max-width:600px) {      
.main_news_wrap .tit_wrap .txt02				{font-size:1.5em;  }	
.main_news_wrap .tit_wrap .btn b				{display:none; }
.main_news_wrap .tit_wrap .btn				{position:absolute; right:20px; bottom:63px; margin-top:0; padding-right:45px;}
}
 

/* main_news_wrap    ================================================================================== */ 
 






/* 배너    ================================================================================== */ 
.main_banner								{position:relative;overflow:hidden; padding:0;    transition:all 0.3s ease;}    
.main_banner::before					{position:absolute; content:'';width:100%; height:50%;  background:url('../img/main/main_banner_bg.jpg') no-repeat center 0;background-size:auto 100%; }
.main_banner .tit							{position:relative;text-align:center; font-size:1.15em;color:var(--color1);  line-height:1.4; font-weight: 500;  padding:24vh 0  9vh 0;  color:#fff;}  
.main_banner .tit p						{font-size:2.2em;   font-weight:800; padding:0 0 20px 0;}
.main_banner .tit p br					{display:none; }

.main_banner ul							{position:relative;max-width:1100px; margin:auto; display:grid; grid-template-columns: repeat(4, 1fr);gap:8%;  transition:all 0.3s ease;}   
.main_banner ul li							{position:relative;top:0;  text-align:center;   font-size:1em;font-weight:500;line-height:1.2;  animation: fadeUp 0.6s ease-in-out; animation-fill-mode:forwards; opacity:0 ;  transition:all 0.3s ease;}   
.main_banner ul a							{position:relative; display:block; color:#7a7a7a;  } 
.main_banner ul li:hover				{top:-15px;}
.main_banner ul li .img				{position:relative;  margin:auto; width:200px;height:200px; border-radius:15px; background:var(--color1); margin-bottom:30px;  transition:all 0.3s ease;display: flex; flex-direction: column; justify-content:center; align-items:center;}
.main_banner ul li	.txt					{word-break:keep-all;line-height:1.4; padding-bottom:90px;}
.main_banner ul li	.txt span			{display:block; color:#000; font-size:1.3em; font-weight:bold; padding:0 0 10px 0;  }
.main_banner ul li	.txt p				{}
.main_banner ul li	.btn					{position:absolute;  display:inline-block;bottom:0; left:50%;transform: translateX(-50%);  width:44px; height:44px;line-height:45px; border-radius:50px; border:1px solid #888888;  font-size:1.1em; transition:all 0.3s ease;}   
.main_banner ul li	.btn i				{ color:#777; }
.main_banner ul li:hover .btn			{background:#444;border-color:#444;  }
.main_banner ul li:hover .btn i		{ color:#fff; }
/*
.main_banner ul li	.btn::before	{position:absolute; content:''; top:calc(50% - 5px); left:18px; width:8px;height:8px;border:solid #777; border-width:2px 2px 0 0;  transform: rotate(45deg); -webkit-transform: rotate(45deg);  }
.main_banner ul li .btn::after			{position:absolute; content:''; top:calc(50% - 1px); left:13px; width:14px;height:2px;background:#777; }
.main_banner ul li:hover .btn::before		{border-color:#fff; }
.main_banner ul li:hover .btn::after			{background:#fff; }
*/


@media screen and (max-width:1160px) {   
.main_banner ul							{padding:0 30px; }
.main_banner ul							{ gap:4%;  }   
}
@media screen and (max-width:1024px) {  
.main_banner								{ padding:0 0 70px 0; }
.main_banner::before					{  height:25em; background-size:cover;}
.main_banner .tit							{ padding:8em 0  3em 0;  }  
.main_banner .tit p						{ padding:0 0 10px 0;}
.main_banner ul							{padding:0 50px; }
.main_banner ul li .img				{  width:100%; height:initial; aspect-ratio:1/1; margin-bottom:20px; }
.main_banner ul li .img img		{width:65%; }
.main_banner ul li	.txt span			{ font-size:1.2em;  }
}
@media screen and (max-width:800px) {  
.main_banner ul							{padding:0 20px; }
.main_banner::before					{  height:22em; }
.main_banner .tit							{ padding:6.5em 0  3.5em 0; font-size:1.1em;}  
.main_banner ul							{ gap:20px;  }    
.main_banner ul li .img				{  border-radius:10px; margin-bottom:15px; }
.main_banner ul li	.txt					{font-size:0.95em; padding-bottom:60px;  }
.main_banner ul li	.btn					{ width:34px; height:34px; line-height:35px;font-size:1.05em; }   
/*
.main_banner ul li	.btn::before	{  left:15px; top:calc(50% - 4px);width:6px;height:6px;  }
.main_banner ul li .btn::after		{  left:10px; width:12px; }
*/
}
@media screen and (max-width:660px) {   
.main_banner .tit							{ padding:7.5em 15px  4em 15px;  }  
.main_banner .tit p						{font-size:2em;  }
.main_banner ul li .img img		{width:70%; }
.main_banner ul li	.txt					{font-size:0.9em; padding-bottom:40px;  }
.main_banner ul li	.txt p				{display:none; } 
}
@media screen and (max-width:560px) {   
.main_banner ul							{ gap:10px;  }    
.main_banner .tit							{ padding:6em 15px  2.5em 15px;  }   
.main_banner .tit p						{font-size:1.9em; line-height:1.2;}
.main_banner .tit p br					{display:block; }
.main_banner ul li .img img		{width:75%; } 
.main_banner ul li	.txt span			{font-size:1.1em;  line-height:1.2;  }
}
@media screen and (max-width:480px) {    
.main_banner ul							{padding:0 15px; }
.main_banner .tit							{ padding:6.5em 15px  3.5em 15px; font-size:1.05em;}   
.main_banner ul li	.txt span			{font-size:1em;    }
.main_banner ul li	.btn					{ width:30px; height:30px; line-height:31px;font-size:0.95em; }   
/*
.main_banner ul li	.btn::before	{  left:12px; }
.main_banner ul li .btn::after		{  left:8px; width:11px; }
*/
}
  
/* 배너    ================================================================================== */ 




 

/* main_program  ================================================================================== */ 
.main_program										{position:relative; padding:0; background:url('../img/main/main_program_bg.jpg') no-repeat center 50% ;background-size:cover;  display: flex; align-items: center; }  
.main_program .web_size					{  width:100%; } 
.main_program .tit								{position:relative; text-align:center; font-size:1.15em;color:#5b5b5b;  line-height:1.4; font-weight: 500; padding:0 0 50px 0; }  
.main_program .tit p								{font-size:2.35em;color:#000;  font-weight:800; padding:0 0 15px 0;}
.main_program .inner							{position:relative;}
.main_program .inner ul						{position:relative;display:flex; } 
.main_program .inner ul li					{position:relative;overflow:hidden; top:0; width:33%; background:#fff;  margin:15px;box-shadow: 3px 3px 15px 0 rgba(0,0,0,0.2);transition:all 0.3s ease;} 
.main_program .inner ul li:hover			{top:-15px;}
.main_program .inner ul li a				{ display:block; padding:25px;}
.main_program .inner ul li .tag			{position:relative;  padding:0 0 20px 0; }
.main_program .inner ul li .tag span	{display:inline-block; min-width:90px; text-align:center; background:var(--color1); line-height:40px; padding:0 13px; color:#fff; font-size:0.9em;   }
.main_program .inner ul li .txt01		{position:relative; font-size:1.25em;font-weight:800;color:#000;  padding:0 0 15px 0; }
.main_program .inner ul li .txt02		{font-size:0.95em;  color:#6e6e6e; margin:0 0 25px 0; line-height:1.4; height:45px; overflow:hidden; text-overflow: ellipsis;-o-text-overflow: ellipsis; display:-webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical; word-wrap: break-word; }
.main_program .inner ul li .img  		{aspect-ratio:3.9/2.6; overflow:hidden; }
.main_program .inner ul li .img img	{width:100%; height:100%; object-fit:cover; } 
  
 
.main_program .arrow						{position:absolute; top:45%; width:100%; z-index:11;}
.main_program .arrow p					{position:absolute; width:60px; height:60px; line-height:62px; text-align:center; border:1px solid rgb(0,0,0,0.5);background:rgb(255,255,255,0.5);  cursor:pointer;  opacity:0.4; border-radius:50%;transition:all 0.4s ease;}
.main_program .arrow span			{display:inline-block; font-size:1.6em; color:#444; }
.main_program .arrow .prev			{left:-75px;} 
.main_program .arrow .next			{right:-75px;} 
.main_program .arrow p:hover		{opacity:0.85;} 

/*
.main_program .arrow						{position:absolute; top:45%; width:100%; z-index:11;}
.main_program .arrow p					{position:absolute; width:60px; height:60px;  border:1px solid rgb(0,0,0,0.5);background:rgb(255,255,255,0.5);  cursor:pointer;  opacity:0.4; border-radius:50%;transition:all 0.4s ease;}
.main_program .arrow span			{display:inline-block; border:solid #444; padding:7px;}
.main_program .arrow .prev			{left:-75px;}
.main_program .arrow .prev span	{margin:21px 0 0 24px; border-width:0 3px 3px 0; transform:rotate(135deg);}
.main_program .arrow .next			{right:-75px;}
.main_program .arrow .next span	{margin:21px 0 0 18px;  border-width:3px 3px 0 0; transform:rotate(45deg);}
.main_program .arrow p:hover		{opacity:0.85;} 
*/


.program_list_dots							{z-index:1; margin:2vh 0 0 0; text-align:center;}
.program_list_dots li							{display:inline-block; cursor:pointer;}
.program_list_dots li span				{display:inline-block; content:''; width:10px; height:10px; border-radius:50%; margin:0 5px; background:#888; opacity:0.5;}
.program_list_dots li:hover span, .program_list_dots .on span	{ opacity:1;}


.main_program .more							{position:relative;  display:block;  text-align:center;  padding-top:5vh; transition:all 0.3s ease;}
.main_program .more a						{position:relative;  display:inline-block; border:1px solid rgb(0,0,0,0.23);background:rgb(255,255,255,0);padding:0 35px;line-height:55px; cursor:pointer; color:#555; font-size:0.9em; font-weight:600;  letter-spacing:0; transition:all 0.3s ease;}
.main_program .more a span				{position:relative;  top:1px;margin-left:15px;  display:inline-block; width:22px;height:22px; line-height:22px; border:1px solid #666; border-radius:50%;  }
.main_program .more a span i			{color:#666; }
/*
.main_program .more a span::after				{position:absolute; content:''; top:calc(50% - 4px); left:5px; width:5px;height:5px;border:solid #666; border-width:2px 2px 0 0;  transform: rotate(45deg); -webkit-transform: rotate(45deg);  }
.main_program .more a:hover span	{border-color:#fff;background:#fff; }
.main_program .more a:hover span::after				{ border-color:#333;  }
*/
.main_program .more a:hover				{background:#333;border-color:#333;  color:#fff; } 
.main_program .more a:hover span	{border-color:#fff;background:#fff; }
.main_program .more a:hover span i	{color:#333; }



@media screen and (max-width:1560px) {
.main_program .arrow .prev			{left:0;}
.main_program .arrow .next			{right:0;}
}
@media screen and (max-width:1400px) {
.main_program										{  padding:10em 10px; }
}
@media screen and (max-width:1200px) {
.main_program .inner ul li					{  margin:10px; box-shadow: 1px 1px 10px 0 rgba(0,0,0,0.15);}
.main_program .inner ul li a				{   padding:20px;}
}
@media screen and (max-width:1024px) {   
.main_program										{  padding:70px 10px; } 
.main_program .tit								{ font-size:1.1em;  padding:0 0 40px 0; }  
.main_program .tit p								{font-size:2.25em; }
.main_program .inner ul li .tag span	{  min-width:75px;  line-height:34px; padding:0 10px;}

.main_program .arrow p						{ width:50px; height:50px; line-height:51px; }
.main_program .arrow span				{font-size:1.45em; } 
/*
.main_program .arrow .prev span		{margin:16px 0 0 20px; border-width:0 2px 2px 0;  } 
.main_program .arrow .next span		{margin:16px 0 0 14px;  border-width:2px 2px 0 0;  } 
*/
.main_program .more a span i			{font-size:1.1em;}
} 
@media screen and (max-width:800px) {   
.main_program .tit								{ font-size:1.05em; }  
.main_program .tit p								{font-size:2.1em;padding:0 0 10px 0; }  
.main_program .inner ul li .tag			{ padding:0 0 15px 0; }
.main_program .inner ul li .txt01		{  font-size:1.2em;}
.main_program .more a						{ padding:0 30px;line-height:50px;  } 
}
@media screen and (max-width:600px) {   
.main_program .tit p								{font-size:1.8em; }   
.program_list_dots								{  margin:20px 0 0 0;}
.main_program .more							{ padding-top:2em; }  
.main_program .more a						{font-size:0.85rem; padding:0 20px 0 25px;line-height:45px;  }
.main_program .more a span				{ margin-left:10px;  width:20px;height:20px; line-height:20px;   }
 
}

/* main_program  ================================================================================== */ 


 

 
  

/* main_gallery  ================================================================================== */ 
.main_gallery										{position:relative; padding:70px 0; background:#f9f9f9;overflow:hidden;}
.main_gallery .tit								{position:relative; text-align:center;font-size:1.15em;color:#000; letter-spacing:-1px;line-height:1.2;padding:0 0 45px 0; } 
.main_gallery .tit p							{font-size:2.2rem;color:#000; font-weight:700; letter-spacing:-1.5px;padding:0 0 15px 0;}
 
@media screen and (max-width:1260px) {
	.main_gallery									{padding:60px 0;}
} 
@media screen and (max-width:1024px) {
	.main_gallery									{padding:50px 0;}
	.main_gallery .tit							{font-size:2em;padding:0 0 40px 0; }
} 
@media screen and (max-width:820px) {
	.main_gallery .tit							{font-size:1.9em;padding:0 0 35px 0; } 
} 
@media screen and (max-width:600px) {
	.main_gallery .tit							{font-size:1.7em;padding:0 0 30px 0; }
} 
/* main_gallery  ================================================================================== */ 

 

 


/* FAMSITE    ================================================================================== */
.famsite									{position:relative; padding:25px 0; border-top:1px solid #e5e5e5; background:#fff;}
.famsite ul								{width:calc(100% - 60px); margin:0 auto; text-align:center}
.famsite ul li							{display:inline-block; line-height:70px; border:1px solid #e5e5e5; margin:0 5px;}
.famsite .arrow p					{position:absolute; top:calc(50% - 15px); width:30px; height:30px; cursor:pointer;}
.famsite .arrow span				{display:inline-block; border:solid #aaa; border-width:0 2px 2px 0;  padding:5px; margin:10px 0 0 10px;}
.famsite .arrow span:hover			{border-color:#555;}
.famsite .prev							{left:7px; transform: rotate(135deg);}
.famsite .next							{right:7px; transform: rotate(-45deg);}
 
@media screen and (max-width:1024px) {   
	.famsite								{padding:20px 0;}
 
}




