@charset "utf-8";
/* CSS Document */
@font-face {
    font-family: 'Pretendard-Regular';
    src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable.css');
/* 초기화 */
*{
    font-family: 'Pretendard', 'Noto Sans KR', sans-serif;
    box-sizing: border-box
}
::selection {
    background: rgba(138, 138, 138, 0.35);
    color: inherit;
}

html {
    overflow-y:scroll;
}
body {
    margin:0 auto;
    padding:0!important;
    font-size: 14.5px;
    /*font-size:0.677vw;
    */
    letter-spacing:0;
    line-height:1.6em;
    color:#1a1a1c;
    background:#ffffff;
    min-width: 280px;
    font-weight:400;
    word-break:keep-all;
}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {
    margin:0;
    padding:0;
    border:0
}
h1, h2, h3, h4, h5, h6 {
    font-size:1em
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, div {
    display:block;
    box-sizing: border-box;
}
ul, dl, dd {
    margin:0;
    padding:0;
    list-style:none
}
dl dt{
    font-weight: 500;
}
legend {
    position:absolute;
    font-size:0;
    line-height:0;
    text-indent:-9999em;
    overflow:hidden
}
label, input, button, select {
    border-radius:4px;
    box-sizing: border-box;
}
label, input, button, select, img {
    vertical-align:middle;
    outline:none;
}
label{
    margin: 0;
    font-weight: 600;
}
input:focus, button:focus {
    outline:none;
}
input, button {
    margin:0;
    padding:0;
    font-size:initial;
    outline:none;
}
button {
    cursor:pointer;
}
input[type=text], input[type=password], input[type=submit], input[type=image], button {
    border-radius:;
    font-size:initial;
    -webkit-appearance:none
}
textarea, select {
    font-size:1em;
}
textarea {
    border-radius:0;
    -webkit-appearance:none;
}
select {
    margin:0;
    border-radius:4px;
}
p {
    margin:0;
    padding:0;
    word-break:keep-all
}
hr {
    display:none
}
pre {
    overflow-x:scroll;
    font-size:1.1em
}
a, a:link, a:visited {
    color:#1a1a1c;
    text-decoration:none;
    cursor: pointer;
}
a:hover, a:focus, a:active {
    text-decoration:none;
}
/*스크롤디자인*/
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
::-webkit-scrollbar-thumb {
    background-color: #00000020;
    border-radius: 10px;
    background-clip: padding-box;
    border: 1px solid transparent;
}
::-webkit-scrollbar-track {
    background-color: #00000010;
    border-radius: 10px;
}
/*설정*/
h1{
    font-size: 2.5em;
}
h2{
    font-size: 2.2em;
}
h3{
    font-size:2em;
}
h4{
    font-size:1.8em;
}
h5{
    font-size: 1.5em;
}
h6{
    font-size: 1.25em;
}
a, a:link, a:visited {
    text-decoration:none;
    cursor: pointer;
}
a:hover, a:focus, a:active {
    text-decoration:none;
    color: #120030;
}
.panel {
    margin-bottom: 10px;
}
.nowrap {
     white-space: nowrap
 }
.flex {
    display: flex!important;
}
.column {
    flex-direction: column;
}
.flex.wrap {
    flex-wrap: wrap
}
.flex.nowrap {
    flex-wrap: nowrap
}
.flex.jc-sb {
    justify-content: space-between
}
.flex.start {
    justify-content: flex-start
}
.flex.end {
    justify-content: flex-end
}
.flex.center {
    justify-content: center
}
.flex.ai-c{
    align-items: center
}
.flex.ai-b{
    align-items: baseline
}
.flex.ai-e{
    align-items: flex-end
}
.flex.ai-s{
    align-items: flex-start;
}
.hide {
    display: none!important;
}
.grid{
    display: grid;
    gap: 10px;
}
.grid > li, .grid > div{
    box-sizing: border-box;
    overflow: hidden;
}
.grid2{
    grid-template-columns: repeat(2, 1fr);
}
.grid3{
    grid-template-columns: repeat(3, 1fr);
}
.grid4{
    grid-template-columns: repeat(4, 1fr);
}
.grid5{
    grid-template-columns: repeat(5, 1fr);
}
.grid6{
    grid-template-columns: repeat(6, 1fr);
}
.grid7{
    grid-template-columns: repeat(7, 1fr);
}

.grid_v1 {grid-template-columns: calc(70% - 25px* 0.70) calc(30% - 25px* 0.30); gap: 25px; margin-left: 0px}
.grid_v2 {grid-template-columns: calc(60% - 25px* 0.60) calc(40% - 25px* 0.40); gap: 25px; margin-left: 0px}
.grid_v3 {grid-template-columns: calc(55% - 25px* 0.55) calc(45% - 25px* 0.45); gap: 25px; margin-left: 0px}
.grid_v4 {grid-template-columns: calc(65% - 25px* 0.65) calc(35% - 25px* 0.35); gap: 25px; margin-left: 0px}
.grid_v5 {grid-template-columns: calc(25% - 25px* 0.25) calc(75% - 25px* 0.75); gap: 25px; margin-left: 0px}
.grid_v6 {grid-template-columns: calc(75% - 25px* 0.75) calc(25% - 25px* 0.25); gap: 25px; margin-left: 0px}
.grid_v7 {grid-template-columns: calc(10% - 25px* 0.10) calc(90% - 25px* 0.90); gap: 25px; margin-left: 0px}
@media screen and (max-width: 1700px) {
    .grid_v1 {margin-left: 0px; padding: 0 40px 0 20px;}
    .grid_v2 {margin-left: 0px; padding: 0 40px 0 20px;}
    .grid_v3 {margin-left: 0px; padding: 0 40px 0 20px;}
    .grid_v4 {margin-left: 0px; padding: 0 40px 0 20px;}
    .grid_v5 {margin-left: 0px; padding: 0 40px 0 20px;}
    .grid_v6 {margin-left: 0px; padding: 0 0px 0 0px;}
    .grid_v7 {margin-left: 0px; padding: 0 0px 0 0px;}
}
.visible-1200 {
    display: none!important;
}
.hidden-1200 {
    display: block!important;
}
@media screen and (max-width: 1700px) {
    .visible-1200 {
        display: block!important;
    }
    .hidden-1200 {
        display: none!important;
    }
}
.gap3{
    gap: 3px;
}
.gap5{
    gap: 5px;
}
.gap10{
    gap: 10px;
}
.gap15{
    gap: 15px;
}
.gap20{
    gap: 20px;
}
.gap25{
    gap: 25px;
}
.gap30{
    gap: 30px;
}
.gap40{
    gap: 40px;
}
.w49 {
    width: 49% !important
}
.w50 {
    width: 50% !important
}
.w100 {
    width: 100%!important;
}
.wfit {
    width: fit-content!important;
}
.mw100 {
    max-width: 100px!important;
}
.mw150 {
    max-width: 150px!important;
}
.mw200 {
    max-width: 200px!important;
}
.w30px {
    width: 30px!important;
}
.w40px {
    width: 40px!important;
}
.w50px {
    width: 50px!important;
}
.w60px {
    width: 60px!important;
}
.w70px {
    width: 70px!important;
}
.w80px {
    width: 80px!important;
}
.w90px {
    width: 90px!important;
}
.w100px {
    width: 100px!important;
}
.mw100px {
    max-width: 100px!important;
}
.w110px {
    width: 110px!important;
}
.w150px {
    width: 150px!important;
}
.w200px {
    width: 200px!important;
}
.w250px {
    width: 250px!important;
}
.w600px{
    max-width: 600px;
    margin: 0 auto;
}
.w900px{
    max-width: 900px;
    margin: 0 auto;
}
.w1200px{
    max-width: 1200px;
    margin: 0 auto;
}
.w1300px{
    max-width: 1300px;
    margin: 0 auto;
}
.max-none {
    max-width: none!important;
}
.mari-auto {
    margin-right: auto!important;
}
.male-auto {
    margin-left: auto!important;
}
.search {
    display: flex;
}
.search select{
    margin-bottom: 0;
}
.sticky{
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
}
.mono {
    filter: contrast(0%);
}
.img.circle{
    border-radius: 50%;
    overflow: hidden;
}
.img{
    border: 1px solid #ECECEC;
}
.img > .icon{
    z-index: 1;
    margin:8px;
    position: absolute;
    left: 0;
    top: 0;
    min-width: 22px;
    text-align: center;
}
.img img{
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}
.img_32{
    width: 32px;
    aspect-ratio:1/1;
    margin-right: 8px;
    border: 1px solid #eee;
}
.img_40{
    width: 40px;
    aspect-ratio:1/1;
    margin-right: 8px;
    border: 1px solid #eee;
}
.img_50{
    width: 50px;
    aspect-ratio:1/1;
    margin-right: 10px;
    border: 1px solid #eee;
}
.img_70{
    width: 70px;
    aspect-ratio:1/1;
    margin-right: 10px;
}
.img_85{
    width: 85px;
    height: 85px;
    border: 1px solid #ECECEC;
    margin-right:15px;
}
.img_100{
    width: 100px;
    height: 100px;
    border: 1px solid #ECECEC;
    margin-right: 24px;
}
.img_200{
    width: 200px;
    height: 200px;
    border: 1px solid #ECECEC;
    margin: 0 auto;
}
.img.h80{
    height: 80px;
    overflow: hidden;
}
.inner{
    max-width: 1300px;
    width: 100%;
    margin: 0 auto;
}
.cut{
    display:inline-block;
    width:100%;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align:middle;
    word-break: break-all;
    white-space: nowrap;
}
.cut2{
    overflow : hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    width:100%;
    word-break: break-all;
}
.cut3{
    overflow : hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    width:100%;
    word-break: break-all;
}
.b0 {
    border: 0px!important;
}
.mb0 {
    margin-bottom: 0px!important;
}
.mb5 {
    margin-bottom: 5px!important;
}
.mb10 {
    margin-bottom: 10px!important;
}
.mb15 {
    margin-bottom: 15px!important;
}
.mb20 {
    margin-bottom: 20px!important;
}
.mb25 {
    margin-bottom: 25px!important;
}
.mb30 {
    margin-bottom: 30px!important;
}
.mb5 {
    margin-bottom: 5px!important;
}
.mb15 {
    margin-bottom: 15px!important;
}
.mb25 {
    margin-bottom: 25px!important;
}
.mt0 {
    margin-top: 0px!important;
}
.mt5 {
    margin-top: 5px!important;
}
.mt10 {
    margin-top: 10px!important;
}
.mt15 {
    margin-top: 15px!important;
}
.mt25 {
    margin-top: 25px!important;
}
.mt20 {
    margin-top: 20px!important;
}
.mt30 {
    margin-top: 30px!important;
}
.m10 {
    margin: 10px 0!important;
}
.cursor {
    cursor: pointer;
}
/*아이콘*/
.icon{
    font-size: 12px;
    padding: 3px 5px;
    line-height: normal;
    font-weight: 600;
    border-radius: 3px;
    font-style: normal;
    display: inline-flex;
    align-items: center;
}
.icon_pink{
    background:#ff5b90!important;
    color: #fff!important;
}
.icon_red{
    background: #FF0606!important;
    color: #fff!important;
}
.icon_red2{
    background:#ff858b!important;
    color: #fff!important;
}
.icon_red3{
    background: #fff4f4 !important;
    color: #FF0606!important;
}
.icon_blue{
    background: #d7d9ff!important;
    color: #3942e0!important;
}
.icon_sky{
    background: #dcf3fa!important;
    color: #2992d5!important;
}
.icon_green{
    background: #77a601!important;
    color: #fff !important;
}
.icon_greenline{
    border:1px solid #77a601!important;
    background: #fff!important;
    color: #77a601 !important;
}
.icon_color{
    background: #faffef !important;
    color: #77a601!important;
}
.icon_color2{
    background: #77a60120 !important;
    color: #77a601!important;
}
.icon_wcolor{
    background: #f4fffc !important;
    color: #00a28c!important;
}
.icon_acolor{
    background: #f8f9ff !important;
    color: #6b88fd!important;
}
.icon_black{
    background: #232323!important;
    color: #fff!important;
}
.icon_blackline{
    border:1px solid #232323!important;
    background: #fff!important;
    color: #232323!important;
}
.icon_gray{
    background: #00000010!important;
    color: #828282!important;
}
.icon_gray3{
    background: #f3f3f3!important;
    color: #727272!important;
}
.icon_gray2{
    background: #333333!important;
    color: #ffffff!important;
}
.icon_line{
    border: 1px solid #cccccc;
    padding: 3px 5px;
    display: inline-block;
}
.icon_line2{
    border: 1px solid #919191;
    color: #828282;
    padding: 3px 5px;
    display: inline-block;
}
.icon_line3{
    background: #fff;
    border: 1px solid #919191;
    color: #828282;
    padding: 3px 5px;
    display: inline-block;
}
.icon_white{
    background: #fff;
    color: #000;
}
.icon_white2{
    background: #fff;
    color: #77a601!important;
}
.icon_white3{
    background: #ffffff20;
    color: #fff;
}
.icon_black2{
    background: #00000010;
    color: #000;
}
.icon.h30{
    line-height: 20px;
}
.icon.circle{
    text-align: center;
    width: 67px;
    height: 67px;
    border-radius: 50%;
    background: #ffe6e6;
    display: table;
}
.icon.circle p{
    display: table-cell;
    vertical-align: middle;
}
.icon.circle span{
    font-size: 1.05em;
    color: #7D7D7D;
}
.icon.circle strong{
    display: block;
    font-size: 1.25em;
    font-weight: 700;
    color: #77a601;
    margin-top: 6px;
}
.icon.circle.gray{
    filter:grayscale(100%);
    opacity: 0.6;
}
.icon_mini{
    font-size: 11px;
    padding:2px 4px;
    font-weight: 700;
    letter-spacing: -0.5px;
}
.icon_big{
    font-size: 16px;
    padding:5px 10px;
    font-weight: 600;
    letter-spacing: -0.5px;
}
/*버튼*/
button:disabled, button:disabled:hover{
    filter:saturate(0);
    background: #33333315;
    color:#33333375;
    border-color: #dddddd;
}
.btn,a.btn{
    height: fit-content;
    background: #fff;
    display: inline-block ;
    text-align:center;
    border-radius: 3px;
    border: 1px solid transparent;
    width: max-content;
    word-break: keep-all;
    padding: 8px 10px;
    line-height: 1em;
    cursor: pointer;
    font-weight: 600;
    position: relative;
    box-sizing: border-box;
    text-align: center;
    font-size: 14.5px;
}
.btn:hover{
    transition: all 0.3s;
}
.form_wrap dt{
    color: #7b7b7b;
    margin:2px 0 4px 0;
    display:block;
}
.form_wrap dd.grid{
    gap: 4px;
}
.form_wrap select{
    width: 100%;
}
.form_wrap .select.grid{
    gap: 4px;
}
.form_wrap .grid select{
    margin-bottom: 0;
}
.form_wrap .btn{
    height: 40px;
}
.form_wrap .flex > input:not(:last-child){
    margin-right: 4px;
}
.form_wrap .flex > .btn{
    margin-left: 0px;
    width: max-content;
    white-space:nowrap;
}
.btn_mini,a.btn_mini{
    padding: 4px 4px;
    height: auto!important;
    font-size: 11px;
    margin: 2px 0
}
.btn_mini2,a.btn_mini2{
    padding: 2px 6px;
    height: auto!important;
    font-size: 9px;
    margin: 2px
}
.btn_small{
    padding: 5px 10px;
    height: auto!important;
}
.btn_middle,a.btn_middle{
    width: 50%;
    padding: 15px 0;
    font-size: 1.2em;
    font-weight: 600;
    height: auto!important;
}
.btn_large,a.btn_large{
    width: 100%;
    padding: 15px 0;
    font-size: 1.2em;
    font-weight: 600;
    height: auto!important;
}
a.btn_color, .btn_color{
    background-color: #77a601;
    color: #fff;
}
a.btn_color:hover, .btn_color:hover{
    background-color: #597a00;
    color: #fff;
}
a.btn_wcolor, .btn_wcolor{
    background-color: #00a28c;
    color: #fff;
}
a.btn_wcolor:hover, .btn_wcolor:hover{
    background-color: #007a5e;
    color: #fff;
}
a.btn_acolor, .btn_acolor{
    background-color: #6b88fd;
    color: #fff;
}
a.btn_acolor:hover, .btn_acolor:hover{
    background-color: rgb(0, 10, 122);
    color: #fff;
}
a.btn_color2, .btn_color2{
    background-color: #77a60120;
    color: #77a601;
}
a.btn_color2:hover, .btn_color2:hover{
    background-color: #77a60150;
    color: #77a601;
}
a.btn_wcolor2, .btn_wcolor2{
    background-color: #00a28c20;
    color: #00a28c;
}
a.btn_wcolor2:hover, .btn_wcolor2:hover{
    background-color: #00a28c50;
    color: #00a28c;
}
a.btn_acolor2, .btn_acolor2{
    background-color: #6b88fd20;
    color: #6b88fd;
}
a.btn_acolor2:hover, .btn_acolor2:hover{
    background-color: #6b88fd50;
    color: #6b88fd;
}
a.btn_color3, .btn_color3{
    background-color: #4e7000;
    color: #fff;
}
a.btn_color3:hover, .btn_color3:hover{
    background-color: #77a601;
    color: #fff;
}
a.btn_colorline, .btn_colorline{
    background-color: #fff;
    color: #77a601;
    border: 1px solid #77a601;
}
a.btn_colorline:hover, .btn_colorline:hover{
    background-color: #77a601;
    color: #fff;
    border: 1px solid #77a601;
}
a.btn_colorline2, .btn_colorline2{
    background-color: #fff;
    color: #000;
    border: 1px solid #77a601;
}
a.btn_colorline2:hover, .btn_colorline2:hover{
    background-color: #fff;
    color: #77a601;
    border: 1px solid #77a601;
}
a.btn_wcolorline, .btn_wcolorline{
    background-color: #fff;
    color: #00a28c;
    border: 1px solid #00a28c;
}
a.btn_wcolorline:hover, .btn_wcolorline:hover{
    background-color: #00a28c;
    color: #fff;
    border: 1px solid #00a28c;
}
a.btn_wcolorline2, .btn_wcolorline2{
    background-color: #fff;
    color: #000;
    border: 1px solid #00a28c;
}
a.btn_wcolorline2:hover, .btn_wcolorline2:hover{
    background-color: #fff;
    color: #00a28c;
    border: 1px solid #00a28c;
}
a.btn_acolorline, .btn_acolorline{
    background-color: #fff;
    color: #6b88fd;
    border: 1px solid #6b88fd;
}
a.btn_acolorline:hover, .btn_acolorline:hover{
    background-color: #6b88fd;
    color: #fff;
    border: 1px solid #6b88fd;
}
a.btn_acolorline2, .btn_acolorline2{
    background-color: #fff;
    color: #000;
    border: 1px solid #6b88fd;
}
a.btn_acolorline2:hover, .btn_acolorline2:hover{
    background-color: #fff;
    color: #6b88fd;
    border: 1px solid #6b88fd;
}
a.btn_green, .btn_green{
    background-color: #20b436;
    color: #fff;
}
a.btn_green:hover, .btn_green:hover{
    background-color: #348121;
    color: #fff;
}
a.btn_blue, .btn_blue{
    background-color: #008cfc;
    color: #fff;
}
a.btn_blue:hover, .btn_blue:hover{
    background-color: #5c02fa;
    color: #fff;
}
a.btn_purple, .btn_purple{
    background-color: #4900C0;
    color: #fff;
}
a.btn_purple:hover, .btn_purple:hover{
    background-color: #370093;
    color: #fff;
}
a.btn_red, .btn_red{
    background-color: #ff0606;
    color: #fff;
}
a.btn_red:hover, .btn_red:hover{
    background-color: #ff7340;
    color: #ffffff;
}
a.btn_red2, .btn_red2{
    background-color: #fff7f7!important;
    color: #ff0606!important;
}
a.btn_red2:hover, .btn_red2:hover{
    background-color: #ffd4d4!important;
    color: #ff0606;
}
a.btn_redline, .btn_redline{
    background-color: #fff!important;
    color: #ff0606!important;
    border: 1px solid #ff0606;
}
a.btn_redline:hover, .btn_redline:hover{
    background-color: #fff7f7!important;
    color: #ff0606;
    border: 1px solid #ff0606;
}
a.btn_yellow, .btn_yellow{
    background-color: #ffc25e;
    color: #000000;
}
a.btn_yellow:hover, .btn_yellow:hover{
    background-color: #ffc25e;
    color:#000000;
}
a.btn_white, .btn_white{
    background-color: #fff;
    color: #484951;
}
a.btn_white:hover, .btn_white:hover{
    background-color: #484951;
    color: #fff;
}
a.btn_whiteline, .btn_whiteline{
    background-color: #fff;
    color: #484951;
    border: 1px solid #1a1a1c;
}
a.btn_whiteline:hover, .btn_whiteline:hover{
    background-color: #dadada;
    color: #484951;
    border: 1px solid #1a1a1c;
}
a.btn_whiteline2, .btn_whiteline2{
    background-color: #fff0!important;
    color: #3d3d3d;
    border: 1px solid #484951;
}
a.btn_whiteline2:hover, .btn_whiteline2:hover{
    background-color: #484951!important;
    color: #fff;
    border: 1px solid #fff10;
}
a.btn_white2, .btn_white2{
    background-color: #fff;
    color: #77a601;
}
a.btn_white2:hover, .btn_white2:hover{
    background-color: #77a601;
    color: #fff
}
a.btn_white3, .btn_white3{
    background-color: #ffffff20!important;
    color: #fff;
}
a.btn_white3:hover, .btn_white3:hover{
    background-color: #ffffff30!important;
    color: #fff
}
a.btn_black, .btn_black{
    background-color: #484951;
    color: #fff;
    border: 1px solid transparent;
    opacity: 0.8;
}
a.btn_black:hover, .btn_black:hover{
    background-color: #7f7f86;
    color: #fff;
    border: 1px solid transparent;
    opacity: 1;
}
a.btn_blackline, .btn_blackline{
    background-color: #ffffff;
    color: #232323;
    border: 1px solid #616161;
    opacity: 0.8;
}
a.btn_blackline:hover, .btn_blackline:hover{
    background-color: #dadada;
    color: #232323;
    border: 1px solid #616161;
    opacity: 1;
}
a.btn_gray, .btn_gray{
    background-color: #00000020;
    color: #373844
}
a.btn_gray:hover, .btn_gray:hover{
    background-color: #373844;
    color: #fff;
}
a.btn_grayline, .btn_grayline{
    background-color: #eeeeee;
    color: #1a1a1c;
    border: 1px solid #858585;
}
a.btn_grayline:hover, .btn_grayline:hover{
    background-color: #1a1a1c;
    color: #fff;
    border: 1px solid #858585;
}
a.btn_gray2, .btn_gray2{
    background-color: #1a1a1c;
    color: #fff;
}
a.btn_gray2:hover, .btn_gray2:hover{
    background-color: #84848a;
}
a.btn_gray3, .btn_gray3{
    background-color: #565656 !important;
    color: #fff!important;
}
a.btn_gray3:hover, .btn_gray3:hover{
    background-color: #1a1a1c!important;
}
a.btn_line, .btn_line{
    border: 1px solid #E8E8E8;
    background-color: #ffffff;
    color: #484951;
}
a.btn_line:hover, .btn_line:hover{
    background-color: #484951;
    border: 1px solid #484951;
    color: #fff
}
a.btn_line2, .btn_line2{
    border: 1px solid #2A2A2A;
    background-color: #D4D4D4;
    color: #484951;
}
a.btn_line2:hover, .btn_line2:hover{
    background-color: #7e7e7e;
    border: 1px solid #2A2A2A;
    color: #fff
}
a.btn_line3, .btn_line3{
    border: 1px solid #e3e3e3;
    background-color: #ffffff;
    color: #b5b5bb;
}
a.btn_line3:hover, .btn_line3:hover{
    background-color: #7e7e7e;
    border: 1px solid #2A2A2A;
    color: #fff
}
.btn_sdw{
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
}
.btn_h40, a.btn_h40 {
    height: 40px;
    line-height: 22.5px;
    font-size: 16px;
}
.mb_wrap .btn_wrap{
    text-align: center;
    padding:28px 0;
}
.btn_992 {
    display: none
}
@media screen and (max-width: 992px) {
    .btn_992 {
        display: inline-block
    }
}
/*댓글*/
td span.new {
    background: #587900;
    color: #fff;
    font-size: 0.7em;
    padding: 2px 4px;
    border-radius: 4px 4px 0 4px;
    margin-left: 5px;
}
td span.comment {
    font-size: 0.7em;
    padding: 2px 5px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px 4px 4px 0;
    margin-left: 5px;
    font-weight: 800;
}
/*글자*/
.txt_color> a, .txt_color{
    color: #77a601!important;
}
.txt_color2> a, .txt_color2{
    color: #476500!important;
}
.txt_acolor> a, .txt_acolor{
    color: #6b88fd!important;
}
.txt_acolor2> a, .txt_acolor2{
    color: #8f6bfd !important;
}
.txt_wcolor> a, .txt_wcolor{
    color: #00a28c !important;
}
.txt_blue> a, .txt_blue {
    color: #1E48BC!important;
}
.txt_green> a, .txt_green {
    color: #00a915 !important;
}
.txt_blue2> a, .txt_blue2 {
    color: #a8bfff;
}
.txt_sky> a, .txt_sky {
    color: #4aeaff;
}
.txt_pink> a, .txt_pink{
    color:#ff5b90;
}
.txt_yellow> a, .txt_yellow {
    color: #e6af53;
}
.txt_brown> a, .txt_brown {
    color: #95711D;
}
.txt_red > a, .txt_red {
    color: #ff2d0d!important;
}
.txt_gray > a, .txt_gray{
    color: #AFAFAF;
}
.txt_gray2 > a, .txt_gray2{
    color: #4b4b4b;
}
.txt_dark > a, .txt_dark{
    color: #7D7D7D;
}
.txt_black > a, .txt_black{
    color: #232323!important;
}
.txt_white > a, .txt_white{
    color: #ffffff!important;
}
.txt_op09{
    opacity: 0.9;
}
.txt_op08{
    opacity: 0.8;
}
.txt_op07{
    opacity: 0.7;
}
.txt_bold {
    font-weight: 800!important;
}
.txt_bold2 {
    font-weight: 600!important;
}
.txt_thin {
    font-weight: 400!important;
}
.txt_under {
    text-decoration: underline!important;
}
.txt_under2{
    text-decoration:none;
    opacity:1;
    border-bottom:10px solid #fff7f5;
    display:inline-block;
    line-height:0px;
}
.txt_through {
    text-decoration:line-through
}
.txt_down{
    font-size: 0.9em;
    line-height: 1.6em;
}
.txt_up{
    font-size: 1.1em;
}
.txt_mini{
    font-size: 0.75em;
}
.text_center{
    text-align: center!important;
}
.text_left{
    text-align: left!important;
}
.text_right{
    text-align: right!important;
}
/*박스디자인*/
.box{
    border: 1px solid #fff0;
    padding: 10px;
    border-radius: 5px;
}
.box5{
    border: 1px solid #fff0;
    padding: 3px 5px;
    border-radius: 5px;
}
.box15{
    border: 1px solid #fff0;
    padding: 15px;
    border-radius: 5px;
}
.box20{
    border: 1px solid #fff0;
    padding: 20px;
}
.box25{
    border: 1px solid #fff0;
    padding: 25px;
}

@media screen and (max-width: 1200px) {

    .box25{
        padding: 15px;
    }
}
.box_sdw{
    box-shadow: 3px 3px 15px rgba(0, 0, 0, 0.06);
    background-color: #FFFFFF;
}
.box_white{
    background: #fff;
}
.box_line{
    background: #fff;
    border:1px solid #c4c4c4;
}
.box_line2{
    background: #fff;
    border:1px solid #f1ecec;
}
.box_color{
    background: #f2ffd9;
    color: #77a601;
}
.box_color2{
    background: #77a601;
    color: #fff
}
.box_colorline{
    border:1px solid #77a601;
    background: #fff;
}
.box_wcolor{
    background: #f2fffd;
    color: #00a28c;
}
.box_wcolor2{
    background: #00a28c;
    color: #fff
}
.box_wcolorline{
    border:1px solid #00a28c;
    background: #fff;
}
.box_acolor{
    background: #f2f5ff;
    color: #6b88fd;
}
.box_acolor2{
    background: #6b88fd;
    color: #fff
}
.box_acolorline{
    border:1px solid #6b88fd;
    background: #fff;
}
.box_under{
    border-bottom: 1px solid #DBDBDB;
}
.box_gray{
    background-color: #faf9f9;
    border-color: #d5d8da
}
.box_gray2{
    background: linear-gradient(to right, #eaf2de, #f2fcf7);
    border-color: #00000005
}
.box_gray3{
    background-color: #faf9f9;
    border-color: #b9c7bd
}
.box_grayline{
    background-color: #f4f4f4;
    border-color: #dadada
}
.box_green{
    background: #EFFFEF 0% 0% no-repeat padding-box;
    border: 1px solid #96E140;
    opacity: 1;
}
.box_green a{
    color: #8FAE8E;
}
.box_yellow{
    background:#FFFAEF;
    border: 1px solid #FFC06D;
}
.box_red{
    background: #FFEFEF 0% 0% no-repeat padding-box;
    border: 1px solid #FF816D;
    opacity: 1;
}
.box_red2{
    background: #ffd6d6 0% 0% no-repeat padding-box;
    border: 0px solid #FF816D;
    opacity: 1;
}
.box_blue{
    background: #eff4ff 0% 0% no-repeat padding-box;
    border: 1px solid #6d74ff;
    opacity: 1;
}
.box_radius{
    border-radius:10px;
}
.box_radius2{
    border-radius:10px 10px 5px 5px;
}
.list_line li{
    border-bottom: 1px solid #DBDBDB;
    padding: 20px 10px;
}
.txt_line span{
    color: #9F9F9F;
}
.txt_line span:after{
    content: "";
    width: 1px;
    height: 10px;
    display: inline-block;
    background: #E9E9E9;
    margin: 0 4px;
}
.txt_line span:last-child:after{
    display: none;
}
/*폼형태*/
input{
    height: 40px;
    background-color: #00000010;
    border: 1px solid #00000025;
    color: #1a1a1c;
    padding: 10px;
    display: block;
    font-size: 1em!important;
    line-height: 1.6em!important;
    opacity: 1;
    width: 100%;
    border-radius: 3px;
}
input.h35{
    height: 35px;!important;
}
input.white{
    background-color: #FFFFFF!important;
}
input.color{
    background-color: #cdd5bd40!important;
}
input.line{
    border: 1px solid #acc867;
}
input.aline{
    border: 1px solid #6b87fc;
}
input.big{
    height: 40px;
    font-size: 1.35em!important;
    font-weight: 700;
    padding: 5px 10px;
}
input:disabled, input:read-only {
    background-color: #E8E8E8;
}
/* 토글 스위치 컨테이너 */
.switch {
    position: relative;
    display: inline-block;
    width: 25px;
    height: 16px;
}

/* 숨겨진 체크박스 */
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

/* 슬라이더 */
.switch .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #77a502;
    transition: 0.4s;
    border-radius: 34px;
}

/* 원 모양 */
.switch .slider:before {
    position: absolute;
    content: "";
    height: 12px;
    width: 12px;
    left: 2px;
    bottom: 2px;
    background-color: #fff;
    transition: 0.4s;
    border-radius: 50%;
}

/* 체크되었을 때 배경색 */
.switch input:checked + .slider {
    background-color: #af4c4c;
}

/* 체크되었을 때 원 이동 */
.switch input:checked + .slider:before {
    transform: translateX(9px);
}
textarea {
    background-color: #f5f5f5;
    border: 1px solid #fff0;
    color: #1a1a1c;
    padding: 10px;
    display: block;
    font-size: 1em!important;
    line-height: 1.6em!important;
    opacity: 1;
    width: 100%;
    border-radius: 3px;
}
textarea.white{
    background-color: #FFFFFF!important;
}
textarea.v2{
    background-color: #fafdf1 !important;
}
textarea:disabled, textarea:read-only {
    background-color: #f3f3f3;
    border: 0px ;
}
input::placeholder{
    opacity: 0.8;
}
/*파일업로드*/
.filebox .upload-name {
    margin-bottom: 5px;
}
.filebox label {
    margin-bottom: 12px;
}
.filebox input[type="file"] {
    position: absolute;
    width: 0;
    height: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
}
select {
    padding: 0px 30px 0 12.5px;
    border-radius: 3px;
    width: max-content;
    color: #1a1a1c;
    height: 40px;
    background-color: #FFFFFF;
    border: 1px solid #00000025;
    font-weight: 600;
    appearance: none;
    position: relative;
    background-image: url('../img/common/arrow-down.svg'); /* 화살표 */
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 20px;
}
select.noline {
    color: #1a1a1c;
    border: 0;
}
select.noline.v2 {
    color: #77a601;
    border: 0;
}
select.wnoline {
    color: #00a28c;
    border: 0;
}
select.anoline {
    color: #6b87fc;
    border: 0;
}
select.line {
    color: #1a1a1c;
    border: 1px solid #cccccc;
}
select.color {
    background-color: #cdd5bd40!important;
}
select.colorline {
    color: #1a1a1c;
    border: 1px solid #acc867;
}
select.colorline.v2 {
    color: #1a1a1c;
    border: 2px solid #acc867;
    font-weight: 700;
}
select.wcolorline {
    color: #1a1a1c;
    border: 1px solid #00a28c;
}
select.wcolorline.v2 {
    color: #1a1a1c;
    border: 2px solid #00a28c;
    font-weight: 700;
}
select.acolorline {
    color: #1a1a1c;
    border: 1px solid #6b87fc;
}
select.acolorline.v2 {
    color: #1a1a1c;
    border: 2px solid #6b87fc;
    font-weight: 700;
}
select.gray {
    color: #f5f5f5;
    border: 1px solid #f5f5f5;
}
select.gray2 {
    background-color: #f4f4f4;
}

select:disabled, select[readonly] {
    background-color: #f3f3f3;
    border: 0px ;
}
.search:has(input[type="search"]) { border-radius: 3px; border: 1px solid #00000025;}
.search input[type="search"],
.search .btn_search {
    background: #f5f5f5;
    border-radius: 3px;
    overflow: hidden;
    border: 1px solid #fff0;
}
.search.white input[type="search"],
.search.white .btn_search {
    background: #ffffff;
}
input[type="search"] {
    border-radius: 0;
    width: 150px;
    height: 40px;
    border-right: 0;
    display: inline-block;
    margin-bottom: 0;
    margin-right: 0!important;
}
.btn_search {
    border-radius: 0;
    width: 40px;
    height: 40px;
    border-left: 0;
    display: inline-block;
    padding: 0 10px;
    color: #6E6E6E;
}
input[type=radio] {
    margin: 0px .5px 0 0;
}
input[type="search"]:hover {    border-bottom: 1px solid #fff0!important;}
input:hover {    border-bottom: 1px solid #77a601!important;}
[type="radio"] {
    display: inline-block;
    vertical-align: middle;
    background: lightgray;
    appearance: none;
    width: 1.25em;
    height: 1.25em;
}
[type="radio"]:checked {
    background: #fff;
    border: 0.4em solid #587900;
}
[type="radio"]:focus-visible {
    outline-offset: max(2px, 0.1em);
    outline: max(2px, 0.1em) dotted #587900;
}
[type="radio"]:hover {
    box-shadow: 0 0 0 max(4px, 0.2em) #e8e8e8;
    cursor: pointer;
}
[type="radio"]:disabled {
    background-color: lightgray;
    box-shadow: none;
    opacity: 0.7;
    cursor: not-allowed;
}
[type="radio"]:disabled + span {
    opacity: 0.7;
    cursor: not-allowed;
}
[type="checkbox"] {
    margin: 0px .5px 0 0!important;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    background: #abb1b250 !important;
    appearance: none;
    width: 1.5em;
    height: 1.5em;
    border: 1px solid #00000020;
}
.x-mark[type="checkbox"]::after {
    all: unset;
    position: absolute;
    content: "○";
    color: #000;
    font-weight: 800;
    top:55%; left:50%; transform: translate(-50%, -50%);
}
.x-mark[type="checkbox"]:checked {
    background: #ff0000 !important;
}
.x-mark[type="checkbox"]:checked::after {
    all: unset;
    position: absolute;
    content: "X";
    color: #FFF;
    font-weight: 800;
    top:55%; left:50%; transform: translate(-50%, -50%);
}
[type="checkbox"]::after {
    color:#E8E8E8;
    position: absolute;
    right: 4px;
    font-size: 0.8em;
    cursor: pointer;
    top: 3px;
    left: 7px;
    box-sizing: border-box;
    width: 5px;
    height: 11px;
    transform: rotate(45deg);
    border-width: 2px;
    border-style: solid;
    border-color: #00000060;
    border-top: 0;
    content: " ";
    border-left: 0;
    transition: all 200ms ease-in;
}
[type="checkbox"]:checked {
    border-color: #fff;
    background: #587900!important;
}
[type="checkbox"]:checked + label{
    color: #333333;
}
[type="checkbox"]:checked::after {
    border-color: #fff
}
[type="checkbox"]:focus-visible {
    outline-offset: max(2px, 0.1em);
    outline: max(2px, 0.1em) dotted #587900;
}
[type="checkbox"]:hover {
    box-shadow: 0 0 0 max(4px, 0.2em) #e8e8e8;
    cursor: pointer;
}
[type="checkbox"]:disabled {
    background-color: lightgray;
    box-shadow: none;
    opacity: 0.3;
    cursor: not-allowed;
}
[type="checkbox"]:disabled::after{
    border-color: #ffffff00;
}
[type="checkbox"]:disabled + span {
    opacity: 0.7;
    cursor: not-allowed;
}
/*네모형 라디오*/
.select input[type=radio]{
    display: none;
}
.select input[type=radio]+label{
    border-radius: 0;
    display: inline-block;
    cursor: pointer;
    height: 40px;
    padding: 0 10px;
    background-color: #fff;
    color: #373844;
    line-height: 40px;
    text-align: center;
    font-weight:400;
}
.select.v2.gap5 {
    display: flex;
    flex-wrap: wrap;
}
.select.v2 input[type=radio]+label{
    height: fit-content!important;
    padding: 2px 5px;
    border-radius: 4px;
    line-height: unset
}
.select.v3 input[type=radio]+label{
    height: fit-content!important;
    padding: 0px 4px;
    border-radius: 4px;
    line-height: unset;
    font-size: 12px;
}
.select input[type=radio]+label{
    background-color: #fff;
    color: #373844;
    border: 1px solid #C9C9C9;
    border-radius: 3px;
}
.select input[type=radio]:disabled+label{
    background-color: #c9c9c9;
    color: #373844;
}
.select input[type=radio]:checked+label{
    background-color: #77a502;
    border: 1px solid #77a502;
    color: #fff;
    font-weight:bold;
}
/*네모형 체크*/
.select input[type=checkbox]{
    display: none;
}
.select input[type=checkbox]+label{
    border-radius: 0;
    display: inline-block;
    cursor: pointer;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #373844;
    line-height: 40px;
    text-align: center;
    font-weight:400;
}
.select.v2 input[type=checkbox]+label{
    height: fit-content!important;
    padding: 2px 5px;
    border-radius: 4px;
    line-height: unset
}
.select input[type=checkbox]+label{
    background-color: #fff;
    color: #373844;
    border: 1px solid #C9C9C9;
    border-radius: 3px;
}
.select input[type=checkbox]:disabled+label{
    background-color: #c9c9c9;
    color: #d0d0d0;
}
.select input[type=checkbox]:checked+label{
    background-color: #f0ffc9;
    border: 1px solid #77a502;
    color: #77a502;
    font-weight:bold;
}
/*동그라미 라디오*/
.circle label{
    margin-right: 6px;
}
.circle input[type="radio"] {
    margin: 0px .5px 0 0;
}
.circle input[type="radio"] {
    border: 1px solid #c9c9c9;
    display: inline-block;
    vertical-align: middle;
    background: #fff;
    border-radius: 30px;
    appearance: none;
    width: 1.4em;
    height: 1.4em;
    position: relative;
}
.circle input[type="radio"]:checked {
    background: #fff;
    border: 1px solid #c9c9c9;
}
.circle input[type="radio"]:checked + label{
    color: #333333
}
.circle input[type="radio"]:checked:after{
    content: "";
    display: inline-block;
    width: 0.7em;
    height: 0.7em;
    border-radius: 50%;
    background-color: #77a601;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}
.circle input[type="radio"]:focus-visible {
    outline-offset: max(2px, 0.1em);
    outline: max(2px, 0.1em) dotted #77a601;
}
.circle input[type="radio"]:hover {
    box-shadow: 0 0 0 max(4px, 0.2em) lightgray;
    cursor: pointer;
}
.circle input[type="radio"]:disabled {
    background-color: lightgray;
    box-shadow: none;
    opacity: 0.7;
    cursor: not-allowed;
}
.circle input[type="radio"]:disabled + span {
    opacity: 0.7;
    cursor: not-allowed;
}
/**/
textarea{
    width: 100%;
    background-color: #FFFFFF;
    border: 1px solid #c9c9c9;
    color: #1a1a1c;
    padding: 10px;
}
.editor textarea{
    min-height: 300px;
}
/*탭디자인*/
.nav-tabs{
    margin-bottom: 15px;
    display: flex;
    gap: 20px;
}
.nav-tabs>li{
    border: 0;
    border-radius: 0;
    list-style: none;
}
.nav-tabs>li>a{
    border:0;
    width: 100%;
    text-align: center;
    border-radius: 0;
    color: #555;
    opacity: 0.6;
    font-size: 1.2em;
    padding: 10px 0;
    display: block;
}
.nav-tabs>li>a:hover{
    border:0;
    opacity: 0.8;
    background:none;
}
.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover{
    border:0;
    border-bottom: 2px solid #77a601;
    color: #77a601;
    font-weight: 700;
    opacity: 1;
}

.tab-contents {
    display: none;
}
.tab-contents.active {
     display: block;
}
.tab-header {
    display: none;
}
.tab-header.active {
     display: block;
}
@media screen and (max-width: 550px) {
    .nav-tabs>li>a{
        font-size: 1em;
        letter-spacing: -.5px
    }
}

.custom-tabs {
    display: flex;
    border-bottom: 1px solid #ddd;
}

.custom-tabs li {
    list-style: none;
    margin-right: 5px;
}

.custom-tabs li a {
    display: block;
    padding: 8px 15px;
    background: #f5f5f5;
    text-decoration: none;
    border-radius: 5px 5px 0 0;
}

.custom-tabs li.active a {
    background: #fff;
    border: 1px solid #ddd;
    border-bottom: none;
    font-weight: bold;
}

.custom-contents {
    display: none;
    padding: 15px;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 5px 5px;
}

.custom-contents.active {
    display: block;
}

/*팝업*/
#popup {
    position: fixed;
    z-index: 9999;
    background: #fff;
    box-shadow: 0 0 10px rgb(0 0 0 / 28%);
}
#popup .btn_pop{
    height: 50px;
    display: flex;
    width: 100%
}
#popup .btn_pop button:first-child{
    border-right: 1px solid #eee
}
#popup .btn_pop button{
    height: 48px;
    width: 50%
}
#popup.hide {
    display: none;
}
@media screen and (max-width: 550px) {
    #popup{
        left: 0!important;
        top: 0!important;
        width: 100%;
    }
    #popup img{
        width: 100%;
    }
}
/*alert디자인(swal2)*/
.swal2-popup{
    max-width: 400px;
    width: calc(100% - 80px);
    min-width: 280px;
    font-size: 16px;
    padding: 0;
    background: #fff;
    border-radius: 0;
}
.swal2-title{
    font-size: 1.15em;
    padding-bottom: 10px;
    background: #fff;
}
.swal2-html-container{
    font-size: 16px;
    line-height: 1.4em;
    margin: 0;
    word-break: keep-all;
    padding:20px;
    background: #fff;
}
.swal2-actions{
    width: 100%;
    margin-top:0px;
    flex-wrap:nowrap;
    flex-direction: row-reverse;
}
.swal2-actions button{
    width: 100%;
    font-weight: 400;
    line-height: 30px;
    height: 40px;
    padding: 0;
    border:0;
    margin:0px;
    border-radius:0px!important;
}
.swal2-actions button:hover, .swal2-actions button:focus{
    outline: none !important;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) !important;
}
.swal2-styled.swal2-confirm{
    background: #587900;
    color: #fff;
    border-radius:0px;
}
.swal2-styled.swal2-deny{
    background:#C4C4C4;
    color: #fff;
    border-radius:0px;
}
.swal2-styled.swal2-cancel{
    background: #777777;
    color: #fff;
    border-radius:0px;
}
body:has(.alert-page) .swal2-styled.swal2-cancel{
    background: #777777;
    color: #fff;
    border-radius:0px;
}
body:has(.alert-page) .swal2-styled.swal2-deny{
    background: #ba0c0c;
    color: #fff;
    border-radius:0px;
}
.swal2-actions:not(.swal2-loading) .swal2-styled{
    opacity: 1;
}
.swal2-actions:not(.swal2-loading) .swal2-styled:hover{
    background-image: none;
    opacity: 1;
}
.swal2-html-container select {
    margin: 8px 0;
}
/*@media screen and (max-width:550px) {
     input{
        width: 100%;
    }
}
*/
/*분류태그*/
.tag{
    display: flex;
}
.tag > span{
    display: inline-block;
    padding: 2px 4px;
    margin-right: 4px;
    background: #F1F1F1;
    color: #6E6E6E;
}
.tagbox {
    gap: 10px;
    display: flex;
    width: 100%;
}
.tagbox  {    display: flex;    flex-direction: row;    flex-wrap: wrap;}
.tagbox > div:nth-child(odd) {width: 60px}
.tagbox > *:nth-child(even) {width: calc( 100% - 70px ); color: #000 }
.tagbox.v2 > div:nth-child(odd) {width: 60px}
.tagbox.v2 > div:nth-child(even) {width: calc( 50% - 80px ) }
/*테이블*/
.table {
    overflow-y: auto;
    margin-bottom: 20px;
    margin-top: 10px;
    border-radius: 3px;
    letter-spacing: -.5px;
}
.table table{
    width: 100%;
    border-spacing:0;
}
.table th{
    padding: 10px 7.5px;
    border-bottom: 2px solid #acc867;
    border-right:1px solid #cecece;;
    background: #f4f4f4;
    color: #1a1a1a;
}
.table thead th{
    padding: 10px 7.5px;
    border-bottom: 2px solid #cecece;
    border-right:1px dotted rgba(84, 84, 84, 0.17);;
    border-top:1px solid #cecece;;
    background: #ffffff50;
    color: #504f59;

}
.table td{
    padding: 10px 7.5px;
    /*border-bottom: 1px solid rgba(206, 206, 206, 0.16);*/
    border-right:1px dotted rgba(84, 84, 84, 0.17);;
    background: #fff;
}
.table tr:nth-of-type(even) td{
    background: #dcdfdd61;
}
.table tr:last-child td{
    border-bottom: 1px solid  #cecece;
}
.table .bg2 td{
    background: #f4f4f4d4 !important;
}
.table th.bg2 {
    background: #efffce !important;
}
.table .bg3 td{
    background: #efffce !important;
}

.table .bg3:nth-of-type(even) td{
    background: #e8f6c5 !important;
}
.table .bg4 td{
    background: #cde497 !important;
    border-color: #afc082 !important;
}
.table.table_mini th, .table.table_mini td{
    padding: 5px;
}
.table th:last-child, .table td:last-child{
    border-right: 0;
}
.table th{
    font-weight: 600;
    font-size: 1em;
}
.table tbody th{
    background: rgba(239, 239, 239, 0.34);
   /* border-bottom: 1px solid #E6E6E6;*/
}
.table tbody tr > *:first-child{
    border-top-left-radius: 5px;
}
.table tbody tr > *:last-child{
    border-top-right-radius: 5px;
}
.table tbody tr> *:first-child{
    border-bottom-left-radius: 5px;
}
.table tbody tr > *:last-child{
    border-bottom-right-radius: 5px;
}
.table .text_center{
    text-align: center;
}
.table .text_left{
    text-align: left;
}
.table .text_right{
    text-align: right;
}
.table td > a {
    display: block
}
.table tr.fixed td{
    font-weight: 600;
    background-color: #ffe6e685;
    border-bottom: 1px solid #e7cbcb85;
    color:#373844;
}
.table tr.collapse, .table tr.collapsing td, .table tr.collapse.in td{
    background-color: #FBFBFB;
}
/*모달*/
.modal-open {
    overflow: unset;
}
.modal-open .modal {
    padding-right:  0px!important;
}
.modal-content {
    box-shadow: none;
    background: #fff0;
    border: 0;
    border-radius: 0;
    max-height: 90vh;
}
.modal-header {
    background: #fff;
    padding: 0;
    display: flex;
    flex-direction: row-reverse;
}
.modal-header .close {
     float: unset;
    opacity: 1;
    text-align: right;
    text-shadow: none;
    margin: 0;
}
.modal-header .close .icon {
    padding: 10px 15px;
    justify-content: center;
    border-radius: 0px;
    color: #77a601;
    margin-bottom: 0;
    height: 100%;
    border: 0;
}
.modal-backdrop.in {
    opacity: .4;
}
.modal-title {
    background:#fff;
    border-bottom: 1px solid #fff0;
    padding: 20px 20px;
    line-height: normal;
}
.modal-body {
    background: #f3f5f3;
    width: 100%;
}
.modal-footer {
    background: #fff;
}
.modal-footer .btn+.btn{
    margin-left: 0!important;
}
.modal-footer .btn:hover{
    border-color: #fff0!important;
}
.modal .btn-primary {
    background-color: #77a601!important;
    color: #fff;
    width: 100%;
    height: 50px;
    font-size:1.2em;
    font-weight:600;
    border-radius: 0;
}
.modal .btn-primary:hover {
    background-color: #648a00;
}
.modal .btn-secondary {
    background-color: #1a1a1c;
    color: #fff;
    width: 100%;
    height: 50px;
    font-size:1.2em;
    border-radius: 0;
}

@media screen and (max-width: 1200px) {
    .modal .btn-primary {
        text-align: center;
    }
    .modal .btn-secondary {
        text-align: center;
    }
}
.modal-title {
    color: #77a601;
    font-size: 1.2em;
    font-weight: 600;
    width: 100%;
}
.modal-header {
    border-bottom: 0;
}
.modal-body{
    overflow: auto;
    padding: 20px 20px;
    max-height: calc(60vh);
}
.modal-body .box_gray{
    background: #faf9f9;
}
.modal-footer {
    padding: 0;
    border-top: 0;
    display: flex;
    justify-content: space-around;
}
.modal-dialog{
    max-width: 450px;
    margin: 0;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -50%)!important;
}
.modal-content{
}
.modal-dialog.modal-full {
    width: 90%;
    max-width: 1700px;
}
.modal-dialog.modal-wide {
    width: 90%;
    max-width: 900px;
}
.modal-dialog.modal-middle {
    max-width: 600px;
}
.modal-dialog.modal-narrow {
    width: 300px;
}
.modal-box1 {
    border-radius: 0px;
    background-color: #ffffff;
    padding: 20px;
}
.modal.wide .modal-dialog{
    max-width:600px;
}

