@import url(https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.css);
@import url(https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick-theme.css);
@import url(https://fengyuanchen.github.io/datepicker/css/datepicker.css);
@import 'https://fonts.googleapis.com/css?family=Baloo+Paaji';

:root {
  --img-url: url(../images/logo.png);
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
address,
code,
del,
dfn,
em,
img,
ins,
q,
samp,
small,
strong,
sub,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
legend,
label,
table,
caption,
thead,
tbody,
tfoot,
tr,
td,
article,
aside,
canvas,
details,
figure,
hgroup,
menu,
nav,
footer,
header,
section,
summary,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,
aside,
canvas,
figure,
img,
figcaption,
hgroup,
footer,
header,
nav,
section {
    display: block
}

body {
    max-width: 800px;
    margin: 0 auto;
    font-family: "DungGeunMo", sans-serif;
    color: #333;
    line-height: 1.3;
    letter-spacing: -0.25px
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

table caption,
table th,
table td {
    text-align: left;
    vertical-align: middle
}

button {
    padding: 2px 0;
    border: 0 none;
    background: transparent;
    cursor: pointer;
    letter-spacing: -0.25px
}

a img {
    border: 0
}

a {
    text-decoration: none
}

ol,
ul {
    list-style: none
}

:focus {
    outline: 0
}

div,
input,
textarea {
    box-sizing: border-box
}

@font-face {
    font-family: "Pretendard-Bold";
    src: url("https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Bold.woff") format("woff");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: "Pretendard-SemiBold";
    src: url("https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-SemiBold.woff") format("woff");
    font-weight: 600;
    font-style: normal
}

@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
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../images/selectbox_arrow.png) no-repeat 92% 50% #fff;
    background-size: 10px 6px
}

input,
textarea {
    appearance: none;
    -webkit-appearance: none;
    -webkit-border-radius: 0
}

.btn-box {
    position: fixed;
    bottom: 0;
    width: 100%;
    max-width: 800px;
    padding: 6px 20px;
    background-color: #fff;
    box-shadow: 0px -4px 4px rgba(0, 0, 0, .02)
}

.btn-base-box {
    position: relative;
    margin: 20px 0 15px
}

div .btn-base {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    width: 100%;
    background-color: #bf0000;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px solid #bf0000
}

div .btn-base2 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 15px;
    width: 100%;
    background-color: #bf0000;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px solid #bf0000;
}

div .btn-base3 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-bottom: 20px;
    width: 100%;
    background-color: #bf0000;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px solid #bf0000
}



div .btn-type1 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0;
    width: 100%;
    background-color: #fff;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px solid #bf0000
}

div .btn-type2 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #666;
    margin-top: 0;
    width: 100%;
    background-color: #fff;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px solid #eee;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08)
}

div .btn-type3 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 5px;
    width: 100%;
    background-color: #fff;
    padding: 15px 0;
    border-radius: 6px
}

div .btn-non {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    width: 100%;
    background-color: #e0e0e0;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px solid #e0e0e0
}

div.type-half {
    display: flex;
    justify-content: space-between
}

div.type-half button {
    display: inline-block !important;
    width: 49.5% !important;
    padding: 13px 0 !important;
    border: 1px solid #bf0000
}

.userlink {
    position: relative;
    font-size: 0;
    text-align: center;
}

.userlink button {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #999;
    margin-top: 0;
    padding: 0 12px
}

.userlink::before,
.userlink::after {
    display: block;
    content: "|";
    position: absolute;
    top: -2px;
    left: 50%;
    font-size: 13px;
    color: #ddd
}

.userlink::before {
    margin-left: -39px
}

.userlink::after {
    margin-left: 49px
}

.btn-sns-box {
    padding: 0 20px
}

.btn-sns-box h3 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.btn-sns-box .btn-sns {
    margin-top: 16px
}

.btn-sns-box .btn-sns button {
    position: relative;
    width: 100%;
    background-color: reset;
    padding: 15px 0;
    border-radius: 6px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: reset;
    margin-top: 0;
    margin-bottom: 8px;
    padding: 13px 0 11px
}

.btn-sns-box .btn-sns button:before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    margin: 0 8px 0 0
}

.btn-sns-box .btn-sns-kakao {
    color: #392020;
    background-color: #fee500
}

.btn-sns-box .btn-sns-kakao:before {
    background-position: -120px 0 !important
}

.btn-sns-box .btn-sns-naver {
    color: #fff;
    background-color: #03c75a
}

.btn-sns-box .btn-sns-naver:before {
    background-position: -144px 0 !important
}

.btn-sns-box .btn-sns-apple {
    color: #fff;
    background-color: #000
}

.btn-sns-box .btn-sns-apple:before {
    background-position: -168px 0 !important
}

.intro {
    position: fixed;
    width: 100%;
    height: 100%;
    max-width: 800px;
    background-color: #fff;
    z-index: 100
}

.intro h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 140px;
    height: 130px;
    background: var(--img-url) no-repeat center;
    background-size: 100%;
    text-indent: -9999px
}

.welcome {
    position: fixed;
    width: 100%;
    height: 100%;
    max-width: 800px;
    background-color: #fff;
    z-index: 100
}

.welcome h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 140px;
    height: 130px;
    background: url(../images/logo.png) no-repeat center;
    background-size: 100%;
    text-indent: -9999px
}

.confirm-authority {
    position: fixed;
    width: 100%;
    height: 100%;
    max-width: 800px;
    background-color: #fff;
    z-index: 90
}

.confirm-authority-inner {
    position: relative;
    padding: 0 20px
}

.confirm-authority-inner h2 {
    padding: 13px 0;
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.confirm-authority-inner .btn-close {
    position: absolute;
    top: 15px;
    right: 20px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px
}

.confirm-authority-inner div {
    padding: 13px;
    border: 1px solid #eee;
    border-radius: 6px;
    text-align: center;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 8px
}

.confirm-authority-inner ul {
    margin-top: 10px;
    padding: 14px 12px 18px;
    background-color: #f6f6f6;
    border-radius: 6px
}

.confirm-authority-inner ul li {
    position: relative;
    margin-top: 14px
}

.confirm-authority-inner ul li:first-child {
    margin-top: 0
}

.confirm-authority-inner ul li:last-child::before {
    display: none
}

.confirm-authority-inner ul li.authority1,
.confirm-authority-inner ul li.authority2,
.confirm-authority-inner ul li.authority3,
.confirm-authority-inner ul li.authority4,
.confirm-authority-inner ul li.authority5 {
    padding: 3px 0 0 48px
}

.confirm-authority-inner ul li p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.confirm-authority-inner ul li p+p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #999;
    margin-top: 3px
}

.confirm-authority-inner ul li::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 42px;
    height: 42px;
    background: url(../images/icon_authority.png) no-repeat;
    background-size: 210px 42px
}

.confirm-authority-inner ul li.authority1::before {
    background-position: 0px 0
}

.confirm-authority-inner ul li.authority2::before {
    background-position: -42px 0
}

.confirm-authority-inner ul li.authority3::before {
    background-position: -84px 0
}

.confirm-authority-inner ul li.authority4::before {
    background-position: -126px 0
}

.confirm-authority-inner ul li.authority5::before {
    background-position: -168px 0
}
.confirm-authority-inner h3 {
    margin-bottom: 8px;
    font-size: 16px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 28px
}

.confirm-authority-inner .noti {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #999;
    margin-top: 10px
}

.header {
    position: fixed;
    width: 100%;
    max-width: 800px;
    height: calc(env(safe-area-inset-top) + 46px);
    padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    text-align: center;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, .02);
    background-color: #fff;
    z-index: 20
}

.header .logo {
    width: 143px;
    height: 56px;
    background: url(../images/logo_h.png) no-repeat 20px 8px;
    background-size: 123px 30px;
    text-indent: -9999px
}

.header h2 {
    font-size: 14px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0;
    height: 46px;
    padding-top: 15px;
    box-sizing: border-box
}

.header h2.reduce {
    width: 75%;
    margin: 0 auto;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

.header .my-profile {
    position: absolute;
    top: calc(env(safe-area-inset-top) + 6px);
    right: 20px;
    width: 34px;
    height: 34px
}

.header .my-profile img {
    width: 100%;
    height: 100%;
    border-radius: 100%
}

.header>button {
    position: absolute;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px;
}

.header>button.btn-back {
    top: calc(env(safe-area-inset-top) + 11px);
    left: 14px;
    background-position: -24px 0
}

.header>button.btn-search {
    top: calc(env(safe-area-inset-top) + 11px);
    right: 64px;
    background-position: -192px 0
}

.btn-search3 {
    position: absolute;
    width: 24px;
    height: 25px;
    /*background: url(../images/icon_home.png) no-repeat;*/
    background: url(../images/profile_base.jpg) no-repeat;
    background-size: 24px 25px;
    text-indent: -9999px;
    top: calc(env(safe-area-inset-top) + 11px);
    right: 3%;
    cursor: pointer;

}

.btn-search4 {
    position: absolute;
    width: 24px;
    height: 25px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px;
    top: calc(env(safe-area-inset-top) + 11px);
    right: 3%;
    cursor: pointer;



    text-indent: -9999px;
}

.btn-search2 {
  appearance: none;
  background-color: #FAFBFC;
  border: 1px solid rgba(27, 31, 35, 0.15);
  border-radius: 6px;
  box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset;
  box-sizing: border-box;
  color: #24292E;
  cursor: pointer;
  display: inline-block;
  font-family: -apple-system, system-ui, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
  list-style: none;
  padding: 3px 2px;
  position: relative;
  transition: background-color 0.2s cubic-bezier(0.3, 0, 0.5, 1);
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  vertical-align: middle;
  white-space: nowrap;
  word-wrap: break-word;
}

.btn-search2:hover {
  background-color: #F3F4F6;
  text-decoration: none;
  transition-duration: 0.1s;
}

.btn-search2:disabled {
  background-color: #FAFBFC;
  border-color: rgba(27, 31, 35, 0.15);
  color: #959DA5;
  cursor: default;
}

.btn-search2:active {
  background-color: #EDEFF2;
  box-shadow: rgba(225, 228, 232, 0.2) 0 1px 0 inset;
  transition: none 0s;
}

.btn-search2:focus {
  outline: 1px transparent;
}

.btn-search2:before {
  display: none;
}

.btn-search2:-webkit-details-marker {
  display: none;
}


.header>button.btn-submit {
    top: calc(env(safe-area-inset-top) + 11px);
    right: 20px;
    width: 50px;
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0;
    background: none;
    text-indent: 0
}

.header>button.btn-left-setting {
    top: calc(env(safe-area-inset-top) + 11px);
    left: 20px;
    background-position: -240px -24px
}

.header>button.btn-setting {
    top: calc(env(safe-area-inset-top) + 11px);
    right: 20px;
    background-position: -240px -24px
}

.header>button.btn-close {
    top: calc(env(safe-area-inset-top) + 11px);
    right: 20px;
    background-position: 0 0
}

.header.extend {
    height: calc(env(safe-area-inset-top) + 86px)
}

.header.extend .nav-category {
    display: flex;
    justify-content: space-between;
    padding: 10px 20px
}

.header.extend .nav-category li {
    position: relative
}

.header.extend .nav-category li a {
    padding: 10px 0;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.header.extend .nav-category li.on::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    position: absolute;
    top: -5px;
    left: 50%;
    margin-left: -2px;
    width: 4px;
    height: 4px;
    background-color: #bf0000;
    border-radius: 100%
}

.header.extend .nav-category li.on a {
    font-size: 14px;
    font-family: Pretendard-Bold;
    color: #bf0000;
    margin-top: 0
}

.header.extend .feed-tabs {
    display: flex;
    justify-content: space-between
}

.header.extend .feed-tabs li {
    width: 50%;
    height: 38px
}

.header.extend .feed-tabs li a {
    display: block;
    padding: 10px 0;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    height: 38px;
    padding-top: 10px;
    box-sizing: border-box
}

.header.extend .feed-tabs li.on {
    border-bottom: 2px solid #bf0000
}

.header.extend .feed-tabs li.on a {
    font-size: 14px;
    font-family: Pretendard-Bold;
    color: #bf0000;
    margin-top: 0
}

.header.header-search {
    height: calc(env(safe-area-inset-top) + 60px)
}

.header.header-search button {
    top: calc(env(safe-area-inset-top) + 18px)
}

.header.header-search button.btn-cancel {
    right: 20px;
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #888;
    margin-top: 0;
    background: none;
    text-indent: 0
}

.header.header-search input[type=text] {
    width: 73%;
    height: 40px;
    padding: 0 40px 0 14px;
    border: 1px solid #e0e0e0;
    border-radius: 40px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 10px
}

.header .result-text {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    padding-left: 45px;
    line-height: 46px;
    text-align: left
}

.header .sub-mini-pop {
    top: calc(env(safe-area-inset-top) + 12px)
}

.menu {
    position: fixed;
    bottom: 0;
    width: 100%;
    max-width: 800px;
    padding: 0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    background-color: #fff;
    box-shadow: 0px -4px 4px rgba(0, 0, 0, .02);
    z-index: 30
}

.menu ul {
    display: flex;
    justify-content: space-around;
    text-align: center
}

.menu ul li {
    width: 20%
}

.menu ul li a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    padding: 35px 0 15px;
    font-size: 10px;
    font-family: Pretendard-400;
    color: #888;
    margin-top: 0;
    letter-spacing: -0.5px
}

.menu ul li a::before {
    display: block;
    content: "";
    position: absolute;
    top: 6px;
    left: 50%;
    transform: translateX(-50%);
    width: 24px;
    height: 24px;
    background: url(../images/icon_menu.jpg) no-repeat;
    background-size: 120px 48px
}

.menu ul li:nth-child(1) a::before {
    background-position: 0px 0
}

.menu ul li:nth-child(2) a::before {
    background-position: -24px 0
}

.menu ul li:nth-child(3) a::before {
    background-position: -48px 0
}

.menu ul li:nth-child(4) a::before {
    background-position: -72px 0
}

.menu ul li:nth-child(5) a::before {
    background-position: -96px 0
}

.menu ul li.on:nth-child(1) a {
    color: #bf0000
}

.menu ul li.on:nth-child(1) a::before {
    background-position: 0px -24px
}

.menu ul li.on:nth-child(2) a {
    color: #bf0000
}

.menu ul li.on:nth-child(2) a::before {
    background-position: -24px -24px
}

.menu ul li.on:nth-child(3) a {
    color: #bf0000
}

.menu ul li.on:nth-child(3) a::before {
    background-position: -48px -24px
}

.menu ul li.on:nth-child(4) a {
    color: #bf0000
}

.menu ul li.on:nth-child(4) a::before {
    background-position: -72px -24px
}

.menu ul li.on:nth-child(5) a {
    color: #bf0000
}

.menu ul li.on:nth-child(5) a::before {
    background-position: -96px -24px
}

.user-wrap {
    padding: calc(env(safe-area-inset-top) + 46px) 20px 0
}

.user-wrap.tac {
    text-align: center
}

