.jfc_r {
  justify-content: flex-end;
}
/* 선린대학교 국제교류센터 인사말  */
.greeting_page {
  position: relative;
  overflow: hidden;
}
/* 상단 GREETING 비주얼 */
.greeting_visual {
  position: relative;
  width: 100%;
  margin-bottom: 4rem;
  margin-top: 82px;
}
.greeting_visual img {
  height: auto;
  display: block;
}
/* 상단 오른쪽 원형 데코 (네이비 + 옐로우) */
.greeting_visual::before, .greeting_visual::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.greeting_visual::before {
  top: -13rem;
  right: 45rem;
  width: 150px;
  height: 150px;
  border: 3px solid #133067;
}
.greeting_visual::after {
  top: -5.5rem;
  right: 35rem;
  width: 200px;
  height: 200px;
  border: 3px solid #ffd633;
}
/* 인사말 박스 */
.greeting_wrap {
  padding: 7rem 7rem 8rem;
  background: #fafafa;
}
.greeting_text {
  font-size: 17px;
  width: 100%;
}
.greeting_1 {
  color: #303030;
  font-size: 32px;
  font-style: normal;
  line-height: normal;
  font-weight: 700;
  margin-top: 0;
}
.greeting_2 {
  color: #303030;
  font-size: 32px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  margin-top: 5px;
  width:100%
}