@media screen and (max-width: 550px) {
    .modal-title {
        font-size: 1.3em;
        padding: 20px 15px;
    }
    .modal-body {
        padding: 15px;
    }
}
.swal2-container {
    z-index: 999999;
}
canvas {
    width: 100%;
    aspect-ratio: 2 / 1;
    display: block;
    border: 1px solid #000;
    position: relative;
    z-index: 1;
}
#signature {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    position: relative;
    background: #fff;
}
#signature:after {
    content: '정자로 서명하세요.';
    display: inline-block;
    font-size: 16px;
    color: #888888;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 0;
}
/*페이지네이션*/
/* border-pagination */
.b-pagination-outer {
    width: 100%;
    margin: 20px auto 0;
    text-align: center;
    overflow: hidden;
    display: flex
}
#border-pagination {
    margin: 0 auto;
    padding: 0;
    text-align: center
}
#border-pagination li {
    display: inline;
}
#border-pagination li a {
    border-radius: 3px;
    display: block;
    margin: 0 1px;
    text-decoration: none;
    color: #666;
    padding: 7.5px 10px;
    border: 1px solid #eee;
    float: left;
    background: #fff;
    font-size: 12px;
    line-height: 12px;
}
#border-pagination li a {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s
}
#border-pagination li a.active {
    background-color: #77a60120;
    border: 1px solid #77a60120;
    color: #77a601;
    font-weight: 800;
}
#border-pagination li a:hover:not(.active) {
    background: #ddd;
}
/*사진첨부*/
.newpic {
    display: inline-block;
    margin-bottom: 10px;
    margin-right: 10px;
}
.newpic.after {
    margin-bottom: 10px;
    margin-right: 0px;
}
.newpic-upload {
    display: inline-block;
    position: relative;
    text-align: left;
}
.newpic-upload.w100 {
    width: 100%;
}
.newpic-upload .newpic-edit {
    position: absolute;
    left: 0px;
    z-index: 1;
    top: 0px;
}
.newpic-upload .newpic-edit input {
    display: none;
}
.newpic-upload .newpic-edit input + label {
    display: inline-block;
    width: 130px;
    height: 130px;
    line-height: 110px;
    margin-bottom: 0;
    border-radius:0;
    color: #fff0;
    background: #FFF0;
    cursor: pointer;
    font-weight: normal;
    transition: all 0.2s ease-in-out;
}
.newpic-upload.w100 .newpic-edit input + label {
    width: 100%;
}
.newpic-upload .newpic-edit input + label:hover {
    background: #ffffff69;
    border: 1px solid #77a60169
}
.newpic-upload .newpic-edit input + label:hover:after {
    content: "\f030";
    font-family: "Font Awesome 6 Pro";
    color: #77a601;
    font-size: 2em;
    position: absolute;
    top: 10px;
    left: 0;
    right: 0;
    text-align: center;
    margin: auto;
    font-weight: 300;
}
.newpic-upload .newpic-preview {
    width: 130px;
    height: 130px;
    position: relative;
    border: 1px solid #F8F8F8;
}
.newpic-upload.w100 .newpic-preview {
    width: 100%;
}
.newpic-upload .newpic-preview > div {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
/*탭메뉴*/
ul.tabs{
    margin: 0px;
    padding: 0px;
    list-style: none;
}
ul.tabs li{
    margin-right: 5px ;
    background: none;
    display: inline-block;
    cursor: pointer;
}
ul.tabs li.current{
    font-weight: 800;
}
.tab-content{
    display: block;
}
.tab-content.current{
    display: inherit;
}
.page-content{
    position: relative;
}
.ready{
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    width: calc(100%);
    height: calc(100%);
    background-color: rgba(0,0,0,0.2);
    z-index: 1;
}
.ready_page{
    filter:grayscale(1);
    opacity: 0.5;
}
.ready_bubble{
    opacity: 0.5;
}
.ready_bubble:after{
    content: "준비중";
    display: inline-block;
    background: rgba(0,0,0,0.5);
    border-radius: 40px;
    color: rgba(255,255,255,1);
    padding: 3px 10px;
    position: absolute;
    top: 12px;
    right: 45px;
    font-size: 11px;
    line-height: 1em;
    font-weight: 400;
}
.ready_bubble2{
    position: relative;
    display: inline-block;
}
.ready_bubble2:after{
    content: "준비중";
    display: inline-block;
    background: #1e2229;
    border-radius: 40px;
    color: rgba(255,255,255,1);
    padding: 3px 10px;
    font-size: 12px;
    line-height: 1em;
    font-weight: 400;
    z-index: 99;
}
.empty{
    padding: 20% 0!important;
    text-align: center;
    font-size: 1em;
    opacity: 0.8;
    justify-content: center;
}
.empty.v2{
    padding: 10% 0!important;
;
}
.empty.v3{
    padding: 5% 0!important;
;
}
.empty.v4{
    padding: 15px 0!important;
;
}
.empty img{
    height:50px;
    margin-bottom: 10px;
    filter: grayscale(100%);
    opacity: 0.5;
}
/*loading*/
#loading{
    content: "";
    display: block;
    width: 100%;
    height: 100vh;
    background-color: rgba(255,255,255,0.9);
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999;
}
#loading.pdf-load{
    background-color: rgba(255,255,255) !important;
}
#loading .box_wrap{
    position: fixed;
    top: 45%;
    left: 50%;
    transform: translate(-50%,-50%);
    display: block;
    text-align: center;
}
#loading .box{
    display:block;
    border:0;
    border-radius:0;
    position: relative;
    padding:0;
}
#loading img{
    width: 75px;
    height: auto;
    margin: 0 auto 5px auto;
}
#loading p{
    font-size: 1.2em;
    line-height: 1em;
    color: #2d2d2d;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -0.5px;
}
#loading .box{
    width: 100%;
    animation: scale 1s infinite ease-in-out;
    animation-direction: alternate;
}
@keyframes scale {
    0% {
        transform: scale(0.9)
    }
    100% {
        transform: scale(1)
    }
}
/* 테마 */
:root{
    --cl-bg: #0b1220;
    --cl-card: #111826;
    --cl-text: #e8eefc;
    --cl-sub: #a9b4c7;
    --cl-accent: #76a501;
    --cl-accent-2: #9ef0b6;
    --cl-border: #1e2a3f;
    --cl-glow: 0 0 24px rgba(110,167,255,.25);
}
@media (prefers-color-scheme: light){
    :root{
        --cl-bg: #f7f9ff;
        --cl-card: #ffffff;
        --cl-text: #0e1a2f;
        --cl-sub: #51607a;
        --cl-accent: #76a501;
        --cl-accent-2: #0baa70;
        --cl-border: #e9eef7;
        --cl-glow: 0 0 20px rgba(39,110,241,.18);
    }
}

