﻿
/* ------------------------------------------
                  공통 CSS
  ------------------------------------------ */
* {
    font-family: 'suite', "Malgun Gothic", 'Apple SD Gothic Neo', "돋움", sans-serif !important;
}

.wrap {
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh;
}
.p_wrap {
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh;
}

.content {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}
[v-cloak] {
    display: none;
}
/*header*/
header {
    width: 100%;
    border-bottom: 1px solid #f0f0f0;
    padding: 0 20px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
     position: sticky; 
    top: 0px;
    padding-top: 0px;
    background-color: #ffffff;
    z-index: 10;
    min-width: 320px;
    align-items: center;
    height:70px;
}
    header .c_bundle {
        display: flex;
        align-items: center;
    }

header .bundle1 .c_list {
    box-sizing: border-box;
    position: relative;
}
header .c_bundle .c_list a {
    height: 100%;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
}
    header .bundle1 .c_list .top_login_btn {
        border-radius: 5px;
        border: 1px solid #00B750;
        padding: 4px;
        text-align: center;
        width: 20px;
        box-sizing: border-box;
        letter-spacing: -0.2px;
        color: #00B750 !important;
        height: auto;
        min-width: 62px;
    }

    header .bundle1 div a:first-child img {
        width: 67px;
        height: auto;
    }
        header .bundle1 div a:first-child img.back {
            width: 19px;
            height: auto;
        }
    header .bundle1{
        gap:5px;
    }
    header .bundle2 {
        justify-content: flex-end;
        gap: 18px;
    }
    header .bundle2 .c_list {
        box-sizing: border-box;
        width: fit-content;
    }
    header .bundle2 .c_list:last-child {
        margin-right: 0%;

    }

header .bundle2 .c_list.m_menu img {
    margin-top: 2px;
    width: 20px;
}
/* footer */
.footer {
    width: 100%;
    font-family: 'suite', "Malgun Gothic", 'Apple SD Gothic Neo', "돋움", sans-serif;
    box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.25);
    display: flex;
    justify-content: space-evenly;
    z-index: 10;
    background: #ffffff;
}

    .footer div {
        padding: 5px;
        box-sizing: border-box;
    }

        .footer div a {
            display: block;
            font-family: 'suite', "Malgun Gothic", 'Apple SD Gothic Neo', "돋움", sans-serif !important;
            font-size: 16px;
            text-align: center;
            font-weight: 500;
            padding: 15px 6px;
            box-sizing: border-box;
            position: relative;
            color: #000000;
        }

            .footer div a:before {
                content: "";
                width: 100%;
                height: 2px;
                border-radius: 2px;
                position: absolute;
                bottom: 0px;
                left: 0;
                background: #00B750;
                display: none;
            }

        .footer div.active a {
            color: #00b750;
        }

            .footer div.active a:before {
                display: block;
            }
/*index*/
.c_co {
    box-sizing: border-box;
    width: 100%;
    padding: 30px 20px;
}
.pages {
    box-sizing: border-box;
    width: 100%;
    padding: 30px 20px 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    min-height: 0;
}
    .pages .main_wrap {
        /*        width: 100%;
        overflow: hidden;
        position: relative;
        height: 100%;*/
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }
        .pages .main_wrap .introBox {
        }

        .pages .main_wrap .q_box {
            overflow-y: auto;
            width: 100%;
            -ms-overflow-style: none;
            margin-bottom:20px
        }

        .pages .main_wrap .q_list {
            height: 232px;
            overflow:hidden;
        }
        .pages .main_wrap .q_box.on .q_list {
            height:auto;
        }
        .pages .main_wrap .q_box.on .more_btn{
            display:none;
        }
        .pages .main_wrap .q_box .more_btn {
            border-radius: 50px;
            padding: 13px 20px;
            box-sizing: border-box;
            background: #000;
            width: fit-content;
        }
        .pages .main_wrap .q_list li {
            border: 1px solid #DFDFDF;
            border-radius: 50px;
            padding: 13px 20px;
            box-sizing: border-box;
            margin-bottom: 10px;
            width: fit-content;
            display: flex;
            align-items: center;
            gap: 5px;
        }
            .pages .main_wrap .q_list li img{
                width:20px;
                height:auto;
            }
            .ai_searchBox {
                margin-top: auto; /* 위쪽 여백을 최대로 가져가서 아래로 붙음 */
                position: sticky; /* 스크롤이 길어져도 화면 하단에 걸리게 하고 싶을 때 사용 */
                bottom: 0;
                display: flex;
                justify-content: space-between;
                align-items: center;
                flex-shrink: 0;
                margin-top: auto;
                z-index: 9;
            }