.user-wrap h3 {
    padding: 30px 0 10px;
    font-size: 20px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.user-wrap h4 {
    padding: 30px 0 10px;
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.user-wrap .already-signin p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: red;
    margin-top: 40px;
    margin-bottom: 16px
}

.user-wrap .info-text {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 7px
}

.user-wrap .input-wrap {
    margin-top: 5px
}

.user-wrap .input-wrap select {
    width: 50%;
    padding: 13px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    border: 1px solid #e0e0e0;
    border-radius: 6px
}

.user-wrap2 {
    padding: 30vh 0 0 0
}

.bolder {
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 6px solid #f6f6f6
}

.bolder2 {
    margin-bottom: 10px;
    border-bottom: 6px solid #f6f6f6
}

.last-feed {
    padding: 20px 20px 90px !important
}

.input-panel {
    position: relative;
    padding-top: 10px
}

.input-panel div {
    position: relative;
    margin-top: 20px
}

.input-panel div span {
    display: block
}

.input-panel div span.input-title {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #999;
    margin-top: 0
}

.input-panel div span.input-title.input-title-col {
    color: #bf0000
}

.input-panel div span.input-title2 {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.input-panel div span.input-area {
    position: relative;
    width: 100%
}

.input-panel div span.input-area.input-area-col input {
    border-bottom: 1px solid #bf0000
}

.input-panel div span input {
    width: 100%;
    padding: 10px 0;
    font-size: 16px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-top: 0;
    border: none;
    border-bottom: 1px solid #ddd
}

.input-panel2 {
    width: 100%;
    padding: 30px 0;
    font-size: 16px;
    font-family: Pretendard-Regular;
    color: #111;
    border: none;
    border-bottom: 1px solid #ddd
}

.input-panel div span input::placeholder {
    font-size: 16px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.input-panel div span input[type=number]::-webkit-outer-spin-button,
.input-panel div span input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.input-panel div span input:disabled {
    background-color: #fff;
    color: #ddd
}

.input-panel div .input-guide-text {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: red;
    margin-top: 7px
}

.input-panel div .input-guide-text2 {
    font-size: 16px;
    font-family: Pretendard-Regular;
    color: blue;
    font-weight: bold;
}

.input-panel div button {
    position: absolute;
    right: 0
}

.input-panel div button.input-erase {
    top: 23px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -48px 0;
    text-indent: -9999px
}

.input-panel div button.btn-input-r {
    position: absolute;
    top: -4px;
    right: 0;
    width: 90px;
    padding: 11px 0 !important;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    width: 90px;
    background-color: #bf0000;
    padding: 15px 0;
    border-radius: 6px
}

.input-panel div button.btn-input-b {
    position: absolute;
    top: -4px;
    right: 0;
    width: 90px;
    padding: 11px 0 !important;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    width: 90px;
    background-color: rgba(27, 21, 238);
    padding: 15px 0;
    border-radius: 6px;
}

.active_red:hover {
	background-color: #ffbf00;
	color: white;
}


.active_red:active {
	background-color: #ffbf00;
	color: white;
}


.input-panel div.btn-right-line .input-area input {
    width: calc(100% - 100px)
}

.input-panel div .code-time {
    position: absolute;
    top: 12px;
    right: 0;
    font-size: 12px;
    font-family: Pretendard-400;
    color: #e74a3b;
    margin-top: 0
}

.check-wrap {
    margin: 10px 0 30px
}

.check-wrap input[type=checkbox]:checked+.icon-check:before,
.check-wrap input[type=radio]:checked+.icon-check:before {
    background-position: -96px 0
}

.check-wrap .icon-check {
    display: inline-block;
    position: relative;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.check-wrap .icon-check:before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    margin: -3px 5px 0 0;
    background-position: -72px 0
}

.signin-wrap {
    padding: calc(env(safe-area-inset-top) + 46px) 20px 6px;
    background: url(../images/start_bg.png) no-repeat right 115px;
    background-size: 345px auto
}

.signin-wrap h1 {
    padding-bottom: 210px;
    font-size: 34px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.signin-wrap h1 span {
    font-size: 16px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.signin-wrap-foot {
    margin: 15px 0;
    padding: 0 20px
}

.signin-wrap-foot::before {
    display: block;
    content: "";
    margin-bottom: 23px;
    border-top: 1px solid #eee
}

.agree-terms-box {
    margin-top: 30px;
    padding: 10px 16px 0;
    border: 1px solid #e0e0e0;
    border-radius: 12px
}

.agree-terms-box .check-wrap {
    margin: 10px 0 42px
}

.agree-terms-box .check-wrap>span {
    display: block;
    width: 100%;
    margin-top: 18px
}

.agree-terms-box .check-wrap>span label {
    width: 100%
}

.agree-terms-box .check-wrap>span label a {
    position: absolute;
    top: 0;
    left: 33px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    text-decoration: underline
}

.agree-terms-box .check-wrap>span label a span {
    display: inline-block;
    text-decoration: none;
    color: #bf0000
}

.agree-terms-box .check-wrap>span label a span.non-col {
    color: #666
}

.agree-terms-box .check-wrap>span label .info-text {
    position: absolute;
    top: 13px;
    left: 30px;
    color: #bf0000;
    text-decoration: none
}

.agree-terms-box .check-wrap .terms-check-all .icon-check {
    padding-bottom: 18px;
    font-size: 16px;
    font-family: Pretendard-Bold;
    color: #333;
    margin-top: 0;
    border-bottom: 1px solid #e0e0e0
}

.agree-terms-box .check-wrap .terms-check-all .icon-check::before {
    margin: -3px 8px 0 0
}

.check-region {
    padding-bottom: 90px
}

.check-region-box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.check-region-box input[type=radio]:checked+label {
    width: calc(31% - 2px);
    height: 88px;
    border: 2px solid #bf0000;
    box-shadow: none
}

.check-region-box input[type=radio]:checked+label span {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0
}

.check-region-box label {
    position: relative;
    width: 31%;
    height: 90px;
    margin-top: 10px;
    text-align: center;
    background: #fff;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 12px
}

.check-region-box label span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.check-region.check-gender {
    padding: 6px 0 10px
}

.check-region.check-gender .check-region-box {
    justify-content: flex-start
}

.check-region.check-gender .check-region-box label {
    margin-right: 3.1%
}

.find-account .type-half {
    margin-top: 30px
}

.find-account .info-text {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 40px;
    text-align: center
}

.find-account .info-text-s {
    margin-bottom: -10px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 20px;
    text-align: center
}

.find-account .find-id {
    font-size: 18px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 30px
}

.find-account .btn-base-box {
    margin: 40px 0 0
}

.find-account h3 {
    text-align: center
}

.find-account h3 span {
    color: #bf0000
}

.slick-dots {
    bottom: 12px
}

.slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0 4px
}

.slick-dots li button {
    width: 8px;
    height: 8px;
    padding: 0;
    background-color: #fff;
    opacity: .6;
    border-radius: 8px
}

.slick-dots li button::before {
    display: none
}

.slick-dots li.slick-active button {
    opacity: 1
}

.top-attach-wrap {
    width: 100%;
    max-height: 430px
}

.top-attach-wrap .top-img {
    position: relative;
    height: 100%
}

.top-attach-wrap .top-img img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.top-attach-wrap .top-img label {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.top-attach-wrap .top-img label span {
    display: block;
    text-indent: -9999px
}

.top-attach-wrap .add-img-file {
    position: relative;
    height: 100%;
    border: 1px dashed #ddd
}

.top-attach-wrap .add-img-file label {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50%;
    height: 70px;
    text-align: center
}

.top-attach-wrap .add-img-file label span {
    display: block;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.top-attach-wrap .add-img-file label::before {
    display: inline-block;
    content: "";
    width: 30px;
    height: 30px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -168px -72px
}

.top-attach-wrap input {
    display: none
}

.borad-tabs {
    display: flex;
    justify-content: space-between;
    text-align: center
}

.borad-tabs li {
    width: 50%;
    border-bottom: 1px solid #bf0000;
    border-radius: 6px 6px 0px 0px
}

.borad-tabs li a {
    display: block;
    padding: 13px 0;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #888;
    margin-top: 0
}

.borad-tabs li.ui-tabs-active {
    border: 1px solid #bf0000;
    border-bottom: none
}

.borad-tabs li.ui-tabs-active a {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.main-banner {
    padding: calc(env(safe-area-inset-top) + 56px) 0 0

}

.main-banner ul {
    margin-bottom: 15px !important

}

.main-banner ul .slick-slide {
    margin: 0 20px
}

.main-banner ul li img {
    display: block;
    width: 100%;
    height: 115vw;
    max-height: 520px;
    border-radius: 12px;
    object-fit: cover
}





.cart-banner {
    padding: calc(env(safe-area-inset-top) + 56px) 0 0

}

.cart-banner ul {
    margin-bottom: 15px !important

}

.cart-banner ul .slick-slide {
    margin: 0 20px
}

.cart-banner ul li img {
    display: block;
    width: 100%;
    height: 95vw;
    max-height: 470px;
    border-radius: 12px;
    object-fit: cover
}







.sub-menu {
    margin: 0 auto;
    padding: 0 26px;
    max-width: 400px;
    font-size: 0;
    text-align: center
}

.sub-menu li {
    display: inline-block;
    margin: 0 4%;
    width: 17%
}

.sub-menu li .icon-box {
    position: relative;
    width: 100%;
    height: 15vw;
    max-height: 67px;
    background-color: #f6f6f6;
    border-radius: 12px
}

.sub-menu li .icon-box span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 42px;
    height: 42px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px
}

.sub-menu li h2 {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 8px
}

.sub-menu li:nth-child(1) .icon-box span {
    background-position: 0px -42px
}

.sub-menu li:nth-child(2) .icon-box span {
    background-position: -42px -42px
}

.sub-menu li:nth-child(3) .icon-box span {
    background-position: -84px -42px
}

.sub-menu li:nth-child(4) .icon-box span {
    background-position: -126px -42px
}

.walking-wrap {
    margin-top: 24px;
    padding: 24px 20px;
    background-color: rgba(153, 204, 1, .4)
}

.walking-wrap-in {
    position: relative;
    padding: 15px 14px 13px;
    background-color: #fff;
    border-radius: 12px
}

.walking-wrap-in h2 {
    font-size: 16px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.walking-wrap-in .walking-badge {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 28px;
    height: 28px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px
}

.walking-wrap-in .walking-badge.level1 {
    background-position: 0px -126px
}

.walking-wrap-in .walking-badge.level2 {
    background-position: -28px -126px
}

.walking-wrap-in .walking-badge.level3 {
    background-position: -56px -126px
}

.walking-wrap-in .walking-badge.level4 {
    background-position: -84px -126px
}

.walking-wrap-in .walking-badge.level5 {
    background-position: -112px -126px
}

.walking-wrap-in .step-count {
    text-align: center;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 10px
}

.walking-wrap-in .step-count span {
    display: inline-block;
    margin-right: 3px;
    font-size: 18px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0
}

.walking-wrap-in .step-bar {
    width: 100%;
    height: 12px;
    margin-top: 4px;
    background-color: #e0e0e0;
    border-radius: 12px;
    overflow: hidden
}

.walking-wrap-in .step-bar-now {
    height: 12px;
    background-color: #bf0000;
    text-indent: -9999px
}

.walking-wrap-in .step-info {
    position: relative;
    margin-top: 9px;
    text-align: center
}

.walking-wrap-in .step-info-distance {
    position: absolute;
    top: 2px;
    left: 0;
    margin: 0 7px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #666;
    margin-top: 0
}

.walking-wrap-in .step-info-distance::after {
    display: inline-block;
    content: "";
    width: 1px;
    height: 12px;
    border-left: 1px solid #e0e0e0;
    margin-left: 12px;
    vertical-align: middle
}

.walking-wrap-in .step-info-ranking {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.walking-wrap-in .step-info-ranking em {
    font-size: 14px;
    font-family: Pretendard-Bold;
    color: #bf0000;
    margin-top: 0
}

.mission-ongoing {
    /*20240524 메인페이지 신메뉴 등  사이즈 조절 */
    /*padding: 13px 0 17px;*/
    padding: 13px 0 0;
    width: 100%;
}

.mission-ongoing2 {
    padding: 13px 0 17px;
    width: 100%;
}

.tomato-ongoing-box {
    margin-left: 20px
}

.tomato-ongoing-box .slick-list {
    margin-left: -80px
}

.tomato-ongoing-box .slick-slide {
    margin-left: 20px
}

.tomato-ongoing-box li {
    position: relative;
    height: 196px;
    padding: 18px 14px 14px;
    border: 1px outset;
    border-radius: 12px;
    box-sizing: border-box
}

.tomato-ongoing-box li.clear2 {
	border: 1px outset;
}

.tomato-ongoing-box li.clear3 {
	border: 1px outset;
}


.tomato-ongoing-box li.clear {
    border: 1px outset;
    box-shadow: 0px 0px 0px rgba(0, 0, 0, .08)
}

.tomato-ongoing-box li.clear .mission-info .btn-base-box .btn-base .btn-base2 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    width: 100%;
    background-color: #e0e0e0;
    padding: 15px 0;
    border-radius: 6px;
    border: 1px outset #e0e0e0
}


.tomato-ongoing-box li h2 {
    margin-bottom: 9px;
    font-size: 16px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.tomato-ongoing-box li .btn-list-go {
    position: absolute;
    top: 18px;
    right: 14px;
    padding: 3px 7px;
    background-color: #f6f6f6;
    font-size: 10px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    border-radius: 20px
}

.tomato-ongoing-box li .mission-info {
    position: relative;
    border-top: 1px solid #e0e0e0
}

.tomato-ongoing-box li .mission-info h3 a {
    display: block;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 10px
}

.tomato-ongoing-box li .mission-info p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 5px
}

.tomato-ongoing-box li .mission-info .btn-base-box {
    position: absolute;
    width: 100%;
    top: 65px
}

.tomato-ongoing-box li .mission-non {
    text-align: center
}

.tomato-ongoing-box li .mission-non a {
    display: inline-block;
    position: relative;
    width: 58px;
    height: 58px;
    margin-top: 15px;
    background-color: #bf0000;
    border-radius: 100%;
    text-indent: -9999px
}

.tomato-ongoing-box li .mission-non a::before,
.tomato-ongoing-box li .mission-non a::after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    border-radius: 3px
}

.tomato-ongoing-box li .mission-non a::before {
    width: 22px;
    height: 2px
}

.tomato-ongoing-box li .mission-non a::after {
    width: 2px;
    height: 22px
}

.tomato-ongoing-box li .mission-non p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 12px
}

.mission-ongoing .mission-view {
    margin-right: 20px
}

.mission-ongoing3 .mission-view {
    margin-right: 20px
}

.main-tomato h2 {
    padding: 0 20px;
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #111;
    /*20240524 메인페이지 신메뉴 등  사이즈 조절 */
    /*margin-top: 21px;*/
    margin-top: 13px;

}

.main-tomato ul {
    padding: 5px 5px 5px 5px;
}
.main-tomato ul.mc-slide1,
.main-tomato ul.mc-slide2,
.main-tomato ul.mc-slide3 {
    /*20240524 메인페이지 신메뉴 등  사이즈 조절 */
	/*margin-bottom: 15px;*/
	margin-bottom: 0;

}

.mc-slide1 {
    margin-right: -120px;
    margin-left: 20px;
    width:580px;

}

.main-tomato {
    /*padding: 13px 0 17px;*/
    padding: 0 0 0;
    width: 100%;
    overflow: hidden;
}

.main-tomato .slick-list {
    margin-left: -10px;
}

.main-tomato .slick-slide {
    margin-left: 20px;
}


.main-tomato ul .slick-slide {
    margin: 0 5px;
}

.main-tomato ul li img {
    width: 100%;
    height: 43vw;
    max-height: 300px;
    border-radius: 6px;
    /*object-fit: cover*/
    /*20240523 이미지의 일부가 잘리지 않도록 수정 */
    object-fit: contain
}


.main-tomato ul li div h3 {
    font-size: 18px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 12px;
    text-align: center;
}

.main-tomato ul li div p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 6px;
    text-align: center;
}

.category {
    padding: calc(env(safe-area-inset-top) + 76px) 20px 20px;
    text-align: center;
    border-bottom: 6px solid #f6f6f6
}

.community-list {
    padding: 18px 10px 10px
}

.community-list ul {
    display: flex;
    justify-content: space-between;
}

.community-list ul li {
    position: relative;
    width: calc(50% - 8px);
    margin-bottom: 20px
}
.community-list ul li {
    display: inline-block;
    margin-right: 6px;
    padding: 2px 12px 2px;
    margin-top: 0px;
    background-color: #FFFFFF;
    border: 1px solid #c0c0c0;
    border-radius: 20px;
    border-radius: .5rem;
    box-sizing: border-box;
    color: #111827;
    font-family: "Inter var",ui-sans-serif,system-ui,-apple-system,system-ui,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.25rem;
    padding: 2.75rem 3rem;
    text-align: center;
    text-decoration: none #D1D5DB solid;
    text-decoration-thickness: auto;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    cursor: pointer;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
}
.community-list ul li spot-mark {
	color: #111827;
}

.community-list:hover {
  background-color: rgb(249,250,251);
}

.community-list:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.community-list:focus-visible {
  box-shadow: none;
}




.category-nav {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.category-nav li {
    position: relative;
    width: calc(33.3% - 10px);
    margin-bottom: 10px;
    border: 1px solid #f6f6f6;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 6px;
    box-sizing: border-box
}

.category-nav li:nth-child(1) button::before {
    background-position: 0px 0
}

.category-nav li:nth-child(2) button::before {
    background-position: -42px 0
}

.category-nav li:nth-child(3) button::before {
    background-position: -84px 0
}

.category-nav li:nth-child(4) button::before {
    background-position: -126px 0
}

.category-nav li:nth-child(5) button::before {
    background-position: -168px 0
}

.category-nav li:nth-child(6) button::before {
    background-position: -210px 0
}

.category-nav li button {
    width: 100%;
    padding: 60px 0 15px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.category-nav li button::before {
    display: block;
    content: "";
    position: absolute;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    width: 42px;
    height: 42px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px
}

.category-nav li.on {
    border: 2px solid #bf0000
}

.category-nav li.on button {
    padding: 59px 0 14px;
    color: #bf0000
}

.category-nav li.on button::before {
    top: 14px
}

.category h3 {
    margin-bottom: 30px;
    font-size: 20px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.category .chall-besides {
    width: 100%;
    margin-bottom: 10px;
    border: 1px solid #f6f6f6;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 6px;
    box-sizing: border-box
}

.category .chall-besides button {
    width: 100%;
    padding: 18px 0;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.category .chall-besides.on {
    border: 2px solid #bf0000
}

.category .chall-besides.on button {
    padding: 17px 0;
    color: #bf0000
}

.category-in-list {
    padding: 30px 20px 90px
}

.category-in-list ul {
    padding: 0 18px;
    border: 1px solid #e0e0e0;
    border-radius: 6px
}

.category-in-list ul li {
    border-top: 1px solid #eee
}

.category-in-list ul li a {
    display: block;
    padding: 17px 0
}

.category-in-list ul li:first-child {
    border-top: none
}

.category-in-list ul li .chall-name {
    margin-left: 5px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0;
    vertical-align: middle
}

.category-in-list ul li .chall-badge {
    float: right;
    vertical-align: middle
}

.category-in-list.add-check ul li a {
    padding: 0
}

.category-in-list.add-check ul li a input[type=checkbox]:checked+label:before,
.category-in-list.add-check ul li a input[type=radio]:checked+label:before {
    background-position: -96px 0
}

.category-in-list.add-check ul li a label {
    display: block;
    width: 100%;
    padding: 17px 0 14px;
    font-size: 0
}

.category-in-list.add-check ul li a label::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -72px 0
}

.chall-badge {
    padding: 5px 10px 5px 10px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #fff;
    margin-top: 0;
    border-radius: 8px;
}

.tab-badge-area {
	margin-top: 10px;
}

.tab-badge {
    padding: 8px 6% 8px 6%; /* 위, 오른쪽, 아래, 왼쪽 */
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: black;
    margin-top: 0px;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
	background-color: white;
    position: relative;
    opacity: 1;
    overflow: hidden;
    transition: all 1s ease;


}

/*
.chall-badge::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    margin: -1px 0 0 3px;
    width: 13px;
    height: 13px;
    background-size: 350px 254px
}
*/
.tab-badge.type1 {
    /*background-color: #f1cb01;*/

}
.tab-badge:active {
    background-color: #f1cb01;

}
.tab-badge.type1::after {
    background-position: -168px -102px;
}

.chall-badge.type1 {
    background-color: #f1cb01;
}

.chall-badge.type1::after {
    background-position: -168px -102px
}

.chall-badge.type2 {
    background-color: rgba(146, 198, 115)
}

.chall-badge.type2::after {
    background-position: -181px -102px
}

.chall-badge.type3 {
    background-color: #7ccca7
}

.chall-badge.type3::after {
    background-position: -194px -102px
}

.chall-badge.type4 {
    background-color: #066839
}

.chall-badge.type4::after {
    background-position: -207px -102px
}

.chall-ing {
    padding: calc(env(safe-area-inset-top) + 66px) 20px 90px
}

.chall-ing ul li {
    position: relative;
    margin-bottom: 20px
}

.chall-ing ul li .left-info {
    position: relative;
    width: calc(100% - 100px)
}

.chall-ing ul li .left-info h3 button {
    display: inline-block;
    max-width: calc(100% - 25px);
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    box-sizing: border-box
}

.chall-ing ul li .left-info h3::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -216px 0;
    vertical-align: top
}

.chall-ing ul li .left-info p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 3px
}

.chall-ing ul li .left-info .stamp {
    margin-top: 6px;
    font-size: 0
}

.chall-ing ul li .left-info .stamp a {
    display: inline-block;
    margin: 0 3px 3px 0;
    width: 30px;
    height: 30px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -168px -42px
}

.chall-ing ul li .left-info .stamp a.finished {
    background-position: -198px -42px
}

.chall-ing ul li .left-info .btn-link {
    display: none;
    position: absolute;
    top: 28px;
    right: 10px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .1);
    z-index: 1
}

.chall-ing ul li .left-info .btn-link a {
    display: block;
    padding: 11px 14px 9px 10px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.chall-ing ul li .left-info .btn-link a+a {
    border-top: 1px solid #e0e0e0
}

.space-list {
    padding: 88px 20px 80px
}

.space-list .btn-about-space {
    display: block;
    padding: 15px 12px 13px;
    font-size: 12px;
    font-weight: 400;
    color: #17438c;
    margin-top: -15px;
    border: 1px solid #17438c;
    border-radius: 8px
}

.space-list .btn-about-space::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    margin: -3px 0 0 0;
    width: 24px;
    height: 24px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    background-position: -288px -24px
}

.space-list ul {
    margin-top: 10px
}

.space-list ul li {
    padding: 12px 0;
    border-top: 1px solid #eee
}

.space-list ul li:first-child {
    border-top: none
}

.space-list ul li a {
    display: flex
}

.space-list ul li a img {
    flex-shrink: 0;
    width: 30%;
    height: 22vw;
    max-width: 160px;
    min-width: 100px;
    max-height: 130px;
    min-height: 80px;
    object-fit: cover;
    border-radius: 8px
}

.space-list ul li a .space-info {
    flex-grow: 1;
    margin-left: 10px
}

.space-list ul li a .space-info h4 {
    font-size: 14px;
    font-weight: 700;
    color: #333;
    margin-top: 0
}

.space-list ul li a .space-info p {
    font-size: 12px;
    font-weight: 400;
    color: #999;
    margin-top: 5px
}

.space-address::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    margin: -2px 0 0 0;
    width: 14px;
    height: 14px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    background-position: 0 -72px
}


.space-title p {
    font-size: 12px;
    font-weight: 400;
    color: #999;
    margin-top: 10px
}


.space-address::before,
.space-phone::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    margin: -2px 0 0 0;
    width: 14px;
    height: 14px;
    background: url(../images/common/icon.png?7ca4a225a39d9de8a9ff055fc9be6664) no-repeat;
    background-size: 408px 102px
}


.chall-ing ul li .btn-write {
    position: absolute;
    top: 0;
    right: 0;
    width: 100px;
    height: 100px
}

.chall-ing ul li .btn-write a {
    display: block;
    width: 100px;
    height: 100px;
    border-radius: 6px;
    overflow: hidden
}

.chall-ing ul li .btn-write a::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #bf0000;
    opacity: .5;
    border-radius: 6px
}

.chall-ing ul li .btn-write a img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.chall-ing ul li .btn-write a span {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    text-align: center;
    z-index: 1;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0
}

.chall-ing ul li .btn-write a span::before {
    display: block;
    content: "";
    margin-left: 38px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: 0 -24px
}

.chall-ing ul li.clear .btn-write a::after {
    background: #ddd
}

.chall-ing ul li.clear .btn-write a span::before {
    background-position: -24px -24px
}

.write-certify {
    padding: calc(env(safe-area-inset-top) + 46px) 0 90px
}

.write-certify .top-wrap {
    height: 53vw;
    max-height: 424px
}

.write-certify .top-wrap img {
    width: 100%;
    max-width: 100%;
    height: 53vw;
    max-height: 424px;
    object-fit: cover
}

.write-certify .top-attach-wrap {
    height: 53vw;
    max-height: 424px;
    background-color: #f6f6f6
}

.write-certify .top-attach-wrap img {
    width: 100%;
    max-width: 100%;
    height: 53vw;
    max-height: 424px;
    object-fit: cover
}

.write-certify h3 {
    width: calc(100% - 40px);
    margin: 0 auto;
    padding: 16px 0;
    font-size: 18px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0;
    border-bottom: 1px solid #e0e0e0
}

.write-certify .certify-text {
    padding: 20px 20px 40px;
    border-bottom: 6px solid #f6f6f6
}

.write-certify .certify-text h4 {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.write-certify .certify-text p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 8px
}

.write-certify .certify-text textarea {
    width: 100%;
    height: 180px;
    border: none;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    line-height: 21px;
    resize: none
}

.write-certify .certify-text textarea::placeholder {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.certify-noti {
    position: relative;
    padding: 10px 20px 10px 37px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.certify-noti::before {
    display: block;
    content: "";
    position: absolute;
    top: 10px;
    left: 20px;
    width: 14px;
    height: 14px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -228px -42px
}

.certify-complete {
    padding: calc(env(safe-area-inset-top) + 96px) 20px 50px
}

.certify-complete .complete-text {
    text-align: center
}

.certify-complete .complete-text .icon-stamp {
    display: inline-block;
    position: relative;
    width: 90px;
    height: 90px;
    border: 1px solid #e0e0e0;
    border-radius: 100%;
    text-indent: -9999px
}

.certify-complete .complete-text .icon-stamp::before {
    display: inline-block;
    content: "";
    position: absolute;
    top: 20px;
    left: 20px;
    width: 50px;
    height: 50px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -151px -101px;
    background-size: 420px 305px
}

.certify-complete .complete-text p {
    font-size: 20px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 26px
}

.certify-complete .complete-text p span {
    display: block;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 8px
}

.certify-complete .complete-text p em {
    color: #bf0000
}

.certify-complete .btn-base-box {
    margin-top: 30px
}

.certify-complete .btn-base-box button {
    margin-bottom: 10px
}

.sub-mini-pop {
    position: absolute;
    top: calc(env(safe-area-inset-top) + 112px);
    right: 20px
}
.sub-mini-pop2 {
    position: absolute;
    top: calc(env(safe-area-inset-top) + 62px);
    right: 20px;
}
.sub-mini-pop .btn-mini-pop button {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}
.sub-mini-pop2 .btn-mini-pop2 button {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;

}

.sub-mini-pop .btn-mini-pop button::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    margin: -2px 0 0;
    background-position: -48px -24px
}

.sub-mini-pop ul {
    position: absolute;
    top: 27px;
    right: 0;
    background: #fff;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .1);
    border-radius: 4px;
    z-index: 1
}

.sub-mini-pop ul li {
    width: 84px;
    border-top: 1px solid #eee
}

.sub-mini-pop ul li button {
    width: 100%;
    padding: 10px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    text-align: left
}

.sub-mini-pop .btn-notify {
    padding: 10px 0;
    font-size: 10px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 5px
}

.tomato-list {
    position: relative;

}

.tomato-list.search-result-list {
    padding: calc(env(safe-area-inset-top) + 60px) 20px 90px
}

.tomato-list.search-result-list .sub-mini-pop {
    top: calc(env(safe-area-inset-top) + 72px)
}

.tomato-list .sorting-check {
    margin-top: 6px
}

.tomato-list .sorting-check>span label {
    display: inline-block;
    padding: 6px 14px;
    border: 1px solid #ddd;
    border-radius: 4px
}

.tomato-list .sorting-check>span label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.tomato-list .sorting-check>span input[type=checkbox]:checked+label {
    border: 1px solid #bf0000
}

.tomato-list .sorting-check>span input[type=checkbox]:checked+label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.tomato-list .info-chall-num {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #666;
    margin-top: 16px
}

.tomato-list .info-chall-num span {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #7ccca7;
    margin-top: 0
}

.tomato-list>ul {
    margin-top: 10px;
}

.tomato-list>ul li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
    vertical-align: middle;
}

.tomato-list>ul li .img-box {
    position: relative;
    width: 100px;
    height: 100px
}

.tomato-list>ul li .img-box img {
    width: 100%;
    height: 100%;
    border-radius: 6px;
    object-fit: cover
}

.tomato-list>ul li .img-box .like {
    position: absolute;
    bottom: 2px;
    right: 2px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -72px -24px;
    text-indent: -9999px;
    z-index: 10
}

.tomato-list>ul li .img-box .like.on {
    background-position: -96px -24px
}

.tomato-list>ul li .info-box {
    width: calc(100% - 110px);
    margin-top: 15px;
}

#shopDeli li:active {
  background-color: #dbdbdb;
  border-radius: 15px;
}

