@charset "UTF-8";
@font-face {
	font-family: "SUIT-Regular";
	src: url("https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_suit@1.0/SUIT-Regular.woff2") format("woff2");
	font-weight: normal;
	font-style: normal;
}

:root {
	/* 컬러 */
	--t_darker: #0f172a;
	--t_dark: #1e293b;
	--t_normal: #334155;
	--t_medium: #475569;
	--t_light: #64748b;
	--t_lighter: #94a3b8;
	--t_lighter_l: #acb7c8;
	--t_thin: #cbd5e1;
	--t_table: #e2e8f0;
	--t_section: #f1f5f9;

	--m_darker: #004b50;
	--m_dark: #15803d;
	--m_main: #00a76f;
	--m_light: #02c75c;
	--m_light_l: #34d662;
	--m_lighter: #c8fad6;
	--m_bg_dk: #e8f2f5;
	--m_bg: #edf5f7;
	--m_white: white;

	--p_red: #ef4444;
	--p_red_d: #9d100d;
	--p_blue: #007ffe;
	--p_blue_d: #001eff;
	--p_blue_l: #3b82f6;
	--p_orange: #f97316;
	--p_yellow: #ff8c34;
	--p_pink: #ff6a7e;
	--p_purple_d: #5e438f;
	--p_purple: #9a4cfa;
	--p_magenta: #9f6fe3;
	--p_gold: #e4bc68;
	--p_gold_d: #c58023;
	--p_green_d: #003e31;

	--bg_lighter: #edf5f7;
	--bg_light: #e5f0f3;
	--bg_medium: #d6e7ec;
	--bg_normal: #c5dee3;
	--bg_dark: #b1d0d9;

	/* 폰트싸이즈 */
	--f_8: 8px;
	--f_9: 9px;
	--f_10: 10px;
	--f_11: 11px;
	--f_12: 12px;
	--f_13: 13px;
	--f_14: 14px;
	--f_15: 15px;
	--f_16: 16px;
	--f_17: 17px;
	--f_18: 18px;
	--f_19: 19px;
	--f_20: 20px;
	--f_22: 22px;
	--f_24: 24px;
	--f_26: 26px;
	--f_28: 28px;

	/* 슬라이더 폰트 싸이즈 */
	--swiper-navigation-size: 20px;

	/* 그림자 */
	--shadow: 0px 0px 15px rgba(145, 158, 171, 0.4);
}

html {
	min-height: 100svh;
	max-height: 100lvh;
	height: 100dvh;
}
body {
	position: relative;
	min-height: 100svh;
	max-height: 100lvh;
	height: 100dvh;
	font-size: inherit;
	color: inherit;
	font-weight: inherit;
	background-color: #e8eef5;
}

* {
	margin: 0;
	padding: 0;

	line-height: normal;

	letter-spacing: -0.5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	word-break: keep-all;
	font-size: var(--f_14);
	color: var(--t_normal);
	font-weight: 400;
	font-family:
		"SUIT",
		"Noto Sans KR",
		"맑은고딕",
		-apple-system,
		BlinkMacSystemFont,
		Segoe UI,
		Roboto,
		Helvetica Neue,
		Arial,
		sans-serif;

	/* 텍스트 싸이즈 오작동 방지 */
	-webkit-text-size-adjust: none; /* 크롬, 사파리, 오페라 신버전 */
	-ms-text-size-adjust: none; /* IE */
	-moz-text-size-adjust: none; /* 파이어폭스 */
	-o-text-size-adjust: none; /* 오페라 구버전 */
	text-size-adjust: none;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

*:after,
*:before {
	box-sizing: border-box;
	font-size: inherit;
	color: inherit;
	font-family: inherit;
	line-height: inherit;
	font-weight: inherit;
}
*[onclick] {
	cursor: pointer !important;
}
*[data-pop] {
	cursor: pointer !important;
}
body.no_scroll {
	overflow: hidden;
}
div,
span,
strong,
p,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
table,
thead,
tbody,
tr,
th,
td,
ul,
li,
form,
img,
a,
address,
header,
main,
footer,
section,
aside,
nav {
	font-size: inherit;
	color: inherit;
	font-family: inherit;
	line-height: inherit;
	font-weight: inherit;
}
form {
	width: 100%;
}
.m_darker {
	background-color: var(--m_darker);
}
.m_dark {
	background-color: var(--m_dark);
}
.m_main {
	background-color: var(--m_main);
}
.m_light {
	background-color: var(--m_light);
}
.m_light_l {
	background-color: var(--m_light_l);
}
.m_lighter {
	background-color: var(--m_lighter);
}
.m_bg_dk {
	background-color: var(--m_bg_dk);
}
.m_bg {
	background-color: var(--m_bg);
}
.m_white {
	background-color: var(--m_white);
}

.t_darker {
	background-color: var(--t_darker);
}
.t_dark {
	background-color: var(--t_dark);
}
.t_normal {
	background-color: var(--t_normal);
}
.t_medium {
	background-color: var(--t_medium);
}
.t_light {
	background-color: var(--t_light);
}
.t_lighter {
	background-color: var(--t_lighter);
}
.t_thin {
	background-color: var(--t_thin);
}
.t_table {
	background-color: var(--t_table);
}
.t_section {
	background-color: var(--t_section);
}

.p_red {
	background-color: var(--p_red);
}
.p_blue {
	background-color: var(--p_blue);
}
.p_blue_d {
	background-color: var(--p_blue_d);
}
.p_blue_l {
	background-color: var(--p_blue_l);
}
.p_orange {
	background-color: var(--p_orange);
}
.p_yellow {
	background-color: var(--p_yellow);
}
.p_pink {
	background-color: var(--p_pink);
}
.p_purple_d {
	background-color: var(--p_purple_d);
}
.p_purple {
	background-color: var(--p_purple);
}
.p_magenta {
	background-color: var(--p_magenta);
}
.p_gold {
	background-color: var(--p_gold);
}
.p_gold_d {
	background-color: var(--p_gold_d);
}
.p_green_d {
	background-color: var(--p_green_d);
}
.p_red_d {
	background-color: var(--p_red_d);
}
.p_line_red {
	border: 1px solid var(--p_red_d) !important;
	color: var(--p_red_d) !important;
}

h2 {
	font-size: var(--f_28);
	font-weight: 800;
}
h3 {
	font-size: var(--f_26);
	font-weight: 800;
}
h4 {
	font-size: var(--f24);
	font-weight: 800;
}
h5 {
	font-size: var(--f_22);
	font-weight: 800;
}
h6 {
	font-size: var(--f_20);
	font-weight: 800;
}
ul {
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	text-align: inherit;
	clear: both;
}
li {
	color: inherit;
	list-style: none;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	text-align: inherit;
}
img {
	display: block;
	border: 0;
	text-align: inherit;
	font-size: 0;
	/* 이미지 랜더링 흐림방지 */
	image-rendering: -webkit-optimize-contrast;
	transform: translateZ(0);
	backface-visibility: hidden;
}
a {
	position: relative;
	font-weight: 700;
	text-decoration: none;
	font-size: inherit;
	color: inherit;
	font-weight: inherit;
	text-align: inherit;

	line-height: inherit;

	display: flex;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	cursor: pointer;

	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-tap-highlight-color: transparent;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	-ms-user-select: none;
	-moz-user-select: -moz-none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
a.under_line {
	text-decoration-line: underline;
}
.disabled {
	color: var(--t_lighter) !important;
	position: relative;
	background-color: var(--t_table) !important;
	pointer-events: none !important;
}
input {
	background-color: white;
	font-size: inherit;
	color: inherit;
	line-height: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	height: 38px;
	padding: 0 15px;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	font-size: var(--f_14);
	color: var(--t_normal);
	width: 100%;
}
select {
	font-family: inherit;
	background: url("../img/select_arrow_icon.svg") no-repeat calc(100% - 8px) center;
	background-color: white;
	background-size: 14px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0 15px;
	padding-right: 30px;
	height: 38px;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	display: flex;
	align-items: center;
	cursor: pointer;
	font-size: var(--f_14);
	color: var(--t_normal);
	width: 100%;
}
select.selPoint {
	background-image: url("../img/select_arrow_wt_icon.svg");
	background-color: var(--m_light);
	border-color: var(--m_light);
	color: white;
}
select.selPoint:invalid {
	color: white;
}
select.selPoint option {
	background-color: white;
}
input:disabled,
select:disabled {
	background-color: var(--t_table);
	color: var(--t_lighter);
	cursor: no-drop;
}
select:invalid {
	color: var(--t_lighter);
}
select[disabled]:has(option[value=""]:checked) {
	color: var(--t_light);
}
option {
	color: var(--t_normal);
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
}
input[type="number"] {
	-moz-appearance: textfield;
	appearance: textfield;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: var(--t_lighter);
	font-size: inherit;
}
input:focus,
input:focus,
select:focus,
textarea:focus {
	border-color: inherit;
	outline: none;
}
select::-ms-expand {
	display: none;
}
.textAreaZone {
	display: flex;
}
textarea {
	background-color: white;
	font-size: inherit;
	color: inherit;
	line-height: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 15px;
	width: 100%;
	line-height: 1.4;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	resize: none;
}
input.intSearch {
	flex: 1 1 auto;
	background: url("../img/search_n_icon.svg") no-repeat 15px center;
	padding-left: 40px;
}
input.intTime {
	flex: 1 1 auto;
	background: url("../img/time_icon.svg") no-repeat 15px center;
	padding-left: 40px !important;
	padding-right: 95px !important;
}

.po_re {
	position: relative;
}
.txt_c {
	text-align: center;
}
.txt_l {
	text-align: left;
}
.txt_r {
	text-align: right;
}
.of_hi {
	overflow: hidden;
}
.dp_non {
	display: none !important;
}
.bk_hide {
	background-color: rgba(15, 28, 35, 0.6);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	visibility: hidden;
	animation: bk_hide 0.8s linear;
	animation-delay: 0.5s;
	opacity: 0;
	transition: all 0.2s;
	z-index: 100;
	/* backdrop-filter: blur(4px); */
}
.bk_hide.on {
	transition: all 0.3s;
	visibility: visible;
	opacity: 1;
}
.mBwrap {
	position: relative;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: flex-end;
	max-width: 440px;
	margin: 0 auto;
	background-color: white;
}
.mBwrap main {
	flex: 1 1 auto;
	width: 100%;
	max-width: 440px;
	min-height: 100vh;
	padding-top: 51px;
	background-color: white;
}
.bCon {
	width: 100%;
	padding: 10px 15px;
}
.wCon {
	width: 100%;
	padding: 20px 15px;
}
.wConB {
	width: 100%;
	padding: 20px 15px;
	border-bottom: 10px solid var(--m_bg);
}
.lCon {
	width: 100%;
	padding: 10px 15px 40px 15px;
}
.lConB {
	width: 100%;
	padding: 20px 15px;
	border-bottom: 40px solid var(--m_bg);
}
.swiper-pagination-lock {
	display: none !important;
}

/* 공유버튼 */
.shareBtn {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	border-radius: 6px;
	background-color: var(--t_medium);
	padding: 0 12px;
}
.shareBtn::after {
	content: "";
	display: flex;
	width: 100%;
	height: 100%;
	-webkit-mask: url("../img/share_icon.svg") no-repeat center;
	mask: url("../img/share_icon.svg") no-repeat center;
	background-color: var(--t_medium);
}
.shareBtn::before {
	content: "공유";
	font-size: var(--f_14);
	font-weight: 700;
	white-space: nowrap;
	color: white;
}

/* 전송실패 재전송 전송취소 */
.failedSendWrap {
	margin-top: 4px;
}
.failedSendWrap .resend {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: var(--f_11);
	font-weight: 700;
	color: white;
	height: 18px;
	padding: 0 6px;
	border-radius: 3px;
	background-color: var(--p_red_d);
}
.failedSendWrap .resend .img {
	flex: 0 0 auto;
	display: inline-flex;
	width: 12px;
	height: 12px;
	-webkit-mask: url("../img/refresh_icon.svg") no-repeat center / cover;
	mask: url("../img/refresh_icon.svg") no-repeat center / cover;
	background-color: white;
}

/* 방장 부방장 표시 */
.roomLeader {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 50px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
}
.roomLeader .frameImg {
	width: 100%;
	height: 100%;
	background: url("../img/rank_frame_1st.png") no-repeat center;
	background-size: 48px;
}
.roomDeputy {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 50px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
}
.roomDeputy .frameImg {
	width: 100%;
	height: 100%;
	background: url("../img/rank_frame_2nd.png") no-repeat center;
	background-size: 52px;
}

/* 이미지 컨트롤 박스 */
.imgControlBox {
	position: fixed;
	display: flex;
	align-items: center;
	gap: 8px;
	height: 32px;
	padding: 0px 8px;
	border-radius: 6px;
	background-color: rgba(15, 23, 42, 0.5);
	z-index: 10;
	margin-top: 15px;
	margin-left: 15px;
}
.imgControlBox a::before {
	content: "";
	display: flex;
	width: 20px;
	height: 20px;
	mask: url("") no-repeat center;
	background-color: var(--t_lighter);
}
.imgControlBox .fit::before {
	mask-image: url("../img/control_fit_icon.svg");
}
.imgControlBox .full::before {
	mask-image: url("../img/control_full_icon.svg");
}
.imgControlBox .minus::before {
	mask-image: url("../img/control_minus_icon.svg");
}
.imgControlBox .plus::before {
	mask-image: url("../img/control_plus_icon.svg");
}
.imgControlBox a.on::before {
	background-color: white;
}
.layer_popup:has(.imgControlBox .fit.on) .pop_con {
	overflow: hidden;
	cursor: default;
}
.imgControlBox:has(.fit.on) + .img_box img {
	height: 100%;
	width: 100%;
}

/* 별점 */
/* 작은 사이즈 */
.selStarSm {
	display: flex;
	align-items: center;
	gap: 6px;
}
.selStarSm .starBox {
	display: flex;
	align-items: center;
	gap: 5px;
}
.selStarSm .starBox a {
	background: url("../img/star_icon.svg") no-repeat center / contain;
	width: 17px;
	height: 16px;
}
.selStarSm .starBox a.on {
	background-image: url("../img/star_fill_icon.svg");
}
.selStarSm .starBox .score {
	font-weight: 800;
}

/* 중간 사이즈 */
.selStarMd {
	display: flex;
	align-items: center;
	gap: 6px;
}
.selStarMd .starBox {
	display: flex;
	align-items: center;
	gap: 5px;
}
.selStarMd .starBox a {
	background: url("../img/star_icon.svg") no-repeat center / contain;
	width: 19px;
	height: 18px;
}
.selStarMd .starBox a.on {
	background-image: url("../img/star_fill_icon.svg");
}
.selStarMd .starBox .score {
	font-weight: 800;
	font-size: var(--f_18);
}

/* 카운트 */
.totalCount {
	display: flex;
	align-items: center;
	font-size: var(--f_11);
}
.totalCount .subTitle {
	padding-right: 6px;
}

/* 버튼 드롭 박스 */
.btnDropBox {
	width: 100%;
}
.btnDropBox .lineDropBtn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 34px;
	padding: 0 15px;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	font-size: var(--f_13);
	cursor: pointer;
}
.btnDropBox .lineDropBtn img {
	display: flex;
	width: 14px;
}
.btnDropBox:has(.btnDropCon.on) img {
	transform: rotate(180deg);
}
.btnDropBox .btnDropCon {
	display: none;
	padding-top: 10px;
}
.btnDropBox .btnDropCon.on {
	display: block;
}
.btnDropBox .btnDropCon .subSmTxt {
	padding-top: 6px;
	font-size: var(--f_11);
}

/* 워터마크 풀스크린 */
html:has(.golfWaterMark) .realTimeJoinWait,
html:has(.FullScreen) .realTimeJoinWait,
html:has(.golfWaterMark) .golf_option_sh .intForm,
html:has(.FullScreen) .golf_option_sh .intForm,
html:has(.golfWaterMark) .bodyTopSticky,
html:has(.FullScreen) .bodyTopSticky {
	display: none !important;
	transform: scale(0%);
	position: absolute;
	top: -999999999px;
	left: -999999999px;
}
.golfWaterMark {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
}
.golfWaterMark .wmDateImg {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 348px;
	height: 200px;
}
.golfWaterMark .wmDateImg .date {
	font-size: 16px;
	font-weight: 700;
	color: black;
	transform: rotate(-30deg);
}
.golfWaterMark .FullScreen {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-repeat: repeat;
	background-size: 240px;
	z-index: 9999;
	opacity: 0.2;
}
html:has(.golfWaterMark) body .bottomTie {
	display: none !important;
	transform: scale(0%);
	position: absolute;
	top: -999999999px;
	left: -999999999px;
}
html:has(.golfWaterMark) body .filterSearchPop {
	display: none !important;
	transform: scale(0%);
	position: absolute;
	top: -999999999px;
	left: -999999999px;
}

/* 리뷰 리스트 */
.reviewBox {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 20px 15px;
	border-bottom: 1px solid var(--t_thin);
	cursor: pointer;
}
.reviewBox .imgBox {
	flex: 0 0 auto;
	width: 105px;
	aspect-ratio: 1 / 1;
	border-radius: 8px;
	overflow: hidden;
}
.reviewBox .imgBox img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.reviewBox .item {
	flex: 1 1 auto;
}
.reviewBox .item .info {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin-bottom: 12px;
}
.reviewBox .item .info * {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.reviewBox .dealerImg {
	position: absolute;
	top: 0;
	right: 0;
	flex: 0 0 auto;
	width: 42px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	overflow: hidden;
	border: 1px solid var(--t_thin);
}
.reviewBox .dealerImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.reviewBox .item .info strong {
	font-size: var(--f_15);
	font-weight: 700;
}
.reviewBox .finishRev {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 30px;
}
.reviewBox .finishRev .time {
	font-size: var(--f_12);
}
.reviewBox .writeRev {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0px 12px;
	border-radius: 4px;
	width: 100%;
	height: 30px;
	background-color: var(--m_lighter);
	font-size: var(--f_12);
	font-weight: 700;
	color: var(--m_dark);
}
.reviewBox .noRev {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0px 12px;
	border-radius: 4px;
	width: 100%;
	height: 30px;
	background-color: var(--t_table);
	font-size: var(--f_12);
	font-weight: 700;
	color: var(--t_lighter);
}
.reviewBox:has(.noRev) {
	pointer-events: none;
}
.reviewBox:has(.noRev) .imgBox {
	opacity: 0.5;
}
.reviewBox:has(.noRev) .dealerImg {
	opacity: 0.5;
}
.reviewBox:has(.noRev) .info {
	color: var(--t_lighter);
}

/* 라인차트 */
.lineChart {
	display: grid;
	grid-template-columns: max-content 1fr max-content;
	gap: 8px 12px;
	margin-bottom: 20px;
}
.lineChart .item {
	position: relative;
	display: contents;
}
.lineChart .item .txt {
	font-size: var(--f_12);
}
.lineChart .item .center {
	display: flex;
	align-items: center;
}
.lineChart .item .chart {
	position: relative;
	flex: 1 1 auto;
	height: 8px;
	border-radius: 7px;
	background-color: var(--t_table);
}
.lineChart .item .chart .graph {
	position: absolute;
	left: 0;
	top: 0;
	height: 8px;
	border-radius: 7px;
	background-color: var(--t_lighter_l);
}
.lineChart .item .chart .graph.on {
	background-color: var(--m_main);
}
.lineChart .item .percent {
	font-weight: 800;
	font-size: var(--f_12);
	text-align: right;
}

/* 검색결과가 없습니다 */
.noResult {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 140px;
}

/* 검색 하이라이트 */
.markHighLight {
	display: inline;
	background-color: var(--p_blue);
	color: white;
}

/* 채팅 링크 */
.chatLinkWrap .linkBox {
	color: var(--p_blue);
	text-decoration: underline;
	word-wrap: normal;
	word-break: break-all;
	width: 100%;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
	line-clamp: 6;
	text-overflow: ellipsis;
	overflow: hidden;
}
.chatLinkWrap .linkAllView {
	padding-top: 10px;
	font-size: var(--f_11);
}

/* 필수항목 */
.reQuiredLeft {
	display: flex;
	align-items: center;
	font-size: var(--f_11);
	color: var(--t_light);
}
.reQuiredLeft::before {
	content: "＊";
	color: var(--p_red) !important;
	margin-right: 4px;
}
.reQuiredRight {
	display: flex;
	align-items: center;
	font-size: var(--f_11);
	color: var(--t_light);
}
.reQuiredRight::after {
	content: "＊";
	color: var(--p_red) !important;
	margin-left: 4px;
}

/* 그림자 박스 */
.sh_box {
	box-shadow: 0px 0px 10px rgba(145, 158, 171, 0.3);
}

/* 버튼 */
.btnRow {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	white-space: nowrap;
}

/* 엑스라지 */
.xl_btn a,
a.xl_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 20px;
	height: 52px;
	border-radius: 8px;
	color: white;
	font-size: var(--f_18);
	font-weight: 700;
	white-space: nowrap;
	line-height: normal;
}
.l_btn a,
a.l_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 15px;
	height: 46px;
	border-radius: 8px;
	color: white;
	font-size: var(--f_17);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
}
.b_btn a,
a.b_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 15px;
	height: 42px;
	border-radius: 8px;
	color: white;
	font-size: var(--f_15);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
}
.m_btn a,
a.m_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 12px;
	height: 38px;
	border-radius: 6px;
	color: white;
	font-size: var(--f_14);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
}
.s_btn a,
a.s_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 12px;
	height: 34px;
	border-radius: 6px;
	color: white;
	font-size: var(--f_13);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
}
.sx_btn a,
a.sx_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 10px;
	height: 30px;
	border-radius: 4px;
	color: white;
	font-size: var(--f_13);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
}
.t_btn a,
a.t_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 8px;
	height: 22px;
	border-radius: 4px;
	color: white;
	font-size: var(--f_12);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
}

