﻿@import url("site_dept.css");


/* 이미지 가로100% *
.img100-1200 { text-align: center; }*/


/* 준비중페이지 */
.readypg { height: 450px; background:url(/resources/images/irb/sub/readypg.jpg) no-repeat top center; }

/* 컨텐츠상단 사진+붉은박스 */
.sub-dep-info {height: auto;margin-bottom: 20px;background: url(/resources/images/irb/common/pattern_01.png) repeat #be222f;display: flex;}
.sub-dep-info img {width: 100%;}
.sub-dep-info .pred-photo { float: left; width: 50%; height:262px; margin: 0; padding: 64px 0 0 0; }
.sub-dep-info .pred-txt { float: left; width:50%; height:262px; }
.sub-dep-info .pred-txt p { width: 100%; margin:0; padding: 80px 0 0 0; text-align: center; font-size: 1.2em; line-height: 1.2; color: #df9197; background: url(/resources/images/irb/sub/hline_pred.gif) no-repeat center 25%; }
.sub-dep-info .pred-txt p span { font-size: 1.8em; line-height: 2; color: #e4c4ae; }

/* 문서다운로드 *
.doc-box { display:inline-block; width: 100%; padding: 30px 0 10px 0; border-top: solid 2px #e8eaed; }
.doc-box-none { border-top: 0; padding-top: 15px; }
.doc-box dt { padding: 5px 0; font-size: 1.2em; font-weight: 500; color: #333; }
.doc-box dd { float:left; width: 80%; padding: 2px 0; background: url(/resources/images/irb/common/dot_01.gif) repeat-x center 55%; }
.doc-box dd span { background-color: #fff; padding-right: 50px; }
.doc-box .doc-box-bgnone { background: none; }
.doc-box .doc-box-btn { float:left; width: 20%; text-align:right; background: none; }
.doc-box .doc-box-btn button { padding: 3px 15px; font-size: 0.6em; font-weight: 300; }*/

/* 로그인 */
.lgn { display: inline-block; padding: 45px; border: solid 1px #e8eaed; }
.lgn .lgn-info { float: left; width: 60%; padding: 95px 0 80px 0; background: url(/resources/images/irb/sub/login_star.jpg) no-repeat right top; }
.lgn .lgn-info .lgn-info-w { background: url(/resources/images/irb/sub/login_lock.jpg) no-repeat 0 20px; }
.lgn .lgn-info .lgn-info-w .lgn-info-txt01 { margin: 0 0 0 80px; padding: 0; font-size: 1.067em; font-weight: 400; color: #343434; }
.lgn .lgn-info .lgn-info-w .lgn-info-txt02 { margin: 0 0 0 80px; padding: 0; font-size: 3.333em; font-weight: 500; color: #343434; letter-spacing: -0.07em; }
.lgn .lgn-info .lgn-info-w .lgn-info-txt02-red { color: #be222f; }
.lgn .lgn-info .lgn-info-w .lgn-info-txt02-black { color: #010101; }
.lgn .lgn-info .lgn-info-w .lgn-info-txt03 { margin: 0; padding: 0; font-size: 1.067em; color: #6b6b6b; letter-spacing: -0.07em; }
.lgn .lgn-ipt { float:left; position:relative; width: 40%; margin: 115px 0 0 0; padding: 0; }
.lgn .lgn-ipt .lgn-ipt-form { width: auto; padding: 0 145px 0 0; }
.lgn .lgn-ipt .lgn-ipt-form legend { width: 0; height: 0; line-height: 0; font-size: 0px; float: left; position: absolute; visibility: hidden; overflow: hidden; }
.lgn .lgn-ipt .lgn-ipt-form .lgn-ipt-combo { padding: 0 0 10px 0; color: #464646; }
.lgn .lgn-ipt .lgn-ipt-form ul { position: relative; }
.lgn .lgn-ipt .lgn-ipt-form ul li { position: relative; margin-bottom: 5px; padding: 0; }
.lgn .lgn-ipt .lgn-ipt-form ul li label { position: absolute; top: 0; left: 12px; line-height: 42px; color: #464646; }
.lgn .lgn-ipt .lgn-ipt-form ul li input { width: 96%; min-width: 120px; height: 42px; padding: 0 12px; border: solid 1px #eee; }
.lgn .lgn-ipt .lgn-ipt-form .lgn-btn { position:absolute; bottom: 6px; right: 0; width: 145px; height: 89px; font-size: 1.1133em; color: #fff; background-color: #be222f; border: 1px; border-color: #be222f; border-radius: 5px; outline: none; }


/* 생명윤리위원회 위원회소개  */
.sub-content {margin-top: 60px;}
.sub01_01 {background: url(/resources/images/irb/sub/sub01_img01.jpg) no-repeat center top;}
.sub01_01 .gre-photo-Slogan {padding: 220px 70px 0;font-size: 25px;color: #ffffff; line-height: 25px;}

.vsn-est {margin: 10px 60px 0;background: #ffffff;padding: 0 25px;}
.vsn-est p {padding-top: 30px; color: #3c3c3c;text-align: left;}
.vsn-est p, .list-ico li {font-size: 17px;}
.vsn-est .list-ico { padding-top: 30px; }
.vsn-est .list-ico span.ico {width: 100%; position: absolute;top: 0;left: 0;text-align: left;}
.vsn-est .gre-photo-Slogan{ font-size: 30px; color: #ffffff;}
.vsn-est .gre-photo-tit{margin-top: 40px;font-size: 30px;font-family: NanumMyeongjo;color: #be222f;font-weight: 500;} 
.vsn-est .gre-photo-tit span{margin-top: 60px;font-family: NanumMyeongjo;font-weight: 600;}


/* 생명윤리위원회 심의> 심의신청안내 sub02_01*/
.pred-photo-info0201 {background: url(/resources/images/irb/sub/info0201.jpg) no-repeat left center;}
.sub-dep-info .sub-del-ttl {display: inline-block;background-color: rgba(4, 32, 107, 0.8);margin: 59px 0 59px 56px;padding: 45px 29px 52px;min-width: 383px;color: #ffffff;font-size: 1.625em;font-weight: 400;}
.sub-dep-info .dep-ttl-sub { display: block; padding-top: 15px; font-size: 0.77em; line-height: 1.4; }
.sub-dep-detail { margin-top: 40px; line-height: 1.5; }
.sub-dep-detail p,
.sub-dep-detail li { color: #5d5d5d; font-weight: 400; }
.sub-dep-detail .dep-detail-ttl { margin: 20px 0 2px; color:#8a553b ; font-size: 1.6em; font-weight: 500; }
.sub-dep-detail .dep-detail-ttl:first-child { margin-top: 0; }

.prfe dl {float:left;width: 100%;margin: 0;font-size: 1.067em; }
.prfe dl dt {clear: both;float: left;width: 24%;padding: 18px 0 18px 13px;font-weight: 500;letter-spacing: -0.04em;color: #525252;border-bottom: solid 1px #a8a8a8;height: 90px; font-weight: 600;}
.prfe dl dd {float: left;width: 76%;padding: 18px 0 18px 16px;color: #646464;border-bottom: solid 1px #ebebeb;height: 90px;}
.prfe dl .prfe-line-01 {border-top: solid 1px #a8a8a8;}
.prfe dl .prfe-line-02 { border-top: solid 1px #ebebeb;}

/* 생명윤리위원회 심의> 심의흐름도 sub02_03 */
.vimg-pc { display: block; width: 100%; text-align:center; }
.vimg-m { display: none; }
.line_tit{ width:100%;   background:url(/resources/images/irb/sub/line01.gif) 0px 0px repeat-x; padding:10px 5px 5px 10px; border-bottom:#666666 dashed 1px; font-size:24px; font-weight:600; clear:both; margin-top:40px; margin-bottom:30px} 

.box_st01{ width:100%; padding:10px; background: url(/resources/images/irb/sub/patton03.jpg)   repeat;}
.box_st01 div{ background:#fff; padding:20px}

h4.tits01 { background:url(/resources/images/korean/common/h7_bg.gif) no-repeat left 2px; margin:20px 0 10px; padding-left:20px; color:#000000; font-size:1.2em; font-weight:400; }
ul.list-dot li{ background:url(/resources/images/hoseoef/sub/icon03.gif) 3px 12px no-repeat; padding-left:15px;}

/* 학사일정 */
#container > section	{ display: table; width: 100%; margin-bottom: 50px; margin-top: 0; }
#container > section > aside					{ /*display: table-cell;*/ width: 260px; vertical-align: top; box-sizing: border-box; position: relative; border: 1px solid #d8dada; background: #fff; padding: 10px; overflow: auto; margin-left: 10px; }
#container > section > article					{ position: relative; display: table-cell; vertical-align: top; box-sizing: border-box; padding: 0px 10px 10px 25px; line-height: 1.5em; }
#container > section > article.no-top-padding	{ padding-top: 0; }

.ui-page-total-category { margin: 0;}
.ui-style-title,
#container > section > article h3		{ position: relative; margin-bottom: 20px; font-size: 18px; font-weight: 300; padding-left: 10px;}
.ui-style-title:before,
#container > section > article h3:before	{ content: ""; display: block; position: absolute; left: 0; width: 5px; top:0; bottom: 0; background:#846237; }
#container > section > article h4		{position: relative;margin: 1px;font-size: 16px;font-weight: 300;padding-left: 10px;text-align: left;}

.aside_calendar .count 		{ color: #f26522;font-weight: 800;padding-right:3px; }
.aside_calendar dl			{ position: relative; overflow: hidden; margin-top: 10px; margin-bottom: 0; height: 230px;}
.aside_calendar li			{ display: block; position: relative; width: 14.285%; float: left; height: 35px; line-height: 20px; text-align: center; overflow: hidden; padding-top: 5px; }
.aside_calendar li.sat		{ color: #428bca; font-weight: 400; }
.aside_calendar li.sun		{ color: #f26522; font-weight: 400; }
.aside_calendar li span		{ display: block; position: relative; width: 100%; height: 100%; overflow: hidden; text-align: center; line-height: 20px; z-index: 1; }
.aside_calendar dd li.hasItem	{ background: rgba(182, 34, 190, 0.12); color: #333333; font-weight: 400;border-radius: 70px;height: 35px;}
.aside_calendar .ui-week-1 li:first-child	{ margin-left: 0; }
.aside_calendar .ui-week-2 li:first-child	{ margin-left: 14.285%; }
.aside_calendar .ui-week-3 li:first-child	{ margin-left: 28.571%; }
.aside_calendar .ui-week-4 li:first-child	{ margin-left: 42.857%; }
.aside_calendar .ui-week-5 li:first-child	{ margin-left: 57.142%; }
.aside_calendar .ui-week-6 li:first-child	{ margin-left: 71.428%; }
.aside_calendar .ui-week-7 li:first-child	{ margin-left: 85.714%; }
.aside_calendar dt li { font-weight: 400; }

/*관련사이트*/
.pred-photo-info0405 {background: url(/resources/images/irb/sub/info0405.jpg) no-repeat center;}
.sub-dep-detail .list-ico {border-top: solid 1px #a8a8a8;border-bottom: solid 1px #a8a8a8;}
.sub-dep-detail .list-ico li {border-top: solid 1px #ebebeb;list-style-type: decimal;margin-left: 20px;}

/* 호서소개 > 정보공개 > 사전정보공개, 호서소개 > 비전, 이메일무단수집거부 */
.dinfo-tt { padding-bottom: 50px; text-align: center; font-size: 2em; background:url(/resources/images/irb/sub/hline_gray.gif) no-repeat center bottom; }
.dinfo-tt br { display: none; }
.dinfo-tt span { color: #888; font-weight: 200; }
.dinfo-img { text-align:center; }


/* 사이트맵 */
.smap-box > div { padding: 40px 0 80px; font-weight: 400; }
.smap-box .smap-box-ttl { float: left; width: 15%; border-top: 2px solid #be222f; font-weight: 500;}
.smap-box .smap-box-list { float: right; width: 84.7%; border-top: 1px solid #d2d2d2; min-height: 100%; overflow: hidden; }
.smap-box .smap-box-ttl .smap-ttl a { color: #000000; font-size: 1.737em;}
.smap-box .smap-box-list .smap-sub-box { float:left; width: 20%; padding-bottom: 32767px; margin-bottom: -32767px; }
.smap-box .smap-sub-box .smap-list-ttl a { background: url(/resources/images/irb/sub/etc/smap_list_ttl_bg.gif) no-repeat left 13px; padding: 0 0 15px 14px; color: #333333; font-size: 1.2em; }
.smap-box .smap-sub-box .smap-list {}
.smap-box .smap-sub-box .smap-list li { background: url(/resources/images/irb/sub/etc/smap_list_bg.gif) no-repeat left 13px; padding-left: 14px; }
.smap-box .smap-sub-box .smap-list li a { color: #767676; font-size: 1em; }

.cw-btn, .cg-btn, .cp-btn, .cdp-btn {box-sizing:border-box;font-weight:400;display:inline-block;vertical-align:top;line-height:1.1;max-width:500px;min-width:160px;padding:0 80px 0 20px;position:relative;text-align:left;transition:all .3s ease; }
a.cw-btn span, a.cg-btn span, a.cp-btn span, a.cdp-btn span {display:flex;align-items:center;height:54px;}
a.cp-btn span{ color:#fff !important;}
input.cw-btn, button.cw-btn {position:relative;padding:0 40px 0 15px;height:40px;cursor:pointer;vertical-align:top;}
.cw-btn, a.cw-btn {background:#fff;border:1px solid #c9c9c9;color:#444 !important;  border-radius:10px;}
.cw-btn:hover, .cw-btn:focus {background:#ff6769;border:1px solid #ff6769;color:#fff !important}
.cw-btn:hover span, .cw-btn:focus span { color:#fff !important;}
.cg-btn, a.cg-btn {background:#f7f7f7 ;border:1px solid #c9c9c9;color:#444 !important}
.cg-btn:hover, .cg-btn:focus {background:#e5e5e5;border:1px solid #c9c9c9; color:#fff !important;}
.cp-btn, a.cp-btn {background:#0a51d1;border:1px solid #0a51d1; color:#fff !important; border-radius:10px;}
.cp-btn:hover, .cp-btn:focus {background:#0d3276;border:1px solid #0d3276; color:#fff !important;}
.cp-btn:hover span, .cp-btn:focus span { color:#fff !important;}
.cdp-btn, a.cdp-btn {background:#474d67;border:1px solid #474d67;color:#fff !important}
.cdp-btn:hover, .cdp-btn:focus {background:#2b3046;border:1px solid #2b3046}
.cw-btn span:before, .cg-btn span:before, .cp-btn span:before, .cdp-btn span:before,
.cw-btn span:after, .cg-btn span:after, .cp-btn span:after, .cdp-btn span:after {content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0}
.cw-btn span:before, .cg-btn span:before, .cp-btn span:before, .cdp-btn span:before {width:1px;height:20px;border-radius:50%;background:#cbcbcb;margin:auto 54px auto auto}
.cw-btn span:after, .cg-btn span:after, .cp-btn span:after, .cdp-btn span:after {margin:auto 18px auto auto;width:20px;height:20px;background:url(/resources/images/egsv/sub/st_set.png) no-repeat}
.cw-btn .arr:after, .cg-btn .arr:after {background-position:0 0}
.cw-btn .nw:after, .cg-btn .nw:after {background-position:-30px 0}
.cw-btn .zoom:after, .cg-btn .zoom:after {background-position:-60px 0}
.cw-btn .down:after, .cg-btn .down:after {background-position:-90px 0}
.cw-btn .calendar:after, .cg-btn .calendar:after {background-position:-120px 0}
.cw-btn:hover .arr:after {background-position:0 -60px}
.cw-btn:hover .nw:after {background-position:-30px -60px}
.cw-btn:hover .zoom:after {background-position:-60px -60px}
.cw-btn:hover .down:after {background-position:-90px -60px}
.cw-btn:hover .calendar:after {background-position:-120px -60px}
.cg-btn:hover .arr:after {background-position:0 -30px}
.cg-btn:hover .nw:after {background-position:-30px -30px}
.cg-btn:hover .zoom:after {background-position:-60px -30px}
.cg-btn:hover .down:after {background-position:-90px -30px}
.cg-btn:hover .calendar:after {background-position:-120px -30px}
.cp-btn .arr:after, .cdp-btn .arr:after {background-position:0 -60px}
.cp-btn .nw:after, .cdp-btn .nw:after {background-position:-30px -60px}
.cp-btn .zoom:after, .cdp-btn .zoom:after {background-position:-60px -60px}
.cp-btn .down:after, .cdp-btn .down:after {background-position:-90px -60px}
.cp-btn .calendar:after, .cdp-btn .calendar:after {background-position:-120px -60px}
.cp-btn .view:after, .cdp-btn .view:after {background-position:-146px -60px}
@media all and (max-width:999px) {
	.sw-btn, .sg-btn, .sp-btn, .sdp-btn {height:37px}
	.sw-btn, a.sw-btn {height:37px}
}


/*.stpbox .wrap1>.t2{display:block;text-align:center;}
.stpbox .arrow1{display:block; width:32px;height:21px;margin:10px auto 0; background:url(/resources/images/irb/sub/arrow_1@2x.png) no-repeat;background-size:contain;
}*/

@media all and (max-width:1000px){
.vsn-est { padding: 10px 30px 0;}
.vsn-est .gre-photo-tit {font-size: 25px;}
}

@media all and (max-width:1000px) and (min-width:860px){
.vsn-est { padding: 10px 30px 0;}
.vsn-est .gre-photo-tit {font-size: 25px;}
}

@media all and (max-width:768px){
.vsn-est { padding: 10px 30px 0;}
.vsn-est .gre-photo-tit {font-size: 25px;}

.vsn-est .gre-photo-Slogan{ font-size: 20px;}
	.stpbox .wrap1{padding:2em 0;min-height:150px;}
	.stpbox .wrap1{float:left;width:85%;}
	.stpbox .arrow1{float:left;width:21px;height:32px; margin:60px 0 0 10px; background:url(/resources/images/irb/sub/arrow_2@2x.png) no-repeat;background-size:contain;}

.vsn-est p, 
.list-ico li {font-size: 15px;}

}


/* 대학생활 > 상담센터 > 이용안내 > 이용안내  */
.clst { display: inline-block;  width: 100%; border-top: solid 4px #e8eaed; }
.clst-p { float: left; display: inline-block; width: 50%; border-bottom: solid 1px #e8eaed; padding: 30px 10px; }
.clst-p div { float: left; width: 35%; text-align: center; }
.clst-p dl { float: left; width: 65%; }
.clst-p dl dt { float: left; width: 40%; padding: 6px 0; }
.clst-p dl dd { float: left; width: 60%; padding: 6px 0; }

/* 이용안내 > 이메일무단수집거부 */
.emailrefuse { text-align: center; }

/* 사이트맵 */
.smap { }



@media all and (max-width: 1200px) {
    .content { width: 100%; }

	/* 이미지 가로100% */
	.img100-1200 img { width: 100%; }

	/* 컨텐츠영역 하단 평가글 */
	.ssfoot dl { width: 100%; }

	/* 로그인 */
	.lgn .lgn-info {width: 55%; }
	.lgn .lgn-info .lgn-info-w { background: url(/resources/images/irb/sub/login_lock.jpg) no-repeat 0 0; min-height: 100px; }
	.lgn .lgn-info .lgn-info-w .lgn-info-txt02 { font-size: 2.5em; }
	.lgn .lgn-info .lgn-info-w .lgn-info-txt03 { display: none; }
	.lgn .lgn-ipt { width: 45%; }
	.lgn .lgn-ipt .lgn-ipt-form { padding: 0 100px 0 0; }
	.lgn .lgn-ipt .lgn-ipt-form .lgn-btn { width: 90px; }


	/* 대학생활 > 상담센터 > 이용안내 > 이용안내  */
	.clst-p { width: 100%; }
	.clst-p div { width: 30%; }
	.clst-p dl { width: 70%; }
	.clst-p dl dt { width: 30%; }
	.clst-p dl dd { width: 70%; }
}


@media all and (max-width:1200px) and (min-width:768px) {
	/* 컨텐츠상단 사진+붉은박스 */
	.sub-dep-info .pred-photo { width: 35%; }
	.sub-dep-info .pred-txt { width: 65%; }



    /* 사이트맵 */
    .smap-box .smap-box-ttl { width: 20%; }
    .smap-box .smap-box-list { width: 80%; }
    .smap-box .smap-box-list .smap-sub-box { float:left; width: 33.333%; }

}


@media all and (max-width: 767px) {
	.vsn-est .list-ico { padding-top: 30px; line-height: 25px;}
	
	.prfe dl dt , .prfe dl dd  {font-size: 15px;height: auto;}
	.prfe dl .prfe-line-02 {border-top: solid 0px #ebebeb;}
	.prfe dl dt {width: 100%;border-bottom: none !important;font-weight: 600;}
	.prfe dl dd { width: 100%; padding-top: 0; padding-left: 13px; }
    
	/* 컨텐츠영역 하단 평가글 */
	.ssfoot div input { width: 100%; padding: 6px 0 10px 10px; }
	.ssfoot div button { width: 100%; margin: 0; }

	/* 준비중페이지 */
	.readypg { background:url(/resources/images/irb/sub/readypg.jpg) no-repeat top center; background-size: 100%; }

	/* 컨텐츠상단 사진+붉은박스 */
	.sub-dep-info { display:inline-block; width: 100%; height: auto;}
	.sub-dep-info .pred-photo { width: 100%; }
	.sub-dep-info .pred-txt { width: 100%; height: auto; padding: 10px 5px; }
	.sub-dep-info .pred-txt p { padding: 0; font-size: 1em; background: none; }

	/* 문서다운로드 */
	.doc-box dd { float: none; width: 100%; background: none; }
	.doc-box .doc-box-btn { float: none; width: 100%; background: url(/resources/images/irb/common/dot_01.gif) repeat-x center 55%; }

	/* 로그인 */
	.lgn .lgn-info { width: 100%; padding: 0; background: none; }
	.lgn .lgn-info .lgn-info-w .lgn-info-txt01 { font-size: 1em; }
	.lgn .lgn-info .lgn-info-w .lgn-info-txt02 { font-size: 2.3em; }
	.lgn .lgn-ipt { width: 100%; margin: 10px 0 0 0; }
	.lgn .lgn-ipt .lgn-ipt-form { padding: 0 100px 0 0; }

	
	/* 컨텐츠상단 사진+붉은박스 */
	.sub-dep-info .pred-photo {  height:162px;  }
	
	/* 생명윤리위원회 심의> 심의흐름도 sub02_03 */
	.vimg-pc { display: none; }
	.vimg-m { display: block; }
	.vimg-m img { width: 100%; }
	
	
	
	/* 학사일정 */
	#container > section	{ display: block; width: 100%;  }
	
	#container > section > aside					{ display: block; width: 100%; padding: 0; margin-bottom: 10px; margin-left: 0;}
	#container > section > article					{ display: block; width: 100%; padding: 0;}
	#container > section > article.no-top-padding	{ padding-top: 0; }
	.aside_calendar dl {display: none;}


	/* 대학생활 > 상담센터 > 이용안내 > 이용안내  */
	.clst-p div { width: 100%; margin-bottom: 20px; }
	.clst-p dl { width: 100%; }
	.clst-p dl dt { width: 35%; }
	.clst-p dl dd { width: 65%; }
	

	/* 이용안내 > 이메일무단수집거부 */
	.emailrefuse br { display: none; }


    /* 사이트맵 */
    .smap-box > div { padding: 15px 0; }
    .smap-box .smap-box-ttl,
    .smap-box .smap-box-list,
    .smap-box .smap-box-list .smap-sub-box { float: none; width: 100%;  }
    .smap-box .smap-box-list .smap-sub-box { padding-bottom: 15px; margin-bottom: 0; }

    /* page-title */
    .vsn-est {background-size: cover;margin: 0 15px;padding: 0 20px;} 
    .vsn-est .gre-photo-tit {font-size:25px;} 
    .sub01_01 .gre-photo-Slogan {padding: 210px 35px 5px;font-size: 20px;}

}


@media all and (max-width:420px) {
	.sub01_01 .gre-photo-Slogan {padding: 210px 15px 5px;}
	
	.vsn-est p, 
	.list-ico li {font-size: 14px;}
	.vsn-est {margin:0;padding: 0;} 


	/* 컨텐츠영역 하단 평가글 */
	.ssfoot dl dt { float: none; width: 100%; }
	.ssfoot dl dd { float: none; width: 100%; }

	/* 로그인 */
	.lgn .lgn-info .lgn-info-w { min-height: 0; background: none; }
	.lgn .lgn-info .lgn-info-w .lgn-info-txt01 { margin: 0; text-align: center; font-size: 0.85em; }
	.lgn .lgn-info .lgn-info-w .lgn-info-txt02 { margin: 0; text-align: center; font-size: 2em; }
	.lgn .lgn-ipt .lgn-ipt-form { padding: 0; }
	.lgn .lgn-ipt .lgn-ipt-form .lgn-ipt-combo { text-align: center; }
	.lgn .lgn-ipt .lgn-ipt-form ul li input { width: 100%; }
	.lgn .lgn-ipt .lgn-ipt-form .lgn-btn { position: relative; width: 100%; height: 55px; margin-top: 10px; }


	/* 대학생활 > 상담센터 > 이용안내 > 이용안내  */
	.clst-p dl { font-size: 0.933em;}
	.clst-p dl dt { width: 40%; }
	.clst-p dl dd { width: 60%; }


}

@media all and (max-width:360px) {
.vinfo-edu { width: 100%; min-width: 0; }
.vinfo-edu ul li { width: 100%; font-size: 0.9em; min-width: 0; }
}

<!-- 인사말 -->
.egsv_intro { position:relative;  margin:80px 0; padding-right: 30%;word-break: keep-all;}
.egsv_intro.type01 {position:relative; margin:80px 0;}
.egsv_intro .topbox { position:relative;  padding-top:50px;}
.egsv_intro .topbox .intro_tit {}
.egsv_intro .topbox .intro_tit em { display: block; margin-bottom: 10px;color: #252525;font-size: 20px;line-height: 1.2;font-weight: 300; }
.egsv_intro .topbox .intro_tit strong {display: block;color: #252525;font-size: 26px;line-height: 1.4;letter-spacing: -0.04em;font-weight: 400; }
.egsv_intro .topbox .intro_tit strong span {display: block; font-family: 'Gmarket';}
.egsv_intro .topbox .intro_tit strong span i {color: #0e3092;font-weight: bold; font-family: 'Gmarket';}
.egsv_intro .topbox .intro_bg {position: relative;margin-top: 60px;width: 100vw;height: 356px;background: url(/resources/images/egsv/sub/intro_bg.jpg);background-position: right bottom;background-repeat: no-repeat;background-size: cover;background-attachment: fixed;}
.egsv_intro .topbox .intro_bg::before {content: "";position: absolute;left: 0;top: 0;width: 100%;height: 100%;background: #fff;animation: intro_bg cubic-bezier(0, .30, .43, 1) 2s 0.3s both;}
.egsv_intro .conbox {position: relative;margin-top: -75px;padding: 40px 40px 0 40px; max-width: 100%;background: #fff;}
.egsv_intro .conbox .text-area {}
.egsv_intro .conbox .text-area p { margin: 0; color: #3e3e3e;font-size: 18px;line-height: 1.5;letter-spacing: -0.04em;}
.egsv_intro .conbox .text-area p+p { margin-top: 30px;}
.egsv_intro .conbox .sign {margin-top: 70px; text-align:right; font-size:20px;}
.egsv_intro .conbox .sign strong { display:block;}
.egsv_intro .welcome_pic { position:absolute; right:0; top:4rem; width:38%; max-width:490px; }
.egsv_intro .welcome_pic:after {content:""; position:absolute; left:-2rem; top:-4rem; width:7.7rem; height:7.7rem; border-radius:50%; border:1.5rem solid #fff2cb; opacity:0.45;z-index:-1;  }
.egsv_intro .welcome_pic:before {content:url('/images/web/snue/sub/greeting_bg2.png'); position:absolute; right:-3rem; bottom:-3rem; z-index:-1; }
.egsv_intro .welcome_pic img { width:100%; }
.egsv_intro .greeting_txt { background:#f8f8f8; border-radius:1.5rem; padding:1.5rem 7rem 1.5rem 1.5rem; margin-top:1.5rem; }
.egsv_intro .greeting_txt strong { font-weight:700; font-size:0.85rem; }
.egsv_intro .greeting_txt .point { color:#123b97; }

@keyframes intro_bg {
    0% {
        left: 0;
    }

    100% {
        left: 100%;
    }
}

@media(max-width: 767px) {
    .egsv_intro .topbox .intro_bg { margin-top:35px;}
    .egsv_intro .topbox .intro_tit em { margin-bottom: 25px;}
    .egsv_intro .topbox .intro_tit strong {font-size: 32px;}
    .egsv_intro .conbox {padding: 40px 20px 0 20px;}
}

@media(max-width: 500px) {
    .egsv_intro .topbox .intro_bg { background-position:right -150px bottom;}
    .egsv_intro .topbox .intro_tit em {font-size: 14px;}
    .egsv_intro .topbox .intro_tit strong {font-size: 22px; }
}

:root{
  --container: 1180px;
  --gap-xl: 64px; /* column gap */
  --radius-lg: 20px;
  --radius-md: 14px;
  --shadow: 0 12px 30px rgba(0,0,0,.12);
  --txt01: #222;
  --muted: #8D8D8D;
  --accent: #00A04A;
  --grad-a: #8E2DE2; /* purple */
  --grad-b: #FF3D6B; /* magenta */
}
*{box-sizing:border-box;}
.greeting img{display:block; max-width:100%; height:auto;}

/* ===== Section layout ===== */
.greeting{
  padding: clamp(28px, 4vw, 56px) 16px;
}
.greet-container{
  max-width: var(--container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr minmax(320px, 30%);
  align-items: start;
  gap: var(--gap-xl);
}

/* ===== Text side ===== */
.greet-text .eyebrow{
  margin: 6px 0 16px;
  color: var(--muted);
  letter-spacing: .08em;
  font-size: 15px;
}
.greet-text .title{
  margin: 0 0 20px;
  font-size: clamp(28px, 3.2vw, 24px);
  line-height: 1.25;
  color: var(--txt01);
  font-weight: 800;
}
.greet-text .body p{
  color:#444;
  font-size: clamp(16px, 1.6vw, 18px);
  line-height: 1.9;
}
.greet-text .body p + p{ margin-top: 14px; }

.greet-text .sign{
  margin-top: clamp(20px, 3vw, 36px);
  font-size: clamp(18px, 1.8vw, 22px);
  color: var(--txt01);
  font-weight: 700;
}
.greet-text .sign .role{
  display:inline-block;
  margin-right: 8px;
  font-weight: 600;
  color:#000;
}

/* ===== Visual side ===== */
.greet-visual{
  position: relative;
}

/* gradient background behind the photo */
.greet-visual::before{
  /*content:"";*/
  position:absolute;
  right: clamp(-8px, -1.5vw, -24px);
  top:   clamp(-8px, -1.5vw, -24px);
  width: calc(100% + clamp(16px, 3vw, 48px));
  height: calc(100% + clamp(16px, 3vw, 48px));
  background: linear-gradient(135deg, var(--grad-a), var(--grad-b));
  border-radius: var(--radius-lg);
  z-index: 0;
}

/* photo card */
.photo-card{
  position: relative;
  background:#fff;
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: var(--shadow);
  z-index: 1;  /* sits above the gradient block */
}
.photo-card img{
  width:100%;
  height:auto;
  display:block;
}

/* ===== Responsive ===== */
@media (max-width: 1100px){
  :root{ --gap-xl: 40px; }
}

@media (max-width: 960px){
  .greet-container{
    grid-template-columns: 1fr; /* stack */
    gap: 28px;
  }
  .greet-visual{
    order: -1;                     /* 사진을 위로 올리고 싶으면 -1, 아래 두려면 제거 */
    max-width: 560px;
    margin: 0 auto;
  }
  .greet-visual::before{
    right: -14px;
    top: -14px;
    width: calc(100% + 28px);
    height: calc(100% + 28px);
  }
}

@media (max-width: 560px){
  .greet-visual::before{
    right: -10px; top: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    border-radius: 14px;
  }
  .greet-text .title{ font-size: 26px; }
  .greet-text .body p{ font-size: 16px; }
}


/* Overview */
:root{
  --center-size: 250px;   /* 중앙 원 지름 */
  --node-size: 180px;     /* 바깥 원 지름 */
  --arm-len: 320px;       /* 중앙~바깥 원 중심 거리(선 길이) */
  --line: #d8e4ec;        /* 선 색상 */
  --node: #0ea5c6;        /* 바깥 원 색상 */
  --center: #3aa0f6;      /* 중앙 원 색상 */
  --txt: #fff;
  --font: "Pretendard","Noto Sans KR",sans-serif;
}

/* 컨테이너 */
.mindmap{
  position: relative;
  width: 100%;
  max-width: 1400px;      /* 너무 퍼지는 것 방지. 더 넓게 쓰려면 증가 */
  margin: 0 auto;
  font-family: var(--font);
  margin-top:150px;
  margin-bottom:120px;
}

/* 비율 유지(5:3) – absolute 요소 높이 확보 */
.mindmap::before{
  content:"";
  display:block;
  padding-top: 60%; /* 3/5 = 0.6 */
}

/* 중앙 원 (over-center) */
.mindmap > .over-center{ position:absolute; }  /* inset:0 주지 마세요 */
.over-center{
  left:50%; top:50%;
  transform: translate(-50%,-50%);
  width: var(--center-size);
  height: var(--center-size);
  border-radius: 50%;
  background: var(--center);
  color: var(--txt);
  display:flex; align-items:center; justify-content:center;
  font-size: clamp(26px, 3.2vw, 42px);
  font-weight: 800; letter-spacing:.3px;
  box-shadow: 0 12px 28px rgba(0,0,0,.14);
  z-index: 2;
}

/* 궤도 래퍼 */
.mindmap > .orbit{
  position: absolute; inset: 0;
}

/* 각 팔(arm): 중앙 기준 회전 */
.arm{
  --deg: 0deg; /* HTML에서 style="--deg:0deg" 식으로 지정 */
  position: absolute; left:50%; top:50%;
  width: 0; height: 0;
  transform: translate(-50%,-50%) rotate(var(--deg));
  transform-origin: center center;
}

/* 선 */
.arm .line{
  position: absolute; left:0; top:0;
  display:block;
  width: var(--arm-len);
  height: 3px;
  background: var(--line);
  transform: translateY(-1.5px); /* 두께 보정 */
}

/* 바깥 원(노드) */
.arm .node{
  position: absolute; left: var(--arm-len); top: 0;
  transform: translate(-50%,-50%) rotate(calc(-1 * var(--deg)));
  width: var(--node-size); height: var(--node-size);
  border-radius: 50%;
  background: var(--node); color: var(--txt);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; padding: 16px; line-height: 1.25;
  box-shadow: 0 10px 22px rgba(0,0,0,.12);
  transition: transform .18s ease, box-shadow .18s ease;
}
.arm .node b{ font-weight: 700; font-size: clamp(15px, 1.6vw, 20px); letter-spacing: -.2px; }
.arm .node span{ font-size: clamp(12px, 1.2vw, 14px); opacity: .95; margin-top: 8px; }

/* 데스크톱에서만 살짝 떠오르는 호버 */
@media (hover:hover) and (pointer:fine){
  .arm .node:hover{
    transform: translate(-50%,-50%) rotate(calc(-1 * var(--deg))) translateY(-4px);
    box-shadow: 0 14px 28px rgba(0,0,0,.16);
  }
}

/* =========================
   반응형 스케일 다운 (원형 유지)
   ========================= */
@media (max-width: 1280px){
  :root{ --center-size: 220px; --node-size: 160px; --arm-len: 300px; }
}
@media (max-width: 1100px){
  :root{ --center-size: 200px; --node-size: 145px; --arm-len: 276px; }
}
@media (max-width: 920px){
  :root{ --center-size: 170px; --node-size: 128px; --arm-len: 240px; }
  .mindmap::before{ padding-top: 66%; } /* 약간 더 세로 확보(4:2.64 느낌) */
}

/* =========================
   모바일 전환(카드 레이아웃)
   ========================= */
@media (max-width: 720px){
  /* PC용 높이 트릭 비활성 */
  .mindmap::before{ display:none; }

  .mindmap{
    width: min(700px, 100%);
    margin: 32px auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    padding: 0 4vw;           /* 좌우 여백 */
    box-sizing: border-box;
  }

  /* GSV 원: 맨 위 고정(플로우) */
  .over-center{
    position: static !important;
    transform: none !important;
    width: 110px; height: 110px;   /* 모바일에서 적당히 축소 */
    box-shadow: 0 8px 18px rgba(0,0,0,.10);
    margin-top: 4px;
  }

  /* 궤도/팔/선: 일반 흐름으로 전환 */
  .orbit{
    position: static !important; inset: auto !important;
    width: 100%;
    display: flex; flex-direction: column; gap: 10px;
    padding: 2px 0 10px;
  }
  .arm{
    position: static !important;
    transform: none !important;
    width: 100%; height: auto;
  }
  .arm .line{ display: none !important; }

  /* 네모 카드 */
  .arm .node{
    position: static !important;
    transform: none !important;
    width: 100%; height: auto;
    border-radius: 14px;
    background: #fff; color: #0b1f35;
    border: 1px solid #e5edf5;
    padding: 16px 18px;
    text-align: left; align-items: flex-start;
    box-shadow: 0 4px 10px rgba(0,0,0,.04);
    transition: none; /* 터치 잔상 방지 */
  }
  .arm .node b{ font-size: 15px; line-height: 1.35; }
  .arm .node span{ font-size: 12px; margin-top: 4px; opacity: .8; }

  /* 모바일에서 호버 이동 차단 */
  .arm .node:hover{ transform: none !important; }

  /* 더 작은 화면 보정 */
  @media (max-width: 420px){
    .arm .node{ padding: 14px; border-radius: 12px; }
    .arm .node b{ font-size: 14px; }
    .arm .node span{ font-size: 11px; }
  }
}

:root{
    --ef-accent: #081f59;      /* 포인트(번호/타이틀) */
    --ef-accent-soft:#e8eefc;  /* 번호 배지 배경 */
    --ef-text:   #222;
    --ef-muted:  #606a78;
    --ef-border: #e9edf3;
    --ef-card:   #fff;
    --ef-shadow: 0 6px 16px rgba(0,0,0,.06);
    --ef-radius: 16px;
  }

.edu-features{
    color: var(--ef-text);
}
.edu-features .ef-inner{
    max-width: 1080px;
    margin: 0 auto;
    padding: 24px 16px;
}

  /* ===== List grid */
.ef-list{
    counter-reset: ef-count;
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    list-style: none;
    margin: 0; padding: 0;
}
@media (min-width: 860px){
    .ef-list{ grid-template-columns: 1fr 1fr; gap: 22px; }
}
@media (min-width: 1200px){
    .ef-list{ grid-template-columns: 1fr 1fr; gap: 26px; }
}

/* ===== Card */
.ef-item{
    background: var(--ef-card);
    border: 1px solid var(--ef-border);
    border-radius: var(--ef-radius);
    /*padding: 22px 22px 20px;*/
	padding: 35px;
    box-shadow: var(--ef-shadow);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
@media (hover:hover) and (pointer:fine){
    .ef-item:hover{
      transform: translateY(-2px);
      box-shadow: 0 10px 22px rgba(0,0,0,.08);
      border-color: #dfe6f1;
}
  }

/* ===== Title with auto number as part of title */
.ef-title{
    position: relative;
    margin: 0 0 10px;
    padding-left: 64px;                 /* 번호 배지 공간 */
    font-size: clamp(18px, 2.2vw, 22px);
    line-height: 1.35;
    font-weight: 800;
    color: var(--ef-accent);
}
.ef-title::before{
    counter-increment: ef-count;
    content: counter(ef-count) ".";
    position: absolute;
    left: 0; top: 50%;
    transform: translateY(-50%);
    width: 48px; height: 48px;
    display: inline-flex;
    align-items: center; justify-content: center;
    background: var(--ef-accent-soft);
    color: var(--ef-accent);
    border-radius: 12px;                /* 네모 배지(살짝 라운드) */
    font-size: 20px; font-weight: 800;
}

/* ===== Description */
.ef-desc{
    margin: 10px 0 20px;
    color: var(--ef-muted);
    font-size: clamp(14px, 1.6vw, 16x);
    line-height: 1.6;
	font-weight:600;
}

/* ===== Bullets */
.ef-bullets{
    margin: 0; padding: 0; list-style: none;
    display: grid; gap: 6px;
}
.ef-bullets li{
    position: relative;
    padding-left: 18px;
    color: #2b3442;
    font-size: clamp(14px, 1.6vw, 15px);
    line-height: 1.65;
}
.ef-bullets li::before{
    content: "";
    position: absolute; left: 0; top: 0.85em;
    width: 6px; height: 6px; border-radius: 50%;
    background: var(--ef-accent);
    opacity: .75;
}

  /* ===== Tighten on very small screens */
@media (max-width: 420px){
    .ef-title{ padding-left: 56px; }
    .ef-title::before{ width: 42px; height: 42px; font-size: 18px; border-radius: 10px; }
    .ef-item{ padding: 18px; }
}

/* topbox */
.uit{overflow:hidden;position:relative; margin-top:40px; margin-bottom: 50px;border:0px solid #d2d2d2;}
.uit:after{content:"";display:block;clear:both;visibility:hidden;}
.uit .inner{position:relative;padding:50px 60px;}
.uit .inner .txtwrap{position:relative;}
.uit .inner .txtwrap ul{display: block;margin: 0;text-align: left;}
.uit .inner .tit_inner{display:block;color:#121212;font-size:16px;line-height:30px;margin:0 0 0px 0;padding:0; font-weight:500;/* font-weight:600;*/ font-family: 'Gmarket'; }
.uit .inner .tit_inner em { display:block; color:#1435a1;}
.uit .inner .txtwrap p{margin:0;font-size:16px; font-weight:400; color:#545454;word-break:break-word;}
.uit .inner .txtwrap p .txt-tip{display: inline-block;color: #da4453 !important;}
.uit .inner .txtwrap b{display: block;}
.uit .inner .txtwrap a{margin: 10px 0 0;}
.uit .btnwrap{position:absolute;top:-35px;right:0;margin-top:0;}

.type1.uit{border:none;}
.uit.type1 .inner{min-height:auto;padding-left:190px; background-color: #f6f6f6; border-radius: 20px;}
.uit.type1 .inner .tp_icon,
.uit.type1 .inner .tp_icon2{display:block;position:absolute;top:50%;left:35px;margin-top: -55px}
.uit.type1 .inner.long .tp_icon,
.uit.type1 .inner.long .tp_icon2{top:45px;margin-top: 0}
.uit.type1 .inner.n_short{min-height: auto;padding: 70px 25px 70px 170px}

.uit.type3{border-color:#fff;border-top-color:#949494;border-bottom-color:#ddd;}
.uit.type3 .inner{min-height:213px;padding-left:300px;}
.uit.type3 .inner .thm_figure{display:block;overflow:hidden;position:absolute;top:35px;left:35px;width:230px;height:153px;margin:0;text-align:center}
.uit.type3 .thm_figure img{max-width:100%;width:auto;}

@media only screen and (max-width:767px) {
    .uit .inner,
    .uit.type1 .inner,
    .uit.type1 .inner.n_short,
    .uit.type3 .inner{position:relative;min-height: auto;padding:25px;}
    .uit.type1 .inner .tp_icon,
    .uit.type1 .inner .tp_icon2{display:none;}
    .uit .thm_figure,
    .uit.type3 .inner .thm_figure{display:none;}
    .uit .inner .btnwrap{position: static;margin-top:20px;}
}

/* 탑박스 아이콘 */
.tp_icon{display:block;overflow:hidden;width:110px;height:110px;background:url(/resources/images/egsv/sub/top_info_ico01.png) no-repeat;}
.tp_icon.circle1{background-position:0 0;}
.tp_icon.circle2{background-position:-114px 0;}
.tp_icon.circle3{background-position:-228px 0;}
.tp_icon.circle4{background-position:-330px 0;}
.tp_icon .icon{display:block;overflow:hidden;width:110px;height:110px;background:url(/resources/images/egsv/sub/top_info_ico01.png) no-repeat;}
.tp_icon .icon1{background-position:0 -110px;}
.tp_icon .icon2{background-position:-100px -110px;}
.tp_icon .icon3{background-position:-203px -110px;}
.tp_icon .icon4{background-position:-301px -110px;}
.tp_icon .icon5{background-position:-400px -110px;}
.tp_icon .icon6{background-position:-500px -110px;}
.tp_icon .icon7{background-position:-595px -110px;}
.tp_icon .icon8{background-position:-765px -110px;}

@media screen and (max-width:1279px){
	.sub-page-content{float:none !important; width:100% !important; padding-left:0 !important;}
	.left-navi{display:none;}
}

/* 안내박스 */
.txt-box + .txt-box{margin-top:15px;}
.txt-box{padding:24px 20px;border-radius:5px;border:1px solid #dedede;background:#fff; width:100%;}
.txt-box.type01 { background: #f9f9f9; border: 1px solid #d0d0d0;}
.txt-box.type02	{display:flex;flex-flow:column;position:relative; border:1px solid #eaeaea;border-bottom:0; padding:60px;}
.txt-box.type02:before,
.txt-box.type02:after {content:'';display:block;width:100%;position:absolute;left:0;margin:-1px;padding:0 1px;z-index:1}
.txt-box.type02:before {background:#071a45;height:3px;top:0}
.txt-box.type02:after {background:#eaeaea;height:1px;bottom:0;margin-bottom:0}
.txt-fouse{padding-left:20px;color:#1983aa !important;}

.info-ex01,
.info-ex02,
.info-ex03 {display:block;position:relative;padding:8px 0 5px 40px;margin:10px 0 10px 0;font-size:1em;color:#555;text-align:left}
.info-ex01.inline,
.info-ex02.inline,
.info-ex03.inline {display:inline-block}
.info-ex01:before,
.info-ex02:before,
.info-ex03:before {content:"";display:block;position:absolute;left:0;top:9px;width:27px;height:27px;background:#767676 url(/resources/images/egsv/sub/st_set.png) no-repeat 0 -109px;border-radius:5px}
.info-ex02:before {background-color:#0a51d1}
.info-ex03:before {background-color:#eb0e66}

.btn-box {text-align:center;margin-top:30px}
.btn-box01 {text-align:left;margin-top:30px}
.btn-box02 {text-align:right;margin-top:30px}

@media (max-width: 1200px) {
  .txt-box.type01 {/*padding: 30px;*/}
}

/* 타이틀 */
.c-tit01 {position: relative; font-size: 30px; line-height: 1; color: #000; margin: 20px 0 40px; font-family: 'Gmarket';line-height:1.25}
.c-tit01:before {content: ''; position: absolute; left: 0px;top: -20px; width: 59px;height: 6px; background-color: #1087f5;}
.c-tit02 {font-size:1.529em;font-weight:600;color:#333;padding:0 0 0 18px;margin-bottom:17px;position:relative}
.c-tit02:before,
.c-tit02:after {content:"";display:block;width:7px;height:7px;border-radius:50%;position:absolute;top:12px;left:0px}
.c-tit02:before {background-color:#00a754;z-index:1}

/* 공백 */
.gap {height:60px;clear:both;display:block}
.sgap {height:40px;clear:both;display:block}
.ssgap {height:30px;clear:both;display:block}
.sssgap {height:20px;clear:both;display:block}
.ssssgap {height:10px;clear:both;display:block}
@media all and (max-width:600px){
	.gap {height:40px;clear:both;display:block}
	.sgap {height:25px;clear:both;display:block}
	.ssgap {height:15px;clear:both;display:block}
	.sssgap {height:10px;clear:both;display:block}
}
/* 리스트*/
ul[class^=c-list] {text-align:left}
ul[class^=c-list] > li {box-sizing:border-box;white-space:normal;position:relative}
ul[class^=c-list] > li:first-child {margin-top:0}
ul[class^=c-list] > li .tit, .c-list01-li .tit, .c-list04-li .tit {display:block;color:#222;font-weight:600}
ul[class^=c-list] > li .tit-in, .c-list01-li .tit-in, .c-list04-li .tit-in {display:inline;color:#222;font-weight:600}
ul[class^=c-list] > li ul li:before {display:block;content:"";width:3px;height:3px;background:#cfcfcf;position:absolute;top:11px;left:0}
ul[class^=c-list] > li ul {margin:7px 0 0 0;font-size:.941em}
ul[class^=c-list] > li ul li {padding:0 0 0 11px;position:relative;font-size:.944em;color:#666;margin-bottom:4px}
[class^=c-list] > li > ul.s-list > li {padding-left:26px}
[class^=c-list] > li > ul.s-list > li:before {display:none}
[class^=c-list] > li > ul.s-list > li > .stit {position:absolute;top:0;left:0;font-weight:500}
.c-list01 > li, .c-list01-li {position:relative;padding:0 0 0 14px;margin-top:0px;text-align:left;margin-top:4px}
/*.c-list01 > li:first-child, .c-list01-li:first-child, .c-list02 > li:first-child {margin-top:0} */
.c-list01 > li:before, .c-list01-li:before {display:block;content:"";position:absolute;top:10px;left:0;width:4px;height:4px;background:#767676;border-radius:50%}
.c-list01 > li .txt {display:inline-block}
.c-list02 {counter-reset:section;}
.c-list02 > li {padding-left:25px}
.c-list02 > li {margin-top:3px}
.c-list02 > li:first-child {margin-top:0}
.c-list02 > li:before {display:block;position:absolute;top:1px;left:0px;color:#222;font-size:.941em;font-weight:600;height:auto}
.c-list02 > li .tit {margin-bottom:2px}
.c-list02.num > li:before {counter-increment:section;content:counters(section, ".") ".";width:24px}
.c-list02.snum > li:before {counter-increment:section;content:counters(section, ".") ")";width:24px}
.c-list02.han > li:before {width:27px}
.c-list02.han > li:nth-child(1):before {content:"가."}
.c-list02.han > li:nth-child(2):before {content:"나."}
.c-list02.han > li:nth-child(3):before {content:"다."}
.c-list02.han > li:nth-child(4):before {content:"라."}
.c-list02.han > li:nth-child(5):before {content:"마."}
.c-list02.han > li:nth-child(6):before {content:"바."}
.c-list02.han > li:nth-child(7):before {content:"사."}
.c-list02.han > li:nth-child(8):before {content:"아."}
.c-list02.han > li:nth-child(9):before {content:"자."}
.c-list02.han > li:nth-child(10):before {content:"차."}
.c-list02.han > li:nth-child(11):before {content:"카."}
.c-list02.han > li:nth-child(12):before {content:"타."}
.c-list02.han > li:nth-child(13):before {content:"파."}
.c-list02.han > li:nth-child(14):before {content:"하."}
.c-list03 {counter-reset:section}
.c-list03 > li {position:relative;padding:0 0 0 35px;margin-top:6px}
.c-list03 > li:first-child {margin-top:0}
.c-list03 > li:before {display:block;position:absolute;top:2px;left:0px;color:#222;font-size:12px;font-weight:400;background:#f1f1f1;border-radius:50%;counter-increment:section;content:counters(section, ".") "";width:23px;height:23px;line-height:22px;box-sizing:border-box;text-align:center;font-family:"lato",sans-serif}
.c-list03.cor1 > li:before {background:#008cd7;color:#fff}
.c-list03.cor2 > li:before {background:#e73f82;color:#fff}
.c-list03 > li .tit {color:#222;display:block;font-weight:500}
.c-list04 > li, .c-list04-li {position:relative;padding:0 0 0 19px;margin-top:4px;text-align:left}
.c-list04 > li:first-child {margin-top:0}
.c-list04 > li:before, .c-list04-li:before {display:block;content:"";width:8px;height:8px;border:2px solid #008cd7;border-radius:50%;box-sizing:border-box;position:absolute;top:9px;left:3px}
.c-list05 {}
.c-list05 > li {position:relative;font-family:"SCoreDream", sans-serif;color:#555;font-weight:400;letter-spacing:-.05em;line-height:2.058;padding-left:20px;box-sizing:border-box}
.c-list05 > li:before {content:'';display:block;width:5px;height:5px;border-radius:50%;background-color:#7fb6ee;position:absolute;top:13px;left:0}


@media all and (max-width:999px){
	.c-list01 > li:before, .c-list01-li:before {top:8px}
}
@media all and (max-width:599px){
	ul[class^=c-list] > li ul li:before {top:8px}
	ul[class^=c-list] > li ul{margin-top:5px}
	.c-list01 > li, .c-list01-li {padding-left:11px}
	.c-list02 > li {padding-left:22px}
	.c-list03 > li {padding-left:34px}
	.c-list03 > li:before {width:20px;line-height:20px;height:20px;font-size:11px}
}

.tr_process{font-size:0;margin-top:70px;}
.tr_process>dl{display:inline-block;width:calc(50% - 25px);margin-right:50px;margin-bottom:40px;padding-top:20px;border-top:1px solid #dddddd;vertical-align:top;font-size:0;}
.tr_process>dl:nth-of-type(2n){margin-right:0;}
.tr_process>dl dt{position:relative;display:inline-block;width:250px;font-size:18px;font-weight:bold;color:#111;line-height:28px;vertical-align:top;letter-spacing:-0.5px;word-break:keep-all;padding-right:10px;box-sizing:border-box;}
.tr_process>dl dt::before{content:"";position:absolute;left:0;top:-21px;display:block;width:100%;height:1px;background-color:#222222;}
.tr_process>dl dt>span{display:block;font-size:16px;font-weight:300;}
.tr_process>dl dt>span.bold{font-weight:700;}
.tr_process>dl dd{display:inline-block;width:calc(100% - 250px);font-size:18px;color:#666;line-height:24px;vertical-align:top;letter-spacing:-0.5px;word-break:keep-all;padding-left:15px;box-sizing:border-box;}
.tr_process>dl dd>a{display:block;max-width:400px;}
.tr_process>dl dd>a.auto{display:inline-block;max-width:100%;height:auto;}
.tr_process>dl dd>a.auto>span{height:auto;line-height:24px;padding-top:10px;padding-bottom:10px;text-align:left;}

.tr_process>dl.full{width:100%;margin-right:0px;}
.tr_process>dl .btnC_ss{margin-top:10px;padding:0 15px;}
.tr_process>.txtG{margin-bottom:70px;}
.tr_process .btnRight>a {margin-top:10px;}

@media all and (max-width:1040px){
	.tr_process{margin-top:0px;}
    .tr_process>dl{padding-top:10px;}
    .tr_process>dl dt::before{top:-11px;}
    .tr_process>dl dt{line-height:20px;width:150px;}
    .tr_process>dl dt>span{}
    .tr_process>dl dd{line-height:20px;}
    .tr_process>dl dd>a.mT20{margin-top:10px !important;}
    .tr_process>dl dd>a.auto>span{line-height:20px;padding-top:7px;padding-bottom:8px;}
    .tr_process>.txtG{margin-bottom:30px;}
}
@media all and (max-width:768px){
	.tr_process{margin-bottom:20px;}
    .tr_process>dl{width:100%;margin:0 0 20px 0;}
}

.ui-page-tab ul {
    display: flex;
    flex-wrap: nowrap; /* 줄바꿈 방지 */
	margin-bottom:50px;
}
.ui-page-tab li {
    flex: 1 1 0;             /* 탭 개수에 따라 균등 */
  text-align: center;
  box-sizing: border-box;
}
.ui-page-tab li a { padding: 15px 10px; line-height:35px; height:auto; font-size:18px; font-weight:500; color:#100202; transition: background .2s, color .2s, border-color .2s;}
.ui-page-tab li.on a, .ui-page-tab li a:hover { border: 1px solid #1463c2;  background: #1463c2;}

/* 태블릿: 2열로 자동 줄바꿈 */
@media (max-width: 1024px) {
  .ui-page-tab ul {
    flex-wrap: wrap;       /* 줄바꿈 허용 */
  }
  .ui-page-tab li {
    flex: 1 1 calc(50% - 8px); /* 2열 */
    min-width: 220px;           /* 너무 좁아짐 방지(필요 시 조정/삭제) */
  }
}

/* 모바일: 1열(전체 폭) */
@media (max-width: 580px) {
  .ui-page-tab ul {
    flex-wrap: wrap;       /* 줄바꿈 유지 */
  }
  .ui-page-tab li {
    flex: 1 1 100%;        /* 한 줄에 하나 */
    min-width: 0;          /* 모바일은 제한 해제 */
  }
}


/* Admissions */
/* =========================
 * Admission Boxes (Always 1-column)
 * ========================= */
.adms-wrap{
  display:grid;
  grid-template-columns:1fr;   /* 항상 1칸 */
  gap:20px;
  margin:30px 0;
}

.adms-box{
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:12px;
  box-shadow:0 4px 14px rgba(0,0,0,.05);
  padding:40px;
  box-sizing:border-box;
}

/* -------------------------
 * Title
 * ------------------------- */
.adms-title{
  margin:0 0 14px 0;
  font-size:22px;
  font-weight:700;
  color:#111;
  position:relative;
  padding-left:12px;
}
.adms-title:before{
  content:"";
  position:absolute;
  left:0; top:6px;
  width:4px; height:16px;
  border-radius:2px;
  background:#be222f; /* accent */
}

/* -------------------------
 * Text
 * ------------------------- */
.adms-box p{
  margin:6px 0;
  line-height:1.6;
  color:#333;
}

/* -------------------------
 * Lists – 공통 초기화
 * (전역 reset 무시하고 컴포넌트 내부에서 자체 마커 사용)
 * ------------------------- */
.adms-box .adms-list{
  margin:0;
  padding:0;
}

/* 대시 리스트(UL) */
.adms-box ul.adms-list.dash{
  list-style:none;
}
.adms-box ul.adms-list.dash > li{
  position:relative;
  padding-left:22px;
  margin:6px 0;
}
.adms-box ul.adms-list.dash > li::before{
  content:"—";
  position:absolute; left:0; top:0;
  line-height:1.6; color:#999;
}

/* 일반 UL(점 불릿을 커스텀) */
.adms-box ul.adms-list:not(.dash){
  list-style:none;
}
.adms-box ul.adms-list:not(.dash) > li{
  position:relative;
  padding-left:1.1em;
  margin:6px 0;
}
.adms-box ul.adms-list:not(.dash) > li::before{
  content:"•";
  position:absolute; left:0; top:0;
  line-height:1.6; color:#555;
}

/* -------------------------
 * Ordered Lists – 동그라미 마커
 * (숫자/알파벳/로마 숫자)
 * ------------------------- */

/* 공통: 기본 마커 제거 + 카운터 기반 */
.adms-box ol.adms-list{
  list-style:none;      /* 기본 마커 제거 */
  counter-reset:item;   /* 기본 카운터 */
  padding-left:0;
}

/* 공통 li 레이아웃 */
.adms-box ol.adms-list > li{
  position:relative;
  padding-left:2.5em;   /* 원 + 텍스트 간격 */
  margin:8px 0;
}

/* 숫자형 (1, 2, 3...) */
.adms-box ol.adms-list.num > li{
  counter-increment:item;
}
.adms-box ol.adms-list.num > li::before{
  content: counter(item);
  position:absolute; left:0; top:15px;
  transform:translateY(-50%);
  width:1.8em; height:1.8em;
  border-radius:50%;
  background:#be222f;
  color:#fff;
  font-weight:700;
  font-size:.9em;
  line-height:1.8em;
  text-align:center;
}

/* 알파벳형 (a, b, c...) */
.adms-box ol.adms-list.alpha{
  counter-reset:item-alpha;
}
.adms-box ol.adms-list.alpha > li{
  counter-increment:item-alpha;
}
.adms-box ol.adms-list.alpha > li::before{
  content: counter(item-alpha, lower-alpha);
  position:absolute; left:0; top:15px;
  transform:translateY(-50%);
  width:1.8em; height:1.8em;
  border-radius:50%;
  background:#be222f;
  color:#fff;
  font-weight:700;
  font-size:.9em;
  line-height:1.8em;
  text-align:center;
}

/* 로마 숫자형 (i, ii, iii...) */
.adms-box ol.adms-list.roman{
  counter-reset:item-roman;
}
.adms-box ol.adms-list.roman > li{
  counter-increment:item-roman;
}
.adms-box ol.adms-list.roman > li::before{
  content: counter(item-roman, lower-roman);
  position:absolute; left:0; top:50%;
  transform:translateY(-50%);
  width:1.8em; height:1.8em;
  border-radius:50%;
  background:#be222f;
  color:#fff;
  font-weight:700;
  font-size:.9em;
  line-height:1.8em;
  text-align:center;
}

/* 중첩 목록 간격(ol/ul 공통) */
.adms-box .adms-list > li > .adms-list{
  margin-top:6px;
  /* 중첩된 ordered list도 원 마커가 보이도록 동일 패딩 */
  /* 필요시 아래 줄 주석 해제
  padding-left:2.5em;
  */
}

/* -------------------------
 * Focus Accessibility
 * ------------------------- */
.adms-box a:focus-visible{
  outline:2px solid #333;
  outline-offset:2px;
}
.adms-note{
  margin:10px 0 0;
  padding:10px 12px;
  background:#f7f9ff;
  border:1px solid #dfe6ff;
  border-radius:8px;
  color:#283e73;
}
.adms-alert{
  margin:10px 0 0;
  padding:10px 12px;
  background:#fff7f7;
  border:1px solid #ffdede;
  border-radius:8px;
  color:#7a1c1c;
  font-weight:600;
}
/* -------------------------
 * Mobile Fine-tuning
 * ------------------------- */
@media (max-width: 640px){
  .adms-box{ padding:18px 16px; }
  .adms-title{ font-size:18px; }
}


/* ready */
.page-pending-wrap {
  width: 100%;
  padding: 100px 20px;
  background-color: #f9f9f9;
  text-align: center;
  font-family: 'Pretendard', sans-serif;
}

.page-pending-inner {
  max-width: 800px;
  margin: 0 auto;
}

.page-pending-title .icon-box {
  margin-bottom: 20px;
}

.page-pending-title .icon-box img {
  width: 80px;
  height: auto;
}

.page-pending-title small {
  font-size: 24px;
  font-weight: 500;
  color: #333;
  display: block;
  margin-bottom: 10px;
}

.page-pending-title small strong {
  color: #b9173d;
  font-weight: 700;
}

.page-pending-title p {
  font-size: 16px;
  color: #666;
}


/* process */
/* 공통 */
:root{
  --conn-w:56px;       /* 가로 간격 */
  --conn-h:8px;        /* 선 두께 */
  --conn-color:#cfcfcf;
}

.admission-process { position: relative; }
.admission-process .title {font-size: 28px;font-weight: bold;margin: 20px 0px 80px; text-align:center;}

.process-row{
  display:flex; align-items:center; justify-content:center;
  gap:20px; margin-bottom:64px; /* 세로 연결선 공간 확보 */
  position: relative; z-index: 0;
  align-items: stretch; /
}
.process-box{
  position: relative; z-index: 1; /* 선이 '뒤'로 가도록 */
  background: linear-gradient(#fff, #f5f5f5);
  border:1px solid #ccc; border-radius:8px; padding:15px 20px;
  width:250px; box-shadow:0 2px 4px rgba(0,0,0,.1);
  font-weight:700; font-size:16px; text-align:center; display: flex; flex-direction: column;
  min-height: 120px; justify-content: center;   align-items: center;
}
.process-box span{display:block; font-size:14px; font-weight:400; margin-top:6px}

/* 가로 연결선(기존 요소 유지) – 둥근 캡 & 두께 보정 */
.line{
  flex:0 0 var(--conn-w);
  width:var(--conn-w);
  height:var(--conn-h);
  background:var(--conn-color);
  border-radius:4px;
  align-self: center;
}

/* 선을 숨기되, 공간은 유지 */
.line--off{
  background:transparent !important;   /* 또는 visibility:hidden */
}


/* 세로 연결선 – 기본은 감춤, 행별로 노출 컨트롤 */
.process-box::before,
.process-box::after{
  content:""; position:absolute; left:50%; transform:translateX(-50%);
  width:8px; height:24px; background:#cfcfcf; border-radius:4px;
  z-index:0; opacity:0;  /* 기본 비노출 */
}

/* 1행: 아래로만 연결 */
.admission-process .process-row:nth-of-type(1) .process-box::after{
  bottom:-36px; opacity:1;
}

/* 2행: 위/아래 모두 연결 */
.admission-process .process-row:nth-of-type(2) .process-box::before{
  top:-36px;  opacity:1;
}
.admission-process .process-row:nth-of-type(2) .process-box::after{
  bottom:-36px; opacity:1;
}

/* 3행: 위로만 연결 */
.admission-process .process-row:nth-of-type(3) .process-box::before{
  top:-36px; opacity:1;
}

/* 반응형(선 길이/간격만 살짝 줄임) */
@media (max-width: 768px){
  .process-row{ gap:14px; margin-bottom:48px; }
  /*.line{ width:40px; height:6px; }*/.line{ display:none !important; }
  .process-box{ width: min(240px, 32vw); padding:12px 14px; font-size:15px; }
  .process-box::before, .process-box::after{ height:18px; }
}
@media (max-width: 768px){
  /* 행을 납작하게 만들어 박스들을 한 줄로 모음 */
  .process-row{ display: contents; }

  /* 선은 모바일에서 숨김 */
  .line,
  .process-box::before,
  .process-box::after{ display:none !important; }

  /* 부모를 플렉스 컬럼으로 */
  .admission-process{
    display:flex; flex-direction:column;
  }

  /* 박스 100% + 순서 제어 */
  .process-box{
    width:100%;
    box-sizing:border-box;
    margin:10px 0;
    order:10; /* 기본값(뒤로) */
  }
  .process-box.step1{ order:1; }
  .process-box.step2{ order:2; }
  .process-box.step3{ order:3; }
  .process-box.step4{ order:4; }
  .process-box.step5{ order:5; }
  .process-box.step6{ order:6; }
  .process-box.step7{ order:7; }
  .process-box.step8{ order:8; }
  .process-box.step9{ order:9; }
  .adm01-02 .adms-alert {order:10;}
  .admission-process .title { margin:30px 0;}
  
}

/* download */
.info_visualbox{display:flex;position:relative;z-index:10;}
.info_visualbox_img_wrap{width:calc(50% + 10px)}
.info_visualbox img{display:block;max-width:100%}
.info_visualbox_img_title{position:absolute;left:90px;bottom:80px;font-size:32px;font-weight:400;color:#fff;line-height:1.2}
.info_visualbox_title{position:relative;padding-bottom:20px;margin-bottom:20px;font-size:20px;font-weight:300;line-height:1; color:#fff; font-family: 'Gmarket';} 
.info_visualbox_title::after{content:"";position:absolute;bottom:0;left:0px;width:100%;height:1px;opacity:.1;background-color:#fff}
.info_visualbox_title strong { display: block; font-size:40px; padding-top:10px}
.info_visualbox_desc_wrap{display:flex;flex-direction:column;justify-content:center;position:absolute;top:50px;right:0;width:calc(50% + 50px);height:100%;padding:60px;color:#fff;background:#003876 no-repeat url("");background-position:right -30px bottom -30px;z-index:1}
.info_visualbox_desc{opacity:.2;font-size:20px;font-weight:600;letter-spacing:2px; color:#fff; }
.info_visualbox_text{opacity:.7;font-size:17px;font-weight:300;line-height:1.7;  color:#fff;}
.info_visualbox_text strong{font-weight:500}

@media (max-width:1280px){
	.info_visualbox_title{padding-bottom:10px;margin-bottom:10px;font-size:27px}
	.info_visualbox_desc_wrap{padding:40px}
	.info_visualbox_desc{font-size:16px;font-weight:400}
}

@media (max-width:1024px){
	/* Sub Page Visual */
	.info_visualbox{flex-direction:column;align-items:center}
	.info_visualbox_title{font-size:24px}
	.info_visualbox_img_wrap{position:relative;width:100%;max-width:720px;max-height:300px;overflow:hidden;text-align:center;transform:translateX(-10px);}
	.info_visualbox_desc_wrap{position:relative;top:auto;width:100%;max-width:720px;min-height:250px;padding:30px 20px;transform:translateX(10px)}

}
@media (max-width:768px){
	.info_visualbox_title{font-size:22px}
	.info_visualbox_img_wrap,
	.info_visualbox_desc_wrap {transform:none}
}
/* 항상 1열(세로) */
.btn-box01{
  display: grid;
  grid-template-columns: 1fr;   /* ← 처음부터 1열 */
  gap: 12px;
  margin-top: 20px;
}

/* 버튼: 여러 줄 텍스트 중앙정렬 + 자동 높이 */
.blink-btn{
  width: 100%;
  min-height: 60px;             /* 두 줄도 여유 있게 */
  padding: 14px 16px;
  display: flex;
  align-items: center;           /* 세로 중앙 */
  justify-content: center;       /* 가로 중앙 */
  text-align: center;            /* 가운데 정렬 */
  line-height: 1.4;
  box-sizing: border-box;

  border: 1px solid rgba(255,255,255,.7);
  border-radius: 8px;
  background: transparent;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

/* 긴 텍스트 줄바꿈 허용 (한/영 모두 안전) */
.blink-btn .nw{
  white-space: normal;           /* 줄바꿈 허용 */
  overflow: visible;
  text-overflow: clip;
  word-break: keep-all;          /* 한글 단어 단위로 줄바꿈 */
  overflow-wrap: anywhere;       /* 긴 영어/URL 강제 줄바꿈 대비 */
}

.blink-btn:hover{
  background: #fff;
  color: #003876;
  border-color: #fff;
}

.blink-btn:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}
 /* @media (min-width: 1025px){
  .btn-box01{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
 마지막 버튼만 다음 줄로 내려가 전체 폭 사용 
  .btn-box01 .blink-btn:last-child{
    grid-column: 1 / -1;     
    justify-self: stretch;     
  }
}
@media (min-width: 1025px){
  .btn-box01{ 
    display: grid; 
    grid-template-columns: repeat(2, minmax(0, 1fr)); 
    gap: 12px; 
  }
  .btn-box01 .blink-btn:last-child{
    grid-column: 1 / -1;      
    justify-self: center;     
   width: min(420px, 100%);
  }
}*/  

/* Venture */
.intro_top {position: relative; max-width: none; margin: 0 auto 68px; padding: 7px 50px 12px; text-align: center; margin-top:50px;}
.intro_top .tit { display: inline-block;position: relative;  font-family: 'Gmarket';font-size: 34px;color: #000000;font-weight: 600;letter-spacing: -0.05em;line-height: 1.5;}
.intro_top .tit::before {content: "“"; position: absolute;left: -90px;top: -20px;;font-weight: bold; color:#dbdbdb; font-size:80px; }
.intro_top .tit::after { content: "”"; position: absolute;right: -90px; top: -20px;font-weight: bold; color:#dbdbdb;font-size:80px; }
.intro_top .s_tit {display: block; margin-bottom: 5px;font-size: 24px;font-weight: bold;letter-spacing: -0.03em; color: #006a7a;line-height: 1.4; margin-top:30px;}
.intro_top .s_tit b { display:block;  color:#424242; font-size:16px; margin-top:10px;}

.greeting_imgbox { position: relative; margin-bottom:100px;}
.greeting_imgbox .greet_img img {overflow: hidden; display: flex; width:100%;  border-top-left-radius:20px; border-top-right-radius:20px; border-bottom-left-radius:20px; border-bottom-right-radius:20px;}
.greeting_imgbox .greet_title {position:absolute;top:auto;right: 57px;  bottom: -62px; width: auto;  max-width: 500px;padding: 40px;border-radius: 0px; background: #000; text-align:left;}
.greeting_imgbox .greet_title em {display:block; color:#dfdfdf; font-size:15px;}
.greeting_imgbox .greet_title span {display:block; position:relative; margin:0px 0 0; font-size:28px; color:#fff; font-weight:bold; }
.greeting_imgbox .greet_title span em {font-size: 18px;  font-weight: 500;letter-spacing: 0; color: #fff; padding-top:20px;}

.greeting_text {display: flex;flex-wrap: wrap; justify-content: center;}
.greeting_text h3 {width:300px; font-weight:600; font-size:40px; margin-top:0px;}
.greeting_text .txt01 {width:calc(100% - 300px); display: flex;flex-direction: column;}
.greeting_text .txt01 p { font-size:18px; line-height:1.7em;}
.greeting_text .txt01 p em {font-size:30px; font-weight:500; line-height:1.4em; padding-bottom:20px; color:#000;}
.greeting_text .txt01 p b {display:block; text-align: right; font-size:inherit; font-weight:700;}


@media screen and (max-width:1100px){
	.intro_top .tit::before{left: -50px;}
	.intro_top .tit::after{right: -50px;}
}

@media (max-width: 767px){
	.greeting_imgbox {margin-bottom: 20px;}
	.greeting_imgbox .greet_img img {border-top-left-radius:20px; border-top-right-radius:20px; border-bottom-left-radius:0px; border-bottom-right-radius:0px;}
	.greeting_imgbox .greet_title {position: static; top:auto; border-radius: 0px; max-width:100%;}
	.greeting_text h3 {width:100%;}
	.greeting_text .txt01 { display:block; width:100%; font-size:18px; line-height:1.7em;}
	.greeting_text .txt01 p em { font-size:25px;}
}

.ven-list{list-style:none;      /* 기본 마커 제거 */counter-reset:item;   /* 기본 카운터 */padding-left:0;}
/* 공통 li 레이아웃 */
.ven-list > li{position:relative;padding-left:2.5em;   /* 원 + 텍스트 간격 */margin:8px 0;}
.ven-list.num > li{ counter-increment:item;}
.ven-list.num > li::before{content: counter(item);position:absolute; left:0; top:15px;transform:translateY(-50%);width:1.8em; height:1.8em;border-radius:50%;background:#be222f;color:#fff;font-weight:700;font-size:.9em;line-height:1.8em;text-align:center;}


/* ========== Faculty (vhg-) ========== */
.vhg-faculty{
  --vhg-accent:#003876;
  --vhg-border:#e6e6e6;
  --vhg-card-bg:#fff;
  --vhg-chip-bg: rgba(0,56,118,.06);
  --vhg-chip-bd: rgba(0,56,118,.18);

  position: relative;
  z-index: 1;
  margin: 30px 0;
}
.vhg-faculty__head{margin-bottom: 14px;}
.vhg-faculty__title{margin: 0 0 8px 0;font-size: 24px;font-weight: 800;color: #111;}

/* grid */
.vhg-faculty__list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}
@media (max-width: 1024px){
  .vhg-faculty__list{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px){
  .vhg-faculty__list{ grid-template-columns: 1fr; }
}

/* card */
.vhg-faculty__item{
  background: var(--vhg-card-bg);
  border: 1px solid var(--vhg-border);
  border-radius: 0px;
  box-shadow: 0 4px 14px rgba(0,0,0,.05);
  padding: 40px;
  /*padding: 18px 20px;*/
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 120px;
}

.vhg-faculty__name{
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  color: #111;
  line-height: 1.3;
}
.vhg-faculty__degree{font-size: 16px;color: #666;line-height: 1.5;}

/* fields (chips) */
.vhg-faculty__fields{display: flex;flex-wrap: wrap;gap: 8px; padding: 0;margin: 6px 0 0 0;list-style: none;}
.vhg-tag{display: inline-block;padding: 6px 10px;border-radius: 9999px; background: var(--vhg-chip-bg);border: 1px solid var(--vhg-chip-bd); color: var(--vhg-accent); font-size: 16px;line-height: 1;white-space: nowrap;}

/* optional: hover effect(카드 강조) */
.vhg-faculty__item:hover{ border-color: rgba(0,56,118,.25);box-shadow: 0 6px 18px rgba(0,56,118,.08);}


<!-- grad-rules-wrap -->
/* Graduate Rules Wrapper */
.grad-rules-wrap {font-family: Arial, sans-serif;color: #333;line-height: 1.6;}
.grad-title {font-size: 1.8em;font-weight: bold;margin-bottom: 20px;color: #002c5f;}
.grad-section {margin-bottom: 25px;padding: 15px 20px;background: #f9f9f9;border-left: 4px solid #002c5f;border-radius: 6px;}
.grad-section h3 {font-size: 1.2em;font-weight: bold;margin-bottom: 10px;color: #444;}
.grad-section h4 { font-size: 1em;font-weight: bold;margin: 10px 0;color: #666;}
.grad-section ul {padding-left: 20px;margin: 0;}
.grad-section ul li {margin-bottom: 8px;list-style-type: disc;}

/* student 01 */
/* =========================
   Immigration Guide Styles
   (scoped with .immi-*)
   ========================= */
.immi-wrap { color:#222; line-height:1.7; }
.immi-title { font-size:28px; font-weight:800; margin:0 0 20px; color:#0c2b5a; }
.immi-section { margin:28px 0; }
.immi-h3 { font-size:20px; font-weight:800; margin:0 0 14px; color:#0f355f; }
.immi-card {
  background:#fff; border:1px solid #0c2b5a; border-radius:12px; padding:20px;
  box-shadow:0 4px 14px rgba(12,27,66,.04); margin-bottom:14px;
}
.immi-h4 {display: block; width: 100%; /* 카드 너비 전체 */ font-size: 18px; font-weight: 700;margin: 0 0 12px;color: #fff;background: #0c2b5a;padding: 10px 14px;border-radius: 8px;}
/*.immi-h4::before {content: '';position: absolute;left: 0;top: 0;bottom: 0;width: 5px;background: #f9b233; border-top-left-radius: 8px; border-bottom-left-radius: 8px;}*/
.immi-sub { font-weight:700; color:#2f446f; margin:10px 0 6px; }
.immi-grid { display:grid; grid-template-columns: 1fr 1fr; gap:20px; }
.immi-col { min-width:0; }

.immi-flex { display:flex; flex-wrap:wrap; gap:20px; }
.immi-flex > * { flex:1 1 280px; }

.immi-list { padding-left:18px; margin:6px 0 0; }
.immi-list li { margin:6px 0; }
.immi-list--dash { list-style: none; padding-left:0; }
.immi-list--dash li { position:relative; padding-left:14px; }
.immi-list--dash li::before {content:"-"; position:absolute; left:0; top:4px; line-height:1.2;}
.immi-list--indent { margin-top:6px; padding-left:18px; list-style-type: disc !important; /* 강제로 디스크 블릿 복원 */list-style-position: outside !important; }
.immi-list--indent,
.immi-list--indent li {list-style-type: disc !important;     /* 리셋 무시하고 강제 복구 */}
.immi-list--indent li::before { content: none !important;}
.immi-list--indent li::marker {content: "• ";color:#0ea5e9;                         /* 기본 원형 대신 텍스트 마커 사용 */}

.immi-kv { display:flex; align-items:center; gap:10px; margin:8px 0; flex-wrap:wrap; }
.immi-k { background:#eef4ff; color:#153e75; border:1px solid #d6e4ff; padding:6px 10px; border-radius:8px; font-weight:700; }
.immi-v { font-weight:700; color:#111; }

.immi-alert {
  background:#fff5f5; color:#8a1f1f; border:1px solid #ffd9d9; padding:10px 12px; border-radius:10px; margin-top:10px; font-weight:600;
}
.immi-noteBox {
  background:#f7fbff; color:#1a3b69; border:1px solid #e2efff; padding:10px 12px; border-radius:10px; margin:10px 0;
}
.immi-badge {
  display:inline-block; padding:4px 8px; border-radius:999px; background:#0ea5e9; color:#fff; font-size:15px; font-weight:700; margin-top:6px;
}

.immi-note { color:#666; }
.immi-link { display: inline-flex; align-items: center;gap: 6px; /* 글자와 아이콘 간격 */vertical-align: middle;color:#0b61d6; text-decoration:underline; text-underline-offset:2px; }
.immi-link:hover { text-decoration-thickness:2px; }

/* Responsive */
@media (max-width: 920px) {
  .immi-grid { grid-template-columns: 1fr; }
  .immi-title { font-size:24px; }
  .immi-h3 { font-size:18px; }
  .immi-h4 { font-size:17px; }
}

.immi-wrap a.cw-btn:hover,
.immi-wrap a.cw-btn:focus {
  background: #ff6769 !important;
  border-color: #ff6769 !important;
  color: #fff !important;
}
.immi-wrap a.cw-btn:hover span,
.immi-wrap a.cw-btn:focus span {
  color: #fff !important;
}

/* =========================
   Part-Time Work Guide
   Scoped with .ptw-*
   ========================= */
.ptw-wrap { color:#222; line-height:1.6; }
.ptw-title { font-size:26px; font-weight:800; margin-bottom:20px; color:#0c2b5a; }

.ptw-section { margin-bottom:30px; }
.ptw-h3 { font-size:24px; font-weight:700; margin-bottom:12px; color:#153e75; }
.ptw-sub { font-weight:700; margin-bottom:10px; color:#333; text-align:center; font-size:25px;}

.ptw-list { list-style: disc; margin:0; padding-left:20px; }
.ptw-list li { margin-bottom:6px; }
.ptw-list--dash { list-style: none; padding-left:0; }
.ptw-list--dash li { position:relative; padding-left:18px; }
.ptw-list--dash li::before { content:"-"; position:absolute; left:0; top:0; }

.ptw-note { font-size:16px; color:#666; margin-top:6px; }

.ptw-table-wrap { overflow-x:auto; }
.ptw-table { border-collapse: collapse; width:100%; min-width:600px; font-size:16px; }
.ptw-table th, .ptw-table td { border:1px solid #ccc; padding:8px 10px; text-align:center; }
.ptw-table th { background:#f2f5fa; font-weight:700; }

.ptw-step { counter-reset: step; padding-left:0; margin:0; }
.ptw-step li {list-style:none;margin-bottom:10px;padding-left:26px;position:relative;}
.ptw-step li::before {counter-increment: step;content: counter(step) ")";position:absolute; left:0; top:0;font-weight:700;color:#0a51d1;}

@media (max-width:768px) {
  .ptw-title { font-size:22px; }
  .ptw-h3 { font-size:18px; }
  .ptw-table { font-size:13px; }
}

/* ===== Part-time Work Procedure (responsive) ===== */
.ptw-flow{ display:flex;align-items:stretch;justify-content:center;gap:24px;                 /* 칸 사이 간격 */flex-wrap:wrap;margin:20px 0;list-style:none;padding:0;}

/* 각 스텝 박스 */
.ptw-step{position:relative;width:180px;              /* PC 기본 폭 */min-width:200px;border:1.5px solid #111;border-radius:6px;box-sizing:border-box;background:#fff;display:flex;  flex-direction:column; align-items:center;justify-content:flex-start; min-height:200px;         /* 동일한 높이 보장 */text-align:center;padding:12px 14px 18px;}

/* 상단 번호 라인 */
.ptw-step__head{width:100%;border-bottom:1.5px solid #111;padding:6px 0 8px;margin-bottom:10px;}
.ptw-step__num{font-weight:800;font-size:22px;line-height:1;}

/* 본문 */
.ptw-step__body{display:flex; align-items:center;justify-content:center;flex:1 1 auto;            /* 남는 공간 채우기 (세로 가운데) */font-size:18px;line-height:1.5;word-break:keep-all;}

/* ③ 파란색 강조 */
.ptw-accent{ color:#0b58ff; }

/* ▶ 칸 사이 화살표 (가로 레이아웃) */
.ptw-step:not(:last-child)::after{content:"⇒";position:absolute;right:-28px;/* 화살표 위치 */top:50%;transform:translateY(-50%);font-size:28px;font-weight:800; color:#111;pointer-events:none;}

/* ======== 반응형 ======== */
/* 태블릿: 칸 폭 살짝 축소 */
@media (max-width: 1024px){
  .ptw-step{ width:200px; min-height:190px; }
  .ptw-step__body{ font-size:17px; }
}

/* 모바일: 세로 스택 + 아래쪽 화살표로 전환 */
@media (max-width: 640px){
  .ptw-flow{ flex-direction:column;align-items:center;gap:28px;               /* 박스 간 간격 조금 확대 */}
  .ptw-step{width:100%; max-width:420px;        /* 컨테이너 중앙 정렬 */min-height:160px; }
  .ptw-step:not(:last-child)::after{content:"↓";            /* 세로 화살표 */ right:50%;top:auto;bottom:-35px; transform:translateX(50%);font-size:26px; }
  .ptw-sub {font-size:18px;}
}

/* 다크배경 페이지 대비(옵션) */
@media (prefers-color-scheme: dark){
	.ptw-step{ background:#fff; border-color:#000; }
}

/* ===== IBK Guide Layout ===== */
#ibk-guide{ display:grid !important;grid-template-columns: 420px 1fr;     /* 왼쪽: 이미지, 오른쪽: 텍스트 */grid-template-areas: "image text";gap:32px;align-items:start;margin:24px 0;}
#ibk-guide .ibk-image{ grid-area:image; }
#ibk-guide .ibk-text{  grid-area:text;  min-width:0; }

/* 이미지 */
#ibk-guide .ibk-image{width:100%; border-radius:10px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.08);background:#f6f8fb;}
#ibk-guide .ibk-image img{display:block;width:100%;height:auto;}
/* 배경이미지 박스(선택) */
#ibk-guide .ibk-img-box{ width:100%;aspect-ratio: 4 / 5;background: url('/resources/images/egsv/sub/id_card_img01.jpg') center/cover no-repeat;}

/* 텍스트 박스(스텝) */
#ibk-guide .ibk-step{border:1px solid #0c2b5a;border-radius:8px;padding:16px 18px;box-shadow:0 3px 10px rgba(0,0,0,.05); background:#fff;}
#ibk-guide .ibk-step + .ibk-step{ margin-top:16px; }
#ibk-guide .ibk-step h3{ margin:0 0 8px;font-size:20px;font-weight:800;color:#002f6c;}
#ibk-guide .ibk-step p{ margin:0 0 8px; line-height:1.6; }
#ibk-guide .ibk-step ul{ margin:6px 0 0 18px; }
#ibk-guide .ibk-step li{ margin:6px 0; line-height:1.5; }
 #ibk-guide .note{ color:#555; font-size:15px; }

/* 반응형: 900px 이하에서 세로 스택(이미지 위) */
@media (max-width: 900px){
    #ibk-guide{
      grid-template-columns: 1fr;
      grid-template-areas:
        "image"
        "text";
      gap:20px;
    }
}

/* ===== Certificate KIOSK: Steps 1~6 ===== */
.ckiosk-wrap{display:grid;gap:22px;margin:24px 0 10px; counter-reset: ckstep;}

/* 카드: 왼쪽 내용, 오른쪽 이미지 */
.ckiosk-card{display:grid;grid-template-columns: 1fr 560px;   /* 내용 | 이미지 */align-items: stretch;gap:18px;background:#fff; border:1px solid #e7eaf0;border-radius:12px;box-shadow:0 8px 24px rgba(18,38,63,.05);padding:18px; counter-increment: ckstep;}

/* 내용 영역 */
.ckiosk-body{display:flex;flex-direction:column;gap:10px;min-width:0;}
.ckiosk-title{ position: relative;padding-left: 56px;/* 블릿 공간 */min-height: 44px;display: flex;align-items: center; font-weight:600;}
.ckiosk-title::before{content: counter(ckstep);      /* 1,2,3… 자동 */position: absolute;left: 0; top: 50%;transform: translateY(-50%);width: 40px; height: 40px;border-radius: 50%; display: inline-flex; align-items: center;
justify-content: center;font-weight: 800;font-size: 16px;color: #fff;box-shadow: 0 4px 10px rgba(0,0,0,.12);/* 기본: 그라디언트 배경 블릿 */ background: linear-gradient(135deg, #0b58ff 0%, #003a97 100%);}
.ckiosk-card:hover .ckiosk-title::before{transform: translateY(-50%) scale(1.05);}
.ckiosk-text{ margin:0; line-height:1.65; color:#333; }
.ckiosk-list{ margin:0; padding-left:18px; line-height:1.6; color:#333; }
.ckiosk-list > li{ margin:6px 0; }
.ckiosk-sublist{ margin:6px 0 0 18px; }
.ckiosk-note{ color:#6b7280; font-size:.95em; }

/* 이미지 영역 (오른쪽) */
.ckiosk-media{display: grid; grid-template-columns: 1fr 1fr; gap: 10px;border-radius:10px;overflow:hidden;background:#f5f7fb;display:flex;align-items:center;justify-content:center;}
.ckiosk-media img{display:block;width:100%;height: auto;object-fit: contain;  display: block;   /* 이미지 꽉 채우기 */}

.ckiosk-card.ckiosk-card--noimg{
  grid-template-columns: 1fr;       /* 한 열만 사용 */
}
.ckiosk-card.ckiosk-card--noimg .ckiosk-media{
  display: none;                    /* 우측 이미지 영역 숨김 */
}
.ckiosk-card .ckiosk-media.stack-vert{ display: flex !important;           /* 가로/그리드 규칙 무력화 */flex-direction: column !important;  /* 세로 스택 */ align-items: stretch !important;gap: 10px;height: auto !important;            /* 모바일 고정 높이 덮기 */overflow: visible !important;}
.ckiosk-card .ckiosk-media.stack-vert img{display: block !important; width: 100% !important;             /* 가로 반(50%) 강제 무력화 */height: auto !important;            /* 잘림 방지 */object-fit: contain !important;     /* 원본 비율 유지 */float: none !important;             /* float로 2열되는 경우 차단 */margin: 0 !important;}

/* (선택) 두 번째 이미지부터 위여백 조금 */
.ckiosk-card .ckiosk-media.stack-vert img + img{
  margin-top: 10px !important;
}
@media (prefers-color-scheme: dark){
  .ckiosk-title::before{
    box-shadow: 0 4px 10px rgba(0,0,0,.3);
  }
}

/* 반응형 */
@media (max-width: 1100px){
  .ckiosk-card{ grid-template-columns: 1fr 320px; }
}
@media (max-width: 900px){
  .ckiosk-card{
    grid-template-columns: 1fr;       /* 세로 스택 */
    grid-auto-rows: auto;
    padding:16px;
  }
  .ckiosk-media{
    order:-1;                          /* 모바일에선 이미지가 위 */
    height:210px;
  }
}
@media (max-width: 480px){
  .ckiosk-title{ font-size:18px; }
  .ckiosk-media{ height:180px; }
}

/* ===== Parking Pass Guide ===== */
#ppass-guide{ margin:28px 0; color:#111; font-size:16px; line-height:1.7; }
.ppass-sr{ position:absolute; left:-9999px; }

/* 한 줄 이미지 */
.ppass-hero{ margin:0 0 18px; text-align:center;}
#ppass-guide .ppass-hero-link{ display:inline-block; }
.ppass-hero img{ display: inline-block;width: auto;height: auto;  max-width: 100%;border-radius: 12px;border: 1px solid #eef2f9;box-shadow: 0 12px 30px rgba(0,0,0,.12); transition: transform .2s ease, box-shadow .2s ease; }
.ppass-hero figcaption{margin-top:8px; font-size:14px; color:#6b7280; text-align:center;}
@media (hover:hover){
  #ppass-guide .ppass-hero img:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 40px rgba(0,0,0,.16);
  }
}
#ppass-guide .ppass-hero figcaption{
  margin-top:8px; font-size:18px; color:#6b7280; text-align:center;
}

/* 모바일 전용 버튼 */
#ppass-guide .ppass-hero-zoom{ display:none; }

/* 블록 카드 */
.ppass-block{background:#fff;border:1px solid #e7eaf0;border-radius:12px; box-shadow:0 8px 24px rgba(18,38,63,.05);padding:30px; text-align:left;}
.ppass-block + .ppass-block{ margin-top:18px; }
.ppass-h3{margin:0 0 10px;font-size:20px;font-weight:800;color:#0b3a82;}
#ppass-guide .ppass-block:first-of-type{background:#f3f7ff;       /* 원하는 색상으로 교체 */border-color:transparent;}
#ppass-guide .ppass-block:first-of-type .ppass-h3{ color:#0b3a82; }
#ppass-guide .ppass-block:first-of-type .ppass-text,
#ppass-guide .ppass-block:first-of-type .ppass-note,
#ppass-guide .ppass-block:first-of-type .ppass-path span{ color:#0c1b2a; }

/* 경로 표시 */
.ppass-path{margin:6px 0 2px;display:flex; flex-wrap:wrap; gap:6px 10px; align-items:center;}
.ppass-path .ppass-arrow{ opacity:.6; }

/* ===== 번호 블릿 (① 스타일) ===== */
.ppass-steps{margin:8px 0 0; padding:0;list-style:none;counter-reset: pstep;}
.ppass-steps > li{counter-increment: pstep;position:relative;padding-left:60px;     /* 블릿 공간 */margin:12px 0;min-height:44px;display:flex; align-items:flex-start;}
.ppass-steps > li::before{content: counter(pstep);position:absolute; left:0; top:2px;width:40px; height:40px; border-radius:50%;display:inline-flex; align-items:center; justify-content:center;font-weight:800; font-size:16px; color:#fff; background: linear-gradient(135deg,#0b58ff 0%,#003a97 100%);box-shadow:0 4px 10px rgba(0,0,0,.12);}

/* 단계 내용 */
.ppass-step-body{ display:block; }
.ppass-step-title{ margin:0; font-weight:700; font-size: 20px;}
.ppass-text{ margin:.25em 0 0; }
.ppass-note{ margin:.25em 0 0; font-size:.95em; color:#6b7280; }

/* 하위 목록 (디테일) */
.ppass-sub{ margin:.4em 0 0 1.1em; padding:0; }
.ppass-sub li{ margin:.25em 0; list-style:disc; }

/* 반응형 */
@media (max-width: 720px){
  .ppass-h3{ font-size:18px; }
  .ppass-steps > li{ padding-left:54px; }
  .ppass-steps > li::before{ width:36px; height:36px; font-size:15px; }
  #ppass-guide .ppass-hero-zoom{display:inline-flex;align-items:center;gap:8px;margin:10px auto 0;padding:10px 14px;font-weight:700;border-radius:999px; border:1px solid #dfe6f3;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.08);}
}


#camp-facilities{ margin:28px 0; color:#111; font-size:16px; line-height:1.7; }
.camp-sr{ position:absolute; left:-9999px; }

/* 카드 블록 */
.camp-block{background:#fff;border:1px solid #e7eaf0;border-radius:12px;box-shadow:0 8px 24px rgba(18,38,63,.05);padding:18px;}
.camp-block + .camp-block{ margin-top:18px; }
.camp-h3{margin:0 0 12px;font-size:20px;font-weight:800; color:#0b3a82;}

/* 사진+타이틀 그리드(2-up) */
.camp-grid{display:grid; grid-template-columns: repeat(2, 1fr); gap:14px;margin:8px 0 14px;}
.camp-item{background:#f7f9fc;border:1px solid #eef2f7;border-radius:10px;overflow:hidden;text-align:center; padding:12px;}
.camp-item img{display:block;width:100%;height:auto;border-radius:8px;box-shadow:0 8px 20px rgba(0,0,0,.06);}
.camp-cap{margin-top:8px;font-weight:700;color:#0c1b2a; padding:10px 0;}

/* ① 스타일: 번호 블릿 */
.camp-steps{margin:10px 0 4px; padding:0; list-style:none;counter-reset: campstep;}
.camp-steps > li{counter-increment: campstep;position:relative;padding-left:60px;         /* 블릿 자리 */ margin:12px 0; min-height:44px; display:flex; align-items:flex-start;}
.camp-steps > li::before{content: counter(campstep); position:absolute; left:0; top:2px;width:40px; height:40px; border-radius:50%;display:inline-flex; align-items:center; justify-content:center;font-weight:800; font-size:16px; color:#fff;background: linear-gradient(135deg,#0b58ff 0%,#003a97 100%); box-shadow:0 4px 10px rgba(0,0,0,.12);}

/* 단계 내부 */
.camp-step-body{ display:block; }
.camp-step-title{ margin:0; font-weight:800; font-size:25px;}
.camp-text{ margin:.25em 0 0; }
.camp-note{ color:#6b7280; }

/* 하위 목록 */
.camp-sub{ margin:.35em 0 0 1.1em; padding:0; }
.camp-sub li{ list-style:disc; margin:.25em 0; }

#camp-facilities .camp-block{ 
  --card-pad: 18px;      /* 카드 padding과 동일하게 */
  --card-bw: 1px;        /* 카드 border-width와 동일하게 */
  --card-radius: 12px;overflow: hidden;position: relative; border-radius: var(--card-radius);padding-top: 0px;} /* 모서리 깔끔하게 */
#camp-facilities .camp-block::before{ display:none; content:"";position:absolute; left:0; right:0; top:0; height:52px;background: linear-gradient(135deg,#0b58ff 0%,#003a97 100%);border-radius: 12px 12px 0 0;  /* 카드와 동일한 상단 라운드 */}
#camp-facilities .camp-h3{position: relative;margin: 0 0 12px;                  /* 음수 마진 사용하지 않음 */padding: 14px var(--card-pad);background: linear-gradient(135deg,#0b58ff 0%,#003a97 100%); color:#fff;border-radius: var(--card-radius) var(--card-radius) 0 0; display: flex; align-items: center; gap: 8px;line-height: 1.35;/* 폭을 카드 padding+border 만큼 좌우로 확장 */width: calc(100% + 2 * (var(--card-pad) + var(--card-bw)));left: calc(-1 * (var(--card-pad) + var(--card-bw)));}

/* (선택) 왼쪽 포인트 바 */
#camp-facilities .camp-h3::before{content:"";width:6px; height:20px; border-radius:3px;background: rgba(255,255,255,.6);margin-right:6px;}
/* (선택) 호버 시 살짝 강조 */
@media (hover:hover){
  #camp-facilities .camp-h3:hover{filter: brightness(1.03);}
}

/* 반응형 */
@media (max-width: 800px){
  .camp-h3{ font-size:18px; }
  .camp-grid{ grid-template-columns: 1fr; } /* 모바일: 1열 */
  .camp-steps > li{ padding-left:54px; }
  .camp-steps > li::before{ width:36px; height:36px; font-size:15px; }
}
@media (max-width: 420px){
  #camp-facilities .camp-h3{ font-size:18px; }
}

/* ===== Korean Course Info ===== */
#kci{ margin:28px 0; color:#111; font-size:16px; line-height:1.7; }
.kci-sr{ position:absolute; left:-9999px; }

/* 1) 이미지: 원본 크기 중앙정렬 + 라운드/그림자 */
#kci .kci-hero{ margin:0 0 16px; text-align:center; }
#kci .kci-hero-link{ display:inline-block; }
#kci .kci-hero img{display:inline-block;width:auto;              /* ✅ 원본 폭 유지 */height:auto;             /* ✅ 비율 유지 */max-width:100%;          /* 화면이 좁을 때만 축소 */border-radius:12px;border:1px solid #eef2f9;box-shadow:0 12px 30px rgba(0,0,0,.12);transition:transform .2s ease, box-shadow .2s ease;}
@media (hover:hover){
  #kci .kci-hero img:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(0,0,0,.16);}
}

/* 2) 모바일 전용: 이미지 크게보기 버튼 */
#kci .kci-hero-zoom{ display:none; }
@media (max-width:720px){
  #kci .kci-hero-zoom{display:inline-flex;align-items:center;gap:8px; margin:10px auto 0;padding:10px 14px;font-weight:700;border-radius:999px;border:1px solid #dfe6f3;background:#fff; box-shadow:0 6px 16px rgba(0,0,0,.08);}
}

/* 3) 텍스트 본문 */
#kci .kci-body p{ margin:0 0 10px; }

/********** 오시는길 **********/
#hs-contact{ margin:28px 0; color:#111; font-size:16px; line-height:1.7; }
.hs-sr{ position:absolute; left:-9999px; }

/* 카드 */
.hs-block{background:#fff;border:1px solid #e7eaf0;border-radius:12px;box-shadow:0 8px 24px rgba(18,38,63,.05);padding:18px;}
.hs-block + .hs-block{ margin-top:18px; }
.hs-h3{margin:0 0 10px;font-size:20px;font-weight:800;color:#0b3a82;}
.hs-addr{ font-style:normal; }

/* 리스트 */
.hs-list{ margin:8px 0 0 18px; padding:0; }
.hs-list li{ list-style:disc; margin:.35em 0; }

/* ===== 이미지: 원본 크기 중앙정렬 + 라운드/그림자 ===== */
.hs-hero{ margin:12px 0 0; text-align:center; }
.hs-hero-link{ display:inline-block; }
.hs-hero img{display:inline-block;width:auto;              /* 원본 폭 유지 */height:auto;             /* 비율 유지 */max-width:100%;          /* 화면이 좁을 때만 축소 */border-radius:12px;border:1px solid #eef2f9; box-shadow:0 12px 30px rgba(0,0,0,.12);transition: transform .2s ease, box-shadow .2s ease;}
@media (hover:hover){
  .hs-hero img:hover{transform: translateY(-2px);box-shadow: 0 16px 40px rgba(0,0,0,.16);}
}
.hs-hero figcaption{ margin-top:8px; font-size:18px; color:#6b7280; text-align:center; padding:15px 0;}

/* 모바일 전용: 이미지 크게보기 버튼 */
.hs-hero-zoom{ display:none; }
@media (max-width:720px){
  .hs-hero-zoom{display:inline-flex;align-items:center;gap:8px; margin:10px auto 0;padding:10px 14px; font-weight:700; border-radius:999px;border:1px solid #dfe6f3; background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.08);}
}


.history_wrap {position:relative; padding-right:450px; /*padding-right:22rem;*/ overflow:hidden;}
.history_wrap .background { position:absolute; right:0; }
.history_wrap .background .bg2 { margin-top:10em; }
.history_wrap .background .bg3 { margin-top:16.25em; }
.history_wrap > dl { position:relative; padding-left:5em; margin-bottom:0px;}
.history_wrap > dl + dl { margin-top: 3rem;}
.history_wrap > dl > dt { position: absolute;left: 0;top: 0;width: 8em; height: 8em;background: #d5e6ff;border-radius: 50%; font-size: 1.45rem;font-weight: 700; color: #06234d;text-align: center; display: flex;              /* flexbox 사용 */align-items: center;        /* 세로 가운데 */ justify-content: center;    /* 가로 가운데 */padding: 0 10px;            /* 두 줄일 때 좌우 여백 */box-sizing: border-box;z-index: 2;}
.history_wrap > dl > dd { position: relative;padding: 2em 3em 2em 3em; background: #f9f9f9; border-radius: 1em;min-height: 10rem; /* 원보다 살짝 크게 */ margin-left: 1em; }
.history_wrap > dl > dd > dl { position:relative; padding-left:0rem; margin-bottom:0px;}
.history_wrap > dl > dd > dl + dl { margin-top:0.5rem;}
.history_wrap > dl > dd > dl > dt { position:absolute; left:0; top:0; color:#053983; font-weight:700; font-size:1em;}

@media (max-width:1280px){
	.history_wrap { padding-right:15em; }
	.history_wrap .background img { width:13em; }
}
@media (max-width:1080px){
    .history_wrap { padding-right:0; }
	.history_wrap .background { display:none; }
	.history_wrap > dl { padding-left:4em;}
	/*.history_wrap > dl > dt { width:5em; height:5em; line-height:5em; font-size:1.1em; }*/
	.history_wrap > dl + dl { margin-top:1em;}
}
@media (max-width:580px){
	.history_wrap > dl { padding-left:0;}
	.history_wrap > dl > dt { position:relative; left:auto; top:auto; width:100%; height:2.2em; line-height:2.2em; border-radius:1em 1em 0 0; font-size:1em; }
	.history_wrap > dl > dd { padding:1em; min-height:0; border-radius:0 0 1rem 1rem; margin-left: 0em;} 
	.history_wrap > dl > dd > dl{ padding-left:0;}
	.history_wrap > dl > dd > dl > dt { position:relative; left:auto; top:auto; }
}