#shopPick li:active {
  background-color: #dbdbdb;
  border-radius: 15px;
}

#shopResv li:active {
  background-color: #dbdbdb;
  border-radius: 15px;
}



.mainMenuExp {
    width: 100%;
    margin-top: 15px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #888;
    margin-top: 0;
    text-align: center;
    margin-bottom: 25px;
}

#menuItem {
	position: absolute;
	top: 60%;
	left: 50%;
	width: 100%;
	transform: translate( -50%, -50%);
	font-size: 28px;
	font-weight: bold;
	font-family: 'Pretendard-Regular';
	text-align: center;
	color: white;
	text-shadow: -1px -1px 0 black, 1px -1px 0 black, -1px 1px 0 black, 1px 1px 0 black;
}


.slide-wide {
	padding: calc(env(safe-area-inset-top) + 56px) 0 0;
    position: relative;
    width: 100%;
    max-height: 384px
}

.slide-wide ul {
    opacity: 0;
    visibility: hidden;
    transition: opacity 22s ease;
    margin-bottom: 15px !important;
    -webkit-transition: opacity 22s ease
}

.slide-wide ul li img {
    width: 100%
}

.slide-wide ul.slick-initialized {
    visibility: visible;
    opacity: 1
}

.slide-wide ul .slick-slide {
    display: inline-block
}