/* 배경색 약한 버튼 */
a.m_lighter,
a.m_white,
a.t_thin,
a.t_table,
a.t_section,
a.m_bg_dk,
a.m_bg {
	color: var(--t_normal);
}
a.t_table,
a.m_white {
	border: 1px solid var(--t_thin);
}
a.m_dark_line,
a.m_dark_line {
	border: 1px solid var(--m_dark);
	color: var(--m_dark);
}

/* sticky */
.bodyTopSticky {
	flex: 0 0 auto;
	position: sticky;
	top: 51px;
	z-index: 10;
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
	background-color: white;
	/* transition: all 0.1s; */
	padding: 15px;
	padding-top: 10px;
}
.bodyTopSticky.on {
	border-bottom: 1px solid var(--t_thin);
	padding-top: 15px;
}

/* 필터 검색 버튼 */
.filterShBtn {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 12px;
	width: 100%;
	height: 38px;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	font-size: var(--f_14);
	font-weight: 500;
	line-height: normal;
	white-space: nowrap;
}
.filterShBtn .filterIcon {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url(../img/filter_option_icon.svg) no-repeat center;
	mask: url(../img/filter_option_icon.svg) no-repeat center;
	background-color: var(--t_medium);
	transition: all 0.2s;
}

/* 공통 하단 버튼 팝업 */
.bottomBtnPop {
	position: fixed;
	background-color: white;
	border-top: 1px solid var(--t_thin);
	height: 70px;
	width: 100%;
	max-width: 440px;
	bottom: -80px;
	z-index: 1000;
	transition: bottom 0.3s;
}
.bottomBtnPop.active {
	bottom: 0px;
}
.bottomBtnPop .btpCon {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 0 15px;
}
.bottomBtnPop .eachBtn a {
	height: 40px;
	flex-grow: 1.5;
	padding: 0 10px;
}
.bottomBtnPop .eachBtn a:first-child {
	flex-grow: 0.5;
}
.eachBtn a:only-child {
	flex-grow: 1 !important;
}
.bottomBtnPop .widthBtn a {
	height: 40px;
	padding: 0 10px;
}
.bottomBtnPop .widthBtn a:first-child {
	flex-grow: 0.5;
}

/* 파일 업로드 */
input[type="file"] {
	display: none;
}
.filebox {
	display: flex;
	grid-gap: 10px;
	background: url("");
}
.filebox .btn_upload {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 36px;
	min-width: 140px;
	height: 60px;
	border-radius: 6px;
	color: white;
	font-weight: 500;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	background-color: #626671;
	cursor: pointer;
}
.filebox .btn_upload:hover {
	background-color: var(--txt_3);
}

/* 팝업 */
.layer_popup {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	z-index: 100000;
	padding: 15px;
}
.layer_popup.on {
	display: flex;
	animation: popup_move 0.7s both;
}
@keyframes popup_move {
	from {
		opacity: 0;
		transform: translateY(50px);
	}
}
@keyframes popup_opacity {
	from {
		opacity: 0;
	}
}
.layer_popup.on.no_any {
	animation: none;
}
.layer_popup .popup_box {
	position: relative;
	display: flex;
	flex-direction: column;
	background-color: white;
	overflow: hidden;
	border-radius: 14px;
	/* box-shadow: 0px 0px 10px 0px rgb(167 183 209 / 30%); */
	box-shadow: 0px 0px 20px 0px rgb(33 43 54 / 24%);
	background-color: white;
	max-width: 640px;
}
.layer_popup .popup_box > .title {
	position: relative;
	padding: 20px 45px 15px 15px;
	flex: 0 0 auto;
}
.layer_popup .popup_box > .title .txt {
	font-size: var(--f_17);
	font-weight: 700;
	color: var(--t_dark);
	width: 100%;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.layer_popup .popup_box > .title .txt p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.layer_popup .popup_box > .title .txt:has(.selStarSm) {
	display: flex;
	align-items: center;
	gap: 10px;
}
.layer_popup .popup_box > .title .subTxt {
	font-size: var(--f_12);
}
.layer_popup .popup_box .pop_con {
	position: relative;
	flex: 1 1 auto;
	overflow-x: hidden;
	padding: 15px;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 11px;
}
.layer_popup .popup_box.type_01 .pop_con {
	padding: 0px 15px;
}
.layer_popup .popup_box.type_02 .pop_con {
	border-top: 1px solid var(--t_thin);
	border-bottom: 1px solid var(--t_thin);
}
.layer_popup .popup_box.type_03 .pop_con {
	padding: 0px;
}
.layer_popup .popup_box.type_04 .pop_con {
	padding-top: 0px;
	border-bottom: 1px solid var(--t_thin);
}
.layer_popup .popup_box.type_05 .pop_con {
	border-top: 1px solid var(--t_thin);
}
.layer_popup .popup_box .popup_btn {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	padding: 15px;
	padding-top: 16px;
}
.layer_popup .popup_box .popup_btn a {
	padding: 0 15px;
}
.layer_popup .popup_box:has(.popup_btn .left) .popup_btn {
	justify-content: space-between;
}
.layer_popup .popup_box .popup_btn .right {
	display: flex;
	align-items: center;
	gap: 8px;
}
.layer_popup .popup_box .loading_bar_wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	grid-gap: 30px;
	padding: 30px;
}
.layer_popup .popup_box .btw_btn_wrap {
	padding-top: 5px;
	padding-bottom: 25px;
}

.state_close_btn {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 20px;
	height: 20px;
	background: url("../img/close_btn_icon.svg") no-repeat center / cover;
	transition: all 0.5s;
	background-size: 12px;
}
.state_close_btn:hover {
	transform: rotate(180deg);
	opacity: 1;
}

/* 공통 레이어 팝업 */
.commonLayerPopUp {
	z-index: 110000 !important;
}
.commonLayerPopUp .popup_box {
	min-width: 260px;
}
.commonLayerPopUp .popUpTxt ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.commonLayerPopUp .popUpTxt ul li {
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}

/* 팝업 안에 상단고정 하단스크롤 */
.layer_popup:has(.popFixCon) .pop_con {
	display: flex;
	flex-direction: column;
	padding: 0;
	gap: 0;
}
.popFixCon {
	flex: 0 0 auto;
	width: 100%;
	padding: 15px;
}
.popScrollCon {
	flex: 1 1 auto;
	overflow: hidden;
	overflow-y: auto;
	width: 100%;
	min-height: 0;
	padding: 0px 15px;
}

/* 하단 레이어 팝업 */
.btmPopWrap {
	position: fixed;
	bottom: 0px;
	width: 100%;
	max-width: 440px;
	z-index: 100000;
}
.btmPopWrap .layer_popup {
	display: flex;
	top: initial;
	left: initial;
	right: initial;
	bottom: -101%;
	padding: 0;
	justify-content: flex-end;
	width: 100%;
	max-width: 440px;
	transition: bottom 1s;
}
.btmPopWrap .layer_popup.on {
	animation: none;
	bottom: 0px;
	transition: bottom 0.4s;
}
.btmPopWrap .layer_popup .popup_box {
	width: 100%;
	border-radius: 14px 14px 0px 0px;
}
.btmPopWrap .popup_box .pop_con {
	padding: 0px 15px 20px 15px;
}
.btmPopWrap:has(.popup_btn) .pop_con {
	border-bottom: 1px solid var(--t_thin);
}
.btmPopWrap .popup_btn a {
	flex: 1;
}

