@charset "utf-8";

input::placeholder, textarea::placeholder{color:#91949F;}
#inquiry{border:1px solid #D9DADE}
select:invalid {color: #91949F;}
option[value=""] {color: #26272b; }
select{-webkit-appearance:none; appearance:none;
    background:url('https://stunningw.com/img/arrow.svg') no-repeat  !important; background-position:calc(100% - 16px) center !important; background-size:8px 8px !important}
/********************
** header
*******************/
.topHead {background:#ECECEC;}
.tHTxt1 {background:#9C1229;}
.tHTxt2 {background:#5D0F1C;}
.sitemap {background:#333438;}
.search {background:#B08B62;}
.topheadTxt {color:#666;}
.headerTxtColor {color:#9C1229;}
.headerSubTxtColor {color:#222;}
.headerLinecolor {background:#9C1229;}
.headermenuTit {background:#f7f7f7; border:1px solid #AAAAAA;}
.headerArrowIcon {transform: rotate(-90deg);}
.megaPanel {border:1px solid #AAAAAA;}
.hasMega { position: static; }
.hasMega > .megaPanel{left:0; right:0; top:calc(100% + 0px);background:#fff;border:1px solid #AAA; opacity:0; visibility:hidden; transform: translateY(-14px);transition: opacity .4s ease, transform .4s ease, visibility 0s linear .18s;pointer-events:none;}
.hasMega:hover > .megaPanel,
.hasMega:focus-within > .megaPanel{opacity:1; visibility:visible; transform: translateY(0);transition-delay:0s; pointer-events:auto;}
.megaLinks{ list-style:none; border-right:1px solid #AAAAAA;}
.megaLinks li{ break-inside: avoid;}
.megaLinks li:hover { background:#B0292E;}
.megaLinks li:hover a {color:#fff;text-decoration: underline;}
.megaLinks li:hover a img {filter: invert(1); }
.gnb .hasMega > .megaPanel {z-index: 1000;}
.gnb .hasMega:hover > .megaPanel,
.gnb .hasMega:focus-within > .megaPanel{pointer-events: auto;}
.gnb .hasMega > .megaPanel::before {content: "";position: absolute;left: 0;right: 0;top: -18px;height: 18px;background: transparent;}
.hamburgerHead {background:#5D0F1C;}
body.no-scroll { overflow: hidden; }
.hamburgerBtn { position: fixed; inset: 0; z-index: 9998; pointer-events: none; }
.hamburgerBtn.is-open { pointer-events: auto; }
.hamburgerDim {position: absolute; inset: 0; background: rgba(0,0,0,.5);opacity: 0; transition: opacity .25s ease;}
.hamburgerBtn.is-open .hamburgerDim { opacity: 1; }
.hamburgerPanel{position: absolute; right: 0; top: 0; height: 100%; width: min(86vw, 360px);background: #fff; box-shadow: 2px 0 12px rgba(0,0,0,.18);transform: translateX(100%); transition: transform .25s ease;display: flex; flex-direction: column;}
.hamburgerBtn.is-open .hamburgerPanel { transform: translateX(0); }
.hamburgerHead{ background:#921A2A; color:#fff; position: relative; }
.hamburgerClose{position:absolute; right:8px; top:8px; width:32px; height:32px; border:0; background:transparent; cursor:pointer;}
.hamburgerClose::before, .hamburgerClose::after{content:""; position:absolute; left:8px; right:8px; top:15px; height:2px; background:#fff;}
.hamburgerClose::before{ transform: rotate(45deg); }
.hamburgerClose::after { transform: rotate(-45deg); }
.mNav{ overflow:auto;}
.mDepth1{ list-style:none; margin:0; padding:0; }
.accItem{ border-bottom:1px solid #BFBFBF; }
.accToggle{border:0; cursor:pointer;}
.accToggle::after{content:"+"; position:absolute; right:16px; top:50%; transform: translateY(-50%);}
.accToggle[aria-expanded="true"]{ background:#C51230; color:#fefefe;}
.accToggle[aria-expanded="true"]::after{ content:"−"; }
.mDepth2{ list-style:none; margin:0; background:#F8F8FA; }
.mDepth2 > li > a{display:block; text-decoration:none;}
.mDepth2 > li > a:hover{ background:#FBE7E7; color:#C51230;}
.accItem li {background:#F0F0F0;}
.homeBnt {filter: brightness(0) saturate(100%) invert(1); }
.mDepth2 li{border-bottom:1px solid #BFBFBF;}

.subSelect__list {border:1px solid #EEEEEE;}

/********************
** index
********************/
/* mainBanner */
.mainBanner001 {background-image:url('/img/mainBanner-001.jpg'); background-position:center; background-size:cover;}
.mainBanner002 {background-image:url('/img/mainBanner-002.jpg'); background-position:center; background-size:cover;}
.mainBanner003 {background-image:url('/img/mainBanner-003.jpg'); background-position:center; background-size:cover;}
.mainBanner {position: relative; overflow: hidden;}
.mainBanner .swiper-slide { position: relative; }
.mainBanner .swiper-slide img {object-fit: cover; display:block;}
.swiper-pagination-bullet {border:2px solid #fff; opacity:1;}
.swiper-pagination-bullet-active {background:#fff;}

/* news */

/* notice */
  .noticeTimeTxt {color:#666;}
  
/* gallery */
.galleryBg1 {background-image:url('/img/main-001.jpg'); background-position:center; background-size:cover;}
.galleryBg2 {background-image:url('/img/main-002.jpg'); background-position:center; background-size:cover;}
.galleryBg3 {background-image:url('/img/main-003.jpg'); background-position:center; background-size:cover;}


/********************
** subBanner 
*******************/
.subBannerTit {left:50%; top:50%;transform: translate(-50%, -50%);}
.subBar{margin-top:0;background:#fff;border-bottom:1px solid #EEEEEE;border-top:1px solid #EEEEEE;border-radius:0;}
.subBannerHome {background:#EEEEEE; border:1px solid #EEE;}
.subSelect{position:relative;}
.subSelectBtn{background:transparent; border:0; cursor:pointer; border:1px solid #eee;}
.subSelect__list{position:absolute; left:0; right:0; top:calc(100% + 0px); background:#fff; display:none; z-index:50;}
.subSelect.is-open .subSelect__list{ display:block; }
.subSelect__link{display:block;}
.subSelect__link:hover{ background:#F3F4F6; }
.subSelect__link.is-active{ font-weight:700; }

/********************
** greeting
********************/

/********************
** businessoverview
********************/
/** vision **/
.visionBoxLine {border:1px solid #CCCCCC;}
.visionTxtcolor {color:#C51230;}
/** tatget**/
.tatgetBoxC {background:#C51230;}
.targetBoxLine {border:1px solid #CCCCCC;}
.targetLine {border-bottom:2px solid #C51230;}
.tragetBoxC {background:#EEEEEE;}
.targetCnt1 {background:linear-gradient(to bottom, rgba(176,139,98,.8), rgba(230,198,162,.8)); border:5px solid #fff;left: 0px;}
.targetCnt2 {background:linear-gradient(to bottom, rgba(205,98,86,.8), rgba(232,138,128,.8)); border:5px solid #fff; left:220px;}
.targetCnt3 {background:linear-gradient(to bottom, rgba(197,18,48,.8), rgba(226,95,117,.8)); border:5px solid #fff;}
.targetCnt4 {background:linear-gradient(to bottom, rgba(187,15,24,.8), rgba(220,98,104,.8)); border:5px solid #fff; right:220px;}
.targetCnt5 {background:linear-gradient(to bottom, rgba(98,15,28,.8), rgba(211,100,118,.8)); border:5px solid #fff; right:0px;}
.targetTitC {color:#5D0F1C;}
.targetR {border-radius:8px 8px 0px 0px;}
.targetCntBox {border:1px solid #eee; border-radius:0px 0px 8px 8px; box-shadow: 0 0 8px rgba(0,0,0,.25);}
.targetBoxC {background:linear-gradient(to bottom, rgba(138,103,63,1), rgba(191,139,82,1));}

/********************
** formation
*******************/
.formationTitBox {background:#9C1229;}
.formmationLine1 {border-left:1px solid #EEEEEE;}
.formmationLine2 {border-top:1px solid #EEEEEE;}
.bco_fromarion {background:#5D0F1C;}
.formationBoxLine {border:1px solid #EEE;}
.bco_ftomation2 {background:#EEE;}

/********************
** studentSupport
*******************/
.studenTable {border-top:2px solid #222;}
.studenTable tr td,
.studenTable tr th {border-bottom:1px solid #CCC;}

/********************
** directions
*******************/
.wrap_controllers {display:none;}
.section_address {display:none;}
.root_daum_roughmap {width:100% !important;}
.wrap_map {height:460px !important;}
.mapIconBg {background:#9C1229;}

/********************
** curriculum
*******************/
.curiculumCntBoxLine {border:1px solid #CCCCCC; box-shadow: 0 0 8px rgba(0,0,0,.05);}
.curriBoard{--area-col: 14%;--lv-col: calc((100% - var(--area-col)) / 6);}
.curriTopInner{display:grid;grid-template-columns:calc(var(--area-col) + var(--lv-col)) calc(5 * var(--lv-col));}
.curriBoard{position: relative;overflow-x: auto; -webkit-overflow-scrolling: touch;--area-col: 220px; --lv-col: 180px; }
.curriTable{table-layout: fixed;border-collapse: collapse;min-width: calc(var(--area-col) + 6 * var(--lv-col));width: max(100%, calc(var(--area-col) + 6 * var(--lv-col)));}
.curriTopInner{display: grid;grid-template-columns: var(--area-col) repeat(6, var(--lv-col)); align-items: stretch;min-width: calc(var(--area-col) + 6 * var(--lv-col));}
.curriTopInner .curriTopR:first-child{grid-column: 1 / span 2;}
.curriTopInner .curriTopR:last-child{grid-column: 3 / span 5;}
.curriTable td, .curriTable th{word-break: keep-all;overflow-wrap: anywhere;}
.mdBoard{position: relative;overflow-x: auto; -webkit-overflow-scrolling: touch;}
.mdTable{table-layout: fixed;border-collapse: collapse;
  --md-col1: 220px;  /* MD명칭 */
  --md-col2: 140px;  /* MD구분 */
  --md-col3: 120px;  /* 구성학점 */
  --md-col4: 160px;  /* 교과목 번호 */
  --md-col5: 420px;  /* 교과목명 (길어 넉넉히) */
  --md-col6: 80px;   /* 학점 */
  min-width: calc(var(--md-col1) + var(--md-col2) + var(--md-col3)
                + var(--md-col4) + var(--md-col5) + var(--md-col6));
  width: max(100%, calc(var(--md-col1) + var(--md-col2) + var(--md-col3)
                + var(--md-col4) + var(--md-col5) + var(--md-col6)));
}
.mdTable th, .mdTable td{word-break: keep-all;overflow-wrap: anywhere;}
/* MD 필터 버튼: 활성(선택) 상태 */
#curriculumFilter button.is-selected {
    background-color: #C51230; /* 배경 */
    color: #FFFFFF;            /* 폰트 컬러 */
    font-weight: 700;          /* 두께 */
    border-color: #C51230;     /* 라인 버튼일 때 경계도 동일 색 */
  }
  
  /* 접근성: 키보드 포커스 */
  #curriculumFilter button:focus-visible {
    outline: 2px solid #C51230;
    outline-offset: 2px;
  }
.curriculumBLine {border-bottom:1px solid #9C1229;}
.mdTable td{border:1px solid #CCCCCC;}
.currRLine {border-right:1px solid #FFFFFF;}
.curriculumTabl td{border:1px solid #CCCCCC;}


/********************
** courseOfiierings
*******************/
#yearFilter > button.is-selected {background: #C51230 !important;color: #FFFFFF !important;font-weight: 700 !important;border-color: #C51230 !important;}
#yearFilter > button.is-selected:hover,
#yearFilter > button.is-selected:focus-visible {background: #B0102B !important;border-color: #B0102B !important;outline: 0;}
#yearFilter > button[disabled],
#yearFilter > button[aria-disabled="true"] {opacity: 0.45;cursor: not-allowed;}
.coBoard{position: relative;overflow-x: auto; -webkit-overflow-scrolling: touch;}
.courseOfferingsTable{table-layout: fixed;border-collapse: collapse;
  --co-col1: 140px;  /* 학기 */
  --co-col2: 440px;  /* 교과목 명 (길어서 넉넉히) */
  --co-col3: 160px;  /* 교과목 번호 */
  --co-col4: 100px;  /* 학점 */
  --co-col5: 160px;  /* 이수구분 */
  min-width: calc(var(--co-col1) + var(--co-col2) + var(--co-col3) + var(--co-col4) + var(--co-col5));
  width: max(100%, calc(var(--co-col1) + var(--co-col2) + var(--co-col3) + var(--co-col4) + var(--co-col5)));
}
.courseOfferingsTable :is(th,td):nth-child(1){ width: var(--co-col1); }
.courseOfferingsTable :is(th,td):nth-child(2){ width: var(--co-col2); }
.courseOfferingsTable :is(th,td):nth-child(3){ width: var(--co-col3); }
.courseOfferingsTable :is(th,td):nth-child(4){ width: var(--co-col4); }
.courseOfferingsTable :is(th,td):nth-child(5){ width: var(--co-col5); }
.courseOfferingsTable th,
.courseOfferingsTable td{word-break: keep-all;overflow-wrap: anywhere;}
.courseOfferingsTable td:nth-child(2){white-space: normal; }


/********************
** oprtate
*******************/
.oprtateCntBox {background:linear-gradient(to bottom, rgba(238,238,238,1), rgba(255,255,255,1));}
.operateBox {border-radius:8px 8px 0px 0px;}
.operateBox2 {border-radius:0px 0px 8px 8px;}
:root{--arrow-size: 22px;--arrow-stroke: 2.2;--arrow-color: #B08B62;}
.ico-arrow path{fill:none;stroke: var(--arrow-color);stroke-width: var(--arrow-stroke);stroke-linecap: round;stroke-linejoin: round;vector-effect: non-scaling-stroke;}
.ico-arrow.--left  { transform: scaleX(-1); }
.ico-arrow.--up    { transform: rotate(-90deg); }
.ico-arrow.--down  { transform: rotate(90deg); }

/********************
** core
*******************/
.coreBox {box-shadow: 0 0 8px rgba(0,0,0,.05);}

/********************
** program
*******************/
.programBox {background:linear-gradient(to bottom, rgba(255,237,237,1), rgba(255,255,255,1));}
.programBox2 {background:linear-gradient(to bottom, rgba(255,117,117,1), rgba(187,15,24,1));}

/********************
** bicaf
*******************/
.bicafTable tbody{border-top:2px solid #222;}
.bicafTable td{border-right:none;}

/********************
** bicafEntryView
*******************/
.entryHeader {border-top:2px solid #222; border-bottom:1px solid #222;}
.bicafEntyLine {border-right:1px solid #AAA; border-bottom:1px solid #AAA;}
.bicafEntyLine2 {border-bottom:1px solid #AAA;}
.entryNav {border-top:1px solid #AAA; border-bottom:1px solid #AAA;}
.prevnextLine {border-left:1px solid #AAA;}
.btn {border:1px solid #AAA;}

/********************
** bicafEntryWrite
*******************/
.writeBox {border:1px solid #D2D2D2;}

/********************
** bicaf2024
*******************/
.swiper-button-prev {background-color: rgba(228, 2, 45, 0.5);}
.swiper-button-next {background-color: rgba(228, 2, 45, 0.5);}
.swiper-button-next, .swiper-button-prev {color:#FFF !important;}
.swiper-button-prev, .swiper-rtl .swiper-button-next {left:0 !important;}
.swiper-button-next, .swiper-rtl .swiper-button-prev {right:0 !important;}
:root {--swiper-navigation-size: 20px !important;}
/********************
** bicaf2023
*******************/
.bicaf2023Cnt1 {background-image:url('/img/bicaf2023-work-001.jpg'); background-position:right; background-size:cover;}
.bicaf2023Cnt2 {background-image:url('/img/bicaf2023-work-002.jpg'); background-position:right; background-size:cover;}
.awardGrid {display: grid;grid-template-columns: repeat(3, 1fr);}


/********************
** noticeList
********************/
.noticeListTable thead{border-top:2px solid #777;}
.noticeListTable td {border-left:none; border-right:none;}
/********************
** sitemap
*******************/
.sitemapTxtLine {display: inline-block; padding-bottom: 4px; background-image: linear-gradient(to right,#C51230 0, #C51230 30%,#555555 30%, #555555 100%);background-size: 100% 2px;background-repeat: no-repeat;background-position: left bottom;}


/********************
** footer
********************/
.tFoot {background:#4D5361;}
.footerTxt {color:#555;}

/********************
** login
********************/
.loginPanel {background: #FAFAFA; border: 1px solid #DDDDDD;}
.loginGrid {  display: grid; grid-template-columns: 1fr var(--login-btn-w, 140px);column-gap: 0;row-gap: 0;align-items: stretch; }
.loginInput {border: 1px solid #D2D2D2;background: #fff;outline: none;box-sizing: border-box;}
.loginInput .loginInput {border-top: 0;}
.loginBtn {  grid-column: 2 / 3;grid-row: 1 / 3;border: 0;background: #9C1229;color: #fff;cursor: pointer;}
input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#111;}