.slide-wide .slide-num {
    display: inline-block;
    position: absolute;
    right: 20px;
    bottom: 17px;
    padding: 3px 12px;
    font-size: 12px;
    font-weight: 400;
    color: #fff;
    margin-top: 0;
    background-color: #333;
    letter-spacing: 2px;
    border-radius: 22px
}
.slide-num {
    display: inline-block;
    position: absolute;
    right: 30px;
    bottom: 287px;
    padding: 3px 12px;
    font-size: 12px;
    font-weight: 400;
    color: #fff;
    margin-top: 0;
    background-color: #333;
    letter-spacing: 2px;
    border-radius: 22px
}


.tomato-list>ul li .info-box-badge {
    width: 100%;
    padding-bottom: 1px;
    font-size: 0;
    white-space: nowrap;
    overflow-x: scroll;
    box-sizing: border-box;
    -ms-overflow-style: none;
    scrollbar-width: none;
    text-shadow: blue;
    -webkit-text-stroke: 2px red;
}

.tomato-list>ul li .info-box-badge::-webkit-scrollbar {
    display: none
}

.tomato-list>ul li .info-box-badge span {
    display: inline-block;
    margin: 0 2px
}

.tomato-list>ul li .info-box-badge .hash-badge a {
    display: inline-block;
    padding: 2px 7px 1px 7px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    border: 1px solid #ddd;
    border-radius: 4px
}

.tomato-list>ul li .info-box-badge .hash-badge a::before {
    display: inline-block;
    content: "#"
}

.tomato-list>ul li .info-box h3 {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-top: 5px
}

.tomato-list>ul li .info-box .info-box-foot {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.tomato-list>ul li .info-box .info-box-foot .info-box-left .goal-per {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 5px;
    margin-right: 50px;
}

.tomato-list>ul li .info-box .info-box-foot .info-box-left .goal-per span {
    color: #bf0000;
    margin-right: 4px
}

.tomato-list>ul li .info-box .info-box-foot .info-box-left .sub-menu-cart span {
    color: #808080;
    margin-right: 4px
}

.tomato-list>ul li .info-box .info-box-foot .info-box-right {
    text-align: right
}

.tomato-list>ul li .info-box .info-box-foot .info-box-right .challenger-num {
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 7px
}

.tomato-list>ul li .info-box .info-box-foot .info-box-right .challenger-num2 {
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 42px
}

.tomato-list>ul li .info-box .info-box-foot .period {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 3px
}

.tomato-list>ul li:last-child {
    margin-bottom: 90px
}

.tomato-view {
    padding-top: calc(env(safe-area-inset-top) + 46px)
}

.tomato-view .img-box {
    width: 100%;

    max-height: 424px
}

.tomato-view .img-box img {
    width: 100%;
    height: 100%;
    max-height: 250px;
    object-fit: contain;
}

.tomato-view .info-box {

    border-bottom: 1px solid #f6f6f6
}

.tomato-view .info-box-badge {
    font-size: 0
}

.tomato-view .info-box-badge span {
    display: inline-block;
    margin: 0 2px
}

.tomato-view .info-box-badge .hash-badge {
    padding: 2px 7px 1px 7px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    border: 1px solid #ddd;
    border-radius: 4px
}

.tomato-view .info-box-badge .hash-badge::before {
    display: inline-block;
    content: "#"
}

.tomato-view .info-box h3 {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

.tomato-view .info-box-date {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 3px
}


.info-box-date {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 3px
}

.tomato-view .info-box .tree-save {
    display: flex;
    justify-content: space-around;
    margin-top: 12px;
    padding: 20px 0;
    /* border-top: 1px solid #e0e0e0 */
}

.tomato-view .info-box .tree-save-left p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.tomato-view .info-box .tree-save-left p span {
    color: #f1cb01
}

.tomato-view .info-box .tree-save-left p+p span {
    color: #7ccca7
}

.tomato-view .info-box .tree-save-right p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.tomato-view .info-box .tree-save-right p span {
    color: #066839
}

/* .tomato-view .info-box .tree-save-right p:before {
    margin-right: 7px;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 42px;
    height: 42px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px
} */

.tomato-view .info-box .tree-save-right p.level1::before {
    background-position: 0 -84px
}

.tomato-view .info-box .tree-save-right p.level2::before {
    background-position: -42px -84px
}

.tomato-view .info-box .tree-save-right p.level3::before {
    background-position: -84px -84px
}

.tomato-view .info-box-achieve {
    position: relative;
    padding: 12px 0;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 6px
}

.tomato-view .info-box-achieve h4 {
    margin-left: -35px;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 3px;
    text-align: center
}

.tomato-view .info-box-achieve h4::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 33px;
    height: 33px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -100px -67px;
    background-size: 278px 202px !important
}

.tomato-view .info-box-achieve a {
    position: absolute;
    top: 20px;
    right: 10px;
    padding: 3px 7px 2px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    background-color: #f6f6f6;
    border-radius: 10px
}

.tomato-view .info-box-achieve .stamp-box {
    margin: 14px 0 8px
}

.tomato-view .info-box-achieve .stamp-box ul {
    width: 100%;
    padding: 0 14px;
    font-size: 0;
    white-space: nowrap;
    overflow-x: scroll;
    box-sizing: border-box;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.tomato-view .info-box-achieve .stamp-box ul::-webkit-scrollbar {
    display: none
}

.tomato-view .info-box-achieve .stamp-box ul li {
    display: inline-block;
    width: 60px;
    height: 60px;
    margin-right: 12px;
    padding: 2px;
    background: #fff;
    border: 1px solid #f6f6f6;
    border-radius: 100%;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    text-align: center;
    box-sizing: border-box
}

.tomato-view .info-box-achieve .stamp-box ul li span {
    display: block;
    position: relative;
    width: 52px;
    height: 52px;
    margin: 0 auto;
    padding-top: 30px;
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #888;
    margin-top: 0;
    border-radius: 100%;
    box-sizing: border-box
}

.tomato-view .info-box-achieve .stamp-box ul li span::before {
    position: absolute;
    top: 5px;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -120px -24px
}

.tomato-view .info-box-achieve .stamp-box ul li.on {
    border: 2px solid #bf0000
}

.tomato-view .info-box-achieve .stamp-box ul li.on span {
    border: 1px solid #bf0000;
    color: #bf0000
}

.tomato-view .info-box-achieve .stamp-box ul li.on span::before {
    background-position: -144px -24px
}

.tomato-view .info-box .like-share {
    display: flex;
    justify-content: space-between;
    padding: 18px 0 0
}

.tomato-view .info-box .like-share-left {
    width: 54%
}

.tomato-view .info-box .like-share-left::after {
    display: inline-block;
    content: "|";
    float: right;
    margin-top: 9px;
    color: #e0e0e0
}

.tomato-view .info-box .like-share-left ul {
    display: inline-block;
    vertical-align: middle
}

.tomato-view .info-box .like-share-left ul li {
    display: inline-block;
    width: 36px;
    height: 36px;
    margin-right: -23px;
    border: 2px solid #fff;
    border-radius: 100%;
    box-sizing: border-box;
    overflow: hidden
}

.tomato-view .info-box .like-share-left ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 100%
}

.tomato-view .info-box .like-share-left p {
    display: inline-block;
    margin-left: 23px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #666;
    margin-top: 0;
    vertical-align: middle
}

.tomato-view .info-box .like-share-right {
    padding-top: 9px
}

.tomato-view .info-box .like-share-right button {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.tomato-view .info-box .like-share-right button::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    margin: -1px 4px 0
}

.tomato-view .info-box .like-share-right button.btn-like::before {
    background-position: -140px -126px
}

.tomato-view .info-box .like-share-right button.btn-like.on::before {
    background-position: -160px -126px
}

.tomato-view .info-box .like-share-right button.btn-share {
    margin: 0 5px 0 1px
}

.tomato-view .info-box .like-share-right button.btn-share::before {
    background-position: -180px -126px
}

.tomato-view .info-box .btn-base-box button::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -200px -126px;
    margin: -3px 3px 0 0
}

.tomato-view .info-box-ranking {
    padding: 15px 20px 0;
    text-align: center
}

.tomato-view .info-box-ranking h4 {
    margin-bottom: 20px;
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #333;
    margin-top: 0
}

.tomato-view .info-box-ranking ul {
    position: relative;
    height: 140px;
    font-size: 0
}

.tomato-view .info-box-ranking ul li {
    position: absolute;
    width: 100px;
    left: 50%
}

.tomato-view .info-box-ranking ul li:first-child {
    width: 120px;
    margin-left: -60px
}

.tomato-view .info-box-ranking ul li:first-child .ranking-img {
    width: 80px;
    height: 80px
}

.tomato-view .info-box-ranking ul li:first-child .ranking-img .ranking-num {
    width: 28px;
    height: 28px;
    line-height: 24px;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    background-color: #bf0000
}

.tomato-view .info-box-ranking ul li:first-child p {
    margin-top: 6px
}

.tomato-view .info-box-ranking ul li:first-child+li {
    top: 10px;
    margin-left: -160px
}

.tomato-view .info-box-ranking ul li:first-child+li .ranking-img .ranking-num {
    background-color: #7ccca7
}

.tomato-view .info-box-ranking ul li:first-child+li+li {
    top: 10px;
    margin-left: 60px
}

.tomato-view .info-box-ranking ul li:first-child+li+li .ranking-img .ranking-num {
    background-color: #f1cb01
}

.tomato-view .info-box-ranking ul li .ranking-img {
    position: relative;
    width: 60px;
    height: 60px;
    margin-left: 20px
}

.tomato-view .info-box-ranking ul li .ranking-img img {
    width: 100%;
    height: 100%;
    border-radius: 100%
}

.tomato-view .info-box-ranking ul li .ranking-img .ranking-num {
    position: absolute;
    top: 0;
    right: 0;
    width: 22px;
    height: 22px;
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    line-height: 18px;
    border: 2px solid #fff;
    border-radius: 100%
}

.tomato-view .info-box-ranking ul li p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 16px
}

.tomato-view .info-box-ranking ul li p span {
    display: block;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.tomato-view .info-box-ranking .myrank {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 5px
}

.tomato-view .info-box-ranking .myrank span {
    color: #bf0000
}

.tomato-view .borad-box {
    padding: 30px 20px 90px
}

.tomato-view .borad-box .tab-cont.chall-intro h3 {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 20px
}

.tomato-view .borad-box .tab-cont.chall-intro p {
    margin-bottom: 20px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 10px
}

.tomato-view .borad-box .tab-cont.chall-intro img {
    max-width: 100%;
    margin-top: 10px;
    border-radius: 6px
}

.tomato-view .borad-box .tab-cont.cummunity {
    padding-top: 16px
}

.tomato-view .borad-box .tab-cont.cummunity .btn-cummunity {
    position: relative;
    display: block;
    padding: 10px 12px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 6px
}

.tomato-view .borad-box .tab-cont.cummunity .btn-cummunity::after {
    position: absolute;
    top: 7px;
    right: 12px;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -168px -24px
}

.tomato-view .borad-box .tab-cont.cummunity .empty-board {
    padding: 40px 0 100px;
    text-align: center
}

.tomato-view .borad-box .tab-cont.cummunity .empty-board::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 58px;
    height: 58px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -140px -154px
}

.tomato-view .borad-box .tab-cont.cummunity .empty-board span {
    display: block;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 10px
}

.tomato-view .borad-box .tab-cont .post-box {
    padding: 20px 0 0
}

.commu-writer {
    position: relative
}

.commu-writer span {
    display: inline-block;
    vertical-align: middle
}

.commu-writer span.writer-photo {
    width: 42px;
    height: 42px;
    border-radius: 100%;
    overflow: hidden
}

.commu-writer span.writer-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.commu-writer span.writer-nick {
    margin-left: 3px
}