/* 공통 간단 메세지 */
.simpleMessageWrap {
	position: fixed;
	top: 51px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: white;
	font-size: var(--f_11);
	width: 100%;
	max-width: 440px;
	z-index: 100000;
	visibility: hidden;
	opacity: 0;
	transition:
		top 0.7s,
		opacity 0.3s,
		visibility 0.3s;
}
.simpleMessageWrap.on {
	transition:
		top 0.7s,
		opacity 0.3s,
		visibility 0.3s;
	visibility: visible;
	opacity: 1;
}
.simpleMessageWrap .txt {
	background-color: rgba(51, 65, 85, 0.75);
	padding: 9px 12px;
	border-radius: 6px;
}
.simpleMessageWrap .txt ul {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

/* 하단 필터 레이어 팝업 */
.filterSearchPop .filterSearch {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
}
.filterSearchPop .filterSearch a,
.filterSearchPop .filterSearch select,
.filterSearchPop .filterSearch option,
.filterSearchPop .filterSearch input {
	padding: 0 12px;
	font-size: var(--f_13);
}
.filterSearchPop .filterSearch .intBox * {
	font-size: var(--f_13);
}

/* 로딩바 */

/* loading */
.loading_box {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 16px;
	z-index: 999999;
}
.loading_box.on {
	display: flex;
}
@keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@-moz-keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@-webkit-keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@-o-keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@-moz-keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@-webkit-keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@-o-keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
	}
}
@keyframes loading-text-opacity {
	0% {
		opacity: 0;
	}
	20% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@-moz-keyframes loading-text-opacity {
	0% {
		opacity: 0;
	}
	20% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@-webkit-keyframes loading-text-opacity {
	0% {
		opacity: 0;
	}
	20% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@-o-keyframes loading-text-opacity {
	0% {
		opacity: 0;
	}
	20% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
.loading_con,
.loading {
	height: 100px;
	position: relative;
	width: 100px;
	border-radius: 100%;
}
.loading {
	border: 4px solid transparent;
	border-color: transparent #fff transparent #fff;
	-moz-animation: rotate-loading 1s linear 0s infinite normal;
	-moz-transform-origin: 50% 50%;
	-o-animation: rotate-loading 1s linear 0s infinite normal;
	-o-transform-origin: 50% 50%;
	-webkit-animation: rotate-loading 1s linear 0s infinite normal;
	-webkit-transform-origin: 50% 50%;
	animation: rotate-loading 1s linear 0s infinite normal;
	transform-origin: 50% 50%;
}
.loading_con:hover .loading,
.loading_con .loading {
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.loading_text {
	-moz-animation: loading-text-opacity 2s linear 0s infinite normal;
	-o-animation: loading-text-opacity 2s linear 0s infinite normal;
	-webkit-animation: loading-text-opacity 2s linear 0s infinite normal;
	animation: loading-text-opacity 2s linear 0s infinite normal;
	color: #ffffff;
	font-size: 15px;
	font-weight: bold;
	margin-top: 26px;
	opacity: 0;
	position: absolute;
	text-align: center;
	text-transform: uppercase;
	top: 0;
	width: 100px;
}
.loading_info {
	-moz-animation: loading-text-opacity 2s linear 0s infinite normal;
	-o-animation: loading-text-opacity 2s linear 0s infinite normal;
	-webkit-animation: loading-text-opacity 2s linear 0s infinite normal;
	animation: loading-text-opacity 2s linear 0s infinite normal;
	color: #ffffff;
	font-size: 15px;
	font-weight: bold;
	margin-top: 38px;
	opacity: 0;
	text-align: center;
	text-transform: uppercase;
	top: 0;
	width: 100%;
}

/* 테이블 */
table {
	width: 100%;
	border: none;
	border-spacing: 0;
	border-collapse: collapse;
	font-size: inherit;
	color: inherit;
}
table tr {
	font-size: inherit;
	color: inherit;
	border: none;
	border-spacing: 0;
	border-collapse: collapse;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	cursor: default;
}
table th,
table td {
	border: none;
	border-spacing: 0;
	border-collapse: collapse;
	font-size: inherit;
	color: inherit;
	text-align: center;
	line-height: 1.4;
	padding: 10px 8px;
	word-break: break-all;
	overflow: break-word;
}
table th {
	background-color: var(--m_bg);
}

/* 상세페이지 테이블 */
.infoTable table {
	font-size: var(--f_12);
}
.infoTable table th,
.infoTable table td {
	padding: 9px 6px;
	border-bottom: 1px solid var(--t_thin);
}
.infoTable table th {
	font-weight: 600;
}

/* 페이지 넘버 */
.pageNumWrap {
	display: none;
	align-items: center;
	justify-content: center;
	grid-gap: 4px;
	padding: 25px 15px 0px 15px;
}
.pageNumWrap:has(> a) {
	display: flex;
}
.pageNumWrap a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 24px;
	height: 24px;
	padding: 0 6px;
	border: 1px solid transparent;
	border-radius: 4px;
	font-size: var(--f_12);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-weight: 600;
}
.pageNumWrap a.on {
	color: var(--m_light);
	border: 1px solid var(--m_light);
	font-weight: 900;
}
.pageNumWrap .first_page,
.pageNumWrap .prev,
.pageNumWrap .next,
.pageNumWrap .last_page {
	padding: 0;
}
.pageNumWrap .first_page,
.pageNumWrap .last_page {
	letter-spacing: -3px;
}
.layer_popup .pageNumWrap {
	width: 100%;
	padding-top: 15px;
}

/* 체크박스 스몰 */
label {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-tap-highlight-color: transparent;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	-ms-user-select: none;
	-moz-user-select: -moz-none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
label.checkbox_s {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}
label.checkbox_s input[type="checkbox"] {
	display: none;
}
label.checkbox_s .check_item {
	display: flex;
	align-items: center;
	gap: 6px;
}
label.checkbox_s .check_img {
	width: 15px;
	height: 15px;
	border: 1px solid var(--t_thin);
	border-radius: 3px;
	background: url() no-repeat center / cover;
	background-size: 10px;
	background-color: white;
}
label.checkbox_s p {
	font-size: var(--f_13);
	margin-top: 1px;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}
label.checkbox_s input[type="checkbox"]:checked + .check_item .check_img {
	background-image: url("../img/check_icon.svg");
	background-color: var(--m_light);
	border-color: var(--m_light);
	transition:
		border-color 0.2s,
		background-color 0.2s;
}

/* 체크박스 미디엄 */
label.checkbox_m {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}
label.checkbox_m input[type="checkbox"] {
	display: none;
}
label.checkbox_m .check_item {
	display: flex;
	align-items: center;
	gap: 6px;
}
label.checkbox_m .check_img {
	flex: 0 0 auto;
	width: 16px;
	height: 16px;
	border: 1px solid var(--t_thin);
	border-radius: 4px;
	background: url() no-repeat center / cover;
	background-size: 10px;
	background-color: white;
}
label.checkbox_m p {
	font-size: var(--f_14);
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}
label.checkbox_m input[type="checkbox"]:checked + .check_item .check_img {
	background-image: url("../img/check_icon.svg");
	background-color: var(--m_light);
	border-color: var(--m_light);
	transition:
		border-color 0.2s,
		background-color 0.2s;
}

/* 버튼 체크 박스 */
/* 버튼 체크 박스 미디엄 */
label.btnCheckboxMd {
	display: flex;
	align-items: center;
	cursor: pointer;
}
label.btnCheckboxMd input[type="checkbox"] {
	display: none;
}
label.btnCheckboxMd .check_item {
	display: flex;
	align-items: center;
}
label.btnCheckboxMd p {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 66px;
	height: 30px;
	padding: 0 10px;
	border-radius: 4px;
	background-color: var(--m_bg);
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-size: var(--f_13);
	color: var(--t_light);
	font-weight: 600;
	white-space: nowrap;
}
label.btnCheckboxMd p:hover {
	background-color: #dcebef;
}
label.btnCheckboxMd input[type="checkbox"]:checked + .check_item > p {
	background-color: var(--m_light);
	border-color: var(--m_light);
	color: white;
}

/* 버튼 라디오 박스 라지 */
label.radiobox_l {
	display: flex;
	align-items: center;
	cursor: pointer;
}
label.radiobox_l input[type="radio"] {
	display: none;
}
label.radiobox_l .check_item {
	display: flex;
	align-items: center;
}
label.radiobox_l p {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 66px;
	height: 38px;
	padding: 0 10px;
	border-radius: 4px;
	background-color: var(--m_bg);
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-size: var(--f_14);
	color: var(--t_light);
	font-weight: 600;
	white-space: nowrap;
}
label.radiobox_l p:hover {
	background-color: #dcebef;
}
label.radiobox_l input[type="radio"]:checked + .check_item > p {
	background-color: var(--m_light);
	border-color: var(--m_light);
	color: white;
}

/* 버튼 라디오 박스 미디엄 */
.radio_btn_wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
label.radiobox_m {
	display: flex;
	align-items: center;
	cursor: pointer;
}
label.radiobox_m input[type="radio"] {
	display: none;
}
label.radiobox_m .check_item {
	display: flex;
	align-items: center;
}
label.radiobox_m p {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 66px;
	height: 30px;
	padding: 0 10px;
	border-radius: 4px;
	background-color: var(--m_bg);
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-size: var(--f_13);
	color: var(--t_light);
	font-weight: 600;
	white-space: nowrap;
}
label.radiobox_m p:hover {
	background-color: #dcebef;
}
label.radiobox_m input[type="radio"]:checked + .check_item > p {
	background-color: var(--m_light);
	border-color: var(--m_light);
	color: white;
}

/* 체크박스 라지 */
label.checkbox_l {
	display: flex;
	align-items: center;
	cursor: pointer;
}
label.checkbox_l input[type="checkbox"] {
	display: none;
}
label.checkbox_l .check_item {
	display: flex;
	align-items: center;
	gap: 10px;
}
label.checkbox_l .check_img {
	width: 22px;
	height: 22px;
	border: 1px solid var(--t_c_light);
	border-radius: 4px;
	background: url() no-repeat center / cover;
	background-size: 14px;
	background-color: white;
}
label.checkbox_l p {
	font-size: 18px;
	line-height: 1;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}
label.checkbox_l input[type="checkbox"]:checked + .check_item .check_img {
	background-image: url("../img/check_icon.svg");
	background-color: var(--m_c_main);
	border-color: var(--m_c_main);
}

/* 박스 안에 체크박스 미디엄 */
label.box_checkbox {
	display: flex;
	align-items: center;
	cursor: pointer;
}
label.box_checkbox input[type="checkbox"] {
	display: none;
}
label.box_checkbox .check_item {
	display: flex;
	align-items: center;
	gap: 6px;
	justify-content: center;
	padding: 0 6px;
	height: 38px;
	border-radius: 6px;
	font-weight: 500;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	background-color: var(--t_medium);
	width: 90px;
}
label.box_checkbox .check_img {
	width: 14px;
	height: 14px;
	border-radius: 4px;
	background: url() no-repeat center / cover;
	background-image: url("../img/check_icon.svg");
	background-size: 0px;
	background-color: white;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
label.box_checkbox p {
	font-size: var(--f_14);
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	font-weight: 700;
	color: white;
}
label.box_checkbox input[type="checkbox"]:checked + .check_item .check_img {
	background-image: url("../img/check_icon.svg");
	background-color: var(--m_darker);
	border-color: var(--m_darker);
	background-size: 10px;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
label.box_checkbox input[type="checkbox"]:checked + .check_item {
	background-color: var(--m_main);
	border-color: var(--m_main);
	color: white;
}

/* 검색용 체크박스 */
label.sh_checkbox {
	display: flex;
	align-items: center;
	cursor: pointer;
	flex: 1 1 auto;
}
label.sh_checkbox input[type="checkbox"] {
	display: none;
}
label.sh_checkbox .check_item {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	gap: 6px;
	justify-content: space-between;
	padding: 0 15px;
	height: 38px;
	border-radius: 6px;
	font-weight: 500;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	background-color: white;
	border: 1px solid var(--t_thin);
}
label.sh_checkbox .check_img {
	width: 14px;
	height: 14px;
	border: 1px solid var(--t_thin);
	border-radius: 4px;
	background: url() no-repeat center / cover;
	background-image: url("../img/check_icon.svg");
	background-size: 0px;
	background-color: white;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
label.sh_checkbox p {
	font-size: var(--f_14);
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}
label.sh_checkbox input[type="checkbox"]:checked + .check_item .check_img {
	background-image: url("../img/check_icon.svg");
	background-color: var(--m_darker);
	border-color: var(--m_darker);
	background-size: 10px;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
label.sh_checkbox input[type="checkbox"]:checked + .check_item {
	background-color: var(--m_main);
	border-color: var(--m_main);
	color: white;
}

/* 스위치 체크박스 */
.chkSwitchBtn {
	display: flex;
}
.chkSwitchBtn .switchLabel .switchInt {
	display: none;
}
.chkSwitchBtn .switchLabel {
	position: relative;
	cursor: pointer;
	display: inline-block;
	width: 40px;
	height: 24px;
	background-color: var(--m_bg);
	border: 1px solid var(--t_thin);
	border-radius: 20px;
	transition:
		background-color 0.3s,
		border-color 0.3s,
		left 0.3s,
		color 0.3s;
}
.chkSwitchBtn .onfBtn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 4px;
	display: inline-block;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background-color: var(--t_lighter);
	transition:
		background-color 0.3s,
		border-color 0.3s,
		left 0.3s,
		color 0.3s;
}
.chkSwitchBtn .switchLabel:has(.switchInt:checked) {
	background: var(--m_light);
	border: 1px solid var(--m_light);
}
.chkSwitchBtn .switchLabel .switchInt:checked + .onfBtn {
	left: 18px;
	background: #fff;
	box-shadow: 1px 2px 3px #00000020;
}

/* 데이터피커 리셋 */
input.datepicker {
	cursor: pointer;
}
.ui-widget.ui-widget-content {
	padding: 10px;
	z-index: 10 !important;
}
.ui-datepicker * {
	font-size: 13px !important;
}
.ui-datepicker .ui-datepicker-title {
	display: flex;
	align-items: center;
	justify-content: center;
}
.ui-datepicker .ui-widget-header {
	background-color: var(--m_c_main);
	left: -15px;
	width: calc(100% + 30px);
	top: -15px;
	padding-top: 20px;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
	background-color: var(--m_c_main);
	width: 60px;
}
.ui-datepicker select.ui-datepicker-month {
	width: 52px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
	background: url("../img/arrow_wt_icon.svg") no-repeat center / cover !important;
	background-size: 6px !important;
	position: relative;
	margin: 0;
	top: initial;
	left: initial;
	width: 100%;
	height: 100%;
}
.ui-datepicker .ui-datepicker-prev span {
	transform: rotate(180deg);
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	padding: 5px;
	top: 21px;
}
.ui-datepicker .ui-datepicker-prev {
	left: 15px;
}
.ui-datepicker .ui-datepicker-next {
	right: 15px;
}
.ui-datepicker-calendar thead th {
	background-color: transparent;
}
.ui-datepicker .ui-datepicker-calendar {
	width: 100%;
	position: relative;
	top: -8px;
}
table.ui-datepicker-calendar th,
table.ui-datepicker-calendar td {
	padding: initial;
}
.ui-datepicker-calendar thead tr {
	top: -36px;
	width: 100%;
	left: initial;
	right: initial;
}
.ui-datepicker-calendar thead th {
	opacity: 0.8;
}
.ui-datepicker-current-day .ui-state-default {
	background: var(--m_c_main) !important;
	color: #fff;
	font-weight: bold;
}
/*
.bottomBtn {
	position: fixed;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 20px;
	width: 100%;
	max-width: 640px;
	background-color: #092a29;
}
.bottomBtn a {
	flex: 1 1 auto;
	width: 100%;
}
*/

/* 체크박스 베이직 */
.checkBoxBasic {
	display: flex;
	align-items: center;
}
.checkBoxBasic input[type="checkbox"] {
	height: 18px;
	width: 18px;
	padding: initial;
	-webkit-appearance: auto;
	-moz-appearance: auto;
	appearance: auto;
	border-radius: initial;
	color: white;
	border-radius: 4px;
	accent-color: var(--p_gold_d);
}
.checkBoxBasic input[type="checkbox"] ~ label {
	color: white;
	padding: 3px 10px 2px 10px;
	font-size: 16px;
}

/* 멀티 버튼 */
.multiBtn {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
}
.multiBtn a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0 15px;
	height: 40px;
	border-radius: 6px;
	color: white;
	font-size: var(--f_17);
}
.wrap:has(.multiBtn) .multiBtn {
	margin-top: 40px;
}

/* 버튼 넓이 똑같이 배치 */
.widthBtn {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
}
.widthBtn a {
	flex: 1;
	min-width: 0;
}

/* 버튼 넓이 텍스트 넓이대로 각각 배치 */
.eachBtn {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
}
.eachBtn a {
	flex: 1 1 auto;
}
.eachBtn:has(span) a {
	justify-content: space-around;
}

/* 부트스트랩 같은 포커스 효과 */
a.focusBtn {
	overflow: hidden;
}
a.focusBtn::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.1);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.5s ease-out;
	border-radius: 0.8vw;
}

a.focusBtn.ripple-effect::before {
	opacity: 1;
	animation: fadeOut 0.7s forwards;
}

@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

/* 헤더 */
header {
	position: fixed;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 440px;
	height: 51px;
	background-color: white;
	z-index: 10000;
	animation: header_opacity 0.2s both;
}
@keyframes header_opacity {
	0% {
		opacity: 0;
	}
	60% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
header.on:before {
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	border-bottom: 1px solid var(--t_thin);
}
header.active {
	top: 0;
}
header .headerNav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}
header .headerNav .left {
	display: flex;
	align-items: center;
}
header .headerNav .backBtn {
	padding: 15px;
	padding-right: 10px;
}
header .headerNav .headerTitle {
	font-weight: 800;
}
header .only_main_page {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: var(--f_9);
	padding-left: 15px;
}
header .only_main_page img {
	height: 26px;
}
header .only_main_page p {
	line-height: 1.4;
}
header .top_btn_info {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-right: 9px;
}
header .top_btn_info a {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 0px 6px;
}
header .top_btn_info a .img {
	width: 20px;
	height: 20px;
	-webkit-mask: url("") no-repeat center;
	mask: url("") no-repeat center;
	background-color: var(--t_normal);
}
header .top_btn_info a.gps span {
	font-size: var(--f_9);
}
header .top_btn_info a.gps .img {
	mask-image: url("../img/gps_icon.svg");
	mask-size: 18px;
}
header .top_btn_info a.qrcode .img {
	mask-image: url("../img/qrcode_icon.svg");
	mask-size: 18px;
}
header .top_btn_info a.user_search .img {
	margin-top: 1px;
	width: 24px;
	mask-image: url("../img/user_search_icon.svg");
	mask-size: 23px;
}
header .top_btn_info a.login .img {
	mask-image: url("../img/login_icon.svg");
	mask-size: 18px;
}
header .top_btn_info .userToggleWrap .img {
	position: relative;
	mask-image: none;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid var(--t_thin);
	background: url() no-repeat center / cover;
	background-color: var(--t_thin);
}
header .top_btn_info .userToggleWrap .toggleBadge {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: #ff5630;
	font-size: var(--f_8);
	color: white;
	font-weight: 800;
}

/* 푸터 */
.bottomTie {
	width: 100%;
	max-width: 440px;
	margin: 0 auto;
}
footer {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	max-width: 440px;
	padding: 20px 15px;
	background-color: var(--t_light);
	color: var(--t_thin);
}
footer .company {
	font-size: var(--f_12);
	font-weight: 700;
}
footer .policy_btn ul {
	display: flex;
	align-items: center;
	font-size: var(--f_11);
}
footer .policy_btn ul li:not(:last-child) {
	padding-right: 10px;
	margin-right: 10px;
	border-right: 1px solid var(--t_lighter);
}
footer .policy_btn [data-popup="policy_personal"] {
	color: var(--m_white);
	font-weight: 800;
}
footer .info {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
footer .info ul {
	display: flex;
	gap: 12px;
	font-size: var(--f_10);
}
footer .info ul li:first-child {
	flex: 0 0 auto;
	width: 60px;
}
body:has(.main_booking_res) main {
	padding-bottom: 10px;
}
nav {
	position: fixed;
	bottom: 0;
	width: 100%;
	max-width: 440px;
	z-index: 100;
}

/* 하단 네비 */
nav .gfr_logo {
	display: none;
}
nav .bottom {
	display: flex;
	align-items: center;
	justify-content: space-around;
	background-color: rgb(255 255 255 / 55%);
	border-top: 1px solid var(--t_table);
	backdrop-filter: blur(20px);
	height: 54px;
	font-size: var(--f_10);
	color: var(--t_medium);
}
nav .bottom a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	width: 62px;
	height: 100%;
	transition: none;
}
nav .bottom a .img {
	width: 100%;
	height: 20px;
	-webkit-mask: url("") no-repeat center / contain;
	mask: url("") no-repeat center / contain;
	background-color: var(--t_medium);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
nav .bottom .home .img {
	mask-image: url("../img/home_fill_icon.svg");
}
nav .bottom .search .img {
	mask-image: url("../img/search_icon.svg");
}
nav .bottom .booking .img {
	mask-image: url("../img/date_icon.svg");
	background-color: white;
}
nav .bottom .chat .img {
	mask-image: url("../img/chat_icon.svg");
}
nav .bottom .menu .img {
	mask-image: url("../img/menu_icon.svg");
}
nav .bottom .booking {
	position: relative;
	bottom: 12px;
	width: 62px;
	height: 62px;
	border-radius: 50%;
	padding-bottom: 6px;
	background: linear-gradient(135deg, #007ffe 13%, #34d662 74%);
	color: white;
	box-shadow: 
    /* 첫 번째 그림자 (바깥쪽 그린) */
		0px 8px 16px 0px rgba(52, 214, 98, 0.25),
		/* 두 번째 그림자 (중간 블루) */ -4px 4px 8px 0px rgba(0, 127, 254, 0.1),
		/* 세 번째 그림자 (안쪽 그린) */ 5px 8px 12px 0px rgba(2, 199, 92, 0.15);
}

/* 배찌 */
.RdBadgeLg {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 20px;
	padding: 0px 12px;
	font-size: var(--f_11);
	font-weight: 700;
	border-radius: 10px;
	color: white;
	width: fit-content;
}
.nLBadgeLg {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 20px;
	padding: 0px 8px;
	font-size: var(--f_11);
	font-weight: 700;
	border-radius: 4px;
	color: white;
	min-width: 20px;
	width: fit-content;
}
.nLBadgeLg.m_white {
	color: var(--t_normal);
	border: 1px solid var(--t_thin);
}
.nLBadgeSm {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 16px;
	padding: 0px 6px;
	font-size: var(--f_9);
	font-weight: 700;
	border-radius: 3px;
	color: white;
	width: fit-content;
}
.nLBadgeSm.m_lighter {
	color: var(--m_dark);
}
.nLBadgeSm.m_white {
	color: var(--t_normal);
	border: 1px solid var(--t_thin);
}
.newBadge {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background-color: #ff5630;
	font-size: var(--f_8);
	font-weight: 900;
	color: white;
}

/* 프로필 배찌 */
/* 제일작은 라운드 */
.profileBadgeRdXsm {
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: url("") no-repeat center / cover;
	z-index: 1;
}
.profileBadgeRdXsm.dealer {
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none !important;
	background-color: var(--m_light);
}
.profileBadgeRdXsm.dealer::before {
	content: "딜";
	font-size: var(--f_11);
	font-weight: 800;
	color: white;
}

/* 제일작은 사각형 */
.profileBadgeSqXsm {
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 18px;
	height: 18px;
	border-radius: 4px;
	background: url("") no-repeat center / cover;
	background-color: #000427;
}
.profileBadgeSqXsm.dealer {
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none !important;
	background-color: var(--m_light);
}
.profileBadgeSqXsm.dealer::before {
	content: "딜";
	font-size: var(--f_11);
	font-weight: 800;
	color: white;
}

/* 스몰 라운드 */
.profileBadgeRdSm {
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: url("") no-repeat center / cover;
	z-index: 1;
}
.profileBadgeRdSm.dealer {
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none !important;
	background-color: var(--m_light);
}
.profileBadgeRdSm.dealer::before {
	content: "딜러";
	font-size: var(--f_11);
	font-weight: 800;
	color: white;
}

/* 미디엄 라운드 */
.profileBadgeRdMd {
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: url("") no-repeat center / cover;
	z-index: 1;
}
.profileBadgeRdMd.dealer {
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none !important;
	background-color: var(--m_light);
}
.profileBadgeRdMd.dealer::before {
	content: "딜러";
	font-size: var(--f_14);
	font-weight: 800;
	color: white;
}

/* 엑스라지 라운드 */
.profileBadgeRdXla {
	width: 55px;
	height: 55px;
	border-radius: 50%;
	background: url("") no-repeat center / cover;
	z-index: 1;
}
.profileBadgeRdXla.dealer {
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none !important;
	background-color: var(--m_light);
}
.profileBadgeRdXla.dealer::before {
	content: "딜러";
	font-size: var(--f_20);
	font-weight: 800;
	color: white;
}

/* 일행 파트너 배찌 */
/* 작은 라운드 */
.partnerBadgeRdSm {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	font-size: var(--f_10);
	color: white;
	font-weight: 700;
	background-color: var(--m_darker);
}
/* 작은 사각 */
.partnerBadgeSqSm {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 4px;
	font-size: var(--f_10);
	color: white;
	font-weight: 700;
	background-color: var(--m_darker);
}

/* 원형 닫기 버튼 */
.roundCloseMd {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--t_medium);
	z-index: 10;
}
.roundCloseMd:after {
	content: "";
	display: flex;
	width: 8px;
	height: 8px;
	-webkit-mask: url("../img/close_btn_wt.svg") no-repeat center;
	mask: url("../img/close_btn_wt.svg") no-repeat center;
	background-color: white;
}

/* 회원정보 */
/* 기본 화원정보 */
.bcMemberIfWrap {
	width: 100%;
}
.MemInfo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}
.MemInfo .leftInfo {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-right: 0px;
}
.MemInfo .leftInfo .memImg {
	position: relative;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: url() no-repeat center / cover;
	border: 1px solid var(--t_thin);
}
.MemInfo .leftInfo .infoTxtWrap {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-bottom: 1px;
}
.MemInfo .leftInfo .topTxt {
	height: 14px;
	display: flex;
	align-items: center;
	gap: 4px;
}
.MemInfo .leftInfo .txtGrop {
	display: flex;
	align-items: center;
	gap: 4px;
}
.MemInfo .leftInfo .txtGrop .boot {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--f_10);
	color: white;
	font-weight: 700;
	height: 16px;
	padding: 0 4px;
	border-radius: 8px;
	background-color: #4da5fe;
}
.MemInfo .leftInfo .topTxtCon {
	font-size: var(--f_14);
	font-weight: 600;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
}
.MemInfo .leftInfo .memRank {
	font-size: var(--f_10);
	color: var(--m_main);
	font-weight: 600;
	text-decoration: underline;
}
.MemInfo .leftInfo .badgeGray {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 12px;
	height: 12px;
	line-height: normal;
	font-size: var(--f_9);
	font-weight: 800;
	background-color: var(--t_thin);
	border-radius: 3px;
	margin-left: 2px;
	padding: 0 4px;
}
.noAlarm:after {
	content: "";
	display: inline-flex;
	width: 9px;
	height: 10px;
	-webkit-mask: url("../img/no_alarm_icon.svg") no-repeat center;
	mask: url("../img/no_alarm_icon.svg") no-repeat center;
	background-color: var(--t_light);
}
.MemInfo .leftInfo .botTxt {
	height: 12px;
	display: flex;
	align-items: center;
	gap: 4px;
}
.MemInfo .leftInfo .botTxtCon {
	font-size: var(--f_11);
	color: var(--t_medium);
	font-weight: 500;
	line-height: normal;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	word-wrap: normal;
	word-break: break-all;
}
.MemInfo .leftInfo .botTxtCon.strong {
	font-size: var(--f_12);
	font-weight: 600;
	color: var(--t_normal);
}
.MemInfo .leftInfo .badgeRed {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 12px;
	height: 12px;
	line-height: normal;
	font-size: var(--f_9);
	font-weight: 800;
	color: white;
	background-color: var(--p_red);
	border-radius: 6px;
	margin-left: 2px;
	padding: 0 4px;
}
.MemInfo .rightInfo {
	display: flex;
	align-items: center;
	align-self: flex-start;
}
.MemInfo .rightInfo .chatType {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
}
.MemInfo .rightInfo .chatType .chatLabel {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 18px;
	padding: 6px;
	white-space: nowrap;
	font-size: var(--f_10);
	font-weight: 700;
	color: white;
	border-radius: 4px;
}
.MemInfo .rightInfo .chatType .openTime {
	font-size: var(--f_11);
	font-weight: 500;
	color: var(--t_medium);
}

.moreBtnWrap {
	position: relative;
	z-index: 100;
}
.moreBtnWrap .moreBtn {
	padding-left: 12px;
}
.moreBtnWrap .moreBtn img {
	height: 12px;
}
.moreBtnDropCon {
	display: none;
	position: absolute;
	right: 0;
	padding-top: 8px;
	z-index: 5;
}
.moreBtnDropCon.on {
	display: block;
}
.moreBtnDropCon .linkBtn {
	background: #fff;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	padding: 12px 16px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	cursor: default;
}
.moreBtnDropCon .linkBtn ul {
	display: flex;
	flex-direction: column;
	font-size: 12px;
	font-weight: 500;
	gap: 8px;
}
.moreBtnDropCon .linkBtn ul a {
	white-space: nowrap;
	line-height: normal;
}
.starMark:after {
	content: "";
	width: 14px;
	height: 13px;
	background: url("../img/star_icon.svg") no-repeat center / contain;
}
.starMark.on:after {
	content: "";
	background-image: url("../img/star_fill_icon.svg");
}
.moreBtnWrap:has(.starMark) {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 7px;
	padding-left: 8px;
}
.moreBtnWrap:has(.starMark) .moreBtn {
	padding: 0px 4px;
}
.moreBtnWrap:has(.starMark) .moreBtnDropCon {
	top: 11px;
}
.txtLongArea {
	margin-top: 10px;
	width: 100%;
}
.txtLongAreaBg {
	margin-top: 10px;
	width: 100%;
	padding: 12px;
	background-color: var(--m_bg);
	border-radius: 6px;
}
.txtShotArea {
	margin-top: 10px;
	margin-left: 44px;
	width: calc(100% - 44px);
}
.txtAreaViewCon {
	width: 100%;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	text-overflow: ellipsis;
	overflow: hidden;
	line-height: 1.4;
}

.bcMemberIfWrap .lineBtnWrap {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
	margin-left: 44px;
	width: calc(100% - 44px);
}
.bcMemberIfWrap .MemBottomInfo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 10px;
	margin-left: 44px;
	width: calc(100% - 44px);
}
.bcMemberIfWrap:has(.txtLongAreaBg) .MemBottomInfo {
	margin-left: 0;
	width: 100%;
}
.bcMemberIfWrap .MemBottomInfo .timeTxt {
	font-size: var(--f_11);
	font-weight: 500;
	color: var(--t_medium);
}

/* 알림토들 회원 정보 */
.toggleMemInfo {
	display: flex;
	align-items: center;
	gap: 15px;
	width: 100%;
}
.toggleMemInfo .user_img {
	position: relative;
	width: 76px;
	height: 76px;
	border: 1px solid var(--t_thin);
	border-radius: 50%;
	background: url() no-repeat center / cover;
}
.toggleMemInfo .mem_data {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.toggleMemInfo .mem_data > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.toggleMemInfo .mem_data > div .more_btn {
	font-size: var(--f_11);
	font-weight: 600;
	color: var(--t_light);
}
.toggleMemInfo .mem_data > div > ul {
	display: flex;
	align-items: center;
	gap: 10px;
	white-space: nowrap;
}
.toggleMemInfo .mem_data > div > ul .nLBadgeLg {
	width: 62px;
}
.toggleMemInfo .mem_data > div > ul .nick_name {
	font-size: var(--f_16);
	font-weight: 600;
}
.toggleMemInfo .mem_data > div > ul .sub_title {
	width: 62px;
}
.toggleMemInfo .mem_data > .rank > ul li {
	display: flex;
	align-items: center;
}
.toggleMemInfo .mem_data > .rank > ul .rank_name {
	text-decoration: underline;
	font-weight: 800;
	color: var(--m_main);
}
.toggleMemInfo .mem_data > .rank > ul .rank_core::before {
	content: "/";
	margin-left: 6px;
	margin-right: 4px;
}

/* 챗봇 대화 내용 */
.chat_body_view .chatBalloon:has(.chatbootMessage) {
	max-width: initial !important;
}
.chatbootMessage {
	display: flex;
	flex-direction: column;
	gap: 10px;
	font-size: var(--f_12);
}
.bootConditionChange .title {
	line-height: 1.5;
	font-weight: 600;
}
.bootConditionChange .title span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 16px;
	padding: 0 5px;
	background-color: var(--t_lighter);
	border-radius: 3px;
	font-size: var(--f_11);
	font-weight: 600;
	color: white;
	margin-right: 8px;
	cursor: pointer;
}
.bootConditionChange .changeInfo {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 5px;
}
.bootConditionChange .changeInfo .item {
	display: flex;
	align-items: center;
	min-height: 24px;
	padding: 1.5px 6px;
	border-radius: 4px;
	background-color: var(--t_table);
	color: var(--t_medium);
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}

.bootConditionChange .changeInfo .item:after {
	content: ">";
	display: inline-flex;
	padding: 0 4px;
	order: 0;
}
.bootConditionChange .changeInfo .item .beforeTxt {
	flex: 0 0 auto;
}
.bootConditionChange .changeInfo .item .afterTxt {
	order: 3;
	font-weight: 900;
	color: var(--m_dark);
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.chatbootMessage .statusMessage ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	font-size: var(--f_12);
	font-weight: 500;
	border: 1px solid var(--t_thin);
	padding: 7px 12px;
	text-align: center;
	border-radius: 5px;
}
.chatbootMessage .btnWrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	width: 100%;
}
.chatbootMessage .btnWrap a {
	flex: 1;
	height: 24px;
	padding: 0 6px;
}
.chatbootMessage .btnWrap:has(a:nth-child(4)) a {
	flex: 1 0 45%;
}

/* 게시판 회원 정보 */
.boardMemInfo:has(.leftInfo) {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.boardMemInfo .leftInfo {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.boardMemInfo .leftInfo .memImg {
	flex: 0 0 auto;
	position: relative;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: url() no-repeat center / cover;
	border: 1px solid var(--t_thin);
}
.boardMemInfo .leftInfo .memName {
	font-size: var(--f_13);
	font-weight: 700;
}
.boardMemInfo .leftInfo .moreBtnDropCon {
	right: initial;
	left: 42px;
	top: calc(100% - 10px);
}
.boardMemInfo .leftInfo:has(.moreBtnDropCon) {
	cursor: pointer;
}
.boardMemInfo .rightInfo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2px;
	font-size: var(--f_11);
	padding-top: 5px;
}
.boardMemInfo:has(.leftInfo) .rightInfo {
	flex-direction: column;
	align-items: flex-end;
	justify-content: initial;
	padding-top: 0px;
}
.boardMemInfo:has(.leftInfo .nLBadgeLg) {
	align-items: center;
}
.boardMemInfo:has(.leftInfo .nLBadgeLg) .rightInfo {
	flex-direction: initial;
	align-items: center;
	gap: 8px;
}
.socialIcon {
	display: flex;
	align-items: center;
	gap: 8px;
}
.socialIcon > div {
	display: flex;
	align-items: center;
	gap: 3px;
}
.socialIcon > div::before {
	content: "";
	display: flex;
	width: 14px;
	height: 12px;
	background: url("") no-repeat center;
}
.socialIcon > .heart::before {
	background-image: url("../img/heart_icon.svg");
}
.socialIcon > .heart.on::before {
	background-image: url("../img/heart_fill_icon.svg");
}
.socialIcon > .comment::before {
	background-image: url("../img/comment_icon.svg");
}
.socialIcon > .comment.on::before {
	background-image: url("../img/comment_fill_icon.svg");
}
.socialIcon > .view::before {
	background-image: url("../img/view_icon.svg");
}

.socialBtn {
	display: flex;
	align-items: center;
	gap: 8px;
}
.socialBtn:has(.right) {
	justify-content: space-between;
}
.socialBtn .left,
.socialBtn .right {
	display: flex;
	align-items: center;
	gap: 8px;
}
.socialBtn:has(> .right:only-child) {
	justify-content: flex-end;
}
.socialBtn .left a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 0 10px;
	height: 30px;
	border-radius: 4px;
	font-size: var(--f_13);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
	border: 1px solid var(--t_thin);
}
.socialBtn .left a::before {
	content: "";
	display: flex;
	width: 14px;
	height: 13px;
	background: url("") no-repeat center / contain;
}
.socialBtn .left .heart::before {
	background-image: url("../img/heart_icon.svg");
}
.socialBtn .left .heart.on::before {
	background-image: url("../img/heart_fill_icon.svg");
}
.socialBtn .left .bookmark::before {
	background-image: url("../img/bookmark_icon.svg");
}
.socialBtn .left .bookmark.on::before {
	background-image: url("../img/bookmark_fill_icon.svg");
}
.falseAcc {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 0 10px;
	height: 30px;
	border-radius: 4px;
	font-size: var(--f_13);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
	border: 1px solid var(--p_red_d);
	color: var(--p_red_d);
}
.falseAcc::before {
	content: "";
	display: flex;
	width: 12px;
	height: 16px;
	-webkit-mask: url("../img/false_acc_icon.svg") no-repeat center / cover;
	mask: url("../img/false_acc_icon.svg") no-repeat center / cover;
	background-color: var(--p_red_d);
}

/* 알림 요청 회원 정보 */
.chatRequest {
	width: 100%;
	padding: 15px 0px;
	border-bottom: 1px solid var(--t_thin);
}
.chatRequest .closeBtn {
	padding-left: 8px;
}

/* 회원 검색 중간크기 정보 */
.memMidInfo {
	position: relative;
	padding: 15px;
	border-radius: 8px;
	border: 1px solid var(--t_thin);
	background-color: white;
}
.memMidInfo .leftInfo {
	align-items: flex-start;
	flex-direction: column;
}
.memMidInfo .botTxt {
	flex-direction: column;
	height: initial !important;
	align-items: flex-start !important;
}
.memMidInfo .botTxtCon {
	font-size: var(--f_12);
}
.memMidInfo .gender {
	margin-right: 4px;
	font-weight: 800;
}
.memMidInfo .gender.woman {
	color: var(--p_pink);
}
.memMidInfo .gender.man {
	color: var(--p_blue);
}

/* 회원검색 라인 1줄 정보 */
.memLineInfo {
	position: relative;
	padding: 15px;
	border-radius: 8px;
	border: 1px solid var(--t_thin);
	background-color: white;
	cursor: pointer;
}
.memLineInfo .botTxt {
	flex-direction: column;
	height: initial !important;
	align-items: flex-start !important;
}
.memLineInfo .botTxtCon {
	font-size: var(--f_12);
}
.memLineInfo .gender {
	margin-right: 4px;
	font-weight: 800;
}
.memLineInfo .gender.woman {
	color: var(--p_pink);
}
.memLineInfo .gender.man {
	color: var(--p_blue);
}

/* 회원 검색 중간크기 정보 */
.memMidInfoType02 {
	position: relative;
	padding: 15px;
	border-radius: 8px;
	border: 1px solid var(--t_thin);
	background-color: white;
}
.memMidInfoType02 .leftInfo {
	align-items: flex-start;
	flex-direction: column;
}
.memMidInfoType02 .rightInfo {
	position: absolute;
	top: 15px;
	right: 15px;
}
.memMidInfoType02 .botTxt {
	flex-direction: column;
	height: initial !important;
	align-items: flex-start !important;
}
.memMidInfoType02 .botTxtCon {
	font-size: var(--f_12);
}
.memMidInfoType02 .gender {
	margin-right: 4px;
	font-weight: 800;
}
.memMidInfoType02 .gender.woman {
	color: var(--p_pink);
}
.memMidInfoType02 .gender.man {
	color: var(--p_blue);
}

/* 블로그 바로가기 */
.memLineInfo .goBlogHome {
	position: absolute;
	bottom: 17px;
	right: 15px;
}
.memMidInfo .goBlogHome {
	position: absolute;
	bottom: 16px;
	right: 14px;
}
.goBlogHome {
	display: flex;
	align-items: center;
	gap: 3px;
	font-size: var(--f_10);
	font-weight: 500;
	color: var(--t_lighter);
}
.goBlogHome:after {
	content: "";
	display: flex;
	width: 11px;
	height: 10px;
	-webkit-mask: url("../img/home_fill_icon.svg") no-repeat center / cover;
	mask: url("../img/home_fill_icon.svg") no-repeat center / cover;
	background-color: var(--t_lighter);
	margin-bottom: 1px;
}

/* 블로그 상단 회원 정보 */
body:has(.blogMemIfWrap) header::before {
	display: none !important;
}
.blogMemIfWrap {
	width: 100%;
	padding: 0px 15px;
	background-color: white;
	height: 74px;
}
.blogMemIfWrap.sticky {
	position: sticky;
	top: 51px;
	z-index: 10;
}
.blogMemIfWrap .con {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	border-bottom: 1px solid var(--t_thin);
	padding-top: 4px;
	padding-bottom: 15px;
}
.blogMemIfWrap .leftInfo {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	gap: 10px;
}
.blogMemIfWrap .memImg {
	flex: 0 0 auto;
	position: relative;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	border: 1px solid var(--t_thin);
	background: url("") no-repeat center / cover;
}
.blogMemIfWrap .memImg .notiCount {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	font-size: var(--f_8);
	color: white;
	font-weight: 800;
	background-color: var(--p_red);
}
.blogMemIfWrap .memImg .memRank {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	overflow: hidden;
}
.blogMemIfWrap .memImg .memRank img {
	width: 100%;
	height: 100%;
}
.blogMemIfWrap .memImg .memRank .profileBadgeRdXsm {
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.blogMemIfWrap .blogInfoTxt {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: var(--f_12);
	color: var(--t_medium);
}
.blogMemIfWrap .blogInfoTxt .nickName {
	font-size: var(--f_13);
	font-weight: 600;
	color: var(--t_normal);
}
.blogMemIfWrap .blogInfoTxt > div {
	display: flex;
	align-items: center;
}
.blogMemIfWrap .blogInfoTxt .grade a {
	font-weight: 800;
	color: var(--m_main);
	text-decoration: underline;
	padding-left: 2px;
}
.blogMemIfWrap .blogInfoTxt .myPoint a {
	font-size: var(--f_10);
	font-weight: 800;
	padding-left: 10px;
}
.blogMemIfWrap .rightInfo {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 6px;
}
.blogMemIfWrap .rightInfo .share {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid var(--t_thin);
	border-radius: 4px;
}
.blogMemIfWrap .rightInfo .nLBadgeLg {
	height: 18px;
}
.blogMemIfWrap .rightInfo .nLBadgeLg:after {
	content: "";
}
.blogMemIfWrap .rightInfo .nLBadgeLg.all {
	background-color: var(--m_main);
}
.blogMemIfWrap .rightInfo .nLBadgeLg.all:after {
	content: "전체공개";
}
.blogMemIfWrap .rightInfo .nLBadgeLg.friend {
	background-color: var(--p_yellow);
}
.blogMemIfWrap .rightInfo .nLBadgeLg.friend:after {
	content: "친구만공개";
}
.blogMemIfWrap .rightInfo .nLBadgeLg.private {
	background-color: var(--t_medium);
}
.blogMemIfWrap .rightInfo .nLBadgeLg.private:after {
	content: "비공개중";
}
main:has(.privacyPassWord) {
	display: flex;
	flex-direction: column;
}
main .privacyPassWord ~ div {
	display: none !important;
}
main:has(.privacyPassWord) .blog_my_profile_area,
main:has(.privacyPassWord) .blogPageSelect,
main:has(.privacyPassWord) .blog_panel {
	display: none !important;
}

/* 락채팅 상단 정보 */
.chatTopInfoWrap {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	padding: 0px 15px 12px 15px;
	z-index: 1000;
}
.chatTopInfoWrap .leftInfo {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	gap: 10px;
}
.chatTopInfoWrap .leftInfo .viewImg {
	position: relative;
	flex: 0 0 auto;
	border-radius: 50%;
	background: url() no-repeat center / cover;
	border: 1px solid var(--t_thin);
	width: 48px;
	height: 48px;
	aspect-ratio: 1 / 1;
}
.chatTopInfoWrap .leftInfo .viewImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
.chatTopInfoWrap .leftInfo .viewImg .profileBadgeRdXsm {
	right: -3px;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt {
	flex: 1 1 auto;
	position: relative;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt {
	display: flex;
	align-items: center;
	gap: 4px;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	line-height: 1.4;
	font-size: var(--f_14);
	font-weight: 700;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt ul {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	line-height: 1.4;
	font-size: var(--f_14);
	font-weight: 700;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt ul li {
	display: inline-block;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt ul li:first-child {
	font-weight: 800;
	color: var(--p_blue);
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt ul li:not(:first-child)::before {
	content: ",";
	display: inline-block;
	margin-right: 4px;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .topTxt a {
	font-size: var(--f_11);
	font-weight: 700;
	text-decoration: underline;
	color: var(--m_main);
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .totalTxt {
	display: flex;
	align-items: center;
	gap: 8px;
	padding-top: 6px;
	border-top: 1px solid var(--t_thin);
	margin-top: 2px;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .totalTxt p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	line-height: 1.4;
	font-size: var(--f_12);
	font-weight: 600;
	color: var(--t_medium);
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .totalTxt a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
	min-width: 28px;
	height: 18px;
	border-radius: 3px;
	background-color: var(--t_thin);
	font-size: var(--f_10);
	font-weight: 800;
	padding: 0 6px;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .totalTxt a::before {
	content: "";
	display: flex;
	width: 8px;
	height: 8px;
	background: url("../img/people_icon.svg") no-repeat center / cover;
}
.chatTopInfoWrap .leftInfo .chatInfoTxt .totalTxt .noAlarm:after {
	width: 12px;
	height: 14px;
	mask-size: 11px;
	-webkit-mask-position-y: 2px;
}
.chatTopInfoWrap .memListDropCon {
	display: none;
	padding-top: 8px;
	position: absolute;
	z-index: 10;
}
.chatTopInfoWrap .memListDropCon.on {
	display: block;
}
.chatTopInfoWrap .memListDropCon .botTxt,
.chatTopInfoWrap .memListDropCon .topTxt {
	margin-right: 0;
}
.chatTopInfoWrap .memListDropCon .memList {
	flex: 1 1 auto;
	background: #fff;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	padding-bottom: 0px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	cursor: default;
	width: 100%;
	overflow: hidden;
}
.chatTopInfoWrap .memListDropCon:has(> a) .memList {
	border-radius: 6px 6px 0px 0px;
}
.chatTopInfoWrap .memListDropCon .memList:has(> div:nth-child(6)) {
	height: 296px;
	overflow-y: auto;
}
.chatTopInfoWrap .memListDropCon .memList > div:has(.moreBtnDropCon.on) {
	position: relative;
	z-index: 105;
}
.chatTopInfoWrap .memListDropCon .bcMemberIfWrap {
	padding: 12px 12px;
	border-top: 1px solid var(--t_thin);
}
.chatTopInfoWrap .memListDropCon .bcMemberIfWrap:first-child {
	border: none;
}
.chatTopInfoWrap .memListDropCon .bcMemberIfWrap:has(.block_icon) {
	background-color: #fdf5f5;
}
.chatTopInfoWrap .memListDropCon .chatbootIfWrap {
	padding: 12px 12px;
	border-top: 1px solid var(--t_thin);
}
.chatTopInfoWrap .memListDropCon .chatbootIfWrap:first-child {
	border: none;
}
.chatTopInfoWrap .memListDropCon .chatbootIfWrap:has(.block_icon) {
	background-color: #fdf5f5;
}
.chatTopInfoWrap .memListDropCon .chatbootIfWrap:has(.moreBtnWrap) .rightInfo {
	flex-direction: row;
	align-items: center;
}
.chatTopInfoWrap .memListDropCon .chatbootIfWrap.active {
	background-color: var(--m_lighter);
}
.chatTopInfoWrap .memListDropCon .m_btn {
	width: 100%;
	border-radius: 0px 0px 6px 6px;
}
.chatTopInfoWrap .rightInfo {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 4px;
}
.chatTopInfoWrap .rightInfo:has(.block_icon) {
	align-items: initial;
	align-self: initial;
}
.chatTopInfoWrap .rightInfo .block_icon {
	padding-left: 15px;
}
.chatTopInfoWrap .rightInfo .block_icon img {
	width: 18px;
}
.chatTopInfoWrap .rightInfo .topRow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 4px;
}
.chatTopInfoWrap .rightInfo .searchBtn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 1px solid var(--t_thin);
	border-radius: 4px;
	background-color: white;
	transition:
		border-color 0.3s,
		background-color 0.3s;
}
.chatTopInfoWrap .rightInfo .searchBtn::before {
	content: "";
	width: 14px;
	height: 14px;
	-webkit-mask: url(../img/search_n_icon.svg) no-repeat center / contain;
	mask: url(../img/search_n_icon.svg) no-repeat center / contain;
	background-color: var(--t_medium);
	transition:
		border-color 0.3s,
		background-color 0.3s;
}
.chatTopInfoWrap .rightInfo .searchBtn.on {
	border-color: var(--m_light);
	background-color: var(--m_light);
}
.chatTopInfoWrap .rightInfo .searchBtn.on::before {
	background-color: white;
}
.chatTopInfoWrap .rightInfo .allMenu {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 1px solid var(--t_thin);
	border-radius: 4px;
	background-color: white;
}
.chatTopInfoWrap .rightInfo .moreBtnDropCon {
	top: 100%;
	right: -1px;
	padding-top: 4px;
}
.chatTopInfoWrap .rightInfo .stateBadge {
	width: 100%;
}
.chatTopInfoWrap .rightInfo .stateBadge {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 18px;
	border-radius: 4px;
	padding: 0 6px;
	font-size: var(--f_10);
	font-weight: 700;
	color: white;
}
.chatTopInfoWrap .rightInfo .stateBadge.resRoom::before {
	content: "예약방";
	background-color: var(--p_pink);
}
.chatTopInfoWrap .rightInfo .stateBadge.openRoom::before {
	content: "오픈방";
	background-color: var(--p_yellow);
}
.chatTopInfoWrap .rightInfo .stateBadge.waitRoom::before {
	content: "대기방";
	background-color: var(--p_purple);
}
.chatTopInfoWrap .rightInfo .stateBadge.gropRoom::before {
	content: "그룹방";
	background-color: var(--p_blue);
}
.chatTopInfoWrap .rightInfo .stateBadge.connRoom::before {
	content: "접속중";
	background-color: var(--m_main);
}
.chatTopInfoWrap .rightInfo .stateBadge.absentRoom::before {
	content: "부재중";
	background-color: var(--t_medium);
}

/* 채팅방 검색 및 공지사항 */
.notiSearchWrap {
	position: relative;
}
.notiSearchWrap .chatSearch {
	padding: 0px 0px 0px 15px;
	height: 0px;
	transition: height 0.3s;
	overflow: hidden;
}
.notiSearchWrap .chatSearch.active {
	height: 54px;
}
.notiSearchWrap .chatSearch .intBox .row {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 11px;
	display: flex;
	align-items: center;
	gap: 10px;
}
.notiSearchWrap .chatSearch .intBox .row span {
	font-size: var(--f_12);
}
.notiSearchWrap .chatSearch .intBox .row .arrowBtn {
	display: flex;
	align-items: center;
	gap: 6px;
}
.notiSearchWrap .chatSearch .intBox .row .arrowBtn a {
	width: 18px;
	height: 18px;
	background: url("../img/select_arrow_icon.svg") no-repeat center;
	background-size: 14px;
	opacity: 1;
	transition: opacity 0.3s;
}
.notiSearchWrap .chatSearch .intBox .row .arrowBtn a:hover {
	opacity: 1;
}
.notiSearchWrap .chatSearch .intBox .row .arrowBtn .up {
	transform: rotate(180deg);
}
.notiSearchWrap .chatSearch .closeBtn {
	padding: 15px;
	padding-left: 6px;
}
.notiSearchWrap .chatNotice .con {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	background-color: #ade8f3;
	font-size: var(--f_12);
	color: #003768;
	padding: 10px 15px;
}
.notiSearchWrap .chatNotice .con .txt {
	flex: 1 1 auto;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	text-overflow: ellipsis;
	overflow: hidden;
	font-weight: 700;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.notiSearchWrap .chatNotice .con .btn {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 15px;
	font-size: var(--f_11);
}
.notiSearchWrap .chatNotice .con .btn .close_btn {
	width: 13px;
	height: 13px;
	-webkit-mask: url("../img/close_btn_l_icon.svg") no-repeat center / cover;
	mask: url("../img/close_btn_l_icon.svg") no-repeat center / cover;
	background-color: #003768;
}

/* 블로그 방문자수 카운트 */
.blogSnsTotalWrap {
	display: flex;
	align-items: center;
	justify-content: space-around;
	gap: 15px;
	padding: 10px;
}
.blogSnsTotalWrap ul {
	flex: 1;
	display: flex;
	flex-direction: column;
	font-weight: 900;
	text-align: center;
}
.blogSnsTotalWrap ul li:last-child {
	font-size: var(--f_12);
	font-weight: 400;
	margin-top: 2px;
}

/* 블로그 옵션 더보기 */
.blogMyProfile {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 15px;
	margin: 0 15px;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	margin-bottom: 10px;
}
.blogMyProfile .myDetail {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(44px, 54px));
	row-gap: 6px;
	column-gap: 5%;
}
.blogMyProfile .myDetail ul {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: var(--f_12);
	color: var(--t_medium);
}
.blogMyProfile .myDetail ul li:last-child {
	font-weight: 700;
	color: var(--t_normal);
	white-space: nowrap;
}
.blogMyProfile .myDetail ul.area,
.blogMyProfile .myDetail ul.rounding,
.blogMyProfile .myDetail ul.overseas {
	grid-column: auto / span 2;
}
.blogMyProfile .myDetail ul.frequent {
	grid-column: auto / span 3;
}
.blogMyProfile .myDetail ul.hash_tag {
	grid-column: auto / span 4;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	padding-top: 4px;
}
.blogMyProfile .myDetail ul.hash_tag span {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 18px;
	border: 1px solid var(--t_thin);
	background-color: var(--t_section);
	border-radius: 3px;
	padding: 0 6px;
	color: var(--t_light);
	font-size: var(--f_10);
}
.blogMyProfile .moreOptinBtn::before {
	content: "+ 프로필 정보 펼치기";
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 22px;
	background-color: var(--t_lighter);
	border-radius: 4px;
	font-size: var(--f_12);
	font-weight: 700;
	color: white;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.blogMyProfile .moreOptinBtn.on::before {
	content: "- 프로필 정보 닫기";
	background-color: var(--t_normal);
}
.myOptinDrop {
	display: none;
}
.myOptinDrop .con {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-bottom: 8px;
}
.myOptinDrop .introduceTxt {
	padding-top: 12px;
	border-top: 1px solid var(--t_table);
	font-size: var(--f_12);
	line-height: 1.3;
	text-align: center;
}
.blogPageSelect {
	display: flex;
	flex-direction: column;
	gap: 10px;
	background-color: white;
	padding: 15px;
	padding-top: 5px;
}
.blogPageSelect.sticky {
	position: sticky;
	top: 51px;
	z-index: 200;
}
.blogPageSelect.sticky.on {
	border-bottom: 1px solid var(--t_thin);
}
.blogPageSelect .menuNav {
	display: flex;
	gap: 8px;
	width: 100%;
}
.blogPageSelect .selectBtn {
	flex: 1 1 auto;
	overflow: hidden;
	width: 100%;
}
.blogPageSelect .selectBtn .btnSlide {
	display: flex;
	gap: 8px;
	width: 100%;
	overflow: hidden;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.blogPageSelect .selectBtn .btnSlide a.on {
	background-color: var(--t_medium);
	border-color: var(--t_medium);
	color: white;
}
.blogPageSelect .selectBtn .btnSlide a .nLBadgeLg {
	background-color: var(--p_red);
	margin-left: 10px;
	padding: 0px 4px;
	border-radius: 6px;
}
.blogPageSelect .allCheck {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 12px;
	height: 38px;
	border-radius: 6px;
	font-size: var(--f_14);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
	border: 1px solid var(--t_thin);
	background-color: var(--t_table);
	width: 84px;
}
.blogPageSelect .allCheck.on {
	background-color: var(--p_red_d);
	color: white;
}
.followBtn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: white;
	border: 1px solid var(--t_thin);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.followBtn::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/follow_icon.svg") no-repeat center;
	mask: url("../img/follow_icon.svg") no-repeat center;
	background-color: var(--t_light);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.followBtn.on {
	background-color: var(--m_light);
	border-color: var(--m_light);
}
.followBtn.on::before {
	background-color: white;
}
.requestDataBtn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--t_medium);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.requestDataBtn::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/data_icon.svg") no-repeat center;
	mask: url("../img/data_icon.svg") no-repeat center;
	background-color: white;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.pointRecharge {
	flex: 0 0 auto;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--p_orange);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-size: var(--f_9);
	color: white;
	font-weight: 800;
}
.pointRecharge img {
	padding-left: 4px;
	padding-top: 2px;
}
.withdrawWon {
	flex: 0 0 auto;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--t_medium);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-size: var(--f_9);
	color: white;
	font-weight: 800;
}
.withdrawWon img {
	padding-top: 2px;
	height: 16px;
}
.creatChatRoomBtn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--m_light);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.creatChatRoomBtn::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/creat_room_wt_icon.svg") no-repeat center;
	mask: url("../img/creat_room_wt_icon.svg") no-repeat center;
	background-color: white;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}

/* 알림 채팅 이어서 하기 */
.continueChat {
	width: 100%;
	padding: 15px 0px;
	border-bottom: 1px solid var(--t_thin);
}

.continueChat .closeBtn {
	padding-left: 8px;
}
.continueChat .txtShotArea {
	padding: 12px;
	background-color: var(--m_bg);
	border-radius: 6px;
}

/* 회원 맴버프로필 */
.layer_popup:has(.memProfileView) .popup_box {
	max-width: 310px;
}
.layer_popup:has(.memProfileView) .popup_box .pop_con {
	padding-bottom: 0;
}
.memProfileView {
	position: relative;
	width: 100%;
}
.memProfileView .memImgWrap {
	position: relative;
}
.memProfileView .memImgWrap .profileBadgeRdXla {
	position: absolute;
	bottom: 15px;
	right: 15px;
	z-index: 1;
}
.memProfileSlide {
	overflow: hidden;
	border-radius: 12px;
}
.memProfileSlide .swiper-slide {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.memProfileSlide .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.memProfileSlide .swiper-pagination {
	position: absolute;
	top: initial;
	left: 15px;
	right: initial;
	bottom: 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	font-size: var(--f_9);
	height: 16px;
	border-radius: 8px;
	width: 34px;
	background-color: rgba(51, 65, 85, 0.5);
	color: white;
	font-weight: 800;
}
.swiper .roundCloseMd {
	top: 15px;
	right: 15px;
}
.memRanking {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	overflow: hidden;
	z-index: 1;
}
.memRanking img {
	width: 100%;
}
.memProfileView .memProfileInfo {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	padding: 20px 0px;
	padding-bottom: 0;
}
.memProfileView .memProfileInfo ul {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1 1 45%;
	color: var(--t_medium);
}
.memProfileView .memProfileInfo ul li:not(:first-child) {
	color: var(--t_normal);
	font-weight: 700;
}
.memProfileView .memProfileInfo ul li a {
	color: var(--m_main);
	text-decoration: underline;
}
.layer_popup:has(.memProfileView) .eachBtn .m_white {
	flex: 0 0 auto;
	width: fit-content;
}
.memProfileView textarea {
	margin-top: 20px;
}
.memProfileView .totalInfoWrap {
	display: flex;
	flex-direction: column;
	gap: 15px;
	align-items: center;
	justify-content: center;
	padding-top: 20px;
}
.memProfileView .totalInfoWrap .title {
	font-size: var(--f_16);
	font-weight: 700;
}
.memProfileView .totalInfoWrap:has(.golfInfo) .title {
	padding-bottom: 12px;
	border-bottom: 1px solid var(--t_thin);
	width: 100%;
	text-align: center;
}
.memProfileView .totalInfoWrap .golfInfo {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.memProfileView .totalInfoWrap .golfInfo ul {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--t_medium);
}
.memProfileView .totalInfoWrap .golfInfo ul li:last-child {
	font-weight: 700;
	color: var(--t_normal);
}
.memProfileView .totalInfoWrap .mainViewTxt {
	border-radius: 6px;
	line-height: 1.4;
	padding: 15px;
	background-color: var(--m_bg);
	word-break: normal;
	width: 100%;
	text-align: center;
}

/* 익명 닉네임 */
.anonNickName {
	display: flex;
	align-items: center;
	height: 18px;
	overflow: hidden;
	mix-blend-mode: multiply;
}
.anonNickName img {
	height: 38px;
}

/* 회원 맴버 2단 가로 정보 */
.twoStageMemPf {
	position: relative;
	width: 100%;
}
.twoStageMemPf .memImgWrap {
	position: relative;
	width: 180px;
	height: 180px;
	margin: 0 auto;
}
.twoStageMemPf .nLBadgeLg {
	position: absolute;
	top: 15px;
	left: 15px;
	z-index: 10;
}
.twoStageMemPf:has(.connRoom) .nLBadgeLg {
	background-color: var(--m_main);
}
.twoStageMemPf .nLBadgeLg.connRoom::before {
	content: "접속중";
	background-color: var(--m_main);
}
.twoStageMemPf:has(.absentRoo) .nLBadgeLg {
	background-color: var(--t_medium);
}
.twoStageMemPf .nLBadgeLg.absentRoo::before {
	content: "부재중";
	background-color: var(--t_medium);
}
.twoStageMemPf .memImgWrap .profileBadgeRdMd {
	bottom: 15px;
	right: 15px;
	z-index: 1;
}
.twoStageMemPf .nickname {
	font-size: var(--f_18);
	font-weight: 700;
	text-align: center;
	margin-top: 20px;
}
.twoStageMemPf .pfInfo {
	display: flex;
	justify-content: center;
	gap: 30px;
	margin-top: 15px;
}
.twoStageMemPf .pfInfo .colSpan {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.twoStageMemPf .pfInfo .colSpan ul {
	display: flex;
	align-items: center;
	gap: 8px;
}
.twoStageMemPf .pfInfo .colSpan ul li {
	display: flex;
	gap: 6px;
}
.twoStageMemPf .pfInfo .colSpan ul li:last-child {
	font-weight: 700;
}
.twoStageMemPf .pfInfo .colSpan ul .rankTxt {
	color: var(--m_main);
	text-decoration: underline;
}
.twoStageMemPf .textAreaZone {
	margin-top: 15px;
}

/* 메인탭 */
.mainPageTab {
	position: relative;
	display: flex;
	align-items: center;
	background-color: var(--m_bg);
	border-radius: 12px;
	overflow: hidden;
}
.mainPageTab .freeTabBtn .tabBtn,
.mainPageTab .anonTabBtn .tabBtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	padding: 0px 15px;
	height: 38px;
	font-size: var(--f_15);
	font-weight: 800;
	color: var(--t_lighter);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	line-height: normal;
}
.mainPageTab .freeTabBtn.on .tabBtn,
.mainPageTab .anonTabBtn.on .tabBtn {
	color: white;
	background-color: var(--t_normal);
}
.mainPageTab .more {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	line-height: normal;
	visibility: hidden;
	opacity: 0;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	font-size: var(--f_11);
}
.mainPageTab .freeTabBtn.on .more,
.mainPageTab .anonTabBtn.on .more {
	visibility: visible;
	opacity: 1;
}
.mainPageTabCon .freeTabCon,
.mainPageTabCon .anonTabCon {
	display: none;
}
.mainPageTabCon .freeTabCon.active,
.mainPageTabCon .anonTabCon.active {
	display: block;
}
.mainPageTabCon .freeTabCon .recent_free .item {
	width: 100%;
	padding: 15px 0px;
	border-bottom: 1px solid var(--t_thin);
	height: 92px;
}
.mainPageTabCon .freeTabCon .recent_free .item:has(.moreBtnDropCon.on) {
	position: relative;
	z-index: 110;
}
.mainPageTabCon .freeTabCon .recent_free .txtAreaViewCon {
	-webkit-line-clamp: 1;
	line-clamp: 1;
}
.mainPageTabCon .anonTabCon .recent_anon .item {
	width: 100%;
	padding: 16.5px 0px;
	border-bottom: 1px solid var(--t_thin);
	height: 76.67px;
}
.mainPageTabCon .anonTabCon .recent_anon .txtAreaViewCon {
	-webkit-line-clamp: 1;
	line-clamp: 1;
}
.mainPageTabCon .item.block_user {
	position: relative;
	display: flex;
	align-items: center;
}
.mainPageTabCon .item.block_user::before {
	content: "차단글";
	position: absolute;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 7px;
	height: 20px;
	border-radius: 4px;
	background-color: var(--p_red_d);
	color: white;
	font-size: var(--f_10);
	font-weight: 700;
	margin-right: 8px;
	z-index: 1;
}
.mainPageTabCon .item.block_user::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	border-bottom: 1px solid var(--p_red_d);
	width: 100%;
	opacity: 0.4;
}
.mainPageTabCon .item.block_user .bcMemberIfWrap .leftInfo,
.mainPageTabCon .item.block_user .bcMemberIfWrap .txtShotArea,
.mainPageTabCon .item.block_user .bcMemberIfWrap .txtLongArea {
	opacity: 0.4;
}

/* 이용약관 팝업 */
.policy_popup_wrap .rule_wrap {
	display: flex;
	flex-direction: column;
	gap: 12px;
	font-size: var(--f_13);
	color: var(--t_normal);
	line-height: 1.3;
}
.policy_popup_wrap .rule_wrap .title {
	font-size: var(--f_15);
	color: var(--t_dark);
	font-weight: 700;
}
.policy_popup_wrap .rule_wrap .row {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.policy_popup_wrap .rule_wrap .sub_title {
	font-size: var(--f_14);
	font-weight: 600;
	color: var(--t_dark);
}
.policy_popup_wrap .rule_wrap ul {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 4px 0px;
}
.policy_popup_wrap .rule_wrap .list {
	padding-top: 10px;
	padding-left: 22px;
}
.policy_popup_wrap .rule_wrap .list li {
	list-style: decimal-leading-zero;
}
.policy_popup_wrap .rule_wrap .list.circle li {
	list-style: circle;
}
.policy_popup_wrap .rule_wrap .list li .sub_list {
	padding-left: 22px;
}
.policy_popup_wrap .rule_wrap .list li .sub_list li {
	list-style: hangul;
}

/* 약관 기본 팝업 */
.sumRuleWrap .mainTitle {
	font-size: var(--f_15);
	color: var(--t_dark);
	font-weight: 700;
	margin-bottom: 6px;
}
.sumRuleWrap .sumRuleCon {
	display: flex;
	flex-direction: column;
	gap: 12px;
	font-size: var(--f_13);
	color: var(--t_normal);
	line-height: 1.3;
}
.sumRuleWrap .title {
	font-size: var(--f_15);
	color: var(--t_dark);
	font-weight: 700;
}
.sumRuleWrap .row {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.sumRuleWrap .sub_title {
	font-size: var(--f_14);
	font-weight: 600;
	color: var(--t_dark);
}
.sumRuleWrap ul {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 4px 0px;
}
.sumRuleWrap .list {
	padding-top: 10px;
	padding-left: 22px;
}
.sumRuleWrap .list li {
	list-style: decimal-leading-zero;
}
.sumRuleWrap .list.circle li {
	list-style: circle;
}
.sumRuleWrap .list li .sub_list {
	padding-left: 22px;
}
.sumRuleWrap .list li .sub_list li {
	list-style: hangul;
}

/* 토글 */
.openTgCon {
	position: fixed;
	top: 0;
	display: none;
	height: 100%;
	width: 100%;
	max-width: 440px;
	background-color: white;
	z-index: 1000;
	animation: toggle_move 0.2s both;
	animation-delay: 0.2s;
	visibility: hidden;
}
.openTgCon.on {
	display: block;
	visibility: visible;
}
@keyframes toggle_move {
	from {
		opacity: 0;
	}
}
.closeTgBtn {
	position: absolute;
	top: 5px;
	right: 0px;
	padding: 15px;
}

/* 전체 메뉴 토글 */
.allMenuWrap {
	height: 100%;
}
.allMenuWrap .bCon {
	padding: 68px 15px 15px 15px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}
.allMenuWrap .logo {
	position: absolute;
	top: 20px;
	left: 15px;
}
.allMenuWrap .logo img {
	height: 28px;
}
.allMenuWrap .goMenu {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	margin-bottom: 20px;
	background-color: var(--m_bg);
	border-radius: 8px;
	padding: 12px 2px;
}
.allMenuWrap .goMenu a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	font-size: var(--f_11);
	font-weight: 800;
	color: var(--t_medium);
	padding: 0px 10px;
}
.allMenuWrap .goMenu a::before {
	content: "";
	display: block;
	width: 30px;
	height: 24px;
	background: url("") no-repeat center / contain;
}
.allMenuWrap .goMenu a.recent::before {
	background-image: url("../img/tg_recent_icon.svg");
	background-size: 23px;
}
.allMenuWrap .goMenu a.cart::before {
	background-image: url("../img/tg_cart_icon.svg");
}
.allMenuWrap .goMenu a.chat::before {
	background-image: url("../img/tg_chat_icon.svg");
}
.allMenuWrap .goMenu a.user::before {
	background-image: url("../img/tg_user_search.svg");
}
.allMenuWrap .goMenu a.setting::before {
	background-image: url("../img/tg_setting_icon.svg");
}
.allMenuWrap .menuNavList {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-height: 0;
	overflow: hidden;
	overflow-y: auto;
}
.allMenuWrap .navBtn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: var(--f_15);
	font-weight: 800;
}
.allMenuWrap .navBtn .btn_icon {
	position: relative;
	width: 12px;
	height: 12px;
}
.allMenuWrap .navBtn .btn_icon::after,
.allMenuWrap .navBtn .btn_icon::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 12px;
	height: 2px;
	border-radius: 1px;
	background-color: var(--t_normal);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s,
		opacity 0.2s,
		transform 0.2s;
	transform-origin: center;
}
.allMenuWrap .navBtn .btn_icon::after {
	transform: rotate(-90deg) translateY(-50%);
	top: 47%;
	left: 1px;
	opacity: 1;
}
.allMenuWrap .item.on .navBtn .btn_icon::after {
	transform: translateY(-50%);
	opacity: 0;
}
.allMenuWrap .navBtn .btn_icon.no {
	display: none;
}
.allMenuWrap .subNav {
	display: none;
	font-size: var(--f_13);
	padding-top: 10px;
	padding-left: 15px;
}
.allMenuWrap .subNav .depth:not(:last-child) {
	margin-bottom: 8px;
}
.allMenuWrap .eventAreaSlide {
	flex: 0 0 auto;
	width: 100%;
	margin-top: 20px;
}

/* 균등한 탭 */
.equalWidthTab {
	flex: 0 0 auto;
	position: relative;
	display: flex;
	align-items: center;
	background-color: var(--m_bg);
	border-radius: 12px;
	width: 100%;
	overflow: hidden;
}
.equalWidthTab .tabBtn {
	flex: 1;
	min-width: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border-radius: 12px;
	height: 38px;
	font-size: var(--f_15);
	font-weight: 800;
	color: var(--t_lighter);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	line-height: normal;
}
.equalWidthTab .badge {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 6px;
	min-width: 20px;
	height: 20px;
	border-radius: 6px;
	font-size: var(--f_10);
	font-weight: 800;
	color: white;
	background-color: var(--t_lighter);
}
.equalWidthTab .tabBtn.on {
	color: white;
	background-color: var(--t_normal);
}
.equalWidthTab .tabBtn.on .badge {
	background-color: var(--m_main);
}
.allDeleteBtn {
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background: url("../img/trash_icon.svg") no-repeat center;
	background-color: var(--p_orange);
	margin-left: 8px;
}
.equalWidthTab:has(.allDeleteBtn) {
	width: calc(100% - 46px);
	overflow: initial;
}
.equalWidthTab .allDeleteBtn {
	position: absolute;
	right: -46px;
}
.equalTabCon {
	display: none;
	flex: 1 1 auto;
	overflow: hidden;
	overflow-y: auto;
	min-height: 0;
}
.equalTabCon.active {
	display: block;
}

/* GPS 팝업 */
.gps_setting_pop .int_wrap {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
}
.gps_setting_pop .popup_box {
	min-width: 290px;
	max-width: 440px;
	width: 100%;
}

/* 지로도 찾기 팝업 */
.map_search_pop .popup_box {
	width: 100%;
}
.map_search_pop .popup_box .map_view {
	border-radius: 12px;
	overflow: hidden;
	width: 100%;
	padding-bottom: calc(100% + 100px);
}
.map_search_pop .map_view > img {
	width: 100%;
}

/* qr코드 전송 팝업 */
.qr_code_send_pop .popup_box .pop_con {
	padding: 0px 20px !important;
}

/* 입력폼 두개일때 */
.colspanIntTwo {
	display: flex;
	gap: 15px;
	width: 100%;
}
.colspanIntTwo .intForm {
	flex: 1;
}

/* 입력폼 */
.intForm {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}
.intForm .reQuiredRight {
	font-size: var(--f_13);
}
.intForm > span {
	font-size: var(--f_13);
	color: var(--t_medium);
}
.intForm .intInfo {
	display: flex;
	align-items: center;
	gap: 8px;
}
.intForm .intInfo .intBox {
	position: relative;
	flex: 1 1 auto;
	display: flex;
}
.intForm .intInfo .intBox input {
	padding-left: 12px;
	font-size: var(--f_13);
}
.intForm .intInfo .intFlOneBox {
	position: relative;
	flex: 1;
	display: flex;
}
.intForm .intInfo .intBox:has(.shareBtn) {
	gap: 8px;
}
.intForm .intInfo .intBox:has(select) {
	flex: 1;
	min-width: 0;
}
.intForm .intInfo .intBox .firstTxt {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 15px;
}
.intForm .intInfo .intBox .subTxt {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
}
.intForm .intInfo .intBox:has(.firstTxt) input {
	padding-left: 54px;
	padding-right: 64px;
}
.intForm .intInfo .intBox:has(.subTxt) input {
	padding-right: 64px;
}
.intForm .intInfo .intBox .subTxt.time {
	color: var(--p_orange);
}
.intForm .intInfo:has(.requestDataBtn) .intBox {
	width: 50%;
	gap: 8px;
}
.intErrTxt {
	font-size: var(--f_11);
	color: var(--p_orange);
}
.intNomalTxt {
	font-size: var(--f_11);
}

/* 숫자 입력 슬라이더 */
.sliderToInt {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	gap: 20px;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	padding-left: 15px;
	padding-right: 5px;
	height: 38px;
}
.sliderToInt .rangeSlider {
	flex: 1 1 auto;
}
.sliderToInt .intInfo {
	flex: 0 0 auto;
	gap: 2px;
}
.sliderToInt .intInfo .intBox {
	flex: 0 0 auto;
	width: fit-content;
}
.sliderToInt .intInfo input {
	border: 1px solid transparent !important;
	height: 28px;
	padding: 0px 6px !important;
	width: 60px;
	text-align: center;
}
.sliderToInt .intInfo input:focus {
	border-color: var(--t_lighter) !important;
	outline: none;
}
.rangeSlider .noUi-tooltip {
	display: none;
}
.rangeSlider .noUi-handle:after,
.rangeSlider .noUi-handle:before {
	display: none;
}
.rangeSlider .noUi-horizontal {
	height: 10px;
	border-color: var(--t_thin);
	border-color: transparent;
	background-color: var(--t_table);
	box-shadow: none;
}
.rangeSlider .noUi-horizontal .noUi-handle {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: none;
	background-color: var(--m_light);
	box-shadow: none;
	top: -4px;
	right: -13px;
}
.rangeSlider .noUi-connect {
	height: 14px;
	background-color: var(--m_light);
}
.greenPriceWrap .priceInt {
	display: flex;
	align-items: center;
}
.greenPriceWrap .priceInt > div {
	position: relative;
}
.greenPriceWrap .priceInt > div input {
	width: 90px;
	text-align: right;
	padding-right: 4px;
	padding-left: 8px;
	height: 36px;
	border-color: white;
	background-color: transparent;
	z-index: 1;
	border-radius: 6px;
}
.greenPriceWrap .priceInt > div input:focus {
	border-color: var(--m_c) !important;
	outline: none;
}
.greenPriceWrap .priceInt > span {
	margin-left: 4px;
}
.sliderToInt.price {
	padding: 0 15px;
}
.sliderToInt.price .intInfo input {
	width: 45px;
}
.sliderToInt.price .intInfo .subTxt {
	margin-bottom: 2px;
}

/* 데이터 박스 */
.dateChoiceBox {
	position: relative;
	width: 100%;
}
.dateChoiceBox .dateInputLabel {
	display: flex;
	align-items: center;
	gap: 10px;
	background-color: white;
	font-size: inherit;
	color: inherit;
	line-height: inherit;
	padding: 0 15px;
	height: 38px;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	cursor: pointer;
	position: relative;
	z-index: 1;
}
.dateChoiceBox .dateInput {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
	z-index: 2;
	pointer-events: none;
}
.filterOption {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: white;
	border: 1px solid var(--t_thin);
	transition: all 0.2s;
}
.filterOption::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/filter_option_icon.svg") no-repeat center;
	mask: url("../img/filter_option_icon.svg") no-repeat center;
	background-color: var(--t_light);
	transition: all 0.2s;
}
.filterOption.on {
	background-color: var(--m_light);
	border-color: var(--m_light);
}
.filterOption.on::before {
	background-color: white;
}

.viewOption {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--t_medium);
	transition: all 0.2s;
}
.viewOption::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/board_group_icon.svg") no-repeat center;
	mask: url("../img/board_group_icon.svg") no-repeat center;
	background-color: white;
	transition: all 0.2s;
}
.viewOption.listBtn::before {
	-webkit-mask: url("../img/board_list_icon.svg") no-repeat center;
	mask: url("../img/board_list_icon.svg") no-repeat center;
}
.dayBtnWrap {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
}
.dayBtnWrap a {
	flex: 1;
	min-width: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 38px;
	border-radius: 6px;
	font-size: var(--f_14);
	font-weight: 700;
	line-height: normal;
	white-space: nowrap;
	border: 1px solid var(--t_thin);
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
	background-color: white;
}
.dayBtnWrap a::before {
	content: "";
	width: 20px;
	height: 16px;
	-webkit-mask: url("") no-repeat center;
	mask: url("") no-repeat center;
	background-color: var(--t_medium);
	mask-size: auto 16px;
	transition:
		background-color 0.2s,
		border-color 0.2s,
		color 0.2s;
}
.dayBtnWrap a.all::before {
	mask-image: url("../img/day_all_icon.svg");
	mask-size: 14px;
}
.dayBtnWrap a.am::before {
	mask-image: url("../img/day_am_icon.svg");
}
.dayBtnWrap a.pm::before {
	mask-image: url("../img/day_pm_icon.svg");
}
.dayBtnWrap a.night::before {
	mask-image: url("../img/day_night_icon.svg");
}
.dayBtnWrap a.on {
	background-color: var(--t_medium);
	border-color: var(--t_medium);
	color: white;
}
.dayBtnWrap a.on::before {
	background-color: white;
}

/* 메인필터 슬라이드토글 */
.searchFilterWrap {
	/* position: relative;
	top: 50px; */
	z-index: 10;
	width: 100%;
	transition:
		margin 0.3s,
		top 0.3s,
		padding 0.3s,
		height 0.3s;
}
.searchFilterWrap .wCon {
	display: flex;
	flex-direction: column;
	gap: 10px;
	background-color: var(--m_bg);
}
.searchFilterWrap .mainFilter {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.searchFilterWrap .subFilter {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.areaBtnFilter {
	display: flex;
	gap: 8px;
	background-color: white;
}
.areaBtnFilter .selectBtn {
	flex: 1 1 auto;
	overflow: hidden;
	width: 100%;
}
.areaBtnFilter .selectBtn .btnSlide {
	display: flex;
	gap: 8px;
	width: 100%;
	overflow: hidden;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.areaBtnFilter .selectBtn .btnSlide a {
	border-color: var(--t_thin);
}
.areaBtnFilter .selectBtn .btnSlide a.on {
	background-color: var(--t_medium);
	color: white;
}

/* 상세검색 박스 */
.intSearchBox {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
}
.intSearchBox .intFocus {
	flex: 1 1 auto;
	position: relative;
}
.intSearchBox .intDropCon {
	display: none;
	position: absolute;
	z-index: 10;
	width: 100%;
	padding: 8px 0px;
}
.intSearchBox .intDropCon.up {
	bottom: 100%;
}
.intSearchBox .intDropCon.on {
	display: block;
}
.intSearchBox:has(.searchIcBtn) .intDropCon {
	width: calc(100% + 46px);
}
.intSearchBox .intDropCon .item {
	display: grid;
	grid-template-columns: max-content 1fr;
	align-items: center;
	padding: 0px 15px;
	background-color: white;
	border-radius: 6px;
	border: 1px solid var(--t_thin);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	/* max-height: 202px; */
	overflow: hidden;
	overflow-y: auto;
}
.intSearchBox .intDropCon .item:has(> a:nth-child(5)) {
	height: 200px;
}
.btmPopWrap .intSearchBox .intDropCon .item:has(> a:nth-child(5)) {
	height: initial;
}
.btmPopWrap .intSearchBox .intDropCon .item:has(> a:nth-child(3)) {
	height: 142px;
}
.intSearchBox .intDropCon .item a {
	position: relative;
	display: contents;
}
.intSearchBox .intDropCon .item a p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	height: 40px;
	line-height: 40px;
}
.intSearchBox .intDropCon .item a:not(:last-child) p {
	border-bottom: 1px solid var(--t_thin);
}
.intSearchBox .intDropCon .item a p:nth-child(2)::before {
	content: "|";
	margin: 0 10px;
}
.searchIcBtn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--t_medium);
}
.searchIcBtn::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/search_n_icon.svg") no-repeat center;
	mask: url("../img/search_n_icon.svg") no-repeat center;
	background-color: white;
}
.readCleanBtn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--p_orange);
}
.readCleanBtn::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/clean_icon.svg") no-repeat center;
	mask: url("../img/clean_icon.svg") no-repeat center;
	background-color: white;
}
.writeBtn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	width: 38px;
	height: 38px;
	background-color: var(--m_light);
}
.writeBtn::before {
	content: "";
	width: 24px;
	height: 24px;
	-webkit-mask: url("../img/write_icon.svg") no-repeat center;
	mask: url("../img/write_icon.svg") no-repeat center;
	background-color: white;
}