/*.ai_searchBox {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    bottom: 0px;
    gap: 5px;
    left: 0px;
}
            .ai_searchBox.fixed {
                position: fixed;
                bottom: 80px;
                padding: 0 20px;
                box-sizing: border-box;
            }*/
            .ai_searchBox.relative {
                position: relative;
                padding: 20px;
                box-sizing: border-box;
                border-bottom: 1px solid #f0f0f0;
                background: #fff;
            }
            .ai_searchBox .search_key {
                width: calc(100% - 52px);
                padding: 14.5px 20px;
                box-sizing: border-box;
                background: #F9F9F9;
                font-size: 18px;
                color: #888;
                z-index: 1;
                border-radius: 50px;
                border: none;
            }
            .ai_searchBox img {
                width: 52px;
                height: auto;
            }
            .ai_searchBox .search_key::placeholder {
                color: #888;
                font-size: 14px;
            }

            .ai_searchBox .search_key::-webkit-input-placeholder {
                font-size: 14px;
                color: #888;
            }

            .ai_searchBox .search_key:-ms-input-placeholder {
                font-size: 14px;
                color: #888;
            }
.ai_chat {
    position: relative;
    overflow-x: hidden;
    box-sizing: border-box;
    width: 100%;
    padding: 30px 20px 20px;
    flex: 1; /* 남는 공간을 다 차지함 */
    display: flex;
    flex-direction: column;
    overflow-y: auto; /* 본문 내용 많으면 스크롤 */
}
    .ai_chat .ai_chat_item{

    }

    .ai_chat .ai_chat_item:last-child {
        padding-bottom: 10rem;
    }

.ai_chat .ai_chat_item .ai_q {
    margin-bottom: 2rem;
}

.ai_chat .ai_chat_item .ai_a_profile {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
}
        .ai_chat .ai_chat_item .scut_list {
            width: calc(100% + 40px);
            overflow: hidden;
            padding-right: 20px;
            box-sizing: border-box;
        }
            .ai_chat .ai_chat_item .scut_list .s_list {
                display: flex;
                justify-content: start;
                gap: 6px;
                flex-wrap: nowrap;
                margin-top: 20px;
                overflow: auto;
                scrollbar-width: none;
                -ms-overflow-style: none;
            }
                .ai_chat .ai_chat_item .scut_list .s_list li {
                    padding: 10px;
                    border-radius: 15px;
                    width: fit-content;
                    min-width: fit-content;
                    background: #00b750;
                }
                .ai_chat .ai_chat_item .ai_profile {
                    width: 44px;
                    height: 44px;
                    min-width: 44px;
                    min-height: 44px;
                    border-radius: 50%;
                    margin-right: 5px;
                    overflow: hidden;
                }

.ai_chat .ai_chat_item .ai_q .ai_q_item {
    word-break: break-all;
    font-size: 20px;
    font-weight: 600;
    margin-top: 4rem;
    text-align:right;
}
        .ai_chat .ai_chat_item .ai_a .ai_a_item,
        .ai_chat .ai_chat_item .ai_a .ai_a_follow {
            margin-top: 1rem;
            position: relative;
            padding: 15px;
            border-radius: 15px;
            background: #fff;
            color: #000;
            word-break: break-all;
            width: 100%;
            box-sizing: border-box;
        }

        .ai_chat .ai_chat_item .ai_a .ai_a_item {
        }