.commu-writer span.writer-nick span {
    display: block;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.commu-writer span.writer-nick span+span {
    font-size: 10px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.commu-writer .sub-mini-pop {
    top: 10px;
    right: 0
}

.commu-writer .sub-mini-pop .btn-mini-pop button {
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -240px 0;
    text-indent: -9999px
}

.commu-writer .sub-mini-pop .btn-mini-pop button::after {
    display: none
}

.board-box {
    padding-top: 13px
}

.board-box .top-slide-img {
    position: relative;
    font-size: 0
}

.board-box .top-slide-img>ul {
    border-radius: 6px;
    overflow: hidden
}

.board-box .top-slide-img>ul .slick-list li {
    width: 100%;
    height: 48vw;
    max-height: 390px
}

.board-box .top-slide-img>ul .slick-list li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px
}

.board-box .top-slide-img .slide-num {
    display: inline-block;
    position: absolute;
    top: 8px;
    right: 8px;
    width: 38px;
    padding: 3px 0;
    font-size: 10px;
    font-family: Pretendard-Regular;
    color: #fff;
    margin-top: 0;
    background-color: #666;
    letter-spacing: 2px;
    border-radius: 22px;
    text-align: center
}

.board-box .board-body {
    padding: 15px 0 25px
}

.board-box .board-body-text {
    position: relative
}

.board-box .board-body-text p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.board-box .board-body-text p.reduce {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    white-space: unset;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.board-box .board-body-text .btn-more {
    position: absolute;
    right: 0;
    bottom: 0;
    padding-left: 8px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    background-color: #fff
}

.board-box .board-body-text a {
    display: block;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-top: 10px
}

.board-box .board-body .user-active {
    position: relative;
    padding: 17px 0 0
}

.board-box .board-body .user-active>button,
.board-box .board-body .user-active>a {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.board-box .board-body .user-active>button::before,
.board-box .board-body .user-active>a::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    margin: -3px 3px 0 0
}

.board-box .board-body .user-active>button {
    margin-right: 20px
}

.board-box .board-body .user-active>button::before {
    background-position: -140px -126px
}

.board-box .board-body .user-active>button.on::before {
    background-position: -160px -126px
}

.board-box .board-body .user-active a::before {
    background-position: -220px -106px
}

.board-box .board-body .user-active ul {
    position: absolute;
    top: -35px;
    left: 0;
    padding: 8px 12px;
    background-color: #fff;
    border: 1px solid #f6f6f6;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .1);
    border-radius: 4px;
    font-size: 0
}

.board-box .board-body .user-active ul li {
    display: inline-block;
    margin-left: 6px
}

.board-box .board-body .user-active ul li button {
    font-size: 0;
    width: 37px;
    height: 30px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px
}

.board-box .board-body .user-active ul li:first-child {
    margin-left: 0
}

.board-box .board-body .user-active ul li:nth-child(1) button {
    background-position: 0px -224px
}

.board-box .board-body .user-active ul li:nth-child(2) button {
    background-position: -37px -224px
}

.board-box .board-body .user-active ul li:nth-child(3) button {
    background-position: -74px -224px
}

.board-box .board-body .user-active ul li:nth-child(4) button {
    background-position: -111px -224px
}

.comment-box {
    padding-top: 10px;
    border-top: 1px solid #e0e0e0
}

.comment-box ul .comment-list {
    position: relative;
    margin: 18px 0
}

.comment-box ul .comment-list.comment-list-reply {
    padding-left: 5px
}

.comment-box ul .comment-list .comment-area {
    position: relative
}

.comment-box ul .comment-list .comment-area .comment_thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 42px;
    height: 42px;
    border-radius: 100%;
    overflow: hidden
}

.comment-box ul .comment-list .comment-area .comment_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.comment-box ul .comment-list .comment-area .comment-body {
    padding-left: 50px
}

.comment-box ul .comment-list .comment-area .comment-body .comment-nick {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.comment-box ul .comment-list .comment-area .comment-body .comment-text {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 5px
}

.comment-box ul .comment-list .comment-area .comment-body .comment-text span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #7ccca7;
    margin-top: 0
}

.comment-box ul .comment-list .comment-area .comment-body .comment-info {
    position: relative;
    margin-top: 2px
}

.comment-box ul .comment-list .comment-area .comment-body .comment-info .comment-info-date {
    font-size: 10px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.comment-box ul .comment-list .comment-area .comment-body .comment-info .comment-info-button {
    position: absolute;
    top: 5px;
    right: 0;
    font-size: 0
}

.comment-box ul .comment-list .comment-area .comment-body .comment-info .comment-info-button span {
    display: block;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.comment-box ul .comment-list .comment-area .comment-body .comment-info .comment-info-button span::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -220px -126px;
    margin: -2px 0 0 4px
}

.comment-box ul .comment-list .comment-area .comment-body .comment-del {
    position: absolute;
    top: 0;
    right: 0;
    width: 20px;
    height: 20px;
    width: 20px;
    height: 20px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px;
    background-size: 280px 39px;
    opacity: .5
}

.comment-input-area {
    position: fixed;
    bottom: env(safe-area-inset-bottom);
    width: 100%;
    padding: 0 20px;
    background-color: #fff;
    border-top: 1px solid #e0e0e0;
    z-index: 20
}

.comment-input-area textarea,
.comment-input-area button {
    vertical-align: middle
}

.comment-input-area textarea {
    width: calc(100% - 40px);
    padding: 13px 0;
    height: 46px;
    max-height: 80px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    resize: vertical;
    border: none
}

.comment-input-area button.btn-comment-enter {
    padding: 5px;
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0
}

.cummunity-focus {
    padding: calc(env(safe-area-inset-top) + 66px) 20px 80px
}

.cummunity-focus .liked-list {
    display: flex;
    justify-content: flex-start;
    padding: 10px 0 0
}

.cummunity-focus .liked-list button {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    margin-right: 6px;
    border: 1px solid #e0e0e0;
    border-radius: 100%;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    vertical-align: top;
    text-indent: -9999px
}

.cummunity-focus .liked-list button::before,
.cummunity-focus .liked-list button::after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #ddd
}

.cummunity-focus .liked-list button::before {
    width: 2px;
    height: 13px
}

.cummunity-focus .liked-list button::after {
    width: 13px;
    height: 2px
}

.cummunity-focus .liked-list ul {
    width: 245px;
    vertical-align: top
}

.cummunity-focus .liked-list ul .slick-slide {
    width: 40px;
    height: 40px;
    margin-right: 9px
}

.cummunity-focus .liked-list ul li {
    display: inline-block;
    position: relative;
    width: 40px;
    height: 40px;
    margin-left: 3px
}

.cummunity-focus .liked-list ul li img {
    width: 40px;
    height: 40px;
    border-radius: 100%;
    object-fit: cover
}

.cummunity-focus .liked-list ul li::before {
    display: block;
    content: "";
    position: absolute;
    bottom: -3px;
    right: -4px;
    width: 22px;
    height: 22px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-size: 208px 151px !important
}

.cummunity-focus .liked-list ul li.type1::before {
    background-position: 0px -132px
}

.cummunity-focus .liked-list ul li.type2::before {
    background-position: -22px -132px
}

.cummunity-focus .liked-list ul li.type3::before {
    background-position: -44px -132px
}

.cummunity-focus .liked-list ul li.type4::before {
    background-position: -66px -132px
}

.cummunity-focus .liked-list ul li.type5::before {
    background-position: -88px -132px
}

.community-write {
    padding-top: calc(env(safe-area-inset-top) + 46px)
}

.community-write .text-box {
    padding: 30px 20px;
    border-bottom: 6px solid #f6f6f6
}

.community-write .text-box textarea {
    width: 100%;
    height: 190px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    line-height: 20px;
    border: none;
    resize: none
}

.community-write .text-box textarea::placeholder {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.attach-box {
    padding: 16px 20px
}

.attach-box-list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap
}

.attach-box-list li {
    position: relative;
    width: 31%;
    height: 27vw;
    max-height: 140px;
    margin: 0 0 2% 3.5%;
    border-radius: 6px;
    overflow: hidden;
    box-sizing: border-box
}

.attach-box-list li.btn-upload {
    background-color: #fff;
    border: 1px dashed #888
}

.attach-box-list li.btn-upload input {
    display: none
}

#btn_more {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 50px;
	margin-left:15px;
	margin-right:15px;
	padding-top: 15px;
	padding-bottom: 15px;
	border: 1px solid black;
	border-radius: 15px;
	background-color: #f6f6f6;
}

#btn_more:active {
	background-color: #bdbdbd;
}

.attach-box-list li.btn-upload label {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 60px 0 30px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    text-align: center
}

.attach-box-list li.btn-upload label::before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -85%);
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -192px -24px
}

.attach-box-list li.main-photo {
    border: 2px solid #bf0000
}

.attach-box-list li.main-photo::before {
    display: block;
    content: "대표";
    position: absolute;
    top: 0;
    left: 0;
    padding: 2px 5px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #fff;
    margin-top: 0;
    background-color: #bf0000;
    border-bottom-right-radius: 6px
}

.attach-box-list li img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.attach-box-list li .btn-del {
    position: absolute;
    top: 0;
    right: 0;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -264px 0;
    text-indent: -9999px
}

.attach-box-list li:nth-child(3n+1) {
    margin: 0 0 2% 0
}

.chall-add-wrap {
    /* padding-top: calc(env(safe-area-inset-top) + 46px) */
    padding-top: 0px;
}

.section {
    position: relative;
    /* padding: 30px 20px; */
    padding: 20px 20px;
    border-bottom: 6px solid #f6f6f6
}

.chall-add-wrap .section.section1 {
    padding: 20px 20px 30px
}

.chall-add-wrap .section.section1 h3 {
    font-size: 20px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 30px;
    text-align: center
}

.chall-add-wrap .section.section5 {
    padding: 30px 20px 90px;
    border-bottom: none
}

.chall-add-wrap .section.section5 .input-one-wrap {
    margin-top: 15px
}

.chall-add-wrap .section.section5 .textarea-wrap {
    margin-top: 20px
}

.chall-add-wrap .section h4 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.chall-add-wrap .change-cate {
    position: relative;
    display: block;
    padding: 10px 12px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #888;
    margin-top: 0;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 6px
}

.chall-add-wrap .change-cate a {
    position: absolute;
    top: 2px;
    right: 2px;
    padding: 10px 12px;
    display: inline-block;
    content: "";
    vertical-align: middle;
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0
}

.chall-add-wrap .top-attach-wrap {
    height: 48vw;
    max-height: 390px;
    margin: 24px 0
}

.chall-add-wrap .top-attach-wrap .top-img img {
    border-radius: 6px
}

.chall-add-wrap .top-attach-wrap .add-img-file {
    border-radius: 6px
}

.chall-add-wrap .top-attach-wrap .add-img-file label {
    width: 100%
}

.chall-add-wrap .input-wrap>div {
    margin-top: 16px
}

.chall-add-wrap .input-wrap>div h4 {
    padding-bottom: 10px
}

.chall-add-wrap .input-wrap>div span input,
.chall-add-wrap .input-wrap>div span select {
    width: 100%;
    padding: 13px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    border: 1px solid #e0e0e0;
    border-radius: 6px
}

.chall-add-wrap .input-wrap .half {
    display: flex;
    justify-content: space-between
}

.chall-add-wrap .input-wrap .half h4 {
    width: 50%;
    padding-top: 13px
}

.chall-add-wrap .input-wrap .half h4 span {
    display: block;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 3px
}

.chall-add-wrap .input-wrap .half h4 span em {
    color: #bf0000
}

.chall-add-wrap .input-wrap .half h4.pdt-reset {
    padding-top: 5px
}

.chall-add-wrap .input-wrap .half>span {
    width: 50%
}

.chall-add-wrap .input-wrap .half>span.num-vary {
    justify-content: center;
    align-items: center;
    flex-direction: row;
    display: flex
}

.chall-add-wrap .input-wrap .half>span.num-vary button {
    position: relative;
    width: 40px;
    height: 42px;
    border: 1px solid #e0e0e0;
    box-sizing: border-box
}

.chall-add-wrap .input-wrap .half>span.num-vary button:before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 11px;
    height: 1px;
    background-color: #333
}

.chall-add-wrap .input-wrap .half>span.num-vary button.btn-plus {
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px
}

.chall-add-wrap .input-wrap .half>span.num-vary button.btn-plus:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    height: 11px;
    background-color: #333
}

.chall-add-wrap .input-wrap .half>span.num-vary button.btn-minus {
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px
}

.chall-add-wrap .input-wrap .half>span.num-vary input {
    display: inline-block;
    flex: 1;
    height: 42px;
    line-height: 42px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-left: none;
    border-right: none;
    text-align: center;
    box-sizing: border-box;
    vertical-align: top;
    border-radius: 0
}

.chall-add-wrap .input-wrap .half>span.num-vary input::after {
    display: inline-block
}

.chall-add-wrap .input-wrap .half>span.num-vary input::-webkit-outer-spin-button,
.chall-add-wrap .input-wrap .half>span.num-vary input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.chall-add-wrap .input-wrap .half>span.num-vary.type1 span::after {
    content: "명"
}

.chall-add-wrap .input-wrap .half>span.num-vary.type2 span::after {
    content: "개"
}

.chall-add-wrap .input-wrap .half>span.num-vary.type3 span::after {
    content: "회"
}

.chall-add-wrap .radio-wrap {
    font-size: 0
}

.chall-add-wrap .radio-wrap input[type=radio]:checked+label:before {
    background-position: -96px 0
}

.chall-add-wrap .radio-wrap label {
    display: inline-block;
    width: 50%;
    padding: 17px 0 14px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.chall-add-wrap .radio-wrap label::before {
    margin: -2px 4px 0 0;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -72px 0
}

.chall-add-wrap .radio-wrap .certify-noti {
    padding: 0 20px 0 20px
}

.chall-add-wrap .radio-wrap .certify-noti::before {
    top: 0;
    left: 3px;
    width: 14px;
    height: 14px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -228px -42px
}

.chall-add-wrap .input-one-wrap {
    position: relative
}

.chall-add-wrap .input-one-wrap .input-line {
    margin-top: 15px
}

.chall-add-wrap .input-one-wrap .input-line input {
    width: 100%;
    padding: 13px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    border: 1px solid #e0e0e0;
    border-radius: 6px
}

.chall-add-wrap .input-one-wrap .input-line button {
    padding: 14px 0 !important;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0;
    width: 90px;
    background-color: #bf0000;
    padding: 15px 0;
    border-radius: 6px
}

.chall-add-wrap .input-one-wrap .input-line.input-line-btn {
    margin-top: 10px
}

.chall-add-wrap .input-one-wrap .input-line.input-line-btn input {
    width: calc(100% - 96px)
}

.chall-add-wrap .input-one-wrap p {
    padding: 12px 0 0
}

.chall-add-wrap .input-one-wrap p::before {
    display: none
}

.chall-add-wrap .input-one-wrap .hash-list li {
    display: inline-block;
    margin: 8px 2px 0 0;
    padding: 6px 7px 6px 12px;
    background-color: #f6f6f6;
    border-radius: 6px
}

.chall-add-wrap .input-one-wrap .hash-list li span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    vertical-align: middle
}

.chall-add-wrap .input-one-wrap .hash-list li span::before {
    display: inline-block;
    content: "#"
}

.chall-add-wrap .input-one-wrap .hash-list li button {
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -48px 0;
    text-indent: -9999px;
    vertical-align: middle
}

.chall-add-wrap .input-one-wrap .reward-check {
    position: absolute;
    top: -5px;
    right: 0
}

.chall-add-wrap .input-one-wrap .reward-check label {
    display: inline-block;
    padding: 4px 17px;
    border: 1px solid #ddd;
    border-radius: 4px
}

.chall-add-wrap .input-one-wrap .reward-check label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.chall-add-wrap .input-one-wrap .reward-check input[type=radio]:checked+label {
    border: 1px solid #bf0000
}

.chall-add-wrap .input-one-wrap .reward-check input[type=radio]:checked+label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.chall-add-wrap .attach-box {
    padding: 0
}

.chall-add-wrap .attach-box-list {
    margin-top: 10px
}

.chall-add-wrap .attach-box-list li.btn-upload label::before {
    transform: translate(-50%, -130%)
}

.add-complete {
    height: calc(69vh - 85px);
    padding: 30px 20px
}

.add-complete button {
    margin-bottom: 10px
}

.textarea-wrap {
    position: relative;
    margin: 0 0 20px
}

.textarea-wrap .btn-exam {
    position: absolute;
    top: 0;
    right: 0;
    padding: 3px 8px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    background-color: #f6f6f6;
    border-radius: 20px
}

.textarea-wrap textarea {
    display: block;
    width: 100%;
    padding: 13px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 11px;
    line-height: 20px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    resize: none
}