/* textareaBox 텍스트아레아 텍스트박스 */
.textareaBox {
	width: 100%;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
}
.textareaBox textarea {
	border: none;
}
.textareaBox .subTxt {
	padding-right: 15px;
	padding-bottom: 12px;
	text-align: right;
}

/* 골프장 뷰 카드 */
.golfCCViewWrap {
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	border: 1px solid var(--t_thin);
	background-color: white;
	width: 100%;
}
.golfCCViewWrap .golfCCImg {
	position: relative;
	width: 100%;
	height: 110px;
	background: url() no-repeat center / cover;
}
.golfCCViewWrap .RdBadgeLg {
	position: absolute;
	top: 10px;
	left: 10px;
}
.golfCCViewWrap .golfCCItem {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 15px;
}
.golfCCViewWrap .golfName {
	color: var(--t_dark);
	font-size: var(--f_13);
	font-weight: 600;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
}
.golfCCViewWrap .golfInfo {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: var(--f_12);
}
.golfCCViewWrap .price {
	font-size: var(--f_13);
	font-weight: 800;
	color: var(--m_dark);
}
.golfCCViewWrap.soldout:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(15, 28, 35, 0.5);
}
.golfCCViewWrap.soldout:after {
	content: "마감 되었습니다.";
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	width: 100%;
	height: 110px;
	color: white;
	font-weight: 800;
}
.golfCCViewWrap.soldout .widthBtn a {
	pointer-events: inherit;
	cursor: pointer;
}
.golfCCViewWrap.soldout .widthBtn a:not(:last-child) {
	display: none;
}