/* 컨테이너 */
.calc-loading{
    position: fixed;
    top: 45%;
    left: 50%;
    transform: translate(-50%,-50%);
    display: grid; place-items: center;
    background: color-mix(in oklab, var(--cl-bg) 85%, transparent);
    backdrop-filter: blur(2px);
}
.calc-loading.hidden{ display:none; }

/* 카드 */
.cl-card{
    width: min(540px, 92vw);
    background: var(--cl-card);
    border: 1px solid var(--cl-border);
    border-radius: 16px;
    box-shadow: var(--cl-glow);
    overflow: hidden;
    animation: clPop .25s ease-out;
}
@keyframes clPop { from{ transform: translateY(6px) scale(.98); opacity:0 } to{ transform:none; opacity:1 } }

.cl-head{
    height: 10px;
    background: linear-gradient(90deg, var(--cl-accent) 0%, var(--cl-accent-2) 100%);
    display:flex; gap:6px; align-items:center; padding:14px 16px;
}
.cl-dot{
    width:8px; height:8px; border-radius:50%;
    background:#fff; opacity:.5; animation: clDot 1.4s infinite ease-in-out;
}
.cl-dot:nth-child(2){ animation-delay:.15s }
.cl-dot:nth-child(3){ animation-delay:.3s }
@keyframes clDot { 0%,80%,100%{ transform:scale(.7); opacity:.4 } 40%{ transform:scale(1); opacity:1 } }

