
.transition {
  transition: all .3s ease-out .1s;
  -webkit-transition: all .3s ease-out .1s;
  -moz-transition: all .3s ease-out .1s;
  -ms-transition: all .3s ease-out .1s;
  -o-transition: all .3s ease-out .1s;
  -webkit-animation-fill-mode: none;
  animation-fill-mode: none;
}
.text-overflow1 {
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.text-overflow2 {
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.text-overflow3 {
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.banner {
  width: 100%;
  height: 0px;
  padding-bottom: 42%;
  max-height: 800px;
  overflow: hidden;
}

/* idx_notice_box */

.idx_notice_box {
  width: 100%;
  transform: translateY(-40px);
  -webkit-transform: translateY(-40px);
  -moz-transform: translateY(-40px);
  -ms-transform: translateY(-40px);
  position: relative;
  z-index: 2;
}
.idx_notice {
  width: 100%;
  height: 80px;
  box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.15);
  background: #ffffff;
  display: flex;
  justify-content: space-between;
  overflow: hidden;

}
.idx_notice_title {
  width: 80px;
  height: 100%;
  background: rgba(146, 3, 3, 1) url(../images/icon_idx_notice.png) no-repeat center center;
}
.idx_notice_cont {
  width: calc(100% - 80px);
  padding: 0px 30px;
  display: flex;
  justify-content: space-between;
}
.idx_notice_cont_item {
  width: calc((100% / 3) - 20px);
  line-height: 80px;
  display: flex;
  justify-content: space-between;
}
.idx_notice_cont_item>a {
  display: block;
  width: calc(100% - 15%);
  height: 80px;
  line-height: 80px;
  overflow: hidden;
  font-size: 20px;
  color: #333333;
}
.idx_notice_cont_item>span {
  width: calc(100% - 85%);
  font-size: 14px;
  color: #999999;
}
.idx_notice_cont_item>a:hover {
  color: rgba(146, 3, 3, 1);
}

/* idx_project_info */

.idx_project_info {
  width: 100%;
  padding-bottom: 90px;
  background: url(../images/icon_project_info.png) no-repeat bottom center / cover;
}
.commonTitle {
  width: 434.46px;
  height: 153px;
}
.idx_project_title {
  background: url(../images/icon_project_title.png) no-repeat;
}
.idx_project_cont {
  width: 100%;
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
}
.idx_project_item {
  width: calc((100% / 3) - 45px);
  height: 300px;
  background: #FFFFFF;
  border: 8px solid rgba(156,23,31,0.2);
  padding: 35px 30px;
  overflow: hidden;
}
.idx_project_item p {
  font-size: 16px;
  color: #222222;
  line-height: 27px;
  text-align: justify;
}
.idx_project_item p span {
  color: rgba(146, 3, 3, 1);
}
.idx_project_item + .idx_project_item {
  background: url(../images/icon_project_item_sec.png) no-repeat center center / cover;
  border: 0px;
}
.idx_project_item + .idx_project_item {
  padding: 35px 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.idx_project_item + .idx_project_item p {
  color: #ffffff;
  width: calc(100% - 280px);
}
.idx_project_item + .idx_project_item img {
  display: block;
  width: 260px;
  height: auto;
}
.idx_project_item + .idx_project_item + .idx_project_item {
  background: transparent;
  border: 8px solid rgba(156,23,31,0.2);
  padding: 35px 27px;
  display: block;
}
.idx_project_item + .idx_project_item + .idx_project_item p {
  color: #222222;
  width: 100%;
}
.idx_project_item + .idx_project_item + .idx_project_item p + p {
  margin-top: 25px;
}

/* idx_cooperation_box */

.idx_cooperation_box {
  width: 100%;
  background: url(../images/idx_cooperation_box.png) no-repeat center center / cover;
  padding: 40px 0px 70px 0px;
}
.idx_cooperation {
  width: 100%;
}

.idx_cooperation_title {
  background: url(../images/idx_cooperation_title.png) no-repeat;
}
.idx_cooperation_tab {
  width: 100%;
}
.idx_cooperation_menu {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.idx_cooperation_menu>div {
  width: calc((100% - 50%) - 10px);
  font-size: 24px;
  color: #666666;
  line-height: 40px;
  border-bottom: 4px solid rgba(102, 102, 102, 0.1);
  text-align: center;
  padding-bottom: 10px;
  cursor: pointer;
}
.idx_cooperation_menu>div.Act {
  border-bottom: 4px solid rgba(146, 3, 3, 1);
  color: rgba(146, 3, 3, 1);
}
.idx_cooperation_cont {
  width: 100%;
  margin-top: 30px;
}
.idx_cooperation_detail_info {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.idx_cooperation_detail_introduction {
  width: calc(100% - 380px);
  padding-top: 30px;
}
.idx_cooperation_detail_introduction p {
  font-size: 16px;
  color: #222222;
  line-height: 32px;
  text-align: justify;
  text-indent: 2em;
  margin-bottom: 10px;
}
.idx_cooperation_detail_pic {
  width: 250px;
  height: 250px;
  overflow: hidden;
}
.idx_cooperation_detail_pic>img {
  display: block;
  width: 100%;
}
.idx_cooperation_detail_img {
  width: 100%;
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
}
.idx_cooperation_detail_item_img {
  width: calc((100% / 4) - 20px);
  height: 0px;
  padding-bottom: 17%;
  overflow: hidden;
}
.idx_cooperation_detail_item_img img {
  display: block;
  width: 100%;
  transition: all .3s ease-out .1s;
  -webkit-transition: all .3s ease-out .1s;
  -moz-transition: all .3s ease-out .1s;
  -ms-transition: all .3s ease-out .1s;
  -o-transition: all .3s ease-out .1s;
  -webkit-animation-fill-mode: none;
  animation-fill-mode: none;
}

.idx_cooperation_detail_item_img:hover img {
  transform: scale(1.1,1.1);
  -webkit-transform: scale(1.1,1.1);
  -moz-transform: scale(1.1,1.1);
  -ms-transform: scale(1.1,1.1);
}

/* idx_cultivation_box */

.idx_cultivation_box {
  width: 100%;
  padding: 50px 0px;
  background: url(../images/idx_cultivation_box.png) no-repeat center center / cover;
}
.idx_cultivation {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.idx_cultivation_cont {
  width: calc((100% / 2) - 50px);
  padding-top: 100px;
}
.idx_cultivation_title {
  background: url(../images/idx_cultivation_title.png) no-repeat;
}
.idx_cultivation_detail {
  width: 100%;
  background: url(../images/idx_cultivation_detail.png) no-repeat;
  margin-top: 24px;
  padding: 30px 0px;
}
.idx_cultvation_item {
  width: 100%;
  height: 90px;
  padding: 0px 10px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.idx_cultvation_item p {
  width: calc(100% - 85%);
  font-size: 32px;
  color: #920303;
  text-align: center;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  cursor: pointer;
}
.idx_cultvation_item p + p {
  width: calc(100% - 15%);
  padding-left: 10px;
  font-size: 20px;
  color: #111111;
  text-align: left;
}
.idx_cultvation_item:hover {
  background: url(../images/idx_cultvation_item_hover.png) no-repeat left;
  background-size: cover;
}
.idx_cultvation_item:hover p {
  color: #ffffff;
}
.idx_advantages {
  width: calc((100% / 2) - 50px);
}
.idx_advantages_title {
  background: url(../images/idx_advantages_title.png) no-repeat;
  margin-left: auto;
}
.idx_advantages_detail {
  width: 100%;
  background: url(../images/idx_advantages_detail.png) no-repeat;
  margin-top: 24px;
  padding: 17px 0px;
}
.idx_advantages_item {
  width: 100%;
  height: 90px;
  padding: 0px 10px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.idx_advantages_item p {
  width: 100%;
  font-size: 20px;
  color: #111111;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  cursor: pointer;
  padding-left: 110px;
}
.idx_advantages_item:hover {
  background: url(../images/idx_advantages_item_hover.png) no-repeat left;
  background-size: cover;
}
.idx_advantages_item:hover p {
  color: #ffffff;
}

/* idx_Eenrollment_box */

.idx_Eenrollment_box {
  width: 100%;
  background: url(../images/idx_Eenrollment_box.png) no-repeat center center / cover;
  padding-top: 60px;
}
.idx_Eenrollment_title_box {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.idx_Eenrollment_title {
  background: url(../images/idx_Eenrollment_title.png) no-repeat;
}
.idx_Eenrollment_title_box .more {
  display: block;
  font-size: 16px;
  color: #920303;
  line-height: 24px;
  text-align: justify;
  padding-right: 20px;
  background: url(../images/icon-more.png) no-repeat right center;
}
.idx_Eenrollment_info_box {
  width: 100%;
  margin-top: 50px;
  position: relative;
  z-index: 2;
}
.idx_Eenrollment_info_reg {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.idx_Eenrollment_info_reg_item {
  width: 390px;
  height: 319px;
  overflow: hidden;
  background: url(../images/info_reg_e1.png) no-repeat left bottom;
  background-size: cover;
  padding: 30px;
}
.idx_Eenrollment_info_reg_item>h3,
.idx_Eenrollment_info_conditions_item_detail>h3,
.idx_Eenrollment_materials>h3 {
  display: inline-block;
  font-size: 20px;
  color: #F5F7F8;
  padding: 3px 10px;
  background: rgba(146, 3, 3, 1);
  border-radius: 4px;
  margin-bottom: 30px;
}
.idx_Eenrollment_info_reg_item p,
.idx_Eenrollment_info_conditions_item_detail p,
.idx_Eenrollment_materials p {
  font-size: 16px;
  color: #222222;
  line-height: 30px;
  text-align: justify;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.idx_Eenrollment_info_conditions_item {
  width: 1100px;
  height: 319px;
  background: url(../images/info_reg_e2.png) no-repeat left bottom;
  background-size: cover;
  padding: 30px;
  display: flex;
  justify-content: space-between;
}
.idx_Eenrollment_info_conditions_item_detail {
  width: calc(100% - 60%);
}
.idx_Eenrollment_info_conditions_item_detail + .idx_Eenrollment_info_conditions_item_detail {
  width: calc(100% - 47%);
}
.idx_Eenrollment_info_conditions_item_detail p:first-child {
  color: rgba(146, 3, 3, 1);
}
.idx_Eenrollment_process {
  width: 100%;
  height: 348px;
  background: url(../images/info_reg_e3.png) no-repeat center center;
  margin: 0 auto;
  transform: translateY(-40px);
  -webkit-transform: translateY(-40px);
  -moz-transform: translateY(-40px);
  -ms-transform: translateY(-40px);
}
.idx_Eenrollment_process .commonWidth {
  padding: 100px 140px;
}
.idx_Eenrollment_process_item {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 36px 100px;
}
.idx_Eenrollment_process_item_cont {
  width: 140px;
  height: 50px;
  background: #FFFFFF;
  border-radius: 4px;
  font-size: 18px;
  color: #920303;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
}
.idx_Eenrollment_process_item_cont + .idx_Eenrollment_process_item_cont {
  width: 160px;
  height: 50px;
  background: url(../images/E-nor-1.png) no-repeat;
  font-size: 16px;
  color: #FFFFFF;
  line-height: 50px;
}
.idx_Eenrollment_process_item_cont:nth-child(6) {
  width: 140px;
  background: url(../images/Finish.png) no-repeat;
}
.idx_Eenrollment_process_item_cont:nth-child(6) ~ .idx_Eenrollment_process_item_cont {
  background: url(../images/E-nor-2.png) no-repeat;
}
.idx_Eenrollment_process_item_cont:first-child:hover {
  background: #FFFFFF;
  color: #920303;
}
.idx_Eenrollment_process_item_cont:first-child ~ .idx_Eenrollment_process_item_cont:hover {
  background: url(../images/E-hover-1.png) no-repeat;
  color: rgba(146, 3, 3, 1);
}
.idx_Eenrollment_process_item_cont:nth-child(6):hover {
  background: url(../images/Finish.png) no-repeat !important;
  color: #FFFFFF !important;
}
.idx_Eenrollment_process_item_cont:nth-child(6) ~ .idx_Eenrollment_process_item_cont:hover {
  background: url(../images/E-hover-2.png) no-repeat;
}
.idx_Eenrollment_process_item_cont:nth-child(3),
.idx_Eenrollment_process_item_cont:nth-child(8) {
  position: relative;
}
.idx_Eenrollment_process_item_cont:nth-child(3):after {
  display: block;
  content: '符合初审条件';
  position: absolute;
  right: -98px;
  top: -13px;
  z-index: 2;
  font-size: 16px;
  color: #FFFFFF;
}
.idx_Eenrollment_process_item_cont:nth-child(8):after {
  display: block;
  content: '综合评议通过';
  position: absolute;
  right: -98px;
  top: -13px;
  z-index: 2;
  font-size: 16px;
  color: #FFFFFF;
}
.idx_Eenrollment_materials {
  width: 100%;
  height: 393px;
  background: url(../images/idx_Eenrollment_materials.png) no-repeat;
  background-size: contain;
  transform: translateY(-100px);
  -webkit-transform: translateY(-100px);
  -moz-transform: translateY(-100px);
  -ms-transform: translateY(-100px);
  padding: 50px 100px 20px 100px;
}
.idx_Eenrollment_materials>h3 {
  margin-bottom: 20px;
}
.idx_Eenrollment_materials>h5 {
  display: inline-block;
  padding: 0px 50px;
  height: 40px;
  background: rgba(146, 3, 3, 0.15);
  font-size: 16px;
  color: #920303;
  line-height: 40px;
  margin-top: 15px;
}

/* idx_course_box */

.idx_course_box {
  width: 100%;
  background: url(../images/idx_course_box.png) no-repeat bottom left / contain;
  padding: 60px 0px;
}
.idx_course {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.idx_course_settings {
  width: calc(100% - 50%);
  padding-right: 90px;
  padding-top: 60px;
}
.idx_course_settings>h3,
.idx_course_cultivation_item_cont>h3 {
  display: inline-block;
  background: #920303;
  border-radius: 4px;
  font-size: 20px;
  color: #F5F7F8;
  padding: 3px 10px;
  margin-bottom: 10px;
}
.idx_course_settings p {
  font-size: 16px;
  color: #222222;
  line-height: 30px;
  text-align: justify;
}
.idx_course_settings p+p {
  margin-top: 10px;
}

/* 表格基础样式 */
.idx_course_settings table {
    width: 100%;
    border-collapse: collapse; /* 关键：合并边框 */
    text-align: left;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    border-radius: 8px;
    overflow: hidden; /* 用于圆角裁剪 */
    margin-top: 10px;
    margin-bottom: 10px;
}
/* --- 关键修改：定义列宽比例 --- */
colgroup col:nth-child(1) { width: 20%; } /* 模块列 */
colgroup col:nth-child(2) { width: 60%; } /* 课程名称列 (最宽) */
colgroup col:nth-child(3) { width: 20%; } /* 学分列 */

.idx_course_settings table p {
  text-indent: 0em !important;
}
/* 表头样式 (模块/课程名称/学分) */
.idx_course_settings thead tr {
    background: linear-gradient(to right, #c77b7b, #a32e2e); /* 模拟图中的渐变红 */
    color: white;
}
.idx_course_settings thead th {
    padding: 15px 20px;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 1px;
}

/* 单元格通用样式 */
.idx_course_settings td {
    padding: 12px 20px;
    border-bottom: 1px solid #eee;
    color: #222222;
    font-size: 14px;
}

/* 最后一列（学分）居中对齐 */
.idx_course_settings td:last-child, th:last-child {
    text-align: center;
    width: 80px;
}

/* 中间列（课程名称）居中对齐 */
.idx_course_settings td:nth-child(2), th:nth-child(2) {
    text-align: center;
}
.idx_course_settings td:nth-child(2) {
  /*padding: 12px 0px;*/
}

/* --- 特殊行样式 --- */

/* 1. 分类标题行 (如：专业课程) */
.section-header td {
    background-color: #fdf0f0; /* 浅粉色背景 */
    color: #b92b27; /* 深红色文字 */
    font-weight: bold;
    text-align: center;
    padding: 10px;
    border-bottom: 1px solid #ebdada;
}

/* 鼠标悬停效果 (可选，增加交互感) */
.idx_course_settings tbody tr:not(.section-header):not(.divider-row):hover {
    background-color: #fafafa;
}
.idx_course_cultivation {
  width: calc(100% - 50%);
  padding-left: 90px;
  border-left: 1px solid rgba(238, 238, 238, 1);
}
.idx_course_cultivation_title {
  background: url(../images/idx_course_cultivation_title.png) no-repeat;
  margin-left: auto;
}
.idx_course_cultivation_item {
  width: 100%;
  margin-top: 40px;
}
.idx_course_cultivation_item_cont {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.idx_course_cultivation_item_cont+.idx_course_cultivation_item_cont {
  margin-top: 60px;
}
.idx_course_cultivation_item_cont>h3 {
  display: block;
  width: 100px;
  height: 35px;
  padding: 0px;
  text-align: center;
  line-height: 35px;
}
.idx_course_cultivation_item_cont_detail {
  width: calc(100% - 120px);
}
.idx_course_cultivation_item_cont_detail p {
  font-size: 16px;
  color: #222222;
  line-height: 30px;
}
.idx_course_cultivation_item_cont_detail img {
  display: block;
  width: 100%;
  height: auto !important;
  margin: 10px auto;
}

/* idx_teacher_title */

.idx_teacher_title {
  background: url(../images/idx_teacher_title.png) no-repeat;
  margin-top: 60px;
  position: relative;
}
.idx_teacher_title:after {
  display: block;
  content: '（师资或有部分调整，以实际授课为准）';
  position: absolute;
  right: 0px;
  bottom: 0px;
  font-size: 16px;
  color: #999999;
  line-height: 30px;
  z-index: 1;
}
.idx_teacher_box {
  width: 100%;
  padding-bottom: 60px;
}
.idx_teacher {
  position: relative;
}
.idx_teacher,
.swiperInterview,
.swiper_img {
  width: 100%;
  height: 100%;
}
.swiper_box {
  width: 300px;
  height: 400px;
  overflow: hidden;
  position: relative;
}
.swieprText {
  width: 100%;
  position: absolute;
  bottom: 0px;
  left: 0px;
}
.swieprText>h3 {
  display: inline-block;
  padding: 4px 30px 4px 20px;
  background: linear-gradient( 90deg, #920303 0%, rgba(146,3,3,0) 100%);
  font-size: 20px;
  color: rgba(255, 255, 255, 0.7);
}
.swieprText>p {
  background: linear-gradient( 90deg, #920303 0%, rgba(146,3,3,0) 100%);
  font-size: 14px;
  padding: 4px 30px 4px 20px;
  color: rgba(255, 255, 255, 0.7);
}
.swiperTextInfo {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: rgba(146, 3, 3, 0.6);
  position: absolute;
  top: 100%;
  left: 0px;
  z-index: 3;
  padding: 30px 20px;
}
.swiperTextInfo>h3 {
  display: block;
  font-size: 24px;
  color: #FFFFFF;
  line-height: 36px;
  padding-bottom: 10px;
  position: relative;
  margin-bottom: 20px;
}
.swiperTextInfo>h3:after {
  display: block;
  content: '';
  width: 100%;
  height: 1px;
  background: linear-gradient( 90deg, #FFFFFF 0%, rgba(255,255,255,0) 100%);
  position: absolute;
  bottom: 0px;
  left: 0px;
}
.swiperTextInfoCont {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.swiperTextInfoCont>h3 {
  display: block;
  font-size: 14px;
  color: rgba(255, 255, 255, 1);
  line-height: 30px;
  width: calc(100% - 70%);
}
.swiperTextInfoCont>p {
  width: 100%;
  font-size: 14px;
  color: rgba(255, 255, 255, 1);
  line-height: 30px;
}
.swiperInterview .swiper-slide .swiper_box:hover .swiperTextInfo {
  top: 0px;
}
.swiperInterview .swiper-slide .swiper_box:hover .swieprText {
  bottom: 100%;
}
.swiperInterviewPrev,
.swiperInterviewNext {
  width: 61px;
  height: 61px;
  position: absolute;
  top: 50%;
  margin-top: -30px;
  z-index: 2;
}
.swiperInterviewPrev:after,
.swiperInterviewNext:after {
  color: transparent;
}
.swiperInterviewPrev {
  background: url(../images/icon_btn_prev.png) no-repeat 0px;
  left: -100px;
}
.swiperInterviewNext {
  background: url(../images/icon_btn_next.png) no-repeat 0px;
  right: -80px;
}
.swiperInterviewPrev:hover {
  background: url(../images/icon_btn_prev_h.png) no-repeat 0px;
}
.swiperInterviewNext:hover {
  background: url(../images/icon_btn_next_h.png) no-repeat 0px;
}