/* 실시간 조인 대기 슬라이드 */
.realTimeJoinWait {
	width: 100%;
}
.realTimeJoinWait .section_top_title {
	padding-left: 15px;
	margin-bottom: 10px;
}
.realTimeJoinWait:has(.con.on) .section_top_title {
	padding-left: 0px;
}
.realTimeJoinWait .con {
	width: 100%;
	padding: 0px;
}
.realTimeJoinWait .con.on {
	padding-left: 15px;
}
.realTimeJoinWait .bcMemberIfWrap {
	padding: 10px;
	border: 1px solid var(--t_thin);
	border-radius: 8px;
}
.realTimeJoinWait .txtLongArea {
	padding: 10px 12px;
	background-color: var(--m_bg);
	border-radius: 6px;
}
.realTimeJoinWait .rlTimeJoinTxt .golfName {
	color: var(--t_dark);
	font-size: var(--f_13);
	font-weight: 600;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	padding-bottom: 2px;
}
.realTimeJoinWait .rlTimeJoinTxt ul {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	font-size: var(--f_11);
}
.realTimeJoinWait .rlTimeJoinTxt {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 50px;
}
.realTimeJoinWait .rlTimeJoinTxt ul:last-child li {
	font-size: var(--f_13);
	font-weight: 700;
	color: var(--m_dark);
}