.greeting_2h {
  font-weight: 700;
  color: #0c318a;
}
.greeting_thanks {
  margin-top: 3rem;
  font-weight: 600;
  font-size: 18px;
}
.greeting_end {
  color: #303030;
  font-family: Paperlogy;
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

/* 오른쪽 아래 졸업사진 큰 원 */
.greeting_wrap::before {
  content: "";
  position: absolute;
  right: 12rem;
  bottom: 6rem;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: url("/contents/13221/greeting_circle_visual.jpg") no-repeat center/cover;
  z-index: 1;
}
/* 졸업사진 뒤 노란 테두리 원 */
.greeting_wrap::after {
  content: "";
  position: absolute;
  right: 4rem;
  bottom: -2rem;
  width: 290px;
  height: 290px;
  border-radius: 50%;
  border: 3px solid #ffd633;
  z-index: 0;
}
/* 작은 보라색 원 데코 */
.greeting_circle_small {
  position: absolute;
  right: 2rem;
  bottom: 10rem;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #6c7cffa8;
  z-index: 2;
}
/*오시는길*/
.map_wrap {
  max-width: 1500px;
  margin: 0 auto;
}
.map_wrap .map_box{border-bottom: 1px solid #ccc;}
.map_wrap .section_address{display:none;}
.map_img {
  width: 100%;
  height: auto;
  border: 1px solid #ccc;
  display: block;
}
.map_wrap .hide{display:none;}


/* 하단 footer 바 */
.map_footer {
  display: flex;
  width: 100%;
  height: auto;
  padding: 45px 50px;
  gap: 40px;
  background-color: #f9f9f9;
  border: 1px solid #ccc;
  border-top: 0;
  border-radius: 0 0 20px 20px;
  flex-direction: column;
  align-items: flex-end;
}
.footer_top {
  display: flex;
  width: 100%;
  height: auto;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.map_logo {
  display: inline-flex;
  align-items: center;
  gap: 0 1.4rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #303030;
  margin-right: 97px;
}
.footer_left img {
  display: block;
}
.footer_center {
  color: #303030;
  font-family: Paperlogy;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}
.address_txt {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-bottom: 10px;
}
.add, .call {
  display: flex;
  padding: 5px 25px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 100px;
  font-weight: 700;
  background: #fff;
  margin-right: 15px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.call_txt {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.footer_right {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
}
.footer_right a {
  color: #303030;
  font-family: Paperlogy;
  font-size: 14.815px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}
.road_view {
  display: flex;
  width: 85px;
  height: 80px;
  padding: 12px 15px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  border-radius: 7px;
  background: #fff;
  border: 1px solid #ebebeb;
}
.road_view_ico {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  background: url(/images/sap/sub/footer_logo.png) no-repeat;
  background-position: 3px 0;
}
.find {
  display: flex;
  width: 85px;
  height: 80px;
  padding: 12px 15px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  border-radius: 7px;
  background: #fff;
  border: 1px solid #ebebeb;
}
.find_ico {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  background: url(/images/sap/sub/footer_logo.png) no-repeat;
  background-position: -51px 0;
}
.map_more {
  display: flex;
  height: 80px;
  padding: 12px 15px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  border-radius: 7px;
  background: rgba(103, 142, 240, 0.1);
  border: 1px solid #ebebeb;
}
.map_more_ico {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  background: url(/images/sap/sub/footer_logo.png) no-repeat;
  background-position: -105px 0;
}
.footer_bottom {
  display: flex;
  align-items: center;
  gap: 40px;
  color: #303030;
  font-family: Paperlogy;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%; /* 23.4px */
}
.texi_sec, .bus_sec {
  display: flex;
  width: 450px;
  height: 190px;
  padding: 20px 29px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 7px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background: #fff;
}
.texi, .bus {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-right: 20px;
}
.texi_ico {
  width: 60px;
  height: 60px;
  flex-shrink: 0;
  background: url(/images/sap/sub/footer_logo.png) no-repeat;
  background-position: 5px -40px;
}
.texi_tit, .bus_tit {
  display: flex;
  padding: 5px 25px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 50px;
  font-weight: 700;
  background: rgba(103, 142, 240, 0.1);
}
.texi_txt {
  line-height: 140%;
}
.bus_ico {
  width: 60px;
  height: 64px;
  flex-shrink: 0;
  background: url(/images/sap/sub/footer_logo.png) no-repeat;
  background-position: -75px -40px;
}
.divider {
  width: 2px;
  height: 65px;
  background: #ebebeb;
  display: inline-block;
  margin-right: 20px;
}
/* 파란사다리 */
.poster_sec {
  display: flex;
}
.poster_con {
  width: 64%;
}
.poster_img {
  border-radius: 1rem;
}
.blue_ladder .step_box {
  width: 40%;
}
.blue_ladder {
  gap: 4rem 0%;
}






/* ===== 조직도 레이아웃 ===== */
.org_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 30px;
}
/* 연결선 */
.org_line {
  display: block;
  width: 2px;
  height: 50px;
  background: #d5ddee;
}
/* ===== 카드 공통 ===== */
.member_card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 18%;
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  text-align: center;
}
/* 헤더 */
.card_head {
  padding: 18px;
  background: linear-gradient(135deg, #213D81, #678EF0);
  color: #fff;
}
.member_card.staff .card_head {
  background: #f2f5ff;
  color: #213D81;
}
.badge {
  font-size: 11px;
  letter-spacing: 1px;
  opacity: 0.85;
}
.pos {
  display: block;
  margin-top: 6px;
  font-size: 20px;
  font-weight: 700;
}
/* 바디 */
.card_body {
  padding: 18px;
}
.task {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}
/* 푸터 */
.card_footer {
  padding: 14px;
  background: #f5f7fb;
}
.phone {
  display: inline-block;
  padding: 7px 18px;
  border-radius: 20px;
  background: #213D81;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
}
.phone.disabled {
  background: #cfd7ea;
  color: #555;
}
/* ===== 팀원 영역 ===== */
.staff_row {
  display: flex;
  gap: 2%;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-top: 10px;
  width: 100%;
}
.member_card.director .card_head {
/*  background: linear-gradient(135deg, #213D81, #3f5fb3);*/
	    background: #213D81;
	
}
.member_card.manager .card_head {
/*  background: linear-gradient(135deg, #678EF0, #4f73d9);*/
	    background: #678EF0;
}

.member_card .task {
  word-break: keep-all;     
  word-wrap: break-word;
  line-height: 1.6;
}

.member_card .task .next {
  display: block;          
}


@media screen and (max-width:1280px) {
	.greeting_text p{width: 60%;}
	.greeting_text p br{display: none;}
	p.greeting_1, p.greeting_2{width:100%}
}



/* =========================
   유학생 지원행사 페이지
========================= */

/* 공통 그림자 */
:root {
  --card-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.06);
}


.foreign_event_page .event_single_media img {
 width: 97%;
    display: block;
    border-radius: 10px;
    object-fit: cover;
    box-shadow: var(--card-shadow);
    margin: 0 auto;
	
}

.event_program_wrap {
  display: flex;
  gap: 2rem;
  margin: 3rem 2rem 5rem 2rem;
}

.event_program_box {
  flex: 1;
  background-color: #f6f6f6;
  padding: 3rem 2rem;
  border-radius: 1rem 1rem 6rem 1rem;
  box-shadow: var(--card-shadow);
}

.event_program_tit {
  position: relative;
  padding-top: 5.5rem; 
  margin-bottom: 1.5rem;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.2;
  color: #3280E6;
}

.event_program_tit::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 5rem;
  height: 4rem;
  background-image: url("/images/sap/sub/event_program_icon.png");
  background-repeat: no-repeat;
  background-size: auto 4rem;
}

.event_program_box:nth-child(1) .event_program_tit::before {
  background-position: 0.5rem 0;
}
.event_program_box:nth-child(2) .event_program_tit::before {
  background-position: -7rem 0;
}
.event_program_box:nth-child(3) .event_program_tit::before {
  background-position: -14.6rem 0;
}

.event_program_box .basic > li {
  margin-bottom: 0.8rem;
  line-height: 1.7;
}

.event_program_box .sub_grtxt {
  display: block;
  margin-top: 0.2rem;
  font-size: 1.7rem;
  color: #666;
}


/* =========================
   상담 프로그램
========================= */

.counseling_box {
  background-color: #f6f6f6;
  border-radius: 1rem 1rem 10rem 1rem;
  padding: 3rem 6rem;
  margin-bottom: 3rem;
	 box-shadow: var(--card-shadow);
}
.counseling_item {
  display: flex;
  gap: 6rem;               
  align-items: center;
}

.counseling_img {
  width: 55%;
}

.counseling_img img {
  width: 100%;
  display: block;
  border-radius: 1rem;
  object-fit: cover;
  box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.06);
}


.counseling_img.single img {
  height: 340px;
  max-height: 340px;
}

.counseling_img.double {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
}

.counseling_img.double img {
  height: 260px;
  max-height: 260px;
}

.counseling_txt {
  width: 45%;
}

.counseling_txt h5.tit {
  margin-top: 2rem;
  margin-bottom: 1rem;
}


/* =========================
   유학생 동아리
========================= */

.club_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
  margin-bottom: 3rem;
	    margin-top: 5rem;
}