.cl-body{ padding:22px 20px 18px; color: var(--cl-text); }

/* 숫자 롤러 */
.cl-roller{
    display:flex; gap:4px; align-items:center; justify-content:center;
    font: 700 28px/1.1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    letter-spacing: .5px; margin-bottom: 16px;
}
.cl-roller .cl-sym{ opacity:.5 }
.cl-reel {
    display: inline-block;
    font-size: 2rem;
    font-weight: bold;
    width: 1ch;
    text-align: center;
}


/* 진행 바 */
.cl-progress{
    height:10px; border-radius:999px; background: color-mix(in oklab, var(--cl-card) 90%, #000);
    border:1px solid var(--cl-border); overflow:hidden;
}
.cl-bar{
    width:0%; height:100%;
    background: linear-gradient(90deg, var(--cl-accent), var(--cl-accent-2));
    animation: clStripe 1.2s linear infinite;
    background-size: 40px 10px;
}
@keyframes clStripe{ from{ background-position:0 0 } to{ background-position:40px 0 } }

.cl-tip{ margin-top:10px; font-size:12px; color: var(--cl-sub); text-align:center }
.cl-steps{
    list-style:none; margin:12px 0; padding:0;
    display:grid; gap:8px; counter-reset:step;
}
.cl-steps .step{
    position:relative;
    background:#fff;
    border:1px solid #E5E7EB;
    border-radius:12px;
    padding:12px 14px 12px 44px;
    color:#111827; font-size:14px; line-height:1.4;
    box-shadow:0 1px 2px rgba(0,0,0,.03);
}
.cl-steps .step::before{
    counter-increment:step; content:counter(step);
    position:absolute; left:12px; top:50%; transform:translateY(-50%);
    width:24px; height:24px; display:grid; place-items:center;
    border-radius:50%;
    background:#F3F4F6; color:#374151; font-weight:700; font-size:12px;
    border:1px solid #E5E7EB;
}

/* 진행중 */
.cl-steps .step.is-current{
    border-color:#76A501; box-shadow:0 0 0 3px rgba(118,165,1,.08);
}
.cl-steps .step.is-current::before{
    background:#76A501; color:#fff; border-color:#76A501;
}

/* 완료 */
.cl-steps .step.is-done{ color:#4B5563; }
.cl-steps .step.is-done::after{
    content:"✓"; position:absolute; right:12px; top:50%;
    transform:translateY(-50%); font-size:14px; color:#76A501;
}
/* 모션 최소화 대응 */
@media (prefers-reduced-motion: reduce){
    .cl-dot, .cl-bar{ animation: none !important }
    .cl-reel::before{ transition:none }
}
/* 툴팁 */
.tooltip-container {
    position: relative;
    display: inline-block;
}
.tooltip {
    visibility: hidden;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    bottom: 110%;
    /* 위치 조정 */
    left: 50%;
    margin-left: -100px;
    opacity: 0;
    transition: opacity 0.3s;
    width: 200px;
}
.tooltip-container:hover .tooltip {
    visibility: visible;
    opacity: 1;
}
.tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
}
/* START TOOLTIP STYLES */
[tooltip] {
    position: relative;
    /* opinion 1 */
}
/* Applies to all tooltips */
[tooltip]::before, [tooltip]::after {
    text-transform: none;
    /* opinion 2 */
    font-size: 12px;
    /* opinion 3 */
    font-weight: normal;
    line-height: 1;
    user-select: none;
    pointer-events: none;
    position: absolute;
    display: none;
    opacity: 0;
}
[tooltip]::before {
    content: '';
    border: 5px solid transparent;
    /* opinion 4 */
    z-index: 2;
    /* absurdity 1 */
}
[tooltip]::after {
    content: attr(tooltip);
    /* magic! */
    /* most of the rest of this is opinion */
    font-family: Helvetica, sans-serif;
    text-align: center;
    /* Let the content set the size of the tooltips but this will also keep them from being obnoxious */
    min-width: 3em;
    max-width: 21em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 1ch 1.5ch;
    border-radius: .3ch;
    box-shadow: 0 1em 2em -.5em rgba(0, 0, 0, 0.35);
    background: #333;
    color: #fff;
    z-index: 1;
    /* absurdity 2 */
}
.tooltip_y[tooltip]::after{
    color:#fff7f5
}
/* Make the tooltips respond to hover */
[tooltip]:hover::before, [tooltip]:hover::after {
    display: block;
}
/* don't show empty tooltips */
[tooltip='']::before, [tooltip='']::after {
    display: none !important;
}
/* FLOW: UP */
[tooltip]:not([flow])::before, [tooltip][flow^="up"]::before {
    bottom: 100%;
    border-bottom-width: 0;
    border-top-color: #333;
}
[tooltip]:not([flow])::after, [tooltip][flow^="up"]::after {
    bottom: calc(100% + 5px);
}
[tooltip]:not([flow])::before, [tooltip]:not([flow])::after, [tooltip][flow^="up"]::before, [tooltip][flow^="up"]::after {
    left: 50%;
    transform: translate(-50%, -.5em);
}
/* FLOW: DOWN */
[tooltip][flow^="down"]::before {
    top: 100%;
    border-top-width: 0;
    border-bottom-color: #333;
}
[tooltip][flow^="down"]::after {
    top: calc(100% + 5px);
}
[tooltip][flow^="down"]::before, [tooltip][flow^="down"]::after {
    left: 50%;
    transform: translate(-50%, .5em);
}
/* FLOW: LEFT */
[tooltip][flow^="left"]::before {
    top: 50%;
    border-right-width: 0;
    border-left-color: #333;
    left: calc(0em - 5px);
    transform: translate(-.5em, -50%);
}
[tooltip][flow^="left"]::after {
    top: 50%;
    right: calc(100% + 5px);
    transform: translate(-.5em, -50%);
}
/* FLOW: RIGHT */
[tooltip][flow^="right"]::before {
    top: 50%;
    border-left-width: 0;
    border-right-color: #333;
    right: calc(0em - 5px);
    transform: translate(.5em, -50%);
}
[tooltip][flow^="right"]::after {
    top: 50%;
    left: calc(100% + 5px);
    transform: translate(.5em, -50%);
}
/* KEYFRAMES */
@keyframes tooltips-vert {
    to {
        opacity: .9;
        transform: translate(-50%, 0);
    }
}
@keyframes tooltips-horz {
    to {
        opacity: .9;
        transform: translate(0, -50%);
    }
}
/* FX All The Things */
[tooltip]:not([flow]):hover::before, [tooltip]:not([flow]):hover::after, [tooltip][flow^="up"]:hover::before, [tooltip][flow^="up"]:hover::after, [tooltip][flow^="down"]:hover::before, [tooltip][flow^="down"]:hover::after {
    animation: tooltips-vert 300ms ease-out forwards;
}
[tooltip][flow^="left"]:hover::before, [tooltip][flow^="left"]:hover::after, [tooltip][flow^="right"]:hover::before, [tooltip][flow^="right"]:hover::after {
    animation: tooltips-horz 300ms ease-out forwards;
}
.block[tooltip]::after, .block[tooltip]::before{
    display: inherit;
    opacity: 0.9;
    animation: tooltips-vert 300ms ease-out forwards;
}
/* TOOLTIP */
[data-tooltip]{
    position:relative;
}
[data-tooltip]:before, [data-tooltip]:after{
    visibility:hidden;
    opacity:0;
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    white-space:nowrap;
    transition:all .2s ease;
    font-size:11px;
    font-family:dotum;
    letter-spacing:-1px;
}
[data-tooltip]:before{
    content:attr(data-tooltip);
    line-height: 1em;
    position:absolute;
    top:-18px;
    padding:5px 10px;
    border-radius:5px;
    color:#fff;
    background: #484951;
    box-shadow:0 3px 8px rgba(165, 165, 165, 0.5);
}
[data-tooltip]:after{
    content: '';
    border-left:5px solid transparent;
    top:2px;
    border-right:5px solid transparent;
    border-top:5px solid #484951;
}
/*접었다펼치기(리뷰)*/
details {
}
details > summary {
    cursor:pointer;
    transition:background 0.5s;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px
}
details > summary:after{
    content: "\f078";
    font-family: "Font Awesome 6 Pro";
    display: block;
}
details > summary::-webkit-details-marker {
    transform:rotate3d(0, 0, 1, 90deg);
    transition:transform 0.25s;
}
details[open] > summary::-webkit-details-marker {
    transform:rotate3d(0, 0, 1, 180deg);
}
details[open] > summary:after {
    content: "\f077";
}
details[open] > summary ~ * {
    animation:reveal 0.5s;
}
.details{
    padding: 14px;
    border-top: 1px dashed #DBDBDB;
}
@keyframes reveal {
    from {
        opacity:0;
        transform:translate3d(0, 0px, 0);
    }
    to {
        opacity:1;
        transform:translate3d(0, 0, 0);
    }
}
@media screen and (max-width: 992px) {
    details > summary {
        padding: 10px 0px;
    }
    .details {
        padding: 10px 0px;
    }
}
/*슬라이드*/
.swiper-button-next, .swiper-button-prev{
    background: #ffffff;
    opacity: 0.9;
    width: 30px;
    height: 30px;
    box-shadow: 0 0 10px #00000015
}
.swiper-button-next:after, .swiper-button-prev:after{
    color: #000;
    opacity: 0.65;
    font-size: 1.2em;
}
.visualSwiper .swiper-button-next, .visualSwiper .swiper-button-prev {
    box-shadow: none
}
.button-right{
    position: absolute;
    right: 0;
    bottom: 0px;
    display: flex;
    width: 60px;
}
.button-right .swiper-button-next, .button-right .swiper-button-prev{
    position: relative;
    left: 0;
    right: 0;
}
/*toast*/
.toast_layer {
    visibility: hidden;
    min-width: 250px;
    width: max-content;
    max-width: 90%;
    background-color: #fff;
    color: #77a601;
    border: 4px solid #587900;
    text-align: center;
    border-radius: 2px;
    padding: 16px 26px;
    position: fixed;
    z-index: 9999;
    font-weight: 600;
    box-shadow: 0 5px 10px #00000056;
    left: 50%;
    bottom: 50%;
    transform: translateX(-50%);
    font-size: 1.2em;
}
.toast_layer.show {
    visibility: visible;
    -webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
    animation: fadein 0.5s, fadeout 0.5s 2.5s;
}
@-webkit-keyframes fadein {
    from {
        bottom: 45%;
        opacity: 0;
    }
    to {
        bottom: 50%;
        opacity: 1;
    }
}
@keyframes fadein {
    from {
        bottom: 45%;
        opacity: 0;
    }
    to {
        bottom: 50%;
        opacity: 1;
    }
}
@-webkit-keyframes fadeout {
    from {
        bottom: 50%;
        opacity: 1;
    }
    to {
        bottom: 45%;
        opacity: 0;
    }
}
@keyframes fadeout {
    from {
        bottom: 50%;
        opacity: 1;
    }
    to {
        bottom: 45%;
        opacity: 0;
    }
}
.rotate-up {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}
.rotate-down {
    transform: rotate(180deg);
    transition: transform 0.3s ease;
}
/*브라우저 상하단이동버튼*/
#gobtn{
    position:fixed;
    right:10px;
    bottom:10px;
    z-index:9999;
}
.goHd, .goFt{
    width:30px;
    height:30px;
    background:rgba(255, 255, 255, 0.6);
    z-index:9999;
    text-indent:-9999px;
    border:1px solid #858585;
    position:relative;
    transition:all 0.5s;
    box-shadow:0px 0px 3px RGBA(0, 0, 0, 0.1);
    border-radius:2px;
    display:block;
    margin-bottom:3px;
}
.goHd span{
    position:absolute;
    top:60%;
    left:9px;
    display:block;
    width:10px;
    height:10px;
    border-left:2px solid #666;
    border-top:2px solid #666;
    border-radius:2px;
    transform:translateY(-50%) rotate(45deg);
}
.goFt span{
    position:absolute;
    top:40%;
    left:9px;
    display:block;
    width:10px;
    height:10px;
    border-left:2px solid #666;
    border-top:2px solid #666;
    border-radius:2px;
    transform:translateY(-50%) rotate(-135deg);
}
.goHd:hover, .goFt:hover{
    background:#333;
    border:1px solid #333;
    opacity: 1
}
.goHd:hover span, .goFt:hover span{
    border-left:2px solid #FFF;
    border-top:2px solid #FFF;
}
/*에러페이지*/
body.error_wrap {
    height: 100%;
    background: #fafafa;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #777;
    font-weight: 300;
}
.error_wrap .box {
    max-width: 1024px;
    margin: 5rem auto;
    padding: 2rem;
    background: #fff;
    text-align: center;
    border: 1px solid #efefef;
    position: relative;
}
.error_wrap h1 {
    letter-spacing: normal;
    font-size: 2.5em;
    margin-top: 10px;
    margin-bottom: 10px;
    color: #222;
}
.error_wrap p {
    margin-top: 1.5em;
    font-size: 1.2em;
    margin-bottom: 1.5em;
}
.error_wrap i {
    font-size: 3em;
    margin-bottom: 16px;
    color: #ff8307;
}
.error_wrap button {
    height: 40px;
    all: unset;
    display: inline-block;
    text-align: center;
    padding: 7px;
    line-height: 1em;
    font-size: 18px;
    cursor: pointer;
    font-weight: 800;
    position: relative;
    box-sizing: border-box;
    margin: 1px;
    background-color:#000000;
    color: #fff;
    border: 1px solid #000000;
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
}