/* 예약 리스트 */
.golfCCResItem {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 15px 0px 15px 15px;
	border-bottom: 1px solid var(--t_thin);
}
.golfCCResItem img {
	flex: 0 0 auto;
	width: 108px;
	height: 108px;
	object-fit: cover;
	border-radius: 8px;
}
.golfCCResItem .golfInfo {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
}
.golfCCResItem .golfName {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 10px;
	padding-right: 15px;
}
.golfCCResItem .golfName a {
	font-size: var(--f_15);
	font-weight: 700;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.golfCCResItem .golfName .area {
	font-size: var(--f_12);
	flex: 0 0 auto;
}
.golfCCResItem .daySelect {
	flex: 1 1 auto;
	overflow: hidden;
	width: 100%;
}
.golfCCResItem .daySelect .widthSlide {
	display: flex;
	gap: 8px;
	width: 100%;
	overflow: hidden;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.golfCCResItem .daySelect a {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 60px;
	padding: 6px 8px;
	border-radius: 6px;
	background-color: white;
	border: 1px solid var(--t_thin);
	white-space: nowrap;
	min-width: 50px;
}
.golfCCResItem .daySelect a:last-child {
	margin-right: 15px;
}
.golfCCResItem .daySelect a .date {
	font-size: var(--f_12);
}
.golfCCResItem .daySelect a .res_info {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 35px;
	font-size: var(--f_12);
}
.golfCCResItem .daySelect a .team {
	color: var(--m_main);
	font-weight: 700;
}
.golfCCResItem .daySelect a .wait {
	color: var(--p_blue);
	font-weight: 700;
}
.golfCCResItem .daySelect a.sat .date {
	color: var(--p_blue);
}
.golfCCResItem .daySelect a.holiday .date {
	color: var(--p_red);
}
.golfCCResItem .daySelect a.off {
	background-color: var(--t_table);
}
.golfCCResItem .daySelect a.off p {
	color: var(--t_light);
	text-align: center;
}
.golfCCResItem .bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-right: 15px;
}
.golfCCResItem .bottom .price {
	font-size: var(--f_15);
	color: var(--m_dark);
	font-weight: 800;
}
.golfCCResItem .bottom .location {
	flex: 0 0 auto;
	font-size: var(--f_10);
	text-align: right;
}
.golfCCResItem:has(+ .bannerSection) {
	border: none;
}

/* 딜러 에약 리스트 */
.golfMaResItem {
	border-bottom: 1px solid var(--t_thin);
}
.golfMaResItem .dropView {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 15px;
	cursor: pointer;
}
.golfMaResItem:first-child .dropView {
	padding-top: 5px;
}
.golfMaResItem .dropView img {
	flex: 0 0 auto;
	width: 90px;
	height: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 8px;
}
.golfMaResItem .dropView .golfInfo {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.golfMaResItem .dropView .golfInfo .golfName {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: var(--f_12);
}
.golfMaResItem .dropView .golfInfo .golfName .title {
	font-size: var(--f_15);
	font-weight: 700;
}
.golfMaResItem .dropView .golfInfo .category {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.golfMaResItem .dropView .golfInfo .category ul {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: var(--f_13);
}
.golfMaResItem .dropView .golfInfo .category ul li:first-child {
	color: var(--t_light);
}
.golfMaResItem .dropView .golfInfo .bottom .price {
	font-size: var(--f_16);
	font-weight: 800;
	color: var(--m_dark);
}
.golfMaResItem .dropCon {
	display: none;
	padding: 15px;
	border-top: 1px solid var(--t_thin);
	background-color: var(--m_bg);
}
.golfMaResItem .dropCon .golfTimeList {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.golfMaResItem .dropCon .golfTimeList .timeItem {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 20px 15px;
	border-radius: 8px;
	border: 1px solid var(--t_table);
	background-color: white;
}
.golfMaResItem .dropCon .timeItem > .nLBadgeLg {
	position: absolute;
	top: 20px;
	right: 15px;
}
.golfMaResItem .dropCon .timeItem:has(.nLBadgeLg) {
	border-color: var(--p_red);
}
.golfMaResItem .dropCon .timeItem:has(.golfccName) > .nLBadgeLg {
	top: 15px;
}
.golfMaResItem .dropCon .timeItem .golfccName {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	font-size: var(--f_16);
	font-weight: 800;
	color: var(--t_dark);
	padding-bottom: 8px;
	border-bottom: 1px solid var(--t_thin);
	margin-bottom: 12px;
}
.golfMaResItem .dropCon .timeItem .golfccName p {
	flex: 1 1 auto;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
}
.golfMaResItem .dropCon .timeItem .golfccName span {
	flex: 0 0 auto;
	font-size: var(--f_12);
	font-weight: normal;
}
.golfMaResItem .dropCon .timeItem .info {
	position: relative;
	padding-top: 6px;
}
.golfMaResItem .dropCon .timeItem .info ul {
	display: flex;
	flex-direction: column;
	font-size: var(--f_13);
	margin-left: 44px;
}
.golfMaResItem .dropCon .timeItem .info ul .wait .people {
	position: absolute;
	top: -34px;
	right: 0;
	display: flex;
	align-items: center;
	gap: 4px;
}
.golfMaResItem .dropCon .timeItem:has(.nLBadgeLg) .info ul .wait .people {
	top: -10px;
}
.golf_list .golfMaResItem .timeItem .info ul .wait .people {
	top: -23px;
}
.golfMaResItem .dropCon .timeItem .info ul .wait .people span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 20px;
	padding: 0px 8px;
	font-size: var(--f_11);
	font-weight: 700;
	border-radius: 4px;
	color: white;
	width: fit-content;
	background-color: var(--t_medium);
}
.golfMaResItem .dropCon .timeItem .info ul .wait .people .total_num {
	background-color: var(--m_main);
}
.golfMaResItem .dropCon .timeItem .bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.golfMaResItem .dropCon .timeItem .bottom .price {
	font-size: var(--f_15);
	font-weight: 800;
	color: var(--m_dark);
	margin-left: 44px;
}
.golfMaResItem .dropCon .timeItem .bottom .date {
	font-size: var(--f_11);
	text-align: right;
}
.golfMaResItem:has(+ .bannerSection) {
	border: none;
}
.golfMaResItem .dropCon .timeItem .memImg {
	border-width: 2px;
}
.golfMaResItem .dropCon .timeItem.woman .memImg {
	border-color: var(--p_pink);
}
.golfMaResItem .dropCon .timeItem.man .memImg {
	border-color: var(--p_blue);
}

/* 배너광고 */
.bannerSection img {
	width: 100%;
}

/* 골프장 이미지 슬라이드 */
.golfViewImageSlide {
	width: 100%;
}
.golfViewImageSlide .swiper-slide img {
	width: 100%;
	height: 240px;
	object-fit: cover;
}
.golfViewImageSlide .swiper-pagination {
	position: absolute;
	bottom: 15px;
	left: initial;
	right: 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	font-size: var(--f_9);
	height: 16px;
	border-radius: 8px;
	width: 34px;
	background-color: rgba(51, 65, 85, 0.5);
	color: white;
	font-weight: 800;
}

/* 골프장 소개 상단 타이틀 */
.golfCourseIntro {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.golfCourseIntro .golfName {
	font-size: var(--f_16);
	font-weight: 800;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.golfCourseIntro .btnGroup {
	display: flex;
	align-items: center;
	gap: 12px;
}
.golfCourseIntro .btnGroup .nearbyGolf img {
	width: 22px;
}

/* 골프장 상세보기 날짜 선택 */
.gilfDayTeamSlide {
	width: 100%;
}
.gilfDayTeamSlide .dayChoice {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
	background-color: white;
	padding: 5px 0px;
}
.gilfDayTeamSlide .dayChoice ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	font-size: var(--f_12);
}
.gilfDayTeamSlide .dayChoice ul .txt {
	font-size: var(--f_14);
	font-weight: 800;
	color: var(--m_main);
}
.gilfDayTeamSlide .dayChoice.off {
	background-color: var(--t_table);
}
.gilfDayTeamSlide .dayChoice.off ul {
	color: var(--t_light);
}
.gilfDayTeamSlide .dayChoice.off .txt {
	color: var(--t_light);
}
.gilfDayTeamSlide .dayChoice.sat li:not(:last-child) {
	color: var(--p_blue);
}
.gilfDayTeamSlide .dayChoice.holiday li:not(:last-child) {
	color: var(--p_red);
}
.gilfDayTeamSlide .dayChoice.on {
	background-color: var(--m_light);
	border-color: var(--m_light);
}
.gilfDayTeamSlide .dayChoice.on ul {
	color: white;
}
.gilfDayTeamSlide .dayChoice.on li {
	color: white !important;
}

/* 상세정보 sticky */
.stickyScrollToogle {
	position: sticky;
	top: 35px;
	z-index: 10;
	background-color: white;
	border-bottom: 1px solid var(--t_thin);
	transition: all 0.2s;
}
.stickyScrollCon {
	overflow: hidden;
	max-height: 300px;
	will-change: max-height, opacity;
	transition:
		max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		opacity 0.25s ease;
	opacity: 1;
}
.stickyScrollCon.hide {
	max-height: 0 !important;
	opacity: 0;
}

/* 캘린더 */
.calendar_day_choice_pop {
	padding-top: 54px;
	justify-content: flex-start;
}

.calendar_day_choice_pop .pop_con {
	min-width: 320px;
	max-width: 440px;
	padding-left: 15px !important;
	padding-right: 15px !important;
}
.calendarTable {
	display: flex;
	align-items: start;
	justify-content: center;
	width: 100%;
	max-width: 440px;
}
.calendarTable table {
	table-layout: fixed;
}
.calendarTable .calendar_top {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
	width: 100%;
	font-weight: 700;
}
.calendarTable td {
	font-size: var(--f_13);
	color: var(--t_medium);
	text-align: center;
	padding: 10px 5px 0px 5px;
}
.calendarTable tr td:first-child {
	color: var(--p_red);
}
.calendarTable tr td:nth-child(7) {
	color: var(--p_blue);
}
.calendarTable tr td.holiday {
	color: var(--p_red);
}
.calendarTable thead td {
	padding-bottom: 0;
}
.calendarTable tr td p {
	padding-bottom: 2px;
}
.calendarTable tr td a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1;
	background-color: var(--m_light);
	border-radius: 6px;
	font-size: var(--f_13);
	font-weight: 800;
	color: white;
}
.calendarTable tr td a.off {
	background-color: var(--t_table);
	color: var(--t_light);
	font-size: var(--f_11);
	line-height: 1.1;
}
.calendarTable tr td a.wait {
	background-color: var(--t_lighter);
	color: white;
}

/* 상세 텍스트 */
.dtBasicInfo {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
}
.dtBasicInfo .infoTitle {
	font-size: var(--f_16);
	font-weight: 800;
	color: var(--m_darker);
	width: 100%;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
}
.dtBasicInfo .infoItem {
	display: grid;
	grid-template-columns: max-content 1fr;
}
.dtBasicInfo .infoItem ul {
	position: relative;
	display: contents;
	font-weight: 600;
}
.dtBasicInfo .infoItem ul li:first-child {
	padding-right: 10px;
	font-weight: 400;
	color: var(--t_medium);
}
.dtBasicInfo .infoItem ul:not(:last-child) li {
	margin-bottom: 8px;
}
.dtBasicInfo .infoItem ul .price {
	font-size: var(--f_15);
	font-weight: 800;
	color: var(--m_dark);
}

/* 내장자 정보 */
.playMemListWrap {
	display: grid;
	/* grid-template-columns: repeat(5, 1fr); */
	grid-template-columns: repeat(auto-fit, minmax(17%, auto));
	gap: 8px;
	width: 100%;
}
.playMemListWrap .box {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	border: 4px solid var(--t_table);
	aspect-ratio: 1 / 1;
	background: url("") no-repeat center / cover;
	background-color: var(--t_table);
}
.playMemListWrap .box .partnerBadgeSqSm {
	top: -4px;
	right: -4px;
}
.playMemListWrap .box .profileBadgeSqXsm {
	bottom: -4px;
	right: -4px;
}
.playMemListWrap .box.man {
	border-color: var(--p_blue);
}
.playMemListWrap .box.woman {
	border-color: var(--p_pink);
}
.playMemListWrap .box::before {
	content: "대기";
	font-weight: 700;
	color: var(--t_lighter);
}
.playMemListWrap .box.man::before,
.playMemListWrap .box.woman::before {
	display: none;
}

/* 사진 업로드 */
.photoUpload {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	width: 100%;
}
.photoUpload .boxItem {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid var(--t_thin);
	background-color: white;
}
.photoUpload .boxItem .photoChoice {
	position: absolute;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: var(--f_12);
	color: var(--t_medium);
}
.photoUpload .boxItem .imgView {
	width: 100%;
	height: 100%;
	border-radius: 8px;
	z-index: 10;
}
.photoUpload .boxItem .imgView img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.photoUpload .boxItem .imgView img[src=""] {
	display: none;
}
.photoUpload .boxItem .imgDel {
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	width: 100%;
	height: 100%;
	background-color: rgba(15, 28, 35, 0.5);
	opacity: 0;
	z-index: 10;
	transition:
		opacity 0.3s,
		z-index 0.3s;
}
.photoUpload .boxItem:has(img[src=""]) .imgDel {
	display: none;
}
.photoUpload .boxItem:hover .imgDel {
	opacity: 1;
}

/* 게시판 상단 검색 고정 */
.boardTopSticky {
	position: sticky;
	top: 51px;
	z-index: 10;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 10px 15px 20px 15px;
	background-color: white;
	transition: all 0.1s;
}
.boardTopSticky:has(.writeBtn) .intBox:has(select) {
	flex: 0 0 auto;
}
body:has(header.on) .boardTopSticky {
	border-bottom: 1px solid var(--t_thin);
	padding-top: 15px;
	padding-bottom: 15px;
}

/* 게시판 리스트 */
.boardList {
	padding: 15px;
	border-bottom: 1px solid var(--t_thin);
}
.boardList:has(.notice) {
	background-color: var(--m_bg);
}
.boardListTop {
	display: flex;
	align-items: center;
	padding-bottom: 10px;
}
.boardListTop.notice::before {
	content: "공지";
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 7px;
	height: 20px;
	border-radius: 4px;
	background-color: var(--t_medium);
	color: white;
	font-size: var(--f_10);
	font-weight: 700;
	margin-right: 8px;
}
.boardListTop .txt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	width: fit-content;
	line-height: 1.4;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.boardListTop .txt.read {
	color: var(--t_lighter);
}
.boardListTop .attachedIcon {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 8px;
	margin-left: 10px;
}
.boardListTop .attachedIcon .count {
	font-size: var(--f_12);
}
.boardListTop .attachedIcon .count.on {
	color: var(--p_red);
}
.boardListTop.block_user {
	position: relative;
}
.boardListTop.block_user::before {
	content: "차단글";
	position: relative;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 7px;
	height: 20px;
	border-radius: 4px;
	background-color: var(--p_red_d);
	color: white;
	font-size: var(--f_10);
	font-weight: 700;
	margin-right: 8px;
	z-index: 1;
}
.boardListTop.block_user::after {
	content: "";
	position: absolute;
	top: calc(50% - 5px);
	transform: translateY(-50%);
	left: 0;
	border-bottom: 1px solid var(--p_red_d);
	width: 100%;
	opacity: 0.4;
}
.boardList:has(.block_user) .txt,
.boardList:has(.block_user) .attachedIcon,
.boardList:has(.block_user) .boardMemInfo .leftInfo .memImg,
.boardList:has(.block_user) .boardMemInfo .leftInfo .memName,
.boardList:has(.block_user) .boardMemInfo .rightInfo {
	opacity: 0.4;
	color: var(--t_normal);
}
.boardList:has(.block_user) {
	position: relative;
}
/*
.boardList:has(.block_user)::after {
	content: "";
	position: absolute;
	inset: 14px;
	pointer-events: none;
	background: linear-gradient(to bottom right, transparent calc(50% - 1px), #b71d18 calc(50% - 1px), #b71d18 calc(50% + 1px), transparent calc(50% + 1px));
	opacity: 0.15;
}
*/

/* 예약현황 리스트 */
.golfCCResWrap {
	position: relative;
}
.golfCCResWrap .dtBasicInfo {
	gap: 10px;
}
.golfCCResWrap .dtBasicInfo .infoTitle {
	padding-top: 5px;
	width: calc(100% - 90px);
	font-size: var(--f_15);
}
.golfCCResWrap .dtBasicInfo .infoItem ul {
	font-size: var(--f_12);
}
.golfCCResWrap .dtBasicInfo .infoItem ul .price {
	font-size: var(--f_13);
}
.golfCCResWrap .golfImg {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 72px;
	height: 72px;
	border-radius: 8px;
	overflow: hidden;
}
.golfCCResWrap .golfImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 내포인트 포인트 리스트 */
.pointModuleWrap {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%;
}
.pointModuleWrap .item {
	flex: 1 1 40%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	border: 1px solid var(--t_thin);
	border-radius: 8px;
	padding: 15px;
	min-height: 96px;
	background-color: white;
}
.pointModuleWrap .item .title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: var(--f_16);
	font-weight: 800;
}
.pointModuleWrap .item .title img {
	height: 30px;
}
.pointModuleWrap .item h3 {
	font-size: var(--f_20);
	font-weight: 900;
	text-align: right;
}
.pointModuleWrap .accReg {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--f_12);
	font-weight: 700;
	height: 22px;
	border-radius: 4px;
	background-color: var(--t_medium);
	color: white;
}
.pointModuleWrap:has(.accReg) .bankComple {
	display: none;
}
.pointModuleWrap .bankComple {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.pointModuleWrap .bankComple a {
	font-size: 10px;
	color: var(--p_red);
	font-weight: 700;
}
.pointModuleWrap .bankComple p {
	font-size: var(--f_12);
	text-align: right;
}
.pointModuleWrap .integrate.item {
	border: none;
	background-color: var(--p_blue_d);
	color: white;
}
.pointModuleWrap .creditCard.item {
	width: 100%;
	gap: 15px;
}
.pointModuleWrap .creditCard .info:has(.first) .card_list_wrap {
	display: none;
}
.pointModuleWrap .creditCard .info .card,
.cardListSlide .card {
	background-color: var(--t_medium);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 110px;
	border-radius: 8px;
	padding: 15px;
	color: white;
}
.pointModuleWrap .creditCard .info .first {
	width: 100%;
}
.pointModuleWrap.creditCard .info .first .card.cardReg {
	width: 100%;
}
.pointModuleWrap .creditCard .info .card.cardReg,
.cardListSlide .card.cardReg {
	color: var(--t_medium) !important;
	background-color: white !important;
	border: 2px solid var(--p_red) !important;
}
.pointModuleWrap .creditCard .info .card.cardReg .card_num span,
.cardListSlide .card.cardReg .card_num span {
	font-size: var(--f_12);
	line-height: 1.1;
}
.pointModuleWrap .creditCard .info .card.cardReg .regBtn,
.cardListSlide .card.cardReg .regBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--f_12);
	font-weight: 700;
	color: white;
	height: 22px;
	width: 100%;
	border-radius: 4px;
	background-color: var(--p_red);
}
.pointModuleWrap .creditCard .info .card .card_type,
.cardListSlide .card .card_type {
	font-size: var(--f_15);
	font-weight: 900;
}
.pointModuleWrap .creditCard .info .card .card_num,
.cardListSlide .card .card_num {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.pointModuleWrap .creditCard .info .card .card_num ul,
.cardListSlide .card .card_num ul {
	display: flex;
	align-items: center;
	font-size: var(--f_12);
	font-weight: 700;
	gap: 4px;
}
.cardListSlide .card .bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	height: 22px;
}
.cardListSlide .card .bottom .card_name {
	font-size: 15px;
	font-weight: 800;
}
.cardListSlide .card .bottom .del_btn {
	text-decoration: underline;
	font-size: 10px;
}