.textarea-wrap textarea::placeholder {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.textarea-wrap textarea.chall-intro {
    height: 180px
}

.textarea-wrap textarea.certify-guide {
    height: 120px;
    margin-bottom: 6px
}

.textarea-wrap input[type=checkbox]:checked+label:before {
    background-position: -96px 0
}

.textarea-wrap label {
    display: inline-block;
    padding: 0 0 5px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.textarea-wrap label::before {
    margin: -2px 2px 0 0;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -216px -24px
}

.main-feed {
    padding: calc(env(safe-area-inset-top) + 86px) 20px 90px
}

.main-feed>div {
    padding: 30px 0 10px
}

.main-feed>div h3 {
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.main-feed>div h3 span {
    color: #bf0000
}

.main-feed>div ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px
}

.main-feed>div ul li a {
    display: block;
    width: 100%;
    height: 100%
}

.main-feed>div ul li a>img {
    width: 100%;
    height: 100%;
    border-radius: 6px;
    object-fit: cover
}

.main-feed .feed-top ul {
    justify-content: space-between
}

.main-feed .feed-top ul .slick-list {
    margin-left: -10px
}

.main-feed .feed-top ul .slick-slide {
    margin-left: 10px
}

.main-feed .feed-top ul li {
    position: relative;
    height: 55vw;
    max-height: 440px
}

.main-feed .feed-top ul li a::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #999;
    border-radius: 6px;
    opacity: .5
}

.main-feed .feed-top ul li a .feed-profile {
    position: absolute;
    bottom: 2vw;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    text-align: center
}

.main-feed .feed-top ul li a .feed-profile img {
    display: inline-block;
    width: 50px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 100%;
    object-fit: cover
}

.main-feed .feed-top ul li a .feed-profile p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 2px
}

.main-feed .feed-body ul {
    justify-content: flex-start;
    margin-left: -2.2%
}

.main-feed .feed-body ul li {
    width: 31.1%;
    height: 30vw;
    max-height: 240px;
    margin: 0 0 2.2% 2.2%
}

.my-feed {
    padding: calc(env(safe-area-inset-top) + 86px) 0 90px
}

.my-feed ul li {
    border-bottom: 1px solid #eee
}

.my-feed ul li a {
    display: flex;
    justify-content: space-between;
    padding: 20px;
    box-sizing: border-box
}

.my-feed ul li a img {
    width: 42px;
    height: 42px;
    border-radius: 100%;
    object-fit: cover
}

.my-feed ul li a>div {
    width: calc(100% - 52px)
}

.my-feed ul li a>div p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.my-feed ul li a>div p span {
    color: #7ccca7
}

.my-feed ul li a>div .chall-cont,
.my-feed ul li a>div .chall-title {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

.my-feed ul li a>div .chall-title {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-top: 7px
}

.my-feed ul li.bg-yellow {
    background: rgba(241, 203, 1, .06)
}

.my-feed ul li.bg-red {
    background: rgba(255, 0, 0, .06)
}

.recent-word,
.recent-chall {
    position: relative
}

.recent-word h3,
.recent-chall h3 {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.recent-word .del-all,
.recent-chall .del-all {
    position: absolute;
    top: 30px;
    right: 20px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.recent-word ul,
.recent-chall ul {
    margin-top: 24px
}

.recent-word {
    padding: calc(env(safe-area-inset-top) + 76px) 20px 30px;
    border-bottom: 6px solid #f6f6f6
}

.recent-word ul {
    font-size: 0
}

.recent-word ul li {
    display: inline-block;
    margin: 0 2.5px 5px
}

.recent-word ul li a {
    display: inline-block;
    padding: 6px 14px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    border: 1px solid #ddd;
    border-radius: 4px
}

.recent-chall {
    padding: 30px 0;
    margin-left: 20px;
    overflow: hidden
}

.recent-chall ul {
    display: flex;
    justify-content: space-between
}

.recent-chall ul .slick-list {
    margin-left: -70px
}

.recent-chall ul .slick-slide {
    margin-left: 10px
}

.recent-chall ul li {
    width: 50%;
    margin-right: 20px
}

.recent-chall ul li a img {
    width: 100%;
    height: 24vw;
    max-height: 200px;
    border-radius: 6px;
    object-fit: cover
}

.recent-chall ul li a p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    white-space: unset;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.result-empty {
    text-align: center
}

.result-empty>div {
    padding: 70px 0
}

.result-empty>div h3 {
    font-size: 16px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.result-empty>div p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 15px
}

.result-empty>div+div {
    border-top: 6px solid #f6f6f6
}

.result-empty>div .btn-base-box {
    margin-top: 40px
}

.base-list {
    padding: 56px 20px 80px;
    background-color: #fff
}

.base-list ul li {
    position: relative;
    padding: 15px 0;
    border-bottom: 1px solid #eee
}

.base-list ul li span {
    display: block
}

.base-list ul li span.base-list-title {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-top: 0
}

.base-list ul li span.shop-info-title {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    padding-left:5px;
    margin-top: 7px;
    display: flex;
}

.base-list ul li span.shop-info-title span {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-left: 5px;
}

.base-list ul li span.base-list-title.new::after {
    display: inline-block;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #e74a3b;
    border-radius: 6px;
    vertical-align: top
}

.base-list ul li span.base-list-sub {
    font-size: 12px;
    font-weight: 400;
    color: #999;
    margin-top: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

.base-list ul li span.hash-unit {
    font-size: 14px;
    font-weight: 500;
    color: #666;
    margin-top: 0
}

.base-list ul li span.hash-unit::before {
    display: inline-block;
    content: "#"
}

.base-list ul li span.icon-order {
    position: absolute;
    top: 22px;
    right: 12px;
    width: 24px;
    height: 24px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    background-position: -264px -24px;
    text-indent: -9999px
}
.base-list ul li button.icon-addr {
    position: absolute;
    top: 22px;
    right: 12px;
    width: 24px;
    height: 24px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    background-position: -0px -0px;
    text-indent: -9999px
}


.icon-del {
	position: absolute;
    right: 12px;
    width: 24px;
    height: 24px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    background-position: -0px -0px;
    text-indent: -9999px
}


.latestAddr:active {
  background-color: #EDEFF2;
  box-shadow: rgba(225, 228, 232, 0.2) 0 1px 0 inset;
  transition: none 0s;
}

.base-list ul li span.list-num {
    position: absolute;
    top: 16px;
    right: 2px;
    font-size: 12px;
    font-weight: 400;
    color: #999;
    margin-top: 0
}

.base-list ul li span.base-list-date {
    font-size: 10px;
    font-weight: 400;
    color: #999;
    margin-top: 2px
}

.base-list ul li span.get-point {
    position: absolute;
    top: 25px;
    right: 2px;
    font-size: 12px;
    font-weight: 500;
    color: #17438c;
    margin-top: 0
}

.base-list ul li .switch {
    position: absolute;
    top: 20px;
    right: 0;
    width: 48px;
    height: 24px
}

.base-list ul li .switch input[type=checkbox]:checked+label {
    background-position: -288px -48px
}

.base-list ul li .switch label {
    display: block;
    position: relative;
    width: 48px;
    height: 24px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    background-position: -240px -48px
}

.base-list ul li .alert-img {
/* 	    position: absolute; */
    width: 24px;
    height: 25px;
    background: var(--img-url) no-repeat;
    background-size: 20px 25px;
    text-indent: -9999px;
    top: calc(env(safe-area-inset-top) + 11px);
    left: 3%;
    cursor: pointer;
}

.base-list.search-list-hash {
    margin-top: 0px;
    padding: 10px 0
}

.base-list.search-list-place {
    margin-top: 0px;
    padding: 10px 20px
}

.base-list.search-list-amt {
    margin-top: 0px;
    padding: 10px 20px
}


.mypage {
    padding-top: calc(env(safe-area-inset-top) + 46px)

}

.mypage .mp-link {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0
}

.mypage .mp-link::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 14px;
    height: 14px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    margin: -2px 0 0;
    background-position: -228px -56px
}

.mypage .profile-head {
    padding-top: 20px;
    border-bottom: 3px solid #f6f6f6
}

.mypage .profile-head-photo {
    text-align: center
}

.mypage .profile-head-photo .photo-wrap {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
    border: 1px solid #ddd;
    border-radius: 50%;
    overflow: hidden
}

.mypage .profile-head-photo .photo-wrap img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.mypage .profile-head-photo .photo-wrap.photo-dimmed::before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -54%);
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -264px -24px
}

.mypage .profile-head-photo h3 {
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #333;
	vertical-align : middle;
    display: inline;
}

.mypage .profile-head ul {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    border-top: 1px solid #f6f6f6;
    text-align: center
}

.mypage .profile-head ul li {
    width: 33.33%;
    border-left: 1px solid #f6f6f6
}

.mypage .profile-head ul li:first-child {
    border-left: none
}

.mypage .profile-head ul li a {
    display: block;
    padding: 12px 0 17px
}

.mypage .profile-head ul li a h3,
.mypage .profile-head ul li a p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 6px
}

.mypage .profile-menu {
    position: relative;
    padding: 30px 20px 90px
}

.mypage .profile-menu h3 {
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.mypage .profile-menu .mp-link {
    position: absolute;
    top: 35px;
    right: 20px
}

.mypage .profile-menu .chall-state {
    display: flex;
    justify-content: space-between;
    margin-top: 14px
}

.mypage .profile-menu .chall-state div {
    position: relative;
    padding: 14px 14px 3px;
    border-radius: 12px
}

.mypage .profile-menu .chall-state div h4 {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #fff;
    margin-top: 0
}

.mypage .profile-menu .chall-state div p {
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 2px;
    margin-bottom: 12px
}

.mypage .profile-menu .chall-state div p span {
    font-size: 18px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0
}

.mypage .profile-menu .chall-state-carbon {
    width: 66%;
    background-color: #7ccca7
}

.mypage .profile-menu .chall-state-carbon::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 62px;
    height: 62px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    position: absolute;
    right: 8px;
    bottom: 8px;
    background-size: 510px 370px;
    background-position: -62px -121px
}

.mypage .profile-menu .chall-state-accrue {
    width: 34%;
    margin-left: 5px;
    background-color: #066839;
    text-align: right
}

.mypage .profile-menu .chall-state-accrue::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 60px;
    height: 60px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    position: absolute;
    left: 11px;
    bottom: 8px;
    background-position: -252px 0
}

.mypage .profile-menu ul {
    margin-top: 15px
}

.mypage .profile-menu ul li {
    position: relative
}

.mypage .profile-menu ul li.new a:after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 14px;
    margin: -2px 0 0 5px;
    background: url(../images/new_icon.png) no-repeat;
    background-size: 14px 14px;
    vertical-align: middle
}

.mypage .profile-menu ul li a {
    display: block;
    padding: 15px 0;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.mypage .profile-menu ul li:after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -216px 0;
    position: absolute;
    top: 13px;
    right: 0
}

.tomato-state {
    padding: calc(env(safe-area-inset-top) + 66px) 20px 30px
}

.tomato-state .period-terms {
    display: flex;
    justify-content: space-between
}

.tomato-state .period-terms div {
    display: flex;
    align-items: center;
    margin-left: -8px
}

.tomato-state .period-terms div button {
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px
}

/* CSS */
.button-39 {
  background-color: #FFFFFF;
  border: 1px solid rgb(209,213,219);
  border-radius: .5rem;
  box-sizing: border-box;
  color: #111827;
  font-family: "Inter var",ui-sans-serif,system-ui,-apple-system,system-ui,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.25rem;
  padding: 2.75rem 3rem;
  text-align: center;
  text-decoration: none #D1D5DB solid;
  text-decoration-thickness: auto;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

.button-39:hover {
  background-color: rgb(249,250,251);
}

.button-39:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.button-39:focus-visible {
  box-shadow: none;
}

.tomato-state .period-terms div button.prev {
    background-position: -24px 0
}

.tomato-state .period-terms div button.next {
    background-position: -216px 0
}

.tomato-state .period-terms div p {
    padding: 0 5px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-top: 0
}

.tomato-state .period-terms ul li {
    display: inline-block
}

.tomato-state .period-terms ul li label {
    display: inline-block;
    padding: 4px 13px;
    border: 1px solid #ddd;
    border-radius: 4px
}

.tomato-state .period-terms ul li label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.tomato-state .period-terms ul li input[type=radio]:checked+label {
    border: 1px solid #bf0000
}

.tomato-state .period-terms ul li input[type=radio]:checked+label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.tomato-state .state-board {
    display: flex;
    justify-content: space-between;
    margin-top: 14px
}

.tomato-state .state-board div {
    width: 50%;
    padding: 18px 0;
    background-color: #f6f6f6;
    border-radius: 6px;
    text-align: center
}

.tomato-state .state-board div h4 {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #111;
    margin-top: 0
}

.tomato-state .state-board div p {
    font-size: 12px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 5px
}

.tomato-state .state-board div p span {
    font-size: 18px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.tomato-state .state-board div+div {
    margin-left: 7px
}

.tomato-state .ranking-board {
    position: relative;
    margin-top: 40px
}

.tomato-state .ranking-board h3 {
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.tomato-state .ranking-board .btn-ranks {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 0;
    position: absolute;
    top: 4px;
    right: 0
}

.tomato-state .ranking-board .btn-ranks::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 14px;
    height: 14px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    margin: -2px 3px 0 0;
    background-position: -228px -70px
}

.tomato-state .ranking-board .podium {
    margin-top: 20px;
    text-align: center
}

.tomato-state .ranking-board .podium li {
    display: inline-block;
    position: relative;
    width: 100px;
    height: 100px;
    margin: 0 3px;
    padding-top: 25px;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 50px;
    box-sizing: border-box;
    vertical-align: top
}

.tomato-state .ranking-board .podium li p {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0;
    line-height: 18px
}

.tomato-state .ranking-board .podium li p+p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 2px
}

.tomato-state .ranking-board .podium li p+p span {
    display: block;
    font-size: 16px;
    font-family: Pretendard-SemiBold
}

.tomato-state .ranking-board .podium li::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    line-height: 24px;
    border-radius: 100%;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #fff;
    margin-top: 0
}

.tomato-state .ranking-board .podium li:nth-child(1) p+p span {
    color: #bf0000
}

.tomato-state .ranking-board .podium li:nth-child(1)::before {
    content: "1";
    background-color: #bf0000
}

.tomato-state .ranking-board .podium li:nth-child(2) p+p span {
    color: #7ccca7
}

.tomato-state .ranking-board .podium li:nth-child(2)::before {
    content: "2";
    background-color: #7ccca7
}

.tomato-state .ranking-board .podium li:nth-child(3) p+p span {
    color: #f1cb01
}

.tomato-state .ranking-board .podium li:nth-child(3)::before {
    content: "3";
    background-color: #f1cb01
}

.tomato-state .ranking-board .ranking-main {
    margin-top: 30px
}