.ai_chat .ai_chat_item:first-child .ai_q .ai_q_item {
    margin-top: 0rem;
}
        .ai_chat .ai_chat_item .ai_a .follow_wrap {
            padding: 15px;
            border-radius: 15px;
            border: 1px solid #dfdfdf;
            box-sizing: border-box;
            margin-top: 5px;
            width: 100%;
        }

        .ai_chat .ai_chat_item .ai_a .ai_a_follow {
            font-size: 15px;
            font-weight: 300;
            background: #f5f5f5;
            color: #555555;
            margin-top: 5px;
            border-radius: 10px;
            padding: 13px 15px;
            display: flex;
            justify-content: space-between;
            gap: 10px;
            align-items: center;
        }

            .ai_chat .ai_chat_item .ai_a .ai_a_follow > div {
                max-width: calc(100% - 26px);
            }

            .ai_chat .ai_chat_item .ai_a .ai_a_follow img {
                width: 16px;
                height: auto;
            }

        .ai_chat .ai_chat_item .ai_a .followtit {
            font-size: 17px;
            font-weight: 500;
            margin-bottom: 10px;
        }

        .ai_chat .ai_chat_item .ai_a .ai_a_follow.selected {
            background: rgb(var(--btn_global_color));
        }

        .ai_chat .ai_chat_item .ai_a .ai_a_item.answer {
            min-width: auto;
            max-width: 100%;
        }
            .ai_chat .ai_chat_item .ai_a .ai_a_item.answer .answer_contents{
                line-height:1.6;
            }

            .ai_chat .ai_chat_item .ai_profile img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: top;
            }

.ai_chat .ai_chat_item .ai_a {
    display: flex;
    justify-content: flex-start;
    align-items: start;
    gap: 6px;
    margin-bottom: 1rem;
}
.answer_df {
    display: flex;
    gap: 6px;
    justify-content: flex-start;
    align-items: center;
}

.answer_progress {
    padding-top: 10px;
}