/* 카드 슬라이더 */
.cardListSlide .swiper-slide .card.kook,
.payCardType .owl-item .card.kook {
	background-color: #72695f;
}
.cardListSlide .swiper-slide .card.hana,
.payCardType .owl-item .card.hana {
	background-color: #018c74;
}
.cardListSlide .swiper-slide .card.sin,
.payCardType .owl-item .card.sin {
	background-color: #0044f6;
}
.cardListSlide .swiper-slide .card.lotte,
.payCardType .owl-item .card.lotte {
	background-color: #df0011;
}
.cardListSlide .swiper-slide .card.nong,
.payCardType .owl-item .card.nong {
	background-color: #0063ad;
}
.cardListSlide .swiper-slide .card.woori,
.payCardType .owl-item .card.woori {
	background-color: #00279b;
}
.cardListSlide .swiper-slide .card.bc,
.payCardType .owl-item .card.bc {
	background-color: #f22f4e;
}
.cardListSlide .swiper-slide .card.sam,
.payCardType .owl-item .card.sam {
	background-color: #1577f7;
}
.cardListSlide .swiper-slide .card.hyun,
.payCardType .owl-item .card.hyun {
	background-color: #434343;
}

/* 포인트 충전 & 포인트 선물 */
.pointChargGift {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}
.pointChargGift .pointBalance {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	font-size: var(--f_11);
	font-weight: 500;
}
.pointChargGift .pointBalance .leftInfo .pointNum {
	font-size: var(--f_18);
	font-weight: 900;
	padding-top: 2px;
}
.pointChargGift .pointTxnBox {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 20px 15px;
	border-radius: 8px;
	background-color: var(--m_bg);
}
.pointChargGift .pointTxnBox .topTitle {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.pointChargGift .pointTxnBox .topTitle .txt {
	display: flex;
	align-items: center;
}
.pointChargGift .pointTxnBox .topTitle .nickName {
	font-weight: 800;
}
.pointChargGift .pointTxnBox .topTitle .pointNum {
	font-size: var(--f_16);
	font-weight: 900;
}
.pointChargGift .pointTxnBox .choiceBtn {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	width: 100%;
}
.pointChargGift .pointTxnBox .choiceBtn a {
	background-color: var(--t_medium);
	font-size: var(--f_14);
}
.pointChargGift .pointTxnBox .choiceBtn a.on {
	background-color: var(--m_light);
}
.pointChargGift .pointTxnBox .choiceBtn a.disabled {
	background-color: var(--t_thin) !important;
}
.pointChargGift .pointTxnBox .intForm {
	padding-top: 6px;
}
.pointChargGift .pointTxnBox .txtRow {
	padding-top: 6px;
}
.pointChargGift .pointTxnBox .txtRow ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.pointChargGift .pointTxnBox .txtRow ul li:last-child {
	font-weight: 900;
}
.pointChargGift .pointTxnBox .txtRow ul:not(:first-child) {
	padding-top: 12px;
	margin-top: 12px;
	border-top: 1px solid var(--t_thin);
}
.pointChargGift .pointTxnBox .txtRow ul:last-child li:last-child {
	color: var(--p_red);
}
.pointChargGift .notice {
	padding-top: 5px;
}
.pointChargGift .notice ul {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.pointChargGift .notice ul li {
	display: flex;
	align-items: center;
	justify-content: center;
}
.pointChargGift .notice ul li a {
	margin-left: 6px;
	font-weight: 800;
}

/* 복합 결제하기 */
.golfAdvance {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}
.golfAdvance .dtBasicInfo .useCon {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.golfAdvance .dtBasicInfo .useCon:not(:first-of-type) {
	padding-top: 5px;
}
.golfAdvance .payDetailBox {
	display: flex;
	flex-direction: column;
	padding-top: 20px;
	border-radius: 8px;
	background-color: var(--m_bg);
	overflow: hidden;
}
.golfAdvance .amountCalc {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0px 15px;
	margin-bottom: 15px;
}
.golfAdvance .amountCalc span {
	font-size: var(--f_28);
	font-weight: 700;
}
.golfAdvance .amountCalc li:last-child {
	font-size: var(--f_17);
	font-weight: 900;
}
.golfAdvance .totalPrice {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 15px;
	background-color: var(--m_light_l);
	color: white;
	padding: 10px 15px;
}
.golfAdvance .totalPrice .krwNum {
	display: flex;
	align-items: center;
	gap: 4px;
}
.golfAdvance .totalPrice .krwNum p {
	font-size: var(--f_22);
	font-weight: 900;
	margin-bottom: 3px;
}
.golfAdvance .totalPrice .krwNum span {
	font-size: var(--f_16);
	font-weight: 700;
}

/* 소셜 SNS */
.socialSnsBtn {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.socialSnsBtn:not(:has(a:nth-child(5))) {
	justify-content: center;
	gap: 24px;
}
.socialSnsBtn a {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: url() no-repeat center / cover;
}
.socialSnsBtn .insta {
	background-image: url("../img/sns_icon_insta.svg");
}
.socialSnsBtn .kakao {
	background-image: url("../img/sns_icon_kakao.svg");
}
.socialSnsBtn .twitt {
	background-image: url("../img/sns_icon_twitt.svg");
}
.socialSnsBtn .facebook {
	background-image: url("../img/sns_icon_facebook.svg");
}
.socialSnsBtn .telegram {
	background-image: url("../img/sns_icon_telegram.svg");
}

/* 스타일 테그 */
.styleTag {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(20%, auto));
	gap: 8px;
}
.styleTag a {
	color: var(--t_light);
}
.styleTag a.on {
	background-color: var(--m_light) !important;
	color: white;
}

/* 셀렉트 태그 */
.SelectTagBtn {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-size: var(--f_12);
}
.SelectTagBtn a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 22px;
	padding: 0px 10px;
	border-radius: 4px;
	background-color: var(--t_table);
	color: var(--t_light);
	font-weight: 700;
}
.SelectTagBtn .tag::after {
	content: "";
	display: flex;
	width: 10px;
	height: 10px;
	-webkit-mask: url("../img/close_btn_l_icon.svg") no-repeat center / cover;
	mask: url("../img/close_btn_l_icon.svg") no-repeat center / cover;
	background-color: var(--t_light);
}
.SelectTagBtn .allClear {
	background-color: var(--t_light);
	color: white;
}

/* 회원검색 선택하기 */
.searchMemSelect {
	display: flex;
	flex-direction: column;
	width: 100%;
}
.searchMemSelect .memberList .item {
	padding: 15px 0px;
	border-bottom: 1px solid var(--t_thin);
}
.searchMemSelect .memberList .item:last-child {
	padding-bottom: 0;
	border: none;
}
.searchMemSelect .memberList .MemInfo .rightInfo {
	align-self: initial;
	align-items: center;
	gap: 10px;
}
.searchMemSelect .memberList .MemInfo .rightInfo .moreBtnWrap {
	display: flex;
}
.searchMemSelect .memberList .MemInfo label.checkbox_m .check_img {
	width: 18px;
	height: 18px;
}
.searchMemSelect .memberList .item.connRoom .chatLabel::before {
	content: "접속중";
	background-color: var(--m_main);
}
.searchMemSelect .memberList .item.absentRoom .chatLabel::before {
	content: "부재중";
	background-color: var(--t_medium);
}

/* 프라이버시 비밀번호 입력 */
.privacyPassWord {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 40px;
	text-align: center;
}
.userNotiWrap:has(.privacyPassWord) .equalWidthTab,
.userNotiWrap:has(.privacyPassWord) .equalTabCon {
	display: none;
}
.privacyPassWord .priCon {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 15px;
}
.privacyPassWord .keyNumber {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
}
.privacyPassWord .keyNumber .int {
	position: relative;
	width: 54px;
	height: 54px;
	font-size: 26px;
}
.privacyPassWord .keyNumber .int input {
	width: 100%;
	height: 100%;
	text-align: center;
	border-radius: 8px;
	border-width: 2px;
}
.privacyPassWord .keyNumber .int .fakePass {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 8px;
	background-color: #34d662;
	font-weight: 900;
	color: white;
}
.privacyPassWord .keyNumber .int.on .fakePass {
	display: flex;
}
.privacyPassWord .warning ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	font-size: var(--f_12);
	color: var(--p_red_d);
}

/* 메세지 알림 팝업 */
.msgNotifPopUp {
	position: fixed;
	z-index: 100000000;
	transition: all 0.5s;
	width: 100%;
	max-width: 440px;
	padding: 15px;
	bottom: -100px;
}
.msgNotifPopUp .con {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 0px 15px;
	width: 100%;
	min-height: 64px;
	border: 1px solid #b9ecca;
	border-radius: 8px;
	background-color: #edfaf2;
}
.msgNotifPopUp.active {
	bottom: 0;
}
.msgNotifPopUp ul {
	font-weight: 800;
	color: var(--m_dark);
}
.msgNotifPopUp .msg_close_btn {
	position: absolute;
	top: 16px;
	right: 18px;
	width: 30px;
	height: 30px;
	-webkit-mask: url("../img/close_btn_icon.svg") no-repeat center;
	mask: url("../img/close_btn_icon.svg") no-repeat center;
	background-color: var(--m_darker);
	mask-size: 12px;
	transition: ease-in-out 0.3s;
}

/* 가짜 인풋 박스 */
.fakeInputWrap {
	min-height: 38px;
	padding: 9px 15px;
	width: 100%;
	transition: all 0.3s;
	border: 1px solid var(--t_thin);
	background-color: var(--t_table);
	border-radius: 6px;
}
/* 가짜 인풋 박스 내용 두개 */
.fakeInputWrapSb {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 38px;
	padding: 0px 15px;
	width: 100%;
	transition: all 0.3s;
	border: 1px solid var(--t_thin);
	background-color: var(--t_table);
	border-radius: 6px;
}

/* 텍스트 라인 박스 */
.txtLineBox {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 38px;
	padding: 9px 15px;
	width: 100%;
	transition: all 0.3s;
	border: 1px solid var(--t_thin);
	border-radius: 6px;
}
.txtLineBox > p {
	flex: 1 1 auto;
}
.txtLineBox .chkSwitchBtn {
	flex: 0 0 auto;
}

/* 채팅방 링크 */
.chatMessageLink {
	display: flex;
	align-items: center;
}
.chatMessageLink .messImg {
	position: relative;
	width: 82px;
	height: 82px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	background: url("") no-repeat center / cover;
	border: 1px solid var(--t_table);
	border-radius: 8px 0px 0px 8px;
}
.chatMessageLink .messImg .profileBadgeRdSm {
	right: 5px;
	bottom: 5px;
}
.chatMessageLink .linkView {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 10px;
	background-color: white;
	border-radius: 0px 8px 8px 0px;
	height: 82px;
	border: 1px solid var(--t_table);
	border-left: none;
}
.chatMessageLink .linkView .nLBadgeLg {
	color: var(--t_medium);
}
.chatMessageLink .linkView .txt {
	flex: 1 1 auto;
	width: 100%;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	font-size: var(--f_12);
	font-weight: 600;
	margin-top: 2px;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
.chatMessageLink .linkView .linkTime {
	font-size: var(--f_11);
}

/* 채팅관련 삭제 초대 통합 이슈 내용 */
.chatIssueMessage {
	display: inline-flex;
	max-width: 80%;
	padding: 8px 12px;
	border-radius: 6px;
	text-align: center;
	word-break: keep-all;
	white-space: normal;
	margin: 0 auto;
	background-color: #d7dfe4;
	font-size: var(--f_12);
	font-weight: 700;
	color: #003768;
}
.qnaTalkWrap .row {
	display: flex;
}
.qnaTalkWrap .row::before {
	content: "A";
	flex: 0 0 auto;
	width: 18px;
	font-size: var(--f_14);
	font-weight: 800;
	color: var(--m_main);
}

.qnaTalkWrap .row.question::before {
	content: "Q";
	color: var(--p_red_d);
}
.qnaTalkWrap:has(.answer) .question {
	margin-bottom: 8px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--t_thin);
}
.qnaTalkWrap p {
	margin-top: 1px;
	white-space: initial;
	word-wrap: normal;
	word-break: break-all;
}
/* QNA 팝업 */
.qna_talk_pop .qnaTalkWrap .row.question::before {
	font-size: var(--f_15);
}
.qna_talk_pop .qnaTalkWrap:has(.answer) .question {
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--t_thin);
}