.upload-container {
}

#uploadButton {
    display: block;
    margin-bottom: 20px;
    padding: 10px 20px;
    background-color: #77a502;
    color: #fff;
    border: none;
    border-radius: 3px;
    cursor: pointer;
    width: 100%;
}

#uploadButton:hover {
    background-color: #50860d;
}

.preview-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    background: #fff;
    padding: 20px;
    border-radius: 3px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.preview-container .image-wrapper {
    position: relative;
    width: 100px;
    height: 100px;
}

.preview-container img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 3px;
}

.preview-container .remove-btn {
    position: absolute;
    top: 5px;
    right: 5px;
    background: rgba(255, 0, 0, 0.7);
    color: white;
    border: none;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: 14px;
    line-height: 14px;
}

header #changeVer  {
    position: relative;
}
header #changeVer  {
    position: absolute;
    top: 12px;
    left: 20px;
}
header #changeVer input {
    display: none;
}
header #changeVer i {
    font-size: 1.5em;
    color: #888;
    cursor: pointer;
}
header #changeVer input + ul {
    display: none;
    position: absolute;
    flex-direction: column;
    top: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
}
header #changeVer input:checked + ul{
    display: block;
}
header #changeVer input + ul li {
    background: #fff;
    border-radius: 5px;
    border: 1px solid #eee
}
header #changeVer input + ul li a {
    padding: 10px;
    display: block
}
header .mobile-menu {
    padding: 0px;
    display: none
}

@media screen and (max-width: 1200px) {

    header #changeVer {
        left: 55px;
    }
    header .mobile-menu {
        display: block;
        position: absolute;
        top:15px;
        left: 15px;
        background: #fff0;
    }
    header .mobile-menu i {
        font-size: 1.2em;
        color: #77a601;
        cursor: pointer;
    }
    header #changeVer input + ul {
        position: fixed;
        top: 55px;
        right: 42.5px;
        left: unset;
        transform: unset;
    }
}

.accordion .content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background-color: rgba(0, 0, 0, 0.06);
    padding: 0 10px;
}

.accordion .content.open {
    margin-top: 10px;
    max-height: 200px; /* 충분히 큰 값으로 설정 */
    padding: 10px;
    overflow-y: auto ;
    color: #000;
}

.btn-toggle {
    display: inline-block;
    background-color: rgba(0, 0, 0, 0.13);
    color: #464646;
    padding: 2.5px 5px;
    border: none;
    cursor: pointer;
    font-size: 12px;
    margin-left: auto;
}

.btn-toggle:hover {
    background-color: rgba(0, 0, 0, 0.3);
}

[x-cloak] {
    display: none !important;
}