.progress-circle {
    width: 34px;
    height: 34px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: visible;
    background: url('../../images/ai/ic_ax.png');
    background-size: 20px 16px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

    .progress-circle svg {
        transform: rotate(-90deg); /* 시작점 위쪽 */
        width: 100%;
        height: 100%;
        overflow: visible;
    }

    .progress-circle circle {
        fill: none;
        stroke-width: 9;
        r: 45;
        cx: 50;
        cy: 50;
    }

    .progress-circle .bg {
        stroke: #F0F0F0;
    }

    .progress-circle .progress {
        stroke: #00B750;
        stroke-linecap: round;
        stroke-dasharray: 283; /* 2πr ≈ 2*π*45 */
        stroke-dashoffset: 283;
        transition: stroke-dashoffset 1s ease;
    }


/* 단계별 클래스 */
.step-0 .progress {
    stroke-dashoffset: 283;
}

.step-1 .progress {
    stroke-dashoffset: calc(283 - 283 * 0.2);
}

.step-2 .progress {
    stroke-dashoffset: calc(283 - 283 * 0.4);
}

.step-3 .progress {
    stroke-dashoffset: calc(283 - 283 * 0.6);
}

.step-4 .progress {
    stroke-dashoffset: calc(283 - 283 * 0.8);
}

.step-5 .progress,
.step-6 .progress,
.step-7 .progress,
.step-8 .progress,
.step-9 .progress,
.step-10 .progress {
    stroke-dashoffset: 0;

}
.step-10 .progress {
    stroke: #ffffff;
    transition: stroke-dashoffset 0s ease;
}
/*login*/
.login_wrap {
    width: 100%;
    overflow: hidden;
    position: relative;
    height: 100%;
}
    .login_wrap .loginBox {
        display: flex;
        gap: 10px;
        flex-direction: column;
    }
        .login_wrap .loginBox input{
            border:1px solid #cccccc;
            border-radius:30px;
            padding:15px 20px;
            box-sizing:border-box;
            width:100%;
        }
    .login_wrap .login_df{
        display:flex;
        justify-content:space-between;
        padding:15px 10px;
        box-sizing:border-box;
    }
    .login_wrap .btn {
        width: 100%;
        padding: 14px;
        text-align: center;
        background: #000000;
        color: #fff;
        border-radius: 30px;
        box-sizing: border-box;
    }
.sns_login{
    border-top:1px solid #dfdfdf;
    padding-top:20px;
    margin-top:20px;
}
    .sns_login .btn_kakao {
        background: #FDE402;
        color: #000000;
    }
    .sns_login .btn_naver {
        background: #03CE5C;
    }
.login_wrap .inputBox .search {
    display: flex;
    align-items: center;
    background:#fff;
    border-radius:10px;

}
    .login_wrap .inputBox .search img{
        padding:13px 15px;
    }
    .login_wrap .inputBox input {
        border-radius: 10px;
        padding: 15px 15px;
        box-sizing: border-box;
        width: 100%;
        border: none;
        font-size: 1.6rem;
        font-weight: 400;
    }

.login_wrap .inputBox .df_input{
    display:flex;
    gap:5px;
    align-items:center;
}
    .login_wrap .inputBox .df_input select {
        border-radius: 10px;
        padding: 14.5px 15px;
        box-sizing: border-box;
        width: 100%;
        border: none;
    }
    .login_wrap .inputBox .df_input .numbtn {
        border-radius: 10px;
        padding: 11.5px;
        box-sizing: border-box;
        min-width: 120px;
        text-align: center;
        background: #000000;
    }
    .login_wrap .inputBox .numbtn2 {
        border-radius: 10px;
        padding: 11.5px;
        box-sizing: border-box;
        text-align: center;
        background: #000000;
        margin-top: 10px;
    }
.login_wrap .inputBox .termsBox {
    border-radius: 10px;
    width: 100%;
    border-radius: 10px;
    background:#fff;
}
    .login_wrap .inputBox .termsBox .topBox {
        align-items: center;
        gap: 10px;
        padding:20px;
        box-sizing:border-box;
    }
        .login_wrap .inputBox .termsBox .topBox .arrow {
            transform: rotate(-180deg);
            width: 9px;
            height: auto;
        }
    .login_wrap .inputBox .termsBox.on .topBox .arrow {
        
        transform: rotate(-90deg);
    }
        .login_wrap .inputBox .termsBox .topBox .chkbox {
            display: flex;
            align-items: center;
        }
.login_wrap .inputBox textarea {
    border-radius: 10px;
    padding: 15px 15px;
    box-sizing: border-box;
    width: 100%;
    border: none;
    font-size: 1.6rem;
    font-weight: 400;
    height:300px;
    resize:none;
}
/* 체크박스 숨기기 */
.chkbox input {
    display: none;
}

/* 동그란 체크박스 스타일 */
.chkbox .checkmark {
    width: 15px;
    height: 15px;
    border-radius: 50%; /* 동그랗게 */
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    position: relative;
    cursor: pointer;
    background: #CCCCCC url('../../images/ai/ai_chk_w.png') 50% 50%;
    background-repeat: no-repeat;
}


/* 체크 표시 (작은 원 또는 점) */
.chkbox .checkmark::after {
    content: "";
    position: absolute;
    display: none;
    left: 50%;
    top: 50%;
    width: 15px;
    height: 15px;
    background: #00B750 url('../../images/ai/ai_chk_w.png') 50% 50%;
    background-repeat: no-repeat;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.chkbox input:checked + .checkmark::after {
    display: block;
}
        .df_fs {
            display: flex;
            justify-content: flex-start;
        }
.df_sb {
    display: flex;
    justify-content: space-between;
}

.login_wrap .inputBox .termsBox .txtBox {
    border-top: 1px dashed #f0f0f0;
    padding: 25px 20px;
    box-sizing: border-box;
    display: none;
    line-height: 1.5;
    height: 150px;
    overflow-y: auto;
}
    .login_wrap .inputBox .termsBox.on .txtBox{
        display:block
    }
.db_nav {
    padding: 9px 20px;
    box-sizing: border-box;
    display: flex;
    gap: 5px;
    border-bottom: 1px solid #f0f0f0;
}
    .db_nav li {
        width: 100%;
        position: relative;
        text-align:center;
        color:#aaa;
        border-radius:10px;
        padding:11px;

    }
        .db_nav li.active {
            background:#00B750;
            color:#fff;
        }
        /*내보험*/
        .top_nav {
            padding: 16px 20px;
            box-sizing: border-box;
            display: flex;
            gap: 25px;
            border-bottom: 1px solid #f0f0f0;
        }
    .top_nav li{
        width:fit-content;
        position:relative;
    }
        .top_nav li.active {
            font-weight: 600;
            color: #00B750
        }
        .top_nav li:before {
            content: "";
            position: absolute;
            bottom: -16px;
            left: 0;
            width: 100%;
            height: 3px;
            background: #00B750;
            display: none;
        }
        .top_nav li.active:before{
            display:block;
        }
.sec_wrap {
    background: #F5F5F5;
    padding-bottom: 90px;
    height: 100%;
    overflow: auto;
}
.sec_wrap2 {
}
.sec_wrap3 {
}
.sec_wrap4 {
}
    .sec_wrap .listBox{
        border-radius:15px;
        background:#fff;
        margin-bottom:10px;
    }

        .sec_wrap .listBox ul.foldBox {
            display: none;
        }
            .sec_wrap .listBox ul.foldBox.on {
                display: block;
            }
        .sec_wrap .listBox .foldBox > li {
            padding: 20px;
            box-sizing: border-box;
            border-bottom: 1px dashed #f0f0f0;
            display: flex;
            gap: 25px;
            align-items: center;
            position: relative;
        }
        .sec_wrap .listBox .foldBox.menu > li {
            justify-content: space-evenly;
        }
        .sec_wrap .listBox .menulist > li {
            padding: 16px 20px;
            box-sizing: border-box;
            border-bottom: 1px solid #f0f0f0;
            display: flex;
            gap: 20px;
        }
            .sec_wrap .listBox .foldBox > li.exLogin{
                display:block;
            }
                .sec_wrap .listBox .foldBox > li.exLogin input {
                    width: 100%;
                    border-radius: 10px;
                    border: 1px solid #dfdfdf;
                    padding: 15px 10px;
                    box-sizing:border-box;
                }
                .sec_wrap .listBox .foldBox > li.exLogin .chart {
                    align-items: center;
                }
        .sec_wrap .listBox .p_pad {
            padding: 20px;
        }
        .sec_wrap .listBox .list_dot li {
            list-style: disc;
            margin-left: 20px;
            margin-bottom: 10px;
        }
            .sec_wrap .listBox .list_dot li:last-child{
                margin-bottom:0;
            }
            .exLogin .chart .lable {
                width: 100%;
                box-sizing: border-box;
            }

                        .exLogin .chart .lable ul {
                            display: flex;
                            gap: 8px;
                            flex-direction: column;
                        }

                        .exLogin .chart .lable li {
                            display: flex;
                            align-items: center;
                            justify-content: space-between;
                        }

                            .exLogin .chart .lable li .df_st {
                                display: flex;
                                align-items: center;
                                justify-content: flex-start;
                                gap: 5px;
                            }

                            .exLogin .chart .lable li .axis {
                                width: 10px;
                                min-width: 10px;
                                height: 10px;
                                background-color: #3FCBA8;
                                border-radius: 2rem;
                                display: block;
                            }

.exLogin .lable li:nth-child(2) .axis {
    background-color: #F7B401;
}

.exLogin .lable li:nth-child(3) .axis {
    background-color: #EB6D6E;
}

.exLogin .lable li:nth-child(4) .axis i {
    background-color: #5265b4;
}

.exLogin .lable li:nth-child(5) .axis i {
    background-color: #4eaac1;
}

                .sec_wrap .listBox .foldBox > li .result_txt {
                    border: 1px solid #dfdfdf;
                    border-radius: 10px;
                    padding: 11px 10px;
                    width: 100%;
                    box-sizing: border-box;
                }
            .sec_wrap .listBox .foldBox > li p:first-child {
                min-width: 60px;
                letter-spacing: -0.4px;
            }
.sec_wrap .listBox .foldBox.info > li p:first-child {
    min-width: 76px;
}
        .sec_wrap .listBox.ratio_112 .foldBox li p:first-child {
            min-width: 116px;
        }
.sec_wrap .listBox .foldBox li .menu_topicon {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    width: 75px;
}
            .sec_wrap .listBox .foldBox li .menu_topicon div {
                border-radius: 15px;
                background: #f5f5f5;
                width: 50px;
                height: 50px;
                display: flex;
                justify-content: center;
                align-items: center;
            }
            .sec_wrap .listBox .list_tit {
                border-bottom: 1px solid #f0f0f0;
                padding: 20px;
                box-sizing: border-box;
            }
                .sec_wrap .listBox .list_tit .list_dfBox {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                }
                    .sec_wrap .listBox .list_tit .list_dfBox img{
                        height:17px;
                        width:auto;
                    }
                        .sec_wrap .listBox .list_tit .list_dfBox img.ic_del {
                            height: 24px;
                        }
                        .sec_wrap .listBox img.i_partner {
                            height: 17px;
                            width: auto;
                        }
                    .sec_wrap .listBox li.list_select {
                        padding: 8px 20px;
                    }
        .sec_wrap .listBox li .yearpicker {
            border: 1px solid #dfdfdf;
            border-radius: 10px;
            padding: 11px 10px;
            width: 100%;
        }
                        .sec_wrap .listBox li .yearpicker-container {
                            top: 55px;
                            left: 100px;
                        }
                        .sec_wrap .listBox li select {
                            width: 100%;
                            border-radius: 10px;
                            border: 1px solid #dfdfdf;
                            padding: 10px;
                        }
        .sec_wrap .listBox .list_close {
            padding: 20px;
        }
.sec_wrap .listBox .my_profile {
    border-bottom: 1px dashed #f0f0f0;
    padding:40px 0 25px;
}
    .sec_wrap .listBox .my_profile .imgBox {
        margin: 0 auto;
        width: fit-content;
        position:relative;
    }
        .sec_wrap .listBox .my_profile .imgBox .img_edit{
            position:absolute;
            right:0px;
            bottom:0px;
        }
.fa_list li {
    border-radius: 15px;
    background: #fff;
    margin-bottom: 10px;
    padding: 20px;
    box-sizing: border-box;
    align-items: center;
}
    .fa_list li .df_fs {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 20px;
    }
    .fa_list li .imgBox {
        width: 70px;
        height: 70px;
        border-radius: 50%;
        overflow: hidden;
        position: relative;
    }

        .fa_list li .imgBox img{
            width:100%;
            position:absolute;
            top:50%;
            left:50%;
            transform:translate(-50%,-50%);
        }
    .fa_list li .ic_touch{
        gap:10px;
    }
    .fa_list li .ic_touch img {
        width: 52px;
        height: auto;
    }
.certif_list{
    gap:35px;
}
    .certif_list .fa_regist_image {
        border-radius: 10px;
        overflow: hidden;
        width: 45%;
    }
        .certif_list .fa_regist_image img {
            width: 100%;
            height: auto;
        }
    .certif_list .fa_blank {
        border-radius: 10px;
        word-break: keep-all;
        font-size: 1.4rem;
        font-weight: 400;
        color: #888;
        text-align: center;
        height: 100%;
        box-sizing: border-box;
        position: relative;
        background: #eee;
    }
        .certif_list .fa_blank span {
            position: absolute;
            top: 50%;
            transform: translatey(-50%);
            left: 0;
        }
        .r10_btn {
            border-radius: 10px;
            background: #000000;
            text-align: center;
            padding: 12px;
            box-sizing: border-box;
            border: 1px solid #000000;
            width: 100%;
        }
.r10_btn2 {
    border-radius: 10px;
    background: #ffffff;
    text-align: center;
    padding: 12px;
    box-sizing: border-box;
    border:1px solid #000000;
    width:100%;
}
.r10_btn3 {
    border-radius: 10px;
    background: #00B750;
    text-align: center;
    padding: 12px;
    box-sizing: border-box;
    width: 100%;
}
.r10_btn4 {
    border-radius: 10px;
    background: #F5F5F5;
    text-align: center;
    padding: 12px;
    box-sizing: border-box;
    width: 100%;
}
.r10_btn5 {
    border-radius: 10px;
    background: #F9E11F;
    text-align: center;
    padding: 12px 10px;
    box-sizing: border-box;
    width: 100%;
}
    .form_toggle {
        display: flex;
        gap: 5px;
        width: 100%;
    }
.form_radio_btn {
    width: calc((100% - 5px) / 2);
    height: 45px;
    border: 1px solid #EAE7E7;
    border-radius: 10px;
}

    .form_radio_btn input[type=radio] {
        display: none;
    }

    .form_radio_btn label {
        display: block;
        border-radius: 10px;
        margin: 0 auto;
        text-align: center;
        height: -webkit-fill-available;
        line-height: 45px;
    }

    /* Checked */
    .form_radio_btn input[type=radio]:checked + label {
        background: #F2FBF6;
        border: 1px solid #00b750;
        color: #00B750;
    }


    /* Disabled */
    .form_radio_btn input[type=radio] + label {
        background: #Ffff;
        color: #999;
        border: 1px solid #E0E0E0;
    }

/*공지사항*/
.notice_list {
    border-bottom: 1px solid #F0F0F0;
    padding:20px;
}
.icon_new {
    color: #fff;
    font-size: 9px;
    font-weight: 600;
    background: #FF5A5A;
    border-radius: 3px;
    box-sizing: border-box;
    width: 14px;
    height: 14px;
    line-height: 14px;
    text-align: center;
}
.notice_list .df_fs {
    gap: 5px;
    align-items: center;
}
.notice_list.df_fs {
    gap: 20px;
    align-items: center;
}
.notice_list .fileBox {
    padding: 10px 8px;
    border-radius: 10px;
    border: 1px solid #E0E0E0
}
.notice_list .df_fs .arrow {
    width: 6px;
    transform: rotate(90deg);
    margin-left: 2px;
}
    .notice_list .df_fs .arrow.down {
        width: 6px;
        transform: rotate(-90deg);
        margin-left: 2px;
    }
    .notice_list .fileBox > p {
        max-width: 70%;
    }
.notice_list .one_line {
    width: calc(100% - 85px);
    padding: 0 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/*포트폴리오*/
.bg_f5{
    background:#f5f5f5;
}
.pofol_list{
    padding:20px;

}
    .pofol_list li {
        border-radius: 10px;
        background: #ffffff;
        padding: 10px;
        box-sizing: border-box;
        text-align: center;
        margin-bottom: 10px;
        height: 48px;
        line-height: 28px;
    }
        .pofol_list li img{
            height:33px;
            width:auto;

        } 
        /*popup*/
        .popup_wrap {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: #00000080;
            padding: 20px;
            box-sizing: border-box;
            z-index: 999999999;
            display: none;
        }
.popup_wrap.on{
    display:block;
}
            .popup_wrap .p_box {
                width: 100%;
                height: fit-content;
                min-height: 50px;
                border-radius: 15px;
                background: #fff;
                padding: 20px;
                box-sizing: border-box;
                position: relative;
                top: 50%;
                transform: translateY(-50%);
                max-height: 90vh;
                overflow-y: auto;
            }
    .popup_wrap .p_box.pad_no {
        padding: 0;
    }
        .popup_wrap .p_box.pad_no .pad_tit {
            padding: 20px;
            box-sizing: border-box;
            border-bottom: 1px solid #f0f0f0;
        }
        .popup_wrap .p_box.pad_no .popList li{
            padding: 20px;
            box-sizing: border-box;
            border-bottom: 1px dashed #f0f0f0;
        }
            .popup_wrap .p_box.pad_no .popList li .tableWrap {
                border: 1px solid #f0f0f0;
                border-radius: 15px;
                overflow: hidden;
                height: 230px;
                overflow-y: auto;
                box-sizing: border-box;
            }
            .popup_wrap .p_box.pad_no .popList li table {
                border-collapse: collapse;
                width: 100%;
                position: relative;
            }
                .popup_wrap .p_box.pad_no .popList li table thead {
                    position: sticky;
                    top: 0px;
                    background: #fff;
                    box-sizing: border-box;
                    margin-top: 0px;
                }
                .popup_wrap .p_box.pad_no .popList li table td {
                    padding: 14px 5px;
                }
                .popup_wrap .p_box.pad_no .popList .df_fs {
                    gap: 50px;
                }
            .popup_wrap .p_box .txtonly {
                text-align: center;
                padding: 40px 0 60px;
            }
    .popup_wrap .p_box .p_top img { 
        float: right;
        width: 22px;
        height: auto;
    }
    .popup_wrap .p_box img {
        width: 100%;
        height: auto;
    }
                .popup_wrap .p_box select{
                    width:100%;
                    border-radius:10px;
                    border:1px solid #e0e0e0;
                    padding:12px 10px;
                }

                .popup_wrap .download_qr,
                .popup_wrap .btn {
                    padding: 10px;
                    width: 100%;
                    border-radius: 10px;
                    background: #000000;
                    box-sizing: border-box;
                    text-align: center;
                    border: 1px solid #000000;
                }
        .popup_wrap .btn2 {
            background: #ffffff;
            border:1px solid #000000;
        }
            .popup_wrap .btn3 {
                background: #DBF4E6;
                border: none;
                padding: 13px;
            }
            .popup_wrap .btn4 {
                background: #F5F5F5;
                border: none;
                padding: 13px;
            }
            .popup_wrap .dbBox {
                display: flex;
                gap: 10px;
            }

            .popup_wrap .p_box .share_box {
                display: flex;
                gap: 5px;
                flex-direction: column;
                align-items: center;
            }
                .popup_wrap .p_box .share_box .ic_box {
                    border-radius: 20px;
                    width: 80px;
                    height: 80px;
                    background: #00B750;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                }
                    .popup_wrap .p_box .share_box .ic_box.kakao{
                        background:#FDE402;
                    }
                    .popup_wrap .p_box .share_box .ic_box img {
                        width: 50px;
                        height: auto;
                    }