/* 플로팅 배너 */
.floatingBanner {
	position: fixed;
	bottom: 65px;
	right: 0;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background-color: var(--m_main);
	margin-right: 15px;
	z-index: 100;
	transition: opacity 0.5s;
}
.floatingBanner:after {
	content: "";
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	-webkit-mask: url("../img/tg_chat_icon.svg") no-repeat center;
	mask: url("../img/tg_chat_icon.svg") no-repeat center;
	background-color: white;
	mask-size: 22px;
}
.floatingBanner.on {
	opacity: 0;
}

/* 요청 페이지 없음 */
body:has(.notFoundPage) {
	background-color: white;
}
body:has(.notFoundPage) header {
	display: none;
}
body:has(.notFoundPage) .bottomTie {
	display: none;
}
main:has(.notFoundPage) {
	box-shadow: none !important;
}
.mBwrap:has(.notFoundPage) {
	max-width: 440px;
	padding: 0;
}
.notFoundPage {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: url("../img/visual_img.png") no-repeat center bottom / cover;
	z-index: 10;
	padding-bottom: 200px;
}
.notFoundPage .txt {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
}
.notFoundPage .txt .title {
	font-size: var(--f_16);
	font-weight: 800;
	line-height: 1.4;
	color: var(--t_darker);
}
.notFoundPage .txt .sub_txt {
	font-size: var(--f_13);
	font-weight: 500;
	line-height: 1.4;
}
.notFoundPage .btn {
	display: flex;
	align-items: center;
	gap: 10px;
	padding-top: 30px;
}

/* qr 어플다운 페이지 */
body:has(.qrAppDownPage) {
	background-color: white;
}
body:has(.qrAppDownPage) header {
	display: none;
}
body:has(.qrAppDownPage) .bottomTie {
	display: none;
}
main:has(.qrAppDownPage) {
	box-shadow: none !important;
}
.mBwrap:has(.qrAppDownPage) {
	max-width: 440px;
	padding: 0;
}
.qrAppDownPage {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 60px;
	background: url("../img/visual_img.png") no-repeat center bottom / cover;
	z-index: 10;
	padding-bottom: 40px;
}
.qrAppDownPage .grLogo {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
}
.qrAppDownPage .grLogo::before {
	content: "";
	display: inline-flex;
	width: 108px;
	height: 60px;
	mask: url("../img/gfr_logo.svg") no-repeat center / contain;
	background-color: var(--m_main);
}
.qrAppDownPage .grLogo p {
	font-size: var(--f_13);
}
.qrAppDownPage .grLogo p strong {
	font-weight: 800;
}
.qrAppDownPage .introTxt {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 20px;
	padding-bottom: 60px;
}
.qrAppDownPage .introTxt ul li {
	text-align: center;
	font-size: var(--f_15);
	line-height: 1.4;
}
.qrAppDownPage .btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 0 10%;
}
.qrAppDownPage .btn a {
	width: 100%;
	border-radius: 6px;
}
