* { margin:0; padding:0; box-sizing:border-box; font-family: 'noto_sans', sans-serif;  }
/* fw500 */
body { margin:0; padding:0; height: 100%; background-color: #fff; }
html { font-size:62.5%; }

ul,ol,li { list-style:none; }
a:link,a:visited { text-decoration:none; color:#212121; }
select { outline: none; border:none; }
button { outline:none; border:none; cursor:pointer; background-color: transparent; }
select, input, textarea { border:none; outline:none; }
table { padding:0; border:0; border-spacing:0px; border-collapse:collapse; width:100%; }
th, td { padding:0; }
.header { position: fixed; left: 50%; top: 0; transform: translateX(-50%); width: 100%; max-width: 768px; height: 60px; padding: 0 20px; border-bottom: 1px solid #E2E2E2; background-color: #fff; z-index: 998; }
.header_list { display: flex; justify-content: space-between; align-items: center; width: 100%; height: 100%; background-color:#fff; }
.header_title { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); font-size: 1.8rem; font-weight: 700; }
.input_basic { width: 100%; height: 40px; padding: 10px 16px; margin-top: 6px; border-radius: 5px; border: 1px solid #c3c3c3; font-size: 1.4rem; }
.btn_confirm { width: 100%; height: 40px; border-radius: 5px; font-size: 1.6rem; color: #fff; background-color: var(--main); font-weight: 700; }
.wrap { width: 100%; height:auto; min-height:100svh; max-width: 768px; margin:0 auto; padding:70px 20px; background-color: #fff; }
.wrap_no_menu { width: 100%; height:auto; min-height:100svh; max-width: 768px; margin:0 auto; padding-top: 70px; background-color: #fff; }

select { -webkit-appearance:none; -moz-appearance:none; appearance:none; background:url("../img/icon_drop.svg") no-repeat 98% 50%/20px auto; background-size: 10px; }
small { font-size:1.4rem; }
.readonly_class { background: #ededed; border:none; }

/* 웹폰트 */
/* MONTSERRAT(영문) */
@font-face { font-family: "montserrat-italic"; src: url("./font/Montserrat-LightItalic.ttf") format("truetype"); font-weight: 300; }
@font-face { font-family: "montserrat"; src: url("./font/Montserrat-Regular.ttf") format("truetype"); font-weight: 400; }
@font-face { font-family: "montserrat"; src: url("./font/Montserrat-Medium.ttf") format("truetype"); font-weight: 500; }
@font-face { font-family: "montserrat"; src: url("./font/Montserrat-SemiBold.ttf") format("truetype"); font-weight: 600; }
@font-face { font-family: "montserrat"; src: url("./font/Montserrat-Bold.ttf") format("truetype"); font-weight: 700; }

/* NOTO SANS KR(한글) */
@font-face { font-family: "noto_sans"; src: url("./font/NotoSansKR-Light.otf") format("opentype"); font-weight: 300; }
@font-face { font-family: "noto_sans"; src: url("./font/NotoSansKR-Regular.otf") format("opentype"); font-weight: 400; }
@font-face { font-family: "noto_sans"; src: url("./font/NotoSansKR-Medium.otf") format("opentype"); font-weight: 500; }
@font-face { font-family: "noto_sans"; src: url("./font/NotoSansKR-Bold.otf") format("opentype"); font-weight: 700; }

/* 색상 변수 설정 */
:root {
    --main: #1162F8;
    --main_sub: #0dccfc;
    --white: #ffffff;
    --black: #000000;
    --dark: #121330;
    --bg: #f9f9f9;
    --def: #01ddac;
    --gray: #7e7e7e;
    --border: #c3c3c3;

    --moz_bg: linear-gradient(to right, #0dccfc, #0c09c7);
    --moz_btn: linear-gradient(to right, #0dccfc, #0c09c7)
}

label { font-size:1.5rem; font-weight: 500; }
.eng { font-family: "montserrat"; }
.input_readonly { width: 100%; height: 40px; padding: 10px 16px; margin-top: 6px; border-radius: 6px; background-color: #f2f2f2; font-size: 1.4rem; }
.wrap_bg { background: #fff; }
.textarea_basic { width: 100%; padding: 10px 16px 10px; margin-top: 6px; border-radius: 6px; border: 1px solid #c3c3c3; font-size: 1.4rem; font-family: 500; resize: none; }
/* .mainheader { position: fixed; left: 50%; top: 0; transform: translateX(-50%); width: 100%; max-width: 768px; height: 70px; padding: 0 20px; border-bottom: 1px solid #E2E2E2; background:linear-gradient(165deg, var(--main) 0%, var(--dark) 100%); z-index: 998; color:#fff; }
.mainheader_list { display: flex; justify-content: space-between; align-items: center; width: 100%; height: 100%; } */
/* 230410 HEADER 수정 NBR */
.mainheader { position: fixed; left: 50%; top: 0; transform: translateX(-50%); width: 100%; max-width: 768px; height: 60px; border-bottom: 1px solid #E2E2E2; background:linear-gradient(to right, #0dccfc, #0c09c7); z-index: 998; color:#fff; }
.mainheader_list { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }
.header_left { position: absolute; left: 0; width: 65px; height: 100%; }
.header_left a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }

/* .mainheader_title { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); font-size: 1.8rem; font-weight: 700; max-width:320px; width:100%; text-align: center; } */
/*220919 HEADER 추가 SJW */
.mainheader_img { display: flex; align-items: center; }



/* 230414 MOZ COIN 메인페이지 디자인 수정 KMS */
.mainheader_img img {width: 28px;}
.ddrhlogo {background-color: #fff; width: 32px;height: 32px;border-radius: 50%; display: flex;justify-content: center; align-items: center;}
span.moz_logo_bg {margin-top: 3px; background-color: #fff; width: 28px; height: 28px; border-radius: 50%; display: flex;justify-content: center;align-items: center;}
span.moz_logo_bg img {height: auto;}



.logout_link a { display:block; width:30px; height:30px; }
.logout_link a img { max-width:100%; }
.ddr_huser { margin-left:6px; }
.ddr_huser p:nth-child(1) { font-size:1.8rem; }
.ddr_huser span { font-family: "montserrat"; }
.ddr_huser p:nth-child(2) { font-size:1.2rem; color:#BEC8CF; padding-top:2px; }
/* //220919 HEADER 추가 SJW */
hr { border: none; border-top: 10px solid #F8F9FB; }

/* Send 230412 KMS */
.header_inner { height: 70px; display: flex; justify-content: space-between; align-items: center; }

.box_gray { padding: 14px 10px; border-radius: 6px; background-color: #eee; font-size: 14px; font-weight: 400; text-align: center; word-break: break-all; }

.pin_area { display: flex; flex-direction: column; }
.wrap.pin_area { height: 100vh; }
.wrap.pin_area .content { flex: 1; }






/* width */
.w_100 { width: 100%; }


/* font-weight */
.thin { font-weight:100; }
.light { font-weight:300; }
.regular { font-weight:400; }
.medium { font-weight:500; }
.semi_bold { font-weight:600; }
.bold { font-weight:700; }

/* 기존 css */
.ml_10 { margin-left: 10px; }
.mb_20 { margin-bottom:20px; }
.mb_10 { margin-bottom:10px; }
.mr_10 { margin-right:10px; }
.mr_20 { margin-right:20px; }
.mt_10 { margin-top:10px; }
.mt_20 { margin-top:20px; }
.pt_20 { padding-top:20px; }
.pb_20 { padding-bottom:20px; }
.d_none { display: none; }
.d_block { display: block; }

/* 230412 KMS */
.p_LR_0 { padding-left: 0; padding-right: 0; }
.p_L_R_20 { padding-left: 20px; padding-right: 20px; }
.m_A { margin: auto; }
/* 230406:남보라 변경 간격 공통클래스(padding/margin) */
.p_LR_10 { padding: 0 10px; }
.p_LR_20 { padding: 0 20px; }
.p_0 { padding: 0; }
.p_10 { padding: 10px; }
.p_20 { padding: 20px; }
.p_TB_10 { padding: 10px 0; }
.p_TB_20 { padding: 20px 0; }
.p_TB_30 { padding: 30px 0; }
/* .p_TB_60 { padding: 30px 0; }  */
.p_B0 { padding-bottom: 0px; }
.p_B5 { padding-bottom: 5px; }
.p_B10 { padding-bottom: 10px; }
.p_B20 { padding-bottom: 20px; }
.p_B30 { padding-bottom: 30px; }
.p_B70 { padding-bottom: 70px; }
.p_B80 { padding-bottom: 80px; }
.p_B90 { padding-bottom: 90px; }
.p_B100 { padding-bottom: 100px; }
.p_B140 { padding-bottom: 140px; }
.p_10_20 { padding: 10px 20px; }
.pl10 { padding-left:10px; }
.p_T5 { padding-top: 5px; }
.p_T10 { padding-top: 10px; }
.p_T20 { padding-top: 20px; }
.p_T30 { padding-top: 30px; }
.p_T40 { padding-top: 40px; }
.p_T50 { padding-top: 50px; }
.p_T60 { padding-top: 60px; }

.m_0 { margin: 0; }
.m_LR_10 { margin: 0 10px; }
.m_LR_20 { margin: 0 20px; }
.m_TB_20 { margin: 20px 0; }
.m_TB_30 { margin: 30px 0; }
.m_TB_60 { margin: 60px 0; }
.m_R5 { margin-right: 5px; }
.m_R10 { margin-right: 10px; }
.m_R20 { margin-right: 20px; }
.m_R30 { margin-right: 30px; }
.m_L5 { margin-left: 5px; }
.m_L10 { margin-left: 10px; }
.m_L20 { margin-left: 20px; }
.m_L30 { margin-left: 30px; }
.m_T5 { margin-top: 5px; }
.m_T10 { margin-top: 10px; }
.m_T20 { margin-top: 20px; }
.m_T30 { margin-top: 30px; }
.m_T40 { margin-top: 40px; }
.m_T60 { margin-top: 60px; }
.m_B5 { margin-bottom: 5px; }
.m_B10 { margin-bottom: 10px; }
.m_B20 { margin-bottom: 20px; }
.m_B30 { margin-bottom: 30px; }
.m_B40 { margin-bottom: 40px; }
.m_B60 { margin-bottom: 60px; }
.m_B80 { margin-bottom: 80px; }
.m_B100 { margin-bottom: 100px; }
.m_T100 { margin-top: 100px; }

/*input label 화살표 제거*/
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/*input label 체크박스 디자인 변경 */
input[type="checkbox"] { -webkit-appearance: none; position: relative; width: 24px; height: 24px; margin-right:2px; cursor: pointer; outline: none; border: 1px solid #c3c3c3; border-radius: 4px; top:6px; }
input[type="checkbox"]::before { background-image: url("../img/svg/icon_chk.svg"); width:100%; height:100%; background-position: center; background-repeat: no-repeat; content: ""; position: absolute; top: 50%; left: 50%; overflow: hidden; transform: scale(0) translate(-50%, -50%); line-height: 1; }
input[type="checkbox"]:checked { background-color: var(--main); border:none; }
input[type="checkbox"]:checked::before { border-radius: 4px; transform: scale(1) translate(-50%, -50%); }
.checkbox_wrap { font-size:1.4rem; }
.cursor { cursor:pointer; }
/* .bg_line { background-color: #f1f1f1; height: calc(var(--vh, 1vh) * 100); } */
.bg_line { background-color: #f1f1f1; height:100svh; }
.gnb_img { width: 24px; height: 24px; margin-bottom: 8px; }
.gnb { position: fixed; left: 50%; bottom: 0; transform: translateX(-50%); width: 100%; max-width: 768px; background-color:#fff; z-index: 999; }
.gnb_link { display: flex; flex-direction: column; align-items: center; font-size: 1.2rem; font-weight: 500; }
.gnb_list { display: flex; justify-content: space-between;  border-top: 1px solid #E2E2E2; }
.gnb_list li.active a { color: var(--main); font-weight: 700; }


/* 230414 MOZ COIN 디자인 수정 KMS */
.gnb_list li {flex: 1;}
.gnb_item a { color: var(--gray); padding: 10px 0;}





.pagination_item a { display:block; width:100%; height:100%; color:#212121; display: flex; justify-content: center; align-items: center; }
.pagination_wrap { width: 100%; max-width: 768px; padding: 28px 0; margin: 0 auto; }
.pagination_list { display: flex; justify-content: center; width: 170px; margin: 0 auto; gap: 4px;}
.pagination_list li.pagination_item { display: flex; justify-content: center; align-items: center; width: 26px; height: 26px; font-size: 1.4rem; font-family: 'Montserrat', sans-serif; color: #212121; user-select: none; cursor: pointer; }
.pagination_item:first-child, .pagination_item:last-child { color: #212121; }

/* 230412 KMS Send pagination */
.pagination li { width: 26px; height: 26px; margin-right: 4px; }
.pagination li a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; font-size: 14px; color: var(--gray); }
.pagination .page.active { background-color: var(--main); border-radius: 4px; }
.pagination .page.active a { color: #fff; }
/* 230417 KMS pagination (공지사항) */
.pagination_next {background: url(../../assets/img/svg/ic_chevron_right.svg) no-repeat center center; background-size:8px;}
.pagination_prev {background: url(../../assets/img/svg/ic_chevron_left.svg) no-repeat center center; background-size:8px;}

/*로딩*/
.loading{position:fixed; left:0; top:0; width:100%; height:100vh; background-color:#fff; z-index:9999;}
.loading_circle{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%) rotate(0deg);width:100px; height:100px; border-radius:50%; border:2px solid var(--main); border-top-color:rgba(255,255,255,0); border-bottom-color:rgba(255,255,255,0); animation:loading 3s infinite;}
.loading_text{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font-size:14px; font-weight:700; color:var(--sub);}
@keyframes loading{
    100%{transform:translate(-50%,-50%) rotate(360deg);}
  }






 /* cursor */


/* 색상 공통 클래스 */
.text_red { color:#ff0000; }
.bg_red { background-color: #ff0000; }
.bg_main { background-color: var(--main); }
.text_yellow { color:yellow; }
.text_green { color:green; }
.text_blue { color:#003FFF; }
.text_main { color: var(--main); }
.color_white { color:var(--white); }
.bg_black { background-color: #121330; }

/* flex 공통클래스 */
.flex { display: flex; align-items: center; }
.flex_none { flex:none; }
.flex_around { display: flex; justify-content: space-around; align-items: center; }
.flex_center { display: flex; justify-content: center; align-items: center; }
.flex_between { display: flex; justify-content: space-between; align-items: center; }
.flex_start { display: flex; justify-content: space-between; align-items: flex-start; }
.flex_end { display: flex; justify-content: space-between; align-items: flex-end; }
.flex_justify_end { display: flex; justify-content: flex-end; align-items: center; }
.flex_col_center { display: flex; flex-direction: column; justify-content: center; align-items: center; }

.font_12 { font-size: 1.2rem; }
.font_14 { font-size: 1.4rem; }
.font_16 { font-size: 1.6rem; }
.font_18 { font-size: 1.8rem; }
.font_20 { font-size: 2rem; }
.font_22 { font-size: 2.2rem; }
.pagination_item.active a { background-color:var(--main); border-radius: 4px; font-family: 'Montserrat', sans-serif; color: #fff; }
.text_left { text-align: left !important; }
.text_center { text-align: center !important; }
.swal2-confirm { background-color:var(--main) !important; }
.swal2-styled.swal2-confirm:focus { box-shadow: none !important; }
.swal2-title { font-size:30px!important; padding:0 !important; }

.title_sweet { font-size:20px; color:#212121; }
.desc_sweet { font-size:15px; color:#212121; font-weight: 400; }
.swal2-styled { margin:0 !important; }
.swal2-actions:not(.swal2-loading) .swal2-styled:active { background-image: none !important; }
.swal2-styled.swal2-default-outline:focus, .swal2-styled.swal2-cancel:focus { box-shadow: none !important; }
.swal2-actions:not(.swal2-loading) .swal2-styled:hover { background-image: none !important; }
.swal2-actions .swal2-styled.swal2-cancel { margin-left:10px !important; border:1px solid var(--line); }
.swal2-popup { width:400px !important; padding:20px !important; }
.swal2-actions { margin-top:10px !important; }
.swal2-styled.swal2-confirm { font-size:14px !important; }
.swal2-styled.swal2-cancel { font-size:14px !important; }
/* .swal2-container.swal2-center>.swal2-popup { padding:1.375rem !important; } */
body.swal2-height-auto { height:100% !important; }
.not_padding { padding:28px 0 0; }
/*스크롤 숨기기*/
.not { -ms-overflow-style: none; /* IE and Edge */
 scrollbar-width: none; /* Firefox */ }
.not::-webkit-scrollbar { display: none; /* Chrome, Safari, Opera*/ }
* { -ms-overflow-style: none; /* IE and Edge */
 scrollbar-width: none; /* Firefox */ }
*::-webkit-scrollbar { display: none; /* Chrome, Safari, Opera*/ }
/* .sweet_font .swal2-popup { width:100%; max-width:767px; margin:0 auto; } */

.flex_between { display: flex; justify-content: space-between; align-items: center; }
.flex { display: flex; align-items: center; }

input:-webkit-autofill { transition: background-color 5000s ease-in-out 0s; -webkit-box-shadow: 0 0 0 30px #fff inset !important; box-shadow: 0 0 0 30px #fff inset !important; -webkit-text-fill-color: #212121 !important; }

.w100 { width:100%;}
.swal2-shown {padding-right:0 !important}

@media screen and (max-width:767px) { html.sweet_font { font-size:200%; }
 }


@media screen and (max-width:375px){
 .mainheader_title { font-size:1.4rem; }
 }
