

/* 교육 리스트 ================================================================================== */
.program_listbox						{position:relative;  display: flex; flex-direction: column; gap:30px;}
.program_listbox:after				{content:''; display:block; clear:both;}
.program_listbox li					{position:relative; width:100%;padding:10px; border: 1px solid #dfdfdf; display: flex; flex-flow:wrap;justify-content: space-between;  }
.program_listbox figure				{position:relative; width:300px;  overflow: hidden; transition: all 0.5s ease;}
.program_listbox figure img			{width:100%;height:100%;object-fit:cover;filter: grayscale(100%);  }
.program_listbox .box				{position:relative;flex:2;padding:10px 30px;}
.program_listbox em					{position:relative; color:#fff; padding:4px 10px;  border-radius:2px; font-style:normal; font-size:0.85em; z-index:2;}
.program_listbox .ing				{background:#b02c37;}
.program_listbox .acc				{background:#ed8b39;}
.program_listbox .end,
.program_listbox .wait				{background:#737171;}
.program_listbox .stit				{border:0; color:#92060d; font-size:0.9em; margin-bottom:12px; font-weight:300;} 
.program_listbox .tit					{position:relative;font-size: 1.5em; font-weight:700; letter-spacing: -2px; color:#222; padding:15px 0 20px 0;}
.program_listbox .txt				{position:relative;  color:#555;padding:0 0 0 17px;}
.program_listbox .txt:after		{position:absolute; content:''; display:block; left:4px; top:11px; width:4px; height:4px; background:#003c97; border-radius:50%;}
.program_listbox .txt strong		{position:relative; display:inline-block; font-weight:500; color:#555; padding:0 23px 0 0;}
.program_listbox .txt strong:after		{position:absolute; content:''; display:block; right:10px; top:5px; width:1px; height:17px; background:#ddd; }
.program_listbox .btn				{position:relative;display:inline-block; font-weight:500; border:1px solid #ccc;  padding:9px 25px;font-size:0.9em;letter-spacing:0; margin:30px 0 0 0;border-radius:30px;} 
.program_listbox li:hover			{box-shadow: 0 0 8px 0 rgba(0,0,0,0.2);}
.program_listbox li:hover figure img	{transform: scale(1.05);filter: grayscale(0);}
.program_listbox li:hover .btn	{border:1px solid #003c97; color:#003c97; }
.program_listbox .more				{position:absolute; right:0; top:0; width:55px; height:55px; background:#92060d; cursor:pointer;}
.program_listbox .more:after			{position:absolute; content:''; left:50%; top:50%; transform:translate(-50%, -50%); width:15px; height:2px; background:#fff;}
.program_listbox .more:before		{position:absolute; content:''; left:50%; top:50%; transform:translate(-50%, -50%); width:2px; height:15px; background:#fff;}
.program_nolist						{text-align:center; border-top:1px solid #ddd; border-bottom:1px solid #ddd; padding:100px 0; color:#999;}


@media screen and (max-width:1024px) {
.program_listbox figure				{width:200px; } 
.program_nolist							{padding:60px 0;} 
}

@media screen and (max-width:768px) { 
}

@media screen and (max-width:580px) { 
}





/* 교육 뷰 ================================================================================== */
.program_view_info								{position:relative; padding:30px; border:0 solid #1475dc; background:#22305c; margin-bottom:40px;}
.program_view_info .tit							{position:relative; padding:23px 0 15px 0; font-size:1.6em; font-weight:600; color:#fff; letter-spacing:-1px; }
.program_view_info .txt							{padding:0 ; }
.program_view_info .txt	p						{position:relative; color:#fff; }
.program_view_info .txt	p span					{position:relative;display:inline-block; padding:0 35px 0 0;}
.program_view_info .txt	p span:after			{content:''; position:absolute; top:6px; right:13px;width:1px; height:15px;background:#fff; opacity:0.4;} 
.program_view_info em							{position:absolute;top:-20px;left:-35px;padding:0 30px 0 35px; line-height:30px; font-style:normal; font-size:15px;color:#fff; border-radius:0; } 
.program_view_info em:after						{content:''; position:absolute; top:0; right:0;width:0px;height:0px; border-right: 10px solid #22305c; border-top: 15px solid transparent; border-bottom: 15px solid transparent;}

.program_view_info .ing							{background:#09a9db;}
.program_view_info .acc							{background:#ed8b39;}
.program_view_info .end,
.program_view_info .wait						{background:#848b95;}

.program_viewbox								{position:relative; }
.program_viewbox dl								{overflow:hidden;padding:5px 0;}
.program_viewbox dl dt							{position:relative; float:left; min-width:80px; font-weight:500; color:#222; }
.program_viewbox dl dt:after					{content:''; position:absolute; top:2px; right:7px; bottom:0; width:1px; height:0.9em; margin:auto; background:#d1d1d2; transform: rotate(30deg); -webkit-transform: rotate(30deg);}
.program_viewbox dl dd							{padding-left:90px;}

.program_viewbox .cont							{padding:20px 0 40px 0px;min-height:300px;}
.program_viewbox .cont img						{max-width:100%;}

.program_viewbox .files 						{padding:20px 15px;border-top:1px solid #ddd;overflow:hidden; display:flex;} 
.program_viewbox .files .tit					{ width:130px;color:#777; }
.program_viewbox .files .tit span				{display:inline-block; font-size:0.9em;}
.program_viewbox .files .txt					{ flex:2; line-height:180%;padding:0 0 0 20px ; font-size:0.9em; border-left:1px solid #dfdfdf;}
.program_viewbox .files .txt div				{display:inline-block;}



@media screen and (max-width:1024px) {
	.program_viewbox .infos						{padding:30px 20px; margin-bottom:30px;}
	.program_viewbox .infos .tit				{font-size:1.2em; }
	.program_viewbox em							{font-size:14px; min-width:70px; line-height:32px;}
	.program_viewbox dl							{font-size:0.95em; padding:2px 0;}
}

@media screen and (max-width: 768px) { 
	.program_viewbox .files .tit				{display:none;}
	.program_viewbox .files .txt				{ width:100%;padding:0 ;border-left:0; }
}


/* 접수 뷰페이지 상단  ================================================================================== */
.program_sinviewbox								{ position:relative; border-top:2px solid #4b5267;padding:30px; margin-bottom:20px; border-bottom:1px solid #d5d5d5; background:#fff; background:#f5f5f5;}
.program_sinviewbox .tit						{position:relative;color:#333; font-weight:600; font-size:1.4em;padding:0 0 25px 0; letter-spacing:-1px; border-bottom:1px solid #d5d5d5; text-indent:85px;} 
.program_sinviewbox .cont						{position:relative;padding:15px 0 0 0 ;}
.program_sinviewbox .cont dl					{position:relative;overflow:hidden;margin:7px 0 0 0; display:flex;}
.program_sinviewbox .cont dl dt					{position:relative; width:100px; padding:0 0 0 15px;letter-spacing:-1px; } 
.program_sinviewbox .cont dl dt:before			{position:absolute; content:''; top:10px; left:3px; width:3px; height:3px; background:#999;}
.program_sinviewbox .cont dl dt:after			{position:absolute;content:'';top:4px;right:0;width:1px;height:18px; background:#ccc; z-index:1;}
.program_sinviewbox .cont dl dd					{position:relative;padding:0 0 0 15px; }
.program_sinviewbox .cont dl dd b				{color:#1475dc;}

.program_sinviewbox .btn						{position:absolute;display:block; right:30px;top:18px; letter-spacing:-1px;line-height:45px;padding:0 12px 0 15px; font-size:1.05em; border-radius:3px; z-index:1;transition:all 0.25s ease;}
.program_sinviewbox .btn i						{margin:0 5px 0 5px;transition:all 0.25s ease;}
.program_sinviewbox .btn:hover i				{margin:0 0 0 10px; transition:all 0.25s ease;}
.program_sinviewbox .btn01						{color:#fff;background:#01315c;border:1px solid #002444;cursor:pointer;} 
.program_sinviewbox .btn02						{color:#989da4;background:#fff;border:1px solid #aaa;}

.program_sinviewbox em							{position:absolute;display:block; left:30px;top:25px;font-style:normal;color:#fff; letter-spacing:-1px;padding:4px 10px;font-size:0.9em;border-radius:2px;z-index:1;}
.program_sinviewbox .ing						{background:#01315c;}
.program_sinviewbox .acc						{background:#01315c;}
.program_sinviewbox .end,
.program_sinviewbox .wait						{background:#989da4;}





/*  달력  ==================================================================================== */
#program_calendar_box							{position:relative; }
.program_calendar_title						{text-align:center;overflow:hidden; padding:0 0 15px 0; border-bottom:1px solid #333;}
.program_calendar_title span					{padding:0 6px;font-size:2.4em; color:#333;line-height:150%; vertical-align:middle; font-weight:600; }
.program_calendar_title span img				{vertical-align:sub; width:18px;}
.program_calendar_title_year					{float:left;margin:0 0 0 30%;width:40%;}
.program_calendar_title_select				{float:right; margin:5px 0 0 0;}
.program_calendar_title_select select			{border:1px solid #b5b5b5;height:28px;padding:0 0 0 5px;margin:0 0 0 3px;}	

.program_calendar_title_year .prev			{padding:0; margin-right:5px; content:''; display:inline-block;  width:30px; height:30px; background:url("img/icon_prev.png") no-repeat center 50%; background-sizE:10px auto;}
.program_calendar_title_year .next			{padding:0; margin-left:5px; content:''; display:inline-block;  width:30px; height:30px; background:url("img/icon_next.png") no-repeat center 50%; background-sizE:10px auto;}
.program_calendar_title_year .prev:hover,
.program_calendar_title_year .next:hover		{border:1px solid #aaa;}

.program_calendar_table						{border-collapse:collapse;  width:100%;table-layout:fixed; }
.program_calendar_table thead th				{text-align:center;line-height:46px;font-size:0.85em; font-weight:500; background:#f6f6f6; color:#333; }
.program_calendar_table thead th:first-child	{color:#f64a1b;}
.program_calendar_table thead th:last-child	{color:#397fe7;}
.program_calendar_table tbody td				{border:1px solid #dfdfdf;text-align:left; padding:5px;min-height:90px;vertical-align:top; font-size:0.8em; line-height:130%; }
.program_calendar_table tbody td:first-child	{border-left:1px solid #fff;}
.program_calendar_table tbody td:last-child	{border-right:1px solid #fff;}
.program_calendar_day							{color:#888; padding:0 0 4px 0;}
.program_calendar_applist						{padding:0 0 0 7px;line-height:130%;}

.program_calendar_table .program_calendar_redday,
.program_calendar_table .program_calendar_redday a		{color:#f64a1b;}
.program_calendar_table .program_calendar_blueday,
.program_calendar_table .program_calendar_blueday a		{color:#397fe7;}
.program_calendar_table .program_calendar_today			{background:#f3f3f3;}
  
.program_calendar_table .full_day				{background:#e8e8ed;}
.program_calendar_table .posible_day			{background:#fbe9e7; cursor:pointer;}
.program_calendar_table .noselect_day			{background:#e4f3fb;}
.program_calendar_table .select_day			{background:#fbf5e4; }

.program_calendar_table .wrap					{min-height:90px; font-size:1em; }
.program_calendar_table .wrap .line			{  color:#f11b1b;padding:6px 0;margin:3px 0; letter-spacing:-1px;}
.program_calendar_table .wrap .cate1				{background:#eaf3e8;padding:7px ;margin:3px 0; letter-spacing:-1px;}
.program_calendar_table .wrap .cate2				{background:#eaf3f9;color:#529dcf;padding:7px ;margin:3px 0; letter-spacing:-1px;}
.program_calendar_table .wrap .cate3				{background:#f9f6e6;color:#e09b23;padding:7px ;margin:3px 0; letter-spacing:-1px;}
.program_calendar_table .wrap .cate4				{background:#f8f2f9;color:#bc5ad5;padding:7px ;margin:3px 0; letter-spacing:-1px;}
.program_calendar_table .wrap .cate1 a			{color:#478135; }
.program_calendar_table .wrap .cate2 a			{color:#3282b7; } 
.program_calendar_table .wrap .cate3 a			{color:#be7814; } 
.program_calendar_table .wrap .cate4 a			{color:#a34cb9; } 
.program_calendar_table .wrap .time				{color:#555; letter-spacing:0;padding:0 0 5px 0;} 
.program_calendar_table .wrap .place					{display:block;color:#555; padding: 5px 0 0 0; } 

.mobile_calendar_divs						{display:none;}
.mobile_calendar_table						{border-collapse:collapse;  width:100%;table-layout:fixed; font-size:0.85em;}
.mobile_calendar_table thead th				{text-align:center;line-height:34px;border:1px solid #cfcfcf;border-top:none;font-size:13px;background:#f5f5f5;}
.mobile_calendar_table tbody td				{border:1px solid #cfcfcf; height:40px; }
.mobile_calendar_table tbody td:first-child	{text-align:center;vertical-align:middle;}
.mobile_calendar_table tbody td:last-child	{text-align:left;padding-left:5px;}

.mobile_calendar_table .program_calendar_redday		{color:#f64a1b;}
.mobile_calendar_table .program_calendar_blueday		{color:#397fe7;}
.mobile_calendar_table .program_calendar_today		{background:#e4f3fb;}

.mobile_calendar_table .line				{border-top:1px dashed #ccc; padding:5px 0px;}
.mobile_calendar_table .line:first-child	{border-top:0px;}
 

.program_calendar_tag								{position:relative; display:flex;justify-content:right; padding:15px 0 30px 0;}
.program_calendar_tag li							{position:relative; font-size:0.9em; padding:0 10px ;color:#888; }
.program_calendar_tag li span							{display:inline-block;width:15px;height:15px;  }
.program_calendar_tag li.no1 span							{ background:#eaf3f9; border:1px solid #bbd6e8;}
.program_calendar_tag li.no2 span							{  background:#eaf3f9;border:1px solid #c2dabd;}
.program_calendar_tag li.no3 span							{ background:#f9f6e6;border:1px solid #e6e0bc;}
.program_calendar_tag li.no4 span							{ background:#f8f2f9;border:1px solid #e3cde9;}


@media screen and (max-width:785px) {
	.program_calendar_divs					{display:none;}
	.mobile_calendar_divs					{display:block;}

	.program_calendar_title span				{font-size:2em;}
}


@media screen and (max-width:520px) {
	.program_calendar_title_year				{float:none;margin:0;width:100%;}
	.program_calendar_title_select			{float:none; margin:10px auto 0 auto;}
}