.tomato-state .ranking-board .ranking-main .ranking-cont {
    margin-top: 8px
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li {
    padding: 8px 0;
    border-top: 1px solid #eee
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li span,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li img {
    display: inline-block;
    vertical-align: middle
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li .num {
    width: 25px;
    padding-left: 2px;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #888;
    margin-top: 0
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li img {
    width: 40px;
    height: 40px;
    border-radius: 40px
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li .nickname {
    margin-left: 10px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li .reduce-carbon {
    float: right;
    line-height: 40px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li:first-child {
    border-top: none
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(1) .num,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(2) .num,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(3) .num {
    font-size: 18px;
    font-family: Pretendard-Bold;
    color: #bf0000;
    margin-top: 0
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(1) .nickname,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(2) .nickname,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(3) .nickname {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(1) .reduce-carbon,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(2) .reduce-carbon,
.tomato-state .ranking-board .ranking-main .ranking-cont ul li:nth-child(3) .reduce-carbon {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0
}

.edit-wrap {
    padding: calc(env(safe-area-inset-top) + 66px) 20px 90px
}

.edit-wrap .photo-line {
    position: relative
}

.edit-wrap .photo-line .photo-area {
    display: inline-block;
    position: relative;
    width: 78px;
    height: 78px;
    border: 1px solid #ddd;
    border-radius: 50%;
    overflow: hidden
}

.edit-wrap .photo-line .photo-area.photo-dimmed::before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -60%);
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -264px -24px
}

.edit-wrap .photo-line .photo-area img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.edit-wrap .photo-line .photo-file {
    position: absolute;
    top: 50px;
    left: 54px;
    width: 30px;
    height: 30px;
    background-color: #ddd;
    border-radius: 50%;
    z-index: 1
}

.edit-wrap .photo-line .photo-file input {
    display: none
}

.edit-wrap .photo-line .photo-file label {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -288px 0;
    text-indent: -9999px
}

.edit-wrap .edit-box {
    margin: 20px 0 30px
}

.edit-wrap .edit-box .edit-input {
    display: flex;
    justify-content: space-between;
    margin-top: 14px
}

.edit-wrap .edit-box .edit-input h4 {
    width: 29%;
    padding-top: 13px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.edit-wrap .edit-box .edit-input>span {
    width: 71%
}

.edit-wrap .edit-box .edit-input>span input {
    width: 100%;
    padding: 13px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0;
    border: 1px solid #e0e0e0;
    border-radius: 6px
}

.edit-wrap .edit-box .edit-input>span p {
    display: inline-block;
    padding: 13px 0;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.edit-wrap .edit-box .edit-input>span .col-red {
    padding: 8px 0 0;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: red;
    margin-top: 0
}

.edit-wrap .edit-box .edit-input-btn>span input,
.edit-wrap .edit-box .edit-input-btn>span p {
    width: calc(100% - 96px)
}

.edit-wrap .edit-box .edit-input-btn>span .btn-base {
    display: inline-block;
    width: 90px;
    padding: 13px 0
}

.edit-wrap .edit-box .edit-input-radio>span input:checked+label:before {
    background-position: -96px 0
}

.edit-wrap .edit-box .edit-input-radio>span label {
    display: inline-block;
    width: 45%;
    padding: 13px 0;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.edit-wrap .edit-box .edit-input-radio>span label::before {
    margin: -2px 4px 0 0;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    background-position: -72px 0
}

.app-setting {
    padding: calc(env(safe-area-inset-top) + 46px) 0 90px
}

.app-setting h3 {
    padding: 11px 20px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0;
    background-color: #f6f6f6
}

.app-setting h4 {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.app-setting ul {
    padding: 0 20px 6px
}

.app-setting ul li {
    position: relative
}

.app-setting div {
    padding: 13px 20px 19px
}

.app-setting .switch-box li {
    padding: 13px 0
}

.app-setting .switch-box li .switch {
    position: absolute;
    top: 10px;
    right: 0
}

.app-setting .switch-box li .switch input[type=checkbox]:checked+label {
    background-position: -252px -84px
}

.app-setting .switch-box li .switch label {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 42px;
    height: 24px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -252px -60px
}

.app-setting .link-box li a {
    display: block;
    padding: 13px 0;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.app-setting .link-box li a::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    position: absolute;
    top: 10px;
    right: 0;
    background-position: -216px 0;
    opacity: .8
}

.withdraw-wrap {
    padding: calc(env(safe-area-inset-top) + 66px) 20px 20px
}

.withdraw-wrap .guide-box {
    padding: 20px 10px;
    background-color: #f6f6f6;
    border-radius: 6px;
    text-align: center
}

.withdraw-wrap .guide-box h3 {
    font-size: 20px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0
}

.withdraw-wrap .guide-box p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 20px
}

.withdraw-wrap .info-box ul {
    margin-top: 30px
}

.withdraw-wrap .info-box ul li {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 14px;
    line-height: 20px
}

.withdraw-wrap .info-box ul li::before {
    display: inline-block;
    content: "·";
    margin: -5px 5px 0 10px;
    font-size: 24px;
    vertical-align: middle
}

.withdraw-wrap .info-box p {
    padding-left: 10px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 14px
}

.bottom-check {
    margin-top: 30px;
    padding: 0 10px
}

.bottom-check input[type=checkbox]:checked+label::before {
    background-position: -270px -108px
}

.bottom-check label {
    display: inline-block;
    position: relative
}

.bottom-check label::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 18px;
    height: 18px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-position: -252px -108px
}

.bottom-check label span {
    display: inline-block;
    padding-left: 24px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.acdn {
    padding: calc(env(safe-area-inset-top) + 86px) 0 90px
}

.acdn.faq {
    padding: calc(env(safe-area-inset-top) + 60px) 0 90px
}

.acdn h3 {
    position: relative;
    padding: 18px 60px 18px 20px;
    border-bottom: 1px solid #f6f6f6
}

.acdn h3 .title {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.acdn h3 .date {
    display: block;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 5px
}

.acdn h3::after {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    position: absolute;
    top: 50%;
    right: 20px;
    background-position: -24px 0;
    transform: translateY(-50%) rotate(-90deg);
    transform-origin: 50% 50%
}

.acdn h3.new .title::after {
    display: inline-block;
    content: "";
    width: 14px;
    height: 14px;
    margin: -2px 0 0 5px;
    background: url(../images/new_icon.png) no-repeat;
    background-size: 14px 14px;
    vertical-align: middle
}

.acdn h3.ui-state-active::after {
    transform: translateY(-50%) rotate(90deg)
}

.acdn h3.apply:before,
.acdn h3.finished:before {
    display: inline-block;
    width: 68px;
    padding: 3px 0;
    border-radius: 4px;
    text-align: center
}

.acdn h3.apply::before {
    content: "접수중";
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    border: 1px solid #ddd
}

.acdn h3.finished::before {
    content: "답변완료";
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #fff;
    margin-top: 0;
    background-color: #bf0000
}

.acdn div {
    padding: 4px 20px;
    background-color: #f6f6f6
}

.acdn div p,
.acdn div img {
    margin: 14px 0
}

.acdn div p {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 14px;
    line-height: 20px
}

.acdn div img {
    display: block;
    max-width: 100%;
    border-radius: 6px
}

.acdn div.qna {
    padding: 0;
    background-color: #fff
}

.acdn div.qna img {
    margin: 18px 20px 0;
    max-width: calc(100% - 40px)
}

.acdn div.qna .question {
    padding: 0 20px
}

.acdn div.qna .answer {
    position: relative;
    padding: 18px 20px 18px 45px;
    background-color: rgba(153, 204, 0, .08)
}

.acdn div.qna .answer::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 18px;
    height: 18px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -288px -108px;
    position: absolute;
    top: 18px;
    left: 22px
}

.btn-question {
    position: fixed;
    bottom: 80px;
    right: 15px;
    width: 58px;
    height: 58px;
    font-size: 0
}

.btn-question::before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 58px;
    height: 58px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -256px -154px
}

.qna-write {
    padding: calc(env(safe-area-inset-top) + 90px) 20px 90px
}

.qna-write h4 {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 16px;
    margin-bottom: 12px
}

.qna-write .inquiry-check label {
    display: inline-block;
    padding: 4px 12px;
    border: 1px solid #ddd;
    border-radius: 4px
}

.qna-write .inquiry-check label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.qna-write .inquiry-check input[type=radio]:checked+label {
    border: 1px solid #bf0000
}

.qna-write .inquiry-check input[type=radio]:checked+label span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0
}

.qna-write .capture-wrap {
    margin: 0 0 30px
}

.qna-write .capture-wrap h4 {
    margin-bottom: 9px
}

.qna-write .capture-wrap input {
    display: none
}

.qna-write .capture-wrap label {
    display: inline-block;
    padding: 7px 14px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    border: 1px solid #ddd;
    border-radius: 4px
}

.qna-write .capture-wrap label.on {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0;
    border: 1px solid #bf0000
}

.mychall-state {
    padding-top: calc(env(safe-area-inset-top) + 46px)
}

.mychall-state ul li {
    position: relative;
    padding: 20px 100px 20px 20px;
    border-bottom: 1px solid #f6f6f6
}

.mychall-state ul li h3 {
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.mychall-state ul li .date {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 6px
}

.mychall-state ul li a,
.mychall-state ul li span {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 68px;
    padding: 3px 0;
    border-radius: 4px;
    text-align: center
}

.mychall-state ul li a {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    border: 1px solid #ddd
}

.mychall-state ul li .review {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #bf0000;
    margin-top: 0;
    border: 1px solid #bf0000
}

.mychall-state ul li .opened {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #fff;
    margin-top: 0;
    border: 1px solid #bf0000;
    background-color: #bf0000
}

.popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .5);
    z-index: 40
}

.popup .popup-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    max-width: 700px;
    padding: 10px;
    text-align: center;
    background-color: #fff;
    border-radius: 8px
}

.popup .popup-box .popup-text {
    padding: 24px 0
}

.popup .popup-box .popup-text p {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 0
}

.popup .popup-box .popup-text p span {
    display: block;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 14px
}

.popup .popup-box .popup-text.tal p span {
    text-align: left
}

.popup .popup-box .popup-text.tal img {
    max-width: 100%;
    margin-top: 10px
}

.popup .popup-box .popup-btn {
    margin: 0 auto
}

.popup .popup-box .popup-btn button {
    margin-top: 6px;
    padding: 13px 0
}

.popup .popup-box .popup-reward {
    padding: 10px 5px 5px;
    text-align: left
}

.popup .popup-box .popup-reward .reward-sum {
    position: relative;
    padding-left: 100px
}

.popup .popup-box .popup-reward .reward-sum::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 10px;
    width: 70px;
    height: 70px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .08);
    border-radius: 100%
}

.popup .popup-box .popup-reward .reward-sum.shipping::before {
    background-position: 0 -154px
}

.popup .popup-box .popup-reward .reward-sum.gifticon::before {
    background-position: -70px -154px
}

.popup .popup-box .popup-reward .reward-sum h1 {
    margin-bottom: 10px;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.popup .popup-box .popup-reward .reward-sum p {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #333;
    margin-top: 0
}

.popup .popup-box .popup-reward .reward-sum p span {
    color: #bf0000
}

.popup .popup-box .popup-reward .reward-noti {
    margin: 12px 0 0 20px
}

.popup .popup-box .popup-reward .reward-noti li {
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #888;
    margin-top: 3px;
    list-style: disc
}

.popup .popup-box .popup-reward .reward-noti li::marker {
    font-size: .4rem
}

.popup .popup-box .notify-check {
    margin-top: 14px;
    padding: 18px 14px;
    border: 1px solid #f6f6f6;
    border-radius: 6px
}

.popup .popup-box .notify-check .notify-check-unit {
    text-align: left
}

.popup .popup-box .notify-check .notify-check-unit input[type=checkbox]:checked+label:before,
.popup .popup-box .notify-check .notify-check-unit input[type=radio]:checked+label:before {
    background-position: -96px 0
}

.popup .popup-box .notify-check .notify-check-unit label {
    display: block;
    position: relative;
    margin-bottom: 14px;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.popup .popup-box .notify-check .notify-check-unit label:before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    margin: -3px 5px 0 0;
    background-position: -72px 0
}

.popup .popup-box .notify-check .notify-check-unit textarea {
    width: 100%;
    height: 56px;
    padding: 10px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    resize: none;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

.popup .popup-box.popup-share {
    width: 280px
}

.popup .popup-box.popup-share h1 {
    font-size: 20px;
    font-family: Pretendard-Bold;
    color: #333;
    margin-top: 20px
}

.popup .popup-box.popup-share ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.popup .popup-box.popup-share ul li {
    width: 50%;
    margin: 20px 0
}

.popup .popup-box.popup-share ul li a {
    display: block;
    width: 68px;
    margin: 0 auto;
    padding: 68px 0 0;
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    background: url(../images/share_img.png) no-repeat;
    background-size: 272px 68px
}

.popup .popup-box.popup-share ul li:first-child a {
    background-position: 0 0
}

.popup .popup-box.popup-share ul li:first-child+li a {
    background-position: -68px 0
}

.popup .popup-box.popup-share ul li:first-child+li+li a {
    background-position: -136px 0
}

.popup .popup-box.popup-share ul li:first-child+li+li+li a {
    background-position: -204px 0
}

.popup .popup-box.popup-share .btn-share-close {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px
}

.popup .popup-box.popup-challenge {
    width: calc(100% - 40px);
    padding: 0
}

.popup .popup-box.popup-challenge h1 {
    padding: 10px 30px 10px 10px;
    text-align: left
}

.popup .popup-box.popup-challenge h1 a {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.popup .popup-box.popup-challenge>ul {
    height: 300px;
    padding: 0 20px 5px;
    box-shadow: inset 0px 4px 4px rgba(0, 0, 0, .02);
    overflow-y: scroll
}

.popup .popup-box.popup-challenge>ul>li {
    padding: 15px 0;
    text-align: center;
    border-top: 1px solid #e0e0e0
}

.popup .popup-box.popup-challenge>ul>li:first-child {
    border-top: none
}

.popup .popup-box.popup-challenge>ul>li .period strong {
    display: inline-block;
    font-size: 16px;
    font-family: Pretendard-SemiBold;
    color: #bf0000;
    margin-top: 0;
    vertical-align: middle
}

.popup .popup-box.popup-challenge>ul>li .period span {
    display: inline-block;
    margin-left: 10px;
    font-size: 12px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0;
    vertical-align: middle
}

.popup .popup-box.popup-challenge>ul>li .achieve {
    position: relative;
    margin-top: 5px
}

.popup .popup-box.popup-challenge>ul>li .achieve span {
    display: inline-block;
    /* margin: 0 20px; */
    margin: 0;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #111;
    margin-top: 0
}

.popup .popup-box.popup-challenge>ul>li .achieve span+span {
    font-size: 14px;
    font-family: Pretendard-Regular;
    color: #666;
    margin-top: 0
}

/* .popup .popup-box.popup-challenge>ul>li .achieve:after {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "|";
    font-size: 17px;
    font-family: Pretendard-Regular;
    color: #d9d9d9;
    margin-top: 0
} */

.popup .popup-box.popup-challenge>ul>li ul {
    margin-top: 10px
}

.popup .popup-box.popup-challenge>ul>li ul li {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 1.5px;
    padding: 1px 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 100%;
    box-sizing: border-box;
    font-size: 0;
    vertical-align: top
}

.popup .popup-box.popup-challenge>ul>li ul li span {
    display: inline-block;
    position: relative;
    width: 24px;
    height: 24px;
    margin: 0 auto;
    border-radius: 100%;
    box-sizing: border-box
}

.popup .popup-box.popup-challenge>ul>li ul li span::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 13px;
    height: 13px;
    background: url(../images/icon_color.png) no-repeat;
    background-size: 350px 254px;
    background-position: -314px 0
}

.popup .popup-box.popup-challenge>ul>li ul li.on {
    border: 2px solid #bf0000
}

.popup .popup-box.popup-challenge>ul>li ul li.on span {
    border: 1px solid #bf0000;
    color: #bf0000
}

.popup .popup-box.popup-challenge>ul>li ul li.on span::before {
    background-position: -314px -13px
}

.popup .popup-box.popup-challenge>ul>li .result {
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #333;
    margin-top: 10px
}

.popup .popup-box.popup-challenge .btn-share-close {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 24px;
    height: 24px;
    background: url(../images/icon.png) no-repeat;
    background-size: 340px 48px;
    text-indent: -9999px
}

.popup-full {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    overflow-y: scroll;
    overflow-x: hidden;
    z-index: 40
}

.popup-full .header {
    position: fixed;
    background-color: #fff
}

.popup-full .header h2 {
    padding-left: 20px;
    font-size: 19px;
    font-family: Pretendard-Bold;
    color: #111;
    margin-top: 0;
    text-align: left
}

.popup-full-body {
    height: auto;
    padding: 60px 20px 90px;
    font-size: 14px;
    font-family: Pretendard-SemiBold;
    color: #666;
    margin-top: 0
}

.full-popup-img {
    position: relative;
    max-width: 800px;
    height: 100vh;
    margin: 0 auto;
    background-color: #000
}

.full-popup-img button {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1;
    width: 50px;
    height: 50px;
    text-indent: -9999px
}

.full-popup-img button:before,
.full-popup-img button:after {
    position: absolute;
    top: 6px;
    left: 22px;
    content: "";
    height: 40px;
    width: 2px;
    background-color: #fff
}

.full-popup-img button:before {
    transform: rotate(45deg)
}

.full-popup-img button:after {
    transform: rotate(-45deg)
}

.full-popup-img .img-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 800px
}

.full-popup-img .img-box img {
    width: 100%;
    max-width: 800px;
    object-fit: cover
}

@media all and (max-width: 360px) {
    .sub-menu {
        padding: 0 20px
    }

    .sub-menu li {
        margin: 0 2.5%;
        width: 20%
    }

    .sub-menu li .icon-box {
        height: 17.8vw
    }
}

.shop-type {
    margin-right: 10px;
    background-color: #888;
    color: #fff;
    padding: 6px 10px;
    border-radius: 50px;
}




.dg-hd-mo-menu-panel {
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  position: fixed;
  z-index: 9999;
  top: 0;
  height: 100%;
  width: 70%;
  background-color: #fff;
}

/*햄버거 메뉴*/
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn {
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  display: inline-block;
  float: left;
  cursor: pointer;
  padding: 12px 28px;
  margin-left: calc(100% - 83%);
  position: absolute;
  z-index: 2;
  top: 0;
  width: 30px;
  height: 20.18181818px;
  opacity : 0.5;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span,
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span:before,
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span:after {
  transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  width: 22px;
  height: 2px;
  background-color: #979797;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span {
  position: relative;
  display: inline-block;
  float: left;
  margin-top: 9.09090909px;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span:before,
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span:after {
  content: "";
  position: absolute;
  left: 0;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span:before {
  top: -9.09090909px;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn span:after {
  top: 9.09090909px;
}
/*햄버거 메뉴 활성화 시*/
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn.mo-menu-active span{
  background: transparent;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn.mo-menu-active span:before,
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn.mo-menu-active span:after {
  top: 0;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn.mo-menu-active span:before {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn.mo-menu-active span:after {
  -webkit-transition-delay: 0.09s;
  -moz-transition-delay: 0.09s;
  -o-transition-delay: 0.09s;
  -ms-transition-delay: 0.09s;
  transition-delay: 0.09s;
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
}

/*메뉴 패널 안쪽부분*/
.mo-menu-title{
  background: #bf0000;
  height:62px;
  color:#fff;
  font-size:16px;
  padding: 18px 20px 0 20px;
  text-align: left;
}
.mo-menu-title a:first-of-type{
  border-right:1px solid #fbbc90;
  padding:0 7px 0 0;
}
.dg-hd-mo-menu-panel > ul {
  width:100%;
  z-index: 1;
  height: auto;
  text-align: left;
}

.dg-hd-mo-menu-panel > ul > li{
  clear: both;
  width: 100%;
  border-bottom: 1px solid #dcdcdc;
}

.dg-hd-mo-menu-panel > ul > li.menu-label > a{
  font-size: 17px;
  padding: 20px 0 20px 50px;
  color: #444;
  width: calc(100% - 60px);
  display: inline-block;
  height: 100%;
  font-weight: bold;
}

.dg-hd-mo-menu-panel > ul > li.menu-arrow-active-li{
  border-bottom: 2px solid #f9914c;
}
.dg-hd-mo-menu-panel > ul > li.menu-arrow-active-li-next-li{
  border-top: 1px solid #dcdcdc;
}

/*1차 메뉴의 - + 부분*/
.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow{
  height: 64px;
  width: 60px;
  display: inline-block;
  float: right;
  position: relative;
  cursor: pointer;
}

.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow::before,
.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow::after{
  width: 25px;
  height: 2px;
  background: #535353;
  content: "";
  display: inline-block;
  position:absolute;
  left:17.5px;
  top: calc(50% - 1px);
  transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
}

.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow::after{
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}
.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow.menu-arrow-active::before,
.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow.menu-arrow-active::after{
  background: #f9914c;
}
.dg-hd-mo-menu-panel ul li .dg-hd-mo-menu-arrow.menu-arrow-active::after{
  -webkit-transition-delay: 0.09s;
  -moz-transition-delay: 0.09s;
  -o-transition-delay: 0.09s;
  -ms-transition-delay: 0.09s;
  transition-delay: 0.09s;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
}

.dg-hd-mo-menu-panel .sub-menu{
  display: none;
  width: 100%;
  padding:0 10.133%;
}

.dg-hd-mo-menu-panel .sub-menu-on{
  display: block;
}
.dg-hd-mo-menu-panel .sub-menu li{
  float: left;
  height:45px;
  width: 100%;
  border-bottom: 1px solid #e0e0e0;
}
.dg-hd-mo-menu-panel .sub-menu li:first-of-type{
  margin: 20px 0 0 0;
}
.dg-hd-mo-menu-panel .sub-menu li:last-of-type{
  border-bottom: none;
  margin: 0 0 20px 0;
}

.dg-hd-mo-menu-panel .sub-menu li a{
  display: block;
  height: 100%;
  padding:11px 0px 15px 8px;
  font:15px 'bgR';
  color: #666666;
}

.dg-hd-mo-menu-panel {
  left: -100%;
}
.dg-hd-mo-menu-panel .dg-hd-mo-menu-btn {
  left: 121%;
}
.dg-hd-mo-menu-panel.mo-menu-active {
  left: 0;
  overflow: scroll;
}
.dg-hd-mo-menu-panel.mo-menu-active .dg-hd-mo-menu-btn {
  left: 95%;
  margin-left: -70px;
  z-index: 999;
  margin-top: 5px;
}

.dg-hd-mo-menu-panel.mo-menu-active .dg-hd-mo-menu-btn span:before,
.dg-hd-mo-menu-panel.mo-menu-active .dg-hd-mo-menu-btn span:after{
  background: #fff;
}

.dg-hd-mo-menu-panel-overlay{
  position: fixed;
  top: 0;
  z-index: 9998;
  width: 100%;
  height: 100%;
  display: none;
  background-color: rgba(0, 0, 0, 0.6);
  cursor: pointer;
}

.dg-white{
 color:#fff;
}

.dg-point{
 color:#f9904c;
}


/* FOOTER */

footer{
    background-color: #e7e7e7;
    border-top: 1px solid #333;
}

footer .inner{
    padding: 5px 5px 20px 5px;
}

footer .menu{
    display: flex;
    justify-content: center;
}

footer .menu li{
    position: relative;
}

footer .menu li::before{
    content: "";
    width: 3px;
    height: 3px;
    background-color: #555;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -1px;
    margin: auto;
}

/* li 태그 제일 앞의 점은 안 보이게 하겠다 */
footer .menu li {
  position: relative;
}

footer .menu li::before {
  content: "";
  width: 3px;
  height: 3px;
  background-color: #555;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -1px;
  margin: auto;
}

footer .menu li:last-child::before {
  display: none;
}

footer .menu li a {
  color: #ccc;
  font-size: 12px;
  font-weight: 700;
  padding: 15px;
  display: block;
}

footer .menu li a.green {
  color: #669900;
}

footer .btn-group {
    margin-top: 20px;
    display: flex;
    justify-content: center;
}

footer .btn-group .btn {
    font-size: 12px;
    margin-right: 10px;
    border: 1px solid;
    padding: 5px;
    color: rgba(0, 5, 50, .6);
}


footer .btn-group .btn:last-child {
    margin-right: 0;
}

footer .info {
    margin-top: 10px;
    text-align: left;
    padding-left: 20px;
}

footer .info span{
    margin-right: 20px;
    color: black;
    font-size: 12px;
    font-family: Pretendard-Regular;
}

footer .info span:last-child {
    margin-right: 0;
}

footer .copyright{
    color: #999;
    font-size: 12px;
    text-align: left;
    margin-top: 12px;
    padding-left: 20px;
}


footer .logo{
    margin: 30px auto 0;
}


.check-wrap {
    margin-top: 10px
}

.check-wrap input[type=checkbox]:checked+.icon-check:before, .check-wrap input[type=radio]:checked+.icon-check:before {
    background-position: -72px 0
}

.check-wrap .icon-check {
    display: inline-block;
    margin-right: 10px;
    font-size: 14px;
    font-weight: 400;
    color: #666;
    margin-top: 0;
    cursor: pointer
}

.check-wrap .icon-check:before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(../images/common/icon.png) no-repeat;
    background-size: 408px 102px;
    margin: -3px 5px 0 0;
    background-position: -48px 0
}

.check-wrap.check-wrap-region .icon-check {
    width: 43%;
    margin-top: 15px
}

.check-wrap.check-wrap-campaign input[type=checkbox]:checked+.icon-check, .check-wrap.check-wrap-campaign input[type=radio]:checked+.icon-check {
    box-shadow: none;
    border: 1px solid #17438c;
    color: #17438c
}

.check-wrap.check-wrap-campaign input[type=checkbox]:checked+.icon-check span, .check-wrap.check-wrap-campaign input[type=radio]:checked+.icon-check span {
    color: #17438c
}

.check-wrap.check-wrap-campaign input[type=checkbox]:checked+.icon-check span::before, .check-wrap.check-wrap-campaign input[type=radio]:checked+.icon-check span::before {
    background-position: -42px -72px
}

.check-wrap.check-wrap-campaign .check-wrap-title {
    margin-top: 25px
}

.check-wrap.check-wrap-campaign .check-wrap-title h5 {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    margin-top: 0
}

.check-wrap.check-wrap-campaign .check-wrap-title h6 {
    font-size: 12px;
    font-weight: 400;
    color: #333;
    margin-top: 0
}

.check-wrap.check-wrap-campaign .check-wrap-title p {
    font-size: 12px;
    font-weight: 400;
    color: #999;
    margin-top: 4px
}

.icon-check2 {
    width: 100%;
    margin-top: 5px;
    padding: 15px 4px 15px 25px; /* 위, 오, 아, 왼 */
    font-size: 16px;
    font-weight: 400;
    color: black;
    background-color: rgba(195, 195, 195);
    box-shadow: 0px 0px 8px rgba(0, 0, 0, .08);
    box-sizing: border-box
}

.check-wrap.check-wrap-campaign .icon-check {
    width: calc(33% - 15px);
    padding: 13px 4px 12px 10px;
    font-size: 14px;
    font-weight: 400;
    color: #333;
    margin-top: 15px;
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 8px;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, .08);
    box-sizing: border-box;
    margin-left: 3.5px;
}

.check-wrap.check-wrap-campaign .icon-check span {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    color: black;
    width: 300px;
    text-align: right;
}

.check-wrap.check-wrap-campaign .icon-check.icon-check-hiking {
    width: 34%;
    margin-right: 0
}

.check-wrap.check-wrap-campaign .icon-check.icon-check-beach {
    width: calc(99% - 3px)
}

.check-wrap.check-wrap-campaign .icon-check::before {
    margin-top: 0px;
}

.popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .4);
    z-index: 10
}

.popup .popup-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    max-width: 700px;
    padding: 10px;
    text-align: center;
    background-color: #fff;
    border-radius: 8px
}

.popup .popup-box .popup-text {
    padding: 20px 0
}

.popup .popup-box .popup-text p {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-top: 0
}

.popup .popup-box .popup-text button {
    font-size: 12px;
    font-weight: 400;
    color: #17438c;
    margin-top: 10px
}

.popup .popup-box .popup-btn {
    max-width: 500px;
    margin: 0 auto
}

.popup .popup-box .popup-btn button {
    display: block
}

.popup .popup-box .popup-btn button.type-shadow {
    font-size: 12px;
    font-weight: 400;
    color: #999;
    margin-top: 8px;
    width: 100%;
    background-color: #fff;
    max-width: 500px;
    padding: 15px 0;
    border-radius: 8px;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, .08)
}

.popup .popup-box .popup-btn button.type-main {
    font-size: 12px;
    font-weight: 400;
    color: #fff;
    margin-top: 8px;
    width: 100%;
    background-color: #17438c;
    max-width: 500px;
    padding: 15px 0;
    border-radius: 8px
}
.category {
    position: fixed;
    top: calc(env(safe-area-inset-top) + 176px);
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 800px;
    padding: 0 20px;
    border-bottom: 1px solid #eee;
    z-index: 10;
    background-color: #fff
}

.category.category2 {
    position: relative;
    top: env(safe-area-inset-top)
}

.category ul li {
    display: inline-block;
    margin-right: 20px;
    vertical-align: middle;
    width: 100px;
}

.category ul li a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 16px;
    font-weight: 400;
    color: #666;
    margin-top: 0;
    line-height: 40px;
}

.category ul li.on a {
    font-size: 16px;
    font-weight: 700;
    color: #17438c;
    margin-top: 0;
    border-bottom: 2px solid #17438c
}

.category button {
    font-size: 12px;
    font-weight: 400;
    color: #e74a3b;
    margin-top: 0;
    line-height: 40px
}