.club_card {
  background-color: #f6f6f6;
  border-radius: 1rem 1rem 10rem 1rem;
  padding: 3rem;
}


.club_img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 1rem;
  object-fit: cover;
  box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.06);
}


.club_txt {
  margin-top: 2rem;
}

.club_txt h5.tit {
  margin-bottom: 1rem;
}




/* 대학편의시설 */
/* =========================
   시설 바로가기 버튼
========================= */

/* 버튼 영역 */
.facility_nav {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin: 4rem 0 6rem;
}

/* 버튼 (a 태그) */
.facility_nav .btn_anchor {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem 3.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  color: #333;
  background-color: #f6f6f6;
  border: 1px solid #ddd;
  border-radius: 999px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

/* hover / focus */
.facility_nav .btn_anchor:hover,
.facility_nav .btn_anchor:focus {
  background-color: #3280E6;   
  color: #fff;
  border-color: #f8f8f8;
  outline: none;
}

/* 클릭 시(모바일 탭) */
.facility_nav .btn_anchor:active {
  background-color: #163aa8;
  border-color: #163aa8;
}


@media (max-width: 768px) {
  .facility_nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 1rem;
  }

  .facility_nav .btn_anchor {
    white-space: nowrap;
    flex-shrink: 0;
  }
}




.facility_img {
  display: flex;
  align-items: flex-start;
	align-items: stretch;
  gap: 30px;
}


