@charset "utf-8";

.container .wrapper { padding: 40px 0; box-sizing: border-box;  }


.titleArea { width: 100%; position: relative; background: #7F3C8D; background: linear-gradient(149deg,rgba(127, 60, 141, 1) 0%, rgba(77, 60, 124, 1) 100%); margin-bottom: 20px; padding: 100px 0 80px; }
.titleArea::before { content: ''; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 191px; background: url('../img/subTopBg.png') no-repeat right bottom ; background-size: 50%; opacity: 0.8; }
.titleArea .wrapper { padding: 40px 0; }
.titleArea h1 { font-size: 2em; font-weight: 500; height: 40px; line-height: 40px; color: #fff; font-family: 'yg-jalnan'; text-align: center; }

.titleArea p { display: inline-block; font-size: 0.925em; color: #333; margin: 15px auto 5px; position: relative; padding: 3px 10px; background-color: #fff; border-radius: 100px; text-align: center; }

.location { margin-bottom: 25px; text-align: center; }
.location li { display: inline-block; font-size: 0.8em; line-height: 17px;  }
.location li::after { content: '/'; display: inline-block; margin: 0 10px 0 12px; color: #bd98c5; }
.location li a { display: inline-block; line-height: 25px; color: #bd98c5; }
.location li.here a { font-weight: 500; color: #fff; }
.location li.here::after {display: none; }



.subTopGnb { position: absolute; left: 0; bottom: 0; background: rgba(0,0,0,0.6); width: 100%;  }
.subTopGnb ul { display: flex; width: 100%; max-width: 1400px; margin: 0 auto;   }
.subTopGnb li { width: 100%; box-sizing: border-box; }
.subTopGnb li a { display: block; width: 100%; padding: 15px 10px; text-align: center; color: #fff;  font-family: 'yg-jalnan'; font-size: 1.25em; box-sizing: border-box; }
.subTopGnb li.active  { background: #fff;  }
.subTopGnb li.active a { color: #4d3c7c;  }

.colorYellow { color: #ffe400; }
.colorBlue { color: #b33258; }

/* ----------------------------------- 타이틀, 리스트, 테이블, 탭메뉴 등 ----------------------------------- */

.titleBar { font-size: 1.25em; font-weight: 500; color: #275b8a; padding-top: 12px; background: url('../img/titleBar.png') no-repeat left top; }
h2.title { font-size: 1.3em; font-family: 'yg-jalnan';  padding: 0px 0 0 30px; color: #4d3c7c; margin: 40px 0 10px; position: relative; }
h2.title::before { content: ''; display: block; width: 24px; height: 24px; background: url('../img/h2Title.png'); background-repeat: no-repeat; position: absolute; left: 0; top: 1px; }
h2.title:first-child { margin-top: 0;}
h3.title { font-size: 1em; font-weight: 500; padding-left: 15px; background: url('../img/h3title.gif') no-repeat left center; margin: 15px 0 3px; }
h4.title { font-size: 0.875em; font-weight: 500; margin: 10px 0 5px; color:#009c93; }

p.conText { font-size: 0.875em; margin: 5px 0; }
.listType01 > li { font-size: 0.875em; padding-left: 15px; margin-top: 5px; position: relative; word-break: keep-all;  }
.listType01 > li:first-child { margin-top: 0; }
.listType01 > li::before { content: '·'; font-weight: 600; font-size: 1.25em; color: #5b89b3; line-height: 1.1; position: absolute; left: 0; top:0;  }
.listType01 h4.title { font-size: 1em; }
.listType01 .listType02 > li { font-size: 1em;}


.listType02 > li { font-size: 0.875em; padding-left: 10px; margin-top: 2px; position: relative; word-break: keep-all;  }
.listType02 > li:first-child { margin-top: 0; }
.listType02 > li::before { content: '-'; position: absolute; left: 0; top:0;  }


.tabGnb { display: flex; flex-wrap: wrap; width: 100%; margin-bottom: 33px; }
.tabGnb li { width: 24%; padding-right: 1%; margin-bottom: 7px;  }
.tabGnb li a { background: #efefef; display: flex; height: 50px; align-items: center; justify-content: center; color: #686868; box-sizing: border-box;   }
.tabGnb li.on a { background: #fff; border: 3px solid #009c93; color: #009c93; font-weight: 500;}

/* 보도자료 탭메뉴 */
.tabGnb2 { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; margin-bottom: 40px; }
.tabGnb2 li { width: 12.5%; }
.tabGnb2 li a { background: #efefef; border-top: 1px solid #ccc; border-left: 1px solid #ccc;border-bottom: 1px solid #ccc; display:flex; height: 40px; align-items: center; justify-content: center; color: #686868; box-sizing: border-box; font-size: 0.875em; text-align: center; line-height: 1; }
.tabGnb2 li:last-child a { border-right: 1px solid #ccc;}
.tabGnb2 li.on a { background: #fff; border-top: 3px solid #009c93; border-bottom: 0; color: #009c93; font-weight: 500;}


/* TABLE BOARD LIST */
.tableType01 { width: 100%; border-top: 3px solid #3c668d; margin-top: 10px;}
.tableType01 thead th { padding: 5px 3px; border-bottom: 1px solid #3c668d; vertical-align: middle; font-weight: 500; font-size: 0.875em; background: #efefef; }
.tableType01 td { text-align: center; font-size: 0.875em; padding: 5px 3px; vertical-align: middle; border-bottom: 1px solid #ccc; }


/* -------------------------------------- 각 페이지 -------------------------------------- */


/* 인사말 */ 
#greeting { display: flex; justify-content: center; flex-wrap: wrap; }
#greetingPic { width: 660px; }
#greetingPic img { display: block; width: 100%; }

#greetingPic a { display: block; background: #fff; box-sizing: border-box; padding: 7px 10px; font-size: 0.9em; text-align: center;  }
#greetingPic a span { display: block;  background: #99173e; color: #fff; padding: 4px 7px 3px; word-break: keep-all; width: 100px; margin: 4px auto 0; }

#greetingTXT { width: 700px; box-sizing: border-box; padding-left: 40px; margin: 20px 0; }
#greetingTXT h2 { font-size: 1.25em; font-weight: 500; line-height: 1.5;}
#greetingTXT h2 strong { font-weight: 600; color: #009c93; }
#greetingTXT p { margin-top: 40px; font-size: 0.925em; line-height: 1.5; word-break: keep-all; text-align: justify;}
#greetingTXT span { display: block; margin-top: 35px; font-size: 1em; text-align: right; }
#greetingTXT span strong { font-weight: 600; font-size: 1.143em; margin-left: 5px;}


/* 행사개요 */
#summary > div { display: flex; flex-wrap: wrap; gap: 20px; justify-content: space-between; } 
#summary figure { width: 30%; margin: 0 auto; } 
#summary figure img { width: 100%; height: auto; border-radius: 8px; box-shadow: 0 2px 6px rgba(0,0,0,0.1); } 
#summary div > div { box-sizing: border-box; width: calc(60% - 30px); } 
#summary div > div.info { width: 100%; }
#summary p { margin-bottom: 30px; text-align: justify; } 
#summary .info { display: flex; flex-direction: column; gap: 20px; margin-top: 20px; } 
#summary dl { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: 10px; gap: 10px; } 
#summary dl dt { background-color: #7f3c8d; color: #fff; padding: 6px 15px; border-radius: 20px; font-weight: 600; font-size: 0.95em; width: 100px; text-align: center; flex-shrink: 0; } 
#summary dl dd { flex: 1 1 auto; color: #333; line-height: 1.6; font-size: 1em; } 
#summary dl dd strong { font-weight: 500; color: #333; } 
#summary dl dd img { vertical-align: middle; margin-right: 10px; }


/* 행사시간표 */

#timeTable { width: 100%; }
#timeTable * { box-sizing:border-box; }

#timeTable thead th { height:40px; padding: 0px 5px 7px; font-weight: 500; color:#333; text-align: center; vertical-align: middle; border-bottom: 3px solid #99173e; }
#timeTable tbody tr { border-bottom: 1px solid #ccc; }
#timeTable tbody th { height:40px; background:#fff; font-weight:normal;color:#333; text-align: center; padding: 10px 3px 3px;  vertical-align: middle; word-break: break-all; white-space: nowrap;  }
#timeTable tr td:nth-child(2) { text-align: center; }
#timeTable td { height:40px; background:#fff;  color:#333; text-align:left; padding: 10px 3px 3px; vertical-align: middle; word-break: keep-all; }


/* 참가안내 */
#fairInfo > p { box-sizing: border-box; line-height: 1.5; word-break: keep-all;  }
.fairDate { display: inline-block; position: relative; font-weight: 600;  font-size: 1.125em; }
.fairDate::before { content: ''; width: 100%; position: absolute; display: block; left: -5px; padding-right: 10px; bottom: 0px; height: 13px; background-color: #fff684; border-radius: 100px; box-sizing: content-box; z-index: -1;}
.fairDate02 { color: #ef0000; font-weight: 500; }

#fairInfo .caution { color: #ef0000; font-size: 0.8em; word-break: keep-all; position: relative; text-align: justify; padding-left: 20px; margin: 0 0 5px; display: block; margin-top: 5px; }
#fairInfo .caution::before { content: '!'; display: block; position: absolute; left: 0; top: 1px; background: #ef0000; color: #fff; border-radius: 100px; text-align: center; width: 14px; height: 14px; font-size: 10px;  font-weight: 500; }


.preReg dl { margin-bottom: 20px; }
.preReg dl:last-child { margin-bottom: 0px; }
.preReg dt { margin-bottom: 7px; font-weight: 600; position: relative; display: inline-block; font-size: 1.125em; }
.preReg dt::before { content: ''; width: 100%; position: absolute; display: block; left: -5px; padding-right: 10px; bottom: 0px; height: 13px; background-color: #fff684; border-radius: 100px; box-sizing: content-box; z-index: -1;}
.preReg dd { word-break: keep-all; }
.preReg .email { color: #999; text-decoration: underline; vertical-align: middle; }
.preReg .email i { font-size: 0.9em; display: inline-block; margin-right: 5px; }

.step { display: grid; gap: 25px; grid-template-columns: 1fr 1fr 1fr 1fr; }
.step li { box-sizing: border-box; text-align: center; word-break: keep-all; padding: 5px; word-break: keep-all; }
.step li div { padding: 20px 15px; height: 100%; background: #f5e7f5; box-sizing: border-box; position: relative; border-radius: 8px; }
.step li div::before { content: ''; display: block; position: absolute; width: 15px; height: 24px; background: url('../img/mvArrow.png') no-repeat center; left: -23px; top: 50%; margin-top: -12px; }
.step li:first-child div::before { display: none;}
.step li div > span { display: block; font-weight: 600; font-size: 1.5em; color: #7f3b8c; letter-spacing: 1; margin-bottom: 5px; font-family: 'yg-jalnan'; }
.step li p span { font-size: 0.875em; display: block;  }



/* 오시는 길 */
#map { width: 100%; position: relative; padding-bottom: 60%; }
#map iframe { position: absolute; width: 100%; left: 0; top: 0; height: 100%;  }
#address { margin-top: 15px; }
#address i { color: #b33258; display: inline-block; margin-right: 5px; font-weight: 300; }



/* 설명회 */

.formTopBox { display: flex; justify-content: space-between; margin: 0 0 40px; }
.formTopBox article { width: 48%; }
.formTopBox article table { width: 100%; box-sizing: border-box; border-bottom: 1px solid #ccc; font-size: 0.875em; }
.formTopBox article table thead th { height:30px; padding: 0px 5px 0px; font-weight: 500; color:#333; text-align: center; vertical-align: middle; border-bottom: 3px solid #99173e; vertical-align: middle;  }
.formTopBox article table tbody th { text-align: center; padding: 8x 3px 3px; vertical-align: middle; border-bottom: 1px solid #ccc; }
.formTopBox article table tbody td { text-align: center; padding: 8px 3px 3px; vertical-align: middle; }
.formTopBox article .caution { color: #ef0000; font-size: 0.9em; word-break: keep-all; position: relative; text-align: justify; padding-left: 20px; margin: 5px 0 0; }
.formTopBox article .caution::before { content: '!'; display: block; position: absolute; left: 0; top: 1px; background: #ef0000; color: #fff; border-radius: 100px; text-align: center; width: 15px; height: 15px; font-size: 12px;  }
.formTopBox article ul li { padding-left: 10px; position: relative; font-size: 0.95em; line-height: 1.2; margin: 0 0 10px; }
.formTopBox article ul li::before { content: '-'; position: absolute; left: 0; top: 2px; }


/* 개인정보 */
#privacyPolicy { width: 100%; box-sizing: border-box; padding: 15px; background: #f2f2f2;  }
#privacyPolicy h4 { font-weight: 600; margin: 30px 0 20px;}
#privacyPolicy table { width: 100%; margin: 30px 0; background: #fff; }
#privacyPolicy table * { border: 0; padding: 5px 10px; box-sizing: border-box; text-align: center;}
#privacyPolicy table th { border-bottom: 1px solid #ccc; }

.checkbox { display: block; margin: 5px 0 0; text-align: right; font-size: 0.925em; }
.checkbox input { display: inline-block; margin: 2px 3px 0 0; vertical-align: top; }

/* 이용약관 */
#terms { width: 100%; box-sizing: border-box; padding: 15px; background: #f2f2f2; border: 1px solid #ccc; height: 500px; overflow-y: scroll; font-size: 0.75em; line-height: 1.6; color: #666; resize: none;  }


/* 이메일 수집 거부 */
#emailNo { width: 100%; box-sizing: border-box; padding: 15px; background: #f2f2f2; border: 1px solid #ccc; overflow-y: scroll;  line-height: 1.6; color: #666;  }










/* 만족도조사 */
.surveyUserInfo { display: flex; flex-wrap: wrap;  padding: 15px 20px;  background: #e5e1f2;   margin-bottom: 40px; justify-content: space-between; }
.surveyUserInfo dl { width: calc(50% - 100px); display: flex; font-size: 1.125em; }
.surveyUserInfo dl dt { width: 100px; font-weight: 500; line-height: 30px; }
.surveyUserInfo dl dd { width: calc(100% - 100px); display: flex;  line-height: 30px; }
.surveyUserInfo dl dd input[type=text] { width: calc(100% - 40px); height: 30px; display: block; }
.surveyUserInfo dl dd label { display: inline-block; vertical-align: middle;  line-height: 30px; }
.surveyUserInfo div { width: 200px; }
.surveyUserInfo div input[type=radio] { display: inline-block; width: 18px; height: 18px; margin: 5px 5px 0 0; vertical-align: middle; }
.surveyUserInfo div select { width: 50px; height: 30px; display: inline-block; vertical-align: middle; margin: 0 20px 0 5px; }


.survey { width: 100%; max-width: 1000px; margin: 0 auto; text-align: center; margin-top: 30px; box-sizing: border-box; }

p.textBox { font-size: 0.9em; text-align: justify; margin: 0 auto 30px; }

/* .survey ol { list-style: auto; padding-left: 20px;   }
.survey li { margin: 0 0 50px; text-align: left; }
.survey li::marker { font-size: 1.125em; font-weight: 500; }
.survey li:nth-child(5) { margin-left: 18px; }

.survey li:nth-child(5)::marker { content: '4-1. '; }
.survey li:nth-child(6)::marker { content: '5. '; }
.survey li:nth-child(7)::marker { content: '6. '; }
.survey li:nth-child(8) { margin-left: -20px; }
.survey li:nth-child(8)::marker { content: ''; } */


.survey li p { font-size: 1.125em; font-weight: 500; }
.survey li p span { font-weight: 400; }
.survey li div { margin: 10px auto 0; }
.survey li div label { position: relative; margin-right: 20px; display: inline-block; vertical-align: middle; cursor: pointer;  }
.survey li div span { display: inline-block; position: absolute; left: 0px; top: 2px; width: 20px; height: 16px; line-height: 16px; text-align: center; font-size: 0.8em; }
/* .survey li div input { display: inline-block; width: 20px; height: 20px; vertical-align: middle; margin: -5px 5px 0 0; -webkit-appearance: none; -moz-appearance: none; border-radius: 100px; border: 1px solid #000;  } */


.survey div input:checked { background-color: #ba2454; border-color: #ba2454; }
.survey div input:checked + span { color: #fff; }

.survey div textarea { border: 1px solid #ccc; padding: 20px; box-sizing: border-box; width: 100%; height: 100px; }

.surveyBtn {  background-color: #7f3c8d; color: #fff; padding: 12px 20px; border: none; border-radius: 4px; font-size: 1rem; cursor: pointer; width: 100%;  }


.surveyList li { margin-bottom:25px; text-align: left; }
.surveyBox { margin:10px 0; padding:20px; border:1px solid #ddd; border-radius:8px; background:#fafafa; }
.surveyBox h3 { font-size:1.05em; margin-bottom:10px; color:#4d3c7c; font-weight:600; }
.surveyOptions { display:flex; flex-wrap:wrap; gap:15px; }
.surveyBox label { display:flex; align-items:center; font-size:1em; color:#333; cursor:pointer; }
.surveyBox input[type="radio"] { margin: -1px 4px 0 0; display: inline-block; vertical-align: middle; width: 18px; height: 18px;  border: 1px solid #aaa; }
.surveyBox textarea { width: 100%; height: 70px; border: 1px solid #aaa; box-sizing: border-box; }

.surveyBox dl { display:flex; flex-wrap:wrap; gap:15px; margin: 0 0 15px; }
.surveyBox dt { font-weight: 600; width: 300px; }
.surveyBox dd { display: flex; flex-wrap:wrap; gap:10px; }
.surveyBox dd label { margin-right: 20px; }
.surveyBox dd input[type="radio"] { margin: -1px 8px 0 0; }
.surveyBox dd input[type="checkbox"] { margin: -1px 8px 0 0; width: 18px; height: 18px;  border: 1px solid #aaa; }
.surveyBox dd  input[type="text"] { margin-left: 5px; padding: 3px 6px; border: 1px solid #ccc; border-radius: 4px; }



/* 부대행사 */
#event { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 20px; margin: 40px 0; list-style: none; padding: 0; }
#event li { border: 1px solid #ddd; border-radius: 8px; text-align: center; transition: all 0.3s; background: #fff; box-shadow: 0 0 5px rgba(0,0,0,0.05); }
#event li:hover {   border-color: #7f3c8d; box-shadow: 0 0 10px rgba(127, 60, 141, 0.2); }
#event li a {   display: block; padding: 20px; color: #333; text-decoration: none; height: 100%; }
#event li h3 {   margin: 15px 0 10px; font-size: 1.1em; font-weight: 600; color: #7f3c8d; }
#event li p {  font-size: 0.9em; color: #666; margin: 0; }
#event li figure {   margin: 0 auto 10px; font-size: 2.5em; color: #7f3c8d; }

.event ul {
  list-style: none;
  padding: 0;
  margin: 20px 0;
}

.event ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
  font-size: 1.125em;
  line-height: 1.6;
  color: #333;
}

.event ul li::before {
 content: '•';
  position: absolute;
  left: 0;
  top: -4px;
  color: #7F3C8D;
  font-size: 1.2em;
  line-height: 1.6;
}


/* 부대행사 상세페이지 */
.event h2 { width: 100%; }


/*부대행사 운영관 */
#event3 { display: flex; flex-wrap: wrap; justify-content: space-between; }
#event3 h2 { width: 100%; }
#event3 figure { width: 40%; }
#event3 figure img { display: block; width: 100%; }
#event3 ul { width: 55%; }


/*부대행사 채용설명회 */
.scheduleTable { width:100%; max-width:600px; margin:20px 0; border-collapse:collapse; font-size:1em; text-align:center; }
.scheduleTable th { background:#7f3c8d; color:#fff; padding:12px; font-weight:600; }
.scheduleTable td { border:1px solid #ddd; padding:12px; color:#333; }
.scheduleTable tbody tr:nth-child(even) { background:rgba(127,60,141,0.05); }
.scheduleTable tbody tr:hover { background:#fff684; transition:0.3s; }

/* 취업 도움관 */
.event .desc { margin: 20px 0; font-size: 1rem; line-height: 1.6; word-break: keep-all; color: #333; } 
.event .subtitle { margin: 30px 0 15px; font-size: 1.2rem; font-weight: 600; color: #7f3c8c; } 
.event .services { margin: 0; } 
.event .services dt { font-weight: 600; margin-top: 15px; font-size: 1rem; color: #4d3c7c; } 
.event .services dd { margin: 5px 0 15px 20px; font-size: 0.95rem; color: #555; line-height: 1.5; }



/* 부대행사 표 */
.schedule { display: grid; gap: 0px; width: 100%; margin: 0 auto; text-align: center; border-top: 3px solid #b33258; border-bottom: 1px solid #ccc; }
.schedule1 { grid-template-columns: 1fr 1fr; }
.schedule2 { grid-template-columns: 1fr 1fr 1fr; }
.scheduleHeader { display: contents; font-weight: 500; color: #b33258; }
.scheduleRow { display: contents; border-bottom: 1px solid #ccc; }
.schedule dt, .schedule dd { padding: 10px; border: 1px solid #ccc; border-left: 0; border-bottom: 0;  box-sizing: border-box; }
.scheduleRow  dt { background-color: #f0f0f0; padding: 10px;  box-sizing: border-box;  }
.schedule dl dd:last-child { border-right: 0;  }




/* 취업성공반 */
.jobSurveyForm { max-width: 800px; width: 100%; padding: 50px 30px;  margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; }

.jobSurveyForm .intro { margin: 0 auto 60px; padding: 0 0 30px; border-bottom: 1px solid #ccc; }
.jobSurveyForm .desc { font-size: 1rem; line-height: 1.75; color: #333; word-break: keep-all; margin: 0 0 16px; }
.jobSurveyForm .desc strong { color: #7f3c8d; font-weight: 700; }
.jobSurveyForm .callout { border: 1px solid #e7d6ee; background: #f7f0fa; padding: 14px 16px; border-radius: 10px; line-height: 1.6; color: #4d3c7c; margin: 18px 0 22px; }
.jobSurveyForm .callout strong { color: #7f3c8d; font-weight: 700; margin-right: 6px; }
.jobSurveyForm .callout em { font-style: normal; color: #953f95; font-weight: 700; }
.jobSurveyForm .subTitle { font-size: 1.2rem; font-weight: 700; color: #7f3c8d; margin: 8px 0 10px; }
.jobSurveyForm .bulletList { list-style: none; margin: 0 0 10px; padding: 0; }
.jobSurveyForm .bulletList li { position: relative; padding-left: 18px; margin: 6px 0; font-size: 1rem; line-height: 1.7; color: #333; }
.jobSurveyForm .bulletList li::before { content: '•'; position: absolute; left: 0; top: 0; color: #7f3c8d; font-size: 1.2em; line-height: 1.2; }
.jobSurveyForm .bulletList strong { color: #4d3c7c; font-weight: 700; margin-right: 6px; }
.jobSurveyForm .note { margin: 16px 0 0; font-size: 0.95rem; color: #555; line-height: 1.7; word-break: keep-all; }
.jobSurveyForm img { display: block; width: 100%; margin: 20px auto 0; }

.jobSurveyForm form { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between;  }
.jobSurveyForm dl { width: 49%; margin-bottom: 1.5em; }
.jobSurveyForm dl.full { width: 100%; }
.jobSurveyForm dt { font-weight: 600; margin-bottom: 5px; color: #4d3c7c; font-size: 1.25em; }
.jobSurveyForm dd { margin: 0 0 0.5em 0; font-size: 1.125em; }
.jobSurveyForm input[type="text"], .jobSurveyForm input[type="tel"], .jobSurveyForm input[type="email"], .jobSurveyForm textarea { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; }
.jobSurveyForm textarea { min-height: 100px; resize: vertical; }
.jobSurveyForm label { display: inline-block; margin-bottom: 0.25em; margin-right: 1em; }
.jobSurveyForm input[type="radio"], .jobSurveyForm input[type="checkbox"] { margin-right: 3px; width: 15px; height: 15px; vertical-align: middle;  }
.jobSurveyForm .surveyEx { font-size: 0.85rem; color: #777; margin-bottom: 0.3em; }
.jobSurveyForm .surveyAgr { width: 100%; background: #f9f9f9; padding: 10px; border: 1px solid #ddd; margin-top: 20px; border-left: 4px solid #7f3c8d; font-size: 0.875em; }
.jobSurveyForm .surveyInfo dt { font-weight: 600; margin-top: 0.5em; }
.jobSurveyForm .agreeBox { margin-top: 1em; }
.jobSurveyForm .surveyBtn { background-color: #7f3c8d; color: #fff; padding: 12px 20px; border: none; border-radius: 4px; font-size: 1rem; cursor: pointer; width: 100%; }
.jobSurveyForm .surveyBtn:hover { background-color: #4d3c7c; }



/* 내 참여기업 */
.myInfoForm { max-width: 800px; width: 100%; padding: 50px 30px;  margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; }
.myInfoForm form { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between;  }
.myInfoForm dl { width: 100%; margin-bottom: 1.5em; }
.myInfoForm dt { font-weight: 600; margin-bottom: 5px; color: #4d3c7c; font-size: 1.25em; }
.myInfoForm dd { margin: 0 0 0.5em 0; font-size: 1.125em; }
.myInfoForm input[type="text"], .myInfoForm input[type="tel"], .myInfoForm input[type="password"] { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; }
.myInfoForm label { display: inline-block; margin-bottom: 0.25em; margin-right: 1em; }
.myInfoForm .myInfoBtn { background-color: #7f3c8d; color: #fff; padding: 12px 20px; border: none; border-radius: 4px; font-size: 1rem; cursor: pointer; width: 100%; }
.myInfoForm .myInfoBtn:hover { background-color: #4d3c7c; }



/* 양식 다운로드 버튼 */
.downloadBtns {margin: 10px 0 0; }
.downloadBtns a { display: inline-block; background-color: #fff; color: #7f3c8d; border: 1px solid #7f3c8d; padding: 10px 30px 10px 25px; border-radius: 4px; font-size: 1rem; cursor: pointer; margin-right: 10px; }
.downloadBtns a:hover { background-color: #f4eef6; }
.downloadBtns a::before { content: ''; display: inline-block; width: 27px; height: 20px; background-size: contain; background-position: center top; vertical-align: middle; background-repeat: no-repeat; }
.downloadBtns a:first-child::before { background-image: url('../img/hwpIcon.png'); }
.downloadBtns a:last-child::before { background-image: url('../img/wordIcon.png'); }



/* 배치도 준비중 */
.comingSoon { display:flex; align-items:center; justify-content:center; min-height:calc(100vh - 200px); padding:60px 20px; box-sizing:border-box; background:linear-gradient(149deg,rgba(127,60,141,.05) 0%, rgba(77,60,124,.05) 100%); }
.comingSoon .csWrap { text-align:center; max-width:900px; }
.comingSoon .csTitle { margin:0 0 10px; font-weight:800; letter-spacing:-0.5px; color:#4d3c7c; font-size:clamp(2.4rem,5vw,4rem); }
.comingSoon .csDesc { margin:0 0 24px; color:#333; line-height:1.8; font-size:clamp(1rem,2.2vw,1.375rem); }
.comingSoon .csBtn { display:inline-block; padding:14px 26px; border-radius:999px; background:#7f3c8d; color:#fff; text-decoration:none; font-weight:700; box-shadow:0 6px 16px rgba(127,60,141,.25); transition:transform .12s ease, box-shadow .12s ease; }
.comingSoon .csBtn:hover { transform:translateY(-1px); box-shadow:0 10px 20px rgba(127,60,141,.3); }



/* FAQ */
.faq{margin:30px auto;}
.faq-item{ border: 1px solid #e7d6ee; background: #f7f0fa; border-radius:8px; margin-bottom:10px; overflow:hidden; }
.faq-question{ width:100%; padding:15px 20px; background:none; border:none; outline:none; cursor:pointer; font-size:1.125em; font-weight:600; color:#5c2d91; position: relative;  box-sizing: border-box; }
.faq-answer{display:none; background: #fff; padding:15px 20px; font-size:1em; color:#333; }
.faq-item.active .faq-answer{display:block}
.faq-question::after{content:"＋"; display: inline-block; position: absolute; right: 20px; top: 10px; font-size:1.6em; color:#e7d6ee;transition:transform .3s; font-weight: 300; }
.faq-item.active .faq-question::after{content:"－";transform:rotate(180deg)}