.main_top {
    background-image: url("../images/main_top.png");
    height: 480px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-blend-mode: multiply, normal;
    display: flex;
    align-items: center;
    gap: 135px;
    padding: 0 190px;
}
.main_top_three {
    display: flex;
    flex-direction: row;
    gap: 24px;
    align-items: stretch;
}
.main_top_three > div {
    display: flex;
    width: 280px;
    padding: 28px 20px;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    border-radius: 20px;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}
.main_top_three_1 {
    background: rgba(255, 216, 188, 0.90);
}
.main_top_three_2 {
    background: rgba(234, 237, 255, 0.90);
}
.main_top_three_3 {
    background: rgba(236, 255, 224, 0.90);
}
.info {
    display: flex;
    align-items: center;
    gap: 16px;
}
.info > img {
    display: flex;
    width: 56px;
    height: 56px;
    padding: 7.561px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 15.122px;
}
.info > div {
    color: var(--color-gray100, #121212);
    text-align: center;
    font-size: var(--fontSize-36, 36px);
    font-weight: 700;
}
.main_top_three > div > a {
    display: flex;
    height: 64px;
    padding: 10px 19px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-radius: 8px;
    background: var(--color-gray0, #FFF);
}
.main_top_three > div > a > div {
    color: var(--color-gray100, #121212);
    font-size: var(--fontSize-20, 20px);
    font-weight: 500;
}
.main_top_three > div > a > svg {
    display: flex;
    width: 10px;
    height: 10px;
    padding: 11px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 50%;
    background: var(--color-gray100, #121212);
}
.main_top_three_1 a:hover svg {
    background-color: #FF3300;
    transition: 0.3s;

}
.main_top_three_1 a:hover div {
    color: #F30;
    transition: 0.3s;
    font-weight: bold;

}
.main_top_three_1 a:hover {
    background: #FFE3DB;
    transition: 0.3s;

}

.main_top_three_2 a:hover svg {
    background-color: #1E39E6;
    transition: 0.3s;

}
.main_top_three_2 a:hover div {
    color: #1E39E6;
    transition: 0.3s;
    font-weight: bold;
}
.main_top_three_2 a:hover {
    background: #D4CDFF;
    transition: 0.3s;

}

.main_top_three_3 a:hover svg {
    background-color: #0AC700;
    transition: 0.3s;

}
.main_top_three_3 a:hover div {
    color: #168200;
    transition: 0.3s;
    font-weight: bold;

}
.main_top_three_3 a:hover {
    background: #ECFFE0;
    transition: 0.3s;

}

.login_form {
    display: flex;
    flex-direction: column;
    padding: 24px 32px;
    border-radius: 20px;
    border: 1px solid #B3B3B3;
    background: #FFF;
    height: 240px;
    width: 320px;
    justify-content: center;
}
.login_txt {
    color: var(--color-gray100, #121212);
    font-size: var(--fontSize-20, 20px);
    font-weight: 700;
    align-self: stretch;
    margin-bottom: 8px;
}
#id,
#pw {
    display: flex;
    height: 44px;
    padding: 12px var(--padding-6, 16px);
    align-items: center;
    gap: var(--gap-3, 8px);
    align-self: stretch;
    width: 100%;
    border-radius: 6px;
    border: var(--border-width-variable-regular, 1px) solid var(--color-gray30, #B3B3B3);
    background: var(--color-gray0, #FFF);
    box-sizing: border-box;
    margin-bottom: 8px;
}
#login_btn {
    display: flex;
    height: 22px;
    padding: 25px 0;
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    border-radius: 6px;
    background: var(--color-main, #008CCF);
    color: var(--color-gray0, #FFF);
    font-size: var(--fontSize-18, 18px);
    font-weight: 700;
    border: none;
    margin-bottom: 8px;
    cursor: pointer;
}
.find {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    align-self: stretch;
    gap: 16px;
}
.find > p {
    color: var(--color-gray70, #2B2B2B);
    font-size: 14px;
    font-weight: 400;
}
.find > p:first-child {
    color: var(--color-main, #008CCF);
}
#line {
    width: 1px;
    height: 13px;
    background: var(--color-gray100, #121212);
}
.eng {
    display: flex;
    height: 80px;
    padding: 0 32px;
    justify-content: space-between;
    align-items: center;
    border-radius: 20px;
    border: 2px solid #AADCF4;
    background: linear-gradient(180deg, #FFF 63.13%, #E5F4FB 100%);
    text-decoration: none;
    width: 320px;
}
.eng > p {
    color: var(--color-main, #008CCF);
    font-size: var(--fontSize-24, 24px);
    font-weight: 700;
}
.eng > svg {
    display: flex;
    padding: 11px;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1/1;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--color-main, #008CCF);
    transform: rotate(-45deg);
}
.login_area {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 12px;
    width: 321px;
    height: 409px;
}
.eng:hover {
    border-radius: 20px;
    border: 2px solid var(--color-main20, #AADCF4);
    background: linear-gradient(180deg, #00D0FF 9.38%, #0079B3 100%);
    transition: 0.3s;
}

.eng:hover p {
    color: var(--color-gray0, #FFF);
    font-weight: 700;
}
.eng:hover svg {

    background: var(--color-gray0, #FFF);
    transform: none;
    transition: 0.3s;

}
.eng:hover svg path {
    stroke: var(--color-main, #008CCF);
}

.main_middle {
    width: 100%;
    display: flex;
    padding: 20px 190px;
    box-sizing: border-box;
    gap: 20px;
}

.event_swiper {
    width: 1020px;
    border-radius: 16px;
    height: 100%;
    overflow: hidden;
    position: relative;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    display: flex;
    width: 1020px;
    height: 510px;
    aspect-ratio: 2/1;
}

.event_swiper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper_control_box {
    position: absolute;
    bottom: 17px;
    right: 20px;
    z-index: 10;
    display: flex;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 20px;
    padding: 5px 15px;
    gap: 10px;
    color: #fff;
    font-size: 14px;
    font-family: 'Pretendard', sans-serif;
    align-items: stretch;
}
.swiper-autoplay-toggle {
    width: 14px;
    height: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.swiper-autoplay-toggle.pause::after,
.swiper-autoplay-toggle.pause::before {
    content: '';
    width: 2px;
    height: 12px;
    background: #fff;
    position: absolute;
}

.swiper-autoplay-toggle.pause::before {
    left: 3px;
}
.swiper-autoplay-toggle.pause::after {
    right: 3px;
}

.swiper-autoplay-toggle.play::before {
    content: '';
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid #fff;
    /* 삼각형 크기 조절 */
    position: absolute;
    left: 4px;
}

.swiper-pagination-fraction {
    position: static;
    /* absolute 속성 제거 */
    width: auto;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    letter-spacing: 2px;
    /* 숫자 사이 간격 약간 넓게 */
}

.swiper-button-next,
.swiper-button-prev {
    position: static;
    /* absolute 속성 제거 */
    width: auto;
    height: auto;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-button-next::after,
.swiper-button-prev::after {
    font-size: 14px;
    /* 화살표 크기 */
    color: #fff;
    font-weight: bold;
}

.book_section {
    display: flex;
    width: 500px;
    height: 446px;
    padding: 32px;
    flex-direction: column;
    border-radius: 20px;
    background: var(--color-main10, #DBF2FD);
}
.book_txt {
    margin-bottom: 40px;
}
.book_txt h3 {
    color: var(--color-gray100, #121212);
    font-size: var(--fontSize-32, 32px);
    font-weight: 700;
    line-height: 100%;
    margin-bottom: 12px;
}

.book_txt p {
    color: var(--color-gray70, #2B2B2B);
    font-size: var(--fontSize-18, 18px);
    font-weight: 400;
}

.book_content {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.book_btns {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 240px;
}

.book_btn {
    display: flex;
    padding: 10px 20px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-radius: 8px;
    background: var(--color-main70, #3AAFE6);
    height: 44px;
}

.book_btn > span {
    color: var(--color-gray0, #FFF);
    font-size: var(--fontSize-16, 16px);
    font-weight: 500;
}

.book_img img {
    width: 210px;
    height: 279px;
    aspect-ratio: 70/93;
}

.main_bottom_left_bottom:hover {
    background: var(--color-main10, #DBF2FD);
    transition: 0.3s;
}
.main_bottom_left_bottom:hover svg path {
    stroke: #fff;
    transition: 0.3s;

}
.main_bottom_left_bottom:hover svg {
    background-color: #008CCF;
    transform: none;

}
.main_bottom_left_bottom > svg {
    display: flex;
    padding: 11px;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1 / 1;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--color-main, #FFF);
    transform: rotate(-45deg);
}
.main_bottom_left_bottom > svg path {
    stroke: #121212;
}
.main_bottom_left_bottom {
    cursor: pointer;
    display: flex;
    width: 534px;
    padding: 36px 48px;
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
    border-radius: 12px;
    background: var(--color-maingray, #EFEFEF);
}
.mblbl {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}
.mblbl > img {
    width: 163px;
    height: 38px;
    aspect-ratio: 163/38;
}
.mblbl > h2 {
    color: var(--color-gray100, #121212);
    font-size: var(--fontSize-20, 20px);
    font-weight: 700;
}
.mblbl > h3 {
    color: var(--color-gray100, #121212);
    font-size: 18px;
    font-weight: 400;
    line-height: 130%;
    /* 23.4px */
}
.main_bottom {
    padding: 20px 190px 80px;

    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
}
.main_bottom_left_top {
    display: flex;
    width: 534px;
    height: 234px;
    padding: 36px 48px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-around;
    position: relative;
    border-radius: 20px;
    border: 1px solid var(--color-gray30, #B3B3B3);
    background: var(--color-gray0, #FFF);
    margin-bottom: 20px;
}
.main_bottom_left_top > h2 {
    color: var(--color-gray100, #121212);
    font-size: var(--fontSize-32, 32px);
    font-weight: 700;
    line-height: 100%;
    /* 32px */
    margin-bottom: 14px;
}
.main_bottom_left_top > h3 {
    color: var(--color-main, #008CCF);
    font-size: 40px;
    font-weight: 800;
    line-height: 100%;
    /* 40px */
    display: flex;
    margin-bottom: 34px;
}
.main_bottom_left_top > h3 > img {
    display: flex;
    align-items: center;
    width: 43px;
    height: 43px;
    margin-right: 10px;
}
.pp {
    color: var(--color-gray70, #333);
    font-size: var(--fontSize-20, 20px);
    font-weight: 500;
    margin-bottom: 12px;
}
.pp > span {
    color: var(--color-gray50, #777);
}
.rp {
    color: var(--color-accentmain, #F34E25);
    font-size: var(--fontSize-20, 20px);
    font-weight: 500;

}
#in_w {
    position: absolute;
    width: 236px;
    height: 167px;
    right: 11px;
    bottom: 17px;
}

.swiper-control-box {
    position: absolute;
    bottom: 17px;
    right: 20px;
    z-index: 10;
    display: flex;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 20px;
    padding: 5px 15px;
    gap: 10px;
    color: #fff;
    font-size: 14px;
    font-family: 'Pretendard', sans-serif;
    align-items: stretch;
}

.swiper-control-box {
    position: absolute;
    bottom: 24px;
    right: 24px;
    z-index: 100;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 40px;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.swiper-custom-next,
.swiper-custom-play-pause,
.swiper-custom-prev {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-custom-pagination {
    color: #fff !important;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
}

.swiper-pagination-current,
.swiper-pagination-total {
    color: #fff;
}

.login_three_sec > div > img {
    width: 40px;
    height: 40px;
}
.login_three_sec > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
}
.login_three_sec > div > p {
    color: var(--color-gray100, #000);
    text-align: center;

    /* Body/14 */
    font-family: var(--font-type, Pretendard);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 21px */
}
.in_line {
    width: 1px;
    height: 44px;
    background: var(--color-gray30, #B3B3B3);
}
.login_three_sec {
    display: flex;
    justify-content: space-around;
    align-items: center;
    align-self: stretch;
    margin-top: 12px;
    margin-bottom: 12px;
}
.login_form_2 {
    display: flex;
    height: 184px;
    padding: 32px 28px;
    flex-direction: column;
    align-self: stretch;
    border-radius: 20px;
    border: 1px solid var(--color-gray30, #B3B3B3);
    background: var(--color-gray0, #FFF);
    width: 329px;
}
.login_first_txt {
    color: var(--color-main, #008CCF);
    font-family: var(--font-type, Pretendard);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    /* 30px */
    letter-spacing: -1.8px;
    margin-bottom: 8px;
}
.user_level {
    color: var(--color-gray0, #FFF);

    /* Body/b14 */
    font-family: var(--font-type, Pretendard);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    /* 21px */
    display: flex;
    padding: 4px 12px;
    align-items: center;
    gap: 4px;
    border-radius: 8px;
    background: var(--color-blue70, #4DC3FF);
    margin-right: 8px;
}

.login_user_name {
    color: var(--color-gray100, #000);
    font-family: var(--font-type, Pretendard);
    font-size: var(--fontSize-20, 20px);
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    /* 20px */
}
.login_txt_2 {
    color: var(--color-gray70, #333);
    font-family: var(--font-type, Pretendard);
    font-size: var(--fontSize-16, 16px);
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    display: flex;
    align-items: center;
}

.notice_item:hover {
    background: var(--color-maingray, #EFEFEF);
    transition: 0.3s;
}
.notice_list_wrapper {
    width: 100%;
    margin-top: 10px;
    overflow: hidden;
}
#notice_container {
    list-style: none;
    padding: 0;
    margin: 0;
}
.notice_item {
    border-bottom: 1px solid #EEE;
    display: none;
    margin: 0 -48px;
    padding: 0 48px;
}
.notice_item.active {
    display: block;
}
.notice_item a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0;
    text-decoration: none;
}
.notice_item .txt_group {
    display: flex;
    align-items: center;
    gap: 12px;
}
.notice_item .subj {
    font-size: 20px;
    font-weight: 600;
    color: #2B2B2B;
    max-width: 450px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.notice_item .date {
    font-size: 16px;
    color: #B3B3B3;
    font-family: 'Arial', sans-serif;
}
.no_data {
    padding: 50px 0;
    text-align: center;
    color: #999;
}

.nav_btn:hover {
    background-color: #f5f5f5;
}

.nav_btn {
    width: 32px;
    height: 32px;
    border: 1px solid #DDD;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.notice_area > svg:last-child {
    margin-left: auto;
}
#prev_notice svg {
    transform: rotate(180deg);
}

#prev_notice {
    margin-right: 12px;
}

.notice_area {
    display: flex;
    align-items: center;
    width: 100%;
}
.notice_area > p {
    color: var(--color-gray100, #121212);
    font-size: var(--fontSize-32, 32px);
    font-weight: 700;
    margin-right: 20px;
}

.main_bottom_right {
    display: flex;
    width: 794px;
    height: 421px;
    padding: 36px 48px;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 20px;
    border: 1px solid var(--color-gray30, #B3B3B3);
    background: var(--color-gray0, #FFF);
    margin-left: 20px;
}

.item_arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: transparent;
    margin-right: 0;
    transition: background 0.3s ease;
}

.notice_item:hover .item_arrow {
    background: var(--color-main, #008CCF);
}

.notice_item:hover .item_arrow svg path {
    stroke: #ffffff !important;
}

.notice_item a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0;
    text-decoration: none;
    width: 100%;
    box-sizing: border-box;
    padding-right: 20px;
    padding-left: 20px;
}

.notice_item {
    border-bottom: 1px solid #EEE;
    display: none;
    margin: 0 -48px;
}

.notice_item:hover {
    background: var(--color-maingray, #EFEFEF);
}

.notice_area > a:last-child:hover svg path:first-child {
    fill: #008CCF !important;
    transition: fill 0.3s ease;
}