.facility_img .img06,
.facility_img .txt06 {
  float: none;
  width: auto;
}

.facility_img .img06 {
  flex: 0 0 32%;
  margin: 0;
	  display: flex; 
}


.facility_img .img06 .photo {
  width: 100%;
  height: 100%;              
  object-fit: cover;      
  border-radius: 10px;
}


.facility_img .txt06 {
  flex: 1;
  margin: 0;
	background-color: #f6f6f6;
    padding: 1rem 3rem 3rem;
    border-radius: 1rem 1rem 10rem 1rem;
    width: 100%;
}

/* 대학휴게광장 */
.plaza_wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px 30px;
}

/* 개별 항목 */
.plaza_item .tit {
  margin-bottom: 12px;
}

/* 이미지 영역 */
.plaza_img img {
  width: 100%;
  display: block;
  border-radius: 10px;
}







/*모집요강*/
.pdf_layout .pdf_left .tab_title {font-size: 2.2rem;font-weight: bold;background: #fff;padding: 2rem 1rem 2rem 9rem;border-top: 1px solid #cccccc;display: flex;flex-wrap: wrap;position: relative;flex-direction: column;}
.pdf_layout .pdf_left .tab_title span{font-size: 1.4rem;font-weight:400;color: #777;}
.pdf_layout .pdf_left .tab_title::before{content:'';display: inline-block;width: 6.4rem;height: 6.4rem;background: #f8f8f8 url(/contents/13299/pdf_tit_icon.png) center no-repeat;vertical-align: middle;margin-right: 1rem;position: absolute;left: 1rem;top: 1.4rem;border-radius: 5rem;}
.pdf_layout {display: flex;gap: 30px; margin-top: 40px;}
.pdf_layout .pdf_left {flex: 3;}
.pdf_layout .pdf_right {flex: 7;}
.pdf_layout .pdf_tab_group { display: flex; flex-direction: column;  gap: 25px;}
.pdf_layout .pdf_tab {display: flex;flex-wrap: wrap;gap: 0.6rem 2%;}
.pdf_layout .pdf_tab li{width: 49%;display: flex;align-content: center;}
.pdf_layout .pdf_tab li:last-child{border:none;}
.pdf_layout .pdf_tab li a {display: block;padding: 1.2rem 2.5rem 1.2rem 1.4rem;background: #f8f8f8;color: #333;transition: 0.15s;cursor: pointer;font-size: 1.5rem;position: relative;word-break: keep-all;width: 100%;}
.pdf_layout .pdf_tab li a::after{content:'';width: 1rem;height: 1.6rem;background: url(/images/sap/common/sp_layout.png) -63px -93px no-repeat;display: block;float: right;margin-top: 0.5rem;position: absolute;right: 1rem;top: 40%;transform: translateY(-50%);}
.pdf_layout .pdf_tab li a:hover {border-color: #1a4ab9;color: #1a4ab9;}
.pdf_layout .pdf_tab li a.ov { background: #1a4ab9; color: #fff; border-color: #1a4ab9;}
.pdf_layout .pdf_viewer_box { border-radius: 10px; background: #fff;}
.pdf_layout .pdf_iframe {width: 100%; min-height: 132rem;}
.pdf_layout .pdf_tab li a.ov::after{filter: brightness(10) contrast(10);}

/*인사말*/
.greeting_box .greeting_top .txt01 { font-size: 2.4rem; font-weight: 700; color: #888; margin-bottom: 2rem;}
.greeting_box .greeting_top .txt01::after { content: ''; height: 1px; width: 30%;  display: inline-block; vertical-align: middle; background-color: #888; margin-left: 2rem;}
.greeting_box .greeting_txt{background-color:#F8F8F8;padding: 6% 5% 9.5% 5%;position:relative;display: flex;flex-wrap: wrap;}
.greeting_box .greeting_txt::after{content:'GLOBAL VISION SUNLIN UNIVERSITY';display:block;width:100%;color:#fff;position: absolute;left: 0;bottom: -3.8rem;font-size: 10rem;overflow: hidden;font-weight: bold;z-index: 0;height: 12rem;line-height: 1;letter-spacing: -0.05em;}
.greeting_box .greeting_txt .left{width:45%;}
.greeting_box .greeting_txt .left p[class^='tit']{ font-size: 3.4rem;}
.greeting_box .greeting_txt p.tit01::before{content:''; display:block; width:3.6rem; height:2.9rem; background:url("/contents/13221/greeting_tit_ico.png") no-repeat; margin-bottom:2rem}
.greeting_box .greeting_txt p.tit02{margin-top:2rem;}
.greeting_box .greeting_txt .left p b{display:block;color: #0C318A;}
.greeting_box .greeting_txt .right{position:absolute;top: -5rem;right:0;z-index: 1;}
.greeting_box .greeting_txt .right img{border-radius:0 5rem 0 0; box-shadow:-10px 10px 20px rgba(0,0,0,0.1)}
.greeting_box .greeting_cont{padding:5% 6rem; }
.greeting_box .greeting_cont p{word-break:keep-all;}

/* 답변달기 */
.tab_article_setting { background-color: #E5E5E5; border-radius: .6rem; padding: 1rem 1.8rem; border: .1rem solid #333; margin: 2rem 0; display: inline-block; }
.article_setting { margin-bottom: 5rem; background-color:#F7F7F7; padding: 3rem; border-radius: .6rem;  }
.article_setting .boardlist{width:100%;}
.article_setting .boardlist th { width: 10rem; text-align: left; padding: 1rem; vertical-align: top;}
.article_setting .boardlist td {width:100%;padding: 1rem; display: inline-flex; align-items: center;}
.article_setting .boardlist td select { margin-right: 1rem; padding: .4rem; border: .1rem solid #ddd; border-radius: .6rem;}
.article_setting .boardlist td label { margin-right: 2rem;}
.article_setting .boardlist td input, .article_setting .boardlist td textarea { vertical-align:middle; border: .1rem solid #ddd; border-radius: .6rem;margin-top:0;}
.article_setting .boardlist td textarea { width:100%;padding: 1rem;margin-top:1rem;}
.article_setting .boardlist td input.js_calendar  { margin: 0 .8rem;}
.article_setting .admin_btn_wrap { display: flex; justify-content: flex-end; margin-top: .5rem;}
.article_setting .admin_btn_wrap .btn { border-radius: .6rem; padding: .5rem 1.5rem; background-color: #6E6E6E; color: #fff; border: 0; margin-right: 1.4rem;}
.article_setting .admin_btn_wrap a#btn_erase { border-radius: .6rem; padding: .5rem 1.5rem; background-color: #6E6E6E; color: #fff; border: 0;}

.dual_box{width:100%;border:.1rem solid #272727;border-radius:.6rem;margin-top:4rem;}
.dual_box .view_title{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;border:0;border-radius:.6rem .6rem 0 0;background-color:#f7f7f7;padding:2rem 4rem;}
.dual_box .view_title .ico_female_xlg{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;}
.dual_box .view_title .ico_female_xlg::before{content:'';display:block;width:5.1rem;height:5.1rem;background:url(/images/module/sp_icon_itid.png) no-repeat -64.9rem -25.4rem;background-size:118rem;}
.dual_box .view_title .title{display:inline-flex;align-items:center;gap:0 2rem;font-size:1.6rem;font-weight:500;}
.dual_box .view_title .btn_flex{margin-left:auto;}
.dual_box .view_box{padding:4rem;margin-top:0;}
.dual_box .view_box.url_area{border:0;padding:0;margin:0;}
.dual_box .view_box.url_area .url_cnt{background-color:transparent;padding:0 4rem 4.5rem;}


@media screen and (max-width: 1280px) {
	.greeting_box .greeting_txt .right{width:50%;}
	.greeting_box .greeting_txt::after{font-size:9.8rem}
	.pdf_layout .pdf_tab li a{height:auto;display: flex;flex: 1;align-items: center;padding: 1.2rem 1rem;}
	.pdf_layout .pdf_tab li a::after{display:none;}
}
