@charset "utf-8";
@import url(font.css);
@import url(datepicker.css);
@import url(popup.css);

/*****************************************************************
  Reset
*****************************************************************/
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
summary,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video,
input,
textarea,
select,
button,
optgroup {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	/* font: inherit; */
	box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

/* body {
	line-height: 1;
} */

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

em,
i {
	font-style: normal;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
	content: none;
}

a {
	color: var(--g900);
	text-decoration: none;
	cursor: pointer;
}

button {
	border: none;
	background: none;
	cursor: pointer;
	letter-spacing: inherit;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

html.ios input:disabled,
html.ios select:disabled,
html.ios textarea:disabled {
	opacity: 1;
	-webkit-text-fill-color: inherit;
}

/* Focus Outline Reset */
a:focus,
button:focus,
input:focus,
input:focus+label,
select:focus,
textarea:focus,
iframe:focus,
[tabindex] {
	outline: none;
}

:focus {
	outline: none;
}


/*****************************************************************
  Normalize
*****************************************************************/
html {
	height: 100%;
	font-size: 62.5%;
	min-height: 100dvh;
}

body {
	height: 100%;
	min-height: 100dvh;
	color: var(--g900);
	line-height: 2.4rem;
	font-family: 'Pretendard', -apple-system, 'Helvetica', sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	word-break: keep-all;
	text-size-adjust: 100%;
	/* -webkit-overflow-scrolling: touch; */
	overscroll-behavior: none;
}

input,
textarea,
select,
a,
button {
	font-family: 'Pretendard', -apple-system, 'Helvetica', sans-serif;
}

.ios body {
	overflow: auto;
}

img {
	vertical-align: top;
}

input[type=text]::-ms-clear {
	display: none;
}

legend {
	overflow: hidden;
	position: absolute;
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}

caption {
	width: 0;
	height: 0;
	overflow: hidden;
	clip: rect(0px 0px 0px 0px);
	background: none;
	color: transparent;
	font-size: 1px;
	opacity: 0;
	text-indent: -9999rem;
}

::-webkit-input-placeholder {
	font-family: inherit;
	font-weight: 400;
	color: var(--g500);
	opacity: 1;
	text-align: left;
}

:-moz-placeholder {
	font-family: inherit;
	font-weight: 400;
	color: var(--g500);
	opacity: 1;
	text-align: left;
}

::-moz-placeholder {
	font-family: inherit;
	font-weight: 400;
	color: var(--g500);
	opacity: 1;
	text-align: left;
}

:-ms-input-placeholder {
	font-family: inherit;
	font-weight: 400;
	color: var(--g500);
	opacity: 1;
	text-align: left;
}

select,
input[type=text],
input[type=password],
input[type=tel],
input[type=number],
input[type=file] {
	-webkit-appearance: none;
	border-radius: 0;
}

html.ios input[type=password] {
	font-size: 1.2rem;
}

/** 접근성 : Focus Visible Outline **/
a:focus-visible,
button:focus-visible,
input:focus-visible,
input:focus-visible+label,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible,
[role="tab"]:focus-visible,
[role="menuitem"]:focus-visible {
	outline: 3px dashed #000;
	border-radius: 1px;
	outline-offset: -0.3rem;
}

:focus-visible {
	outline: 2px solid #000;
	border-radius: 1px;
}

/*****************************************************************
  Root
*****************************************************************/
:root {
	/* white/black */
	--white: #fff;
	--black: #000;

	/* green */
	--gn100: #e7f9f0;
	--gn150: #d9f1e6;
	--gn200: #c7f2db;
	--gn300: #8de7b9;
	--gn400: #4ed395;
	--gn500: #15a46e;
	--gn600: #0d8d5d;
	--gn700: #08774e;
	--gn800: #056140;
	--gn900: #034b32;
	--gn1000: #023624;

	/* grey */
	--g100: #f4f6f9;
	--g200: #ecf0f4;
	--g300: #d9dee7;
	--g400: #a9b5c1;
	--g500: #828b9c;
	--g600: #667085;
	--g700: #4b5565;
	--g800: #3b414b;
	--g900: #242933;
	--g1000: #0f131c;

	/* red */
	--re100: #fff0f0;
	--re200: #ffd9d9;
	--re300: #ffbdbd;
	--re400: #ff8e99;
	--re500: #f04452;
	--re600: #d63641;
	--re700: #bc2934;
	--re800: #a21d28;
	--re900: #88131d;
	--re1000: #590d15;

	/* Black - Opacity */
	--bop10: rgba(0, 0, 0, 0.1);
	--bop20: rgba(0, 0, 0, 0.2);
	--bop30: rgba(0, 0, 0, 0.3);
	--bop40: rgba(0, 0, 0, 0.4);
	--bop50: rgba(0, 0, 0, 0.5);
	--bop60: rgba(0, 0, 0, 0.6);
	--bop70: rgba(0, 0, 0, 0.7);
	--bop80: rgba(0, 0, 0, 0.8);
	--bop90: rgba(0, 0, 0, 0.9);

	/* White - Opacity */
	--wop10: rgba(255, 255, 255, 0.1);
	--wop20: rgba(255, 255, 255, 0.2);
	--wop30: rgba(255, 255, 255, 0.3);
	--wop40: rgba(255, 255, 255, 0.4);
	--wop50: rgba(255, 255, 255, 0.5);
	--wop60: rgba(255, 255, 255, 0.6);
	--wop70: rgba(255, 255, 255, 0.7);
	--wop80: rgba(255, 255, 255, 0.8);
	--wop90: rgba(255, 255, 255, 0.9);

	/* Radius */
	--border-radius-4: 0.4rem;
	--border-radius-8: 0.8rem;
	--border-radius-12: 1.2rem;
	--border-radius-16: 1.6rem;
	--border-radius-20: 2rem;
	--border-radius-100: 100%;
}


/*****************************************************************
  Common
*****************************************************************/
.blind {
	overflow: hidden;
	position: absolute;
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}

.is-hidden {
	display: none !important;
}

.lock,
.lock body {
	height: 100%;
	overflow: hidden;
	-webkit-overflow-scrolling: none;
}

.lock #wrap {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	-webkit-overflow-scrolling: none;
}

#skipNavi a {
	overflow: hidden;
	position: fixed;
	top: -500px;
	z-index: 999;
	display: block;
	width: 100%;
	padding: 14px 0;
	background: #000;
	text-align: center;
	text-indent: 0;
}

#skipNavi a:active,
#skipNavi a:focus {
	top: 0;
	color: #fff;
}

/* Margin */
.mtb0 {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.mt0 {
	margin-top: 0 !important;
}

.mt2 {
	margin-top: 0.2rem !important;
}

.mt4 {
	margin-top: 0.4rem !important;
}

.mt6 {
	margin-top: 0.6rem !important;
}

.mt8 {
	margin-top: 0.8rem !important;
}

.mt12 {
	margin-top: 1.2rem !important;
}

.mt16 {
	margin-top: 1.6rem !important;
}

.mt20 {
	margin-top: 2rem !important;
}

.mt24 {
	margin-top: 2.4rem !important;
}

.mt32 {
	margin-top: 3.2rem !important;
}

.mt40 {
	margin-top: 4rem !important;
}

.mt60 {
	margin-top: 6rem !important;
}

.mt80 {
	margin-top: 8rem !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb4 {
	margin-bottom: 0.4rem !important;
}

.mb6 {
	margin-bottom: 0.6rem !important;
}

.mb8 {
	margin-bottom: 0.8rem !important;
}

.mb12 {
	margin-bottom: 1.2rem !important;
}

.mb16 {
	margin-bottom: 1.6rem !important;
}

.mb20 {
	margin-bottom: 2rem !important;
}

.mb24 {
	margin-bottom: 2.4rem !important;
}

.mb32 {
	margin-bottom: 3.2rem !important;
}

.mb40 {
	margin-bottom: 4rem !important;
}

.mb48 {
	margin-bottom: 4.8rem !important;
}

/* 위&아래 */
.mtb24 {
	margin: 2.4rem -2rem !important;
}

.mtb32 {
	margin: 3.2rem -2rem !important;
}

.mtb40 {
	margin: 4rem -2rem !important;
}

/* Padding */
.pd0 {
	padding: 0 !important;
}

.pd16 {
	padding: 1.6rem !important;
}

.pdt0 {
	padding-top: 0 !important;
}

.pdt4 {
	padding-top: 0.4rem !important;
}

.pdt32 {
	padding-top: 3.2rem !important;
}

.pdt52 {
	padding-top: 5.2rem !important;
}

.pdt130 {
	padding-top: 13rem !important;
}

.pdt16 {
	padding-top: 1.6rem !important;
}

.pdb16 {
	padding-bottom: 1.6rem !important;
}

/* 위&아래 */
.pdtb60 {
	padding: 6rem 0 !important;
}

.pdtb32 {
	padding: 3.2rem 0 !important;
}

/* 구체성 에서 밀려서 내림 */
.pdb60 {
	padding-bottom: 6rem !important;
}

/* 여백 리셋 */
.pdtb0 {
	padding: 0 !important;
}

/* Gap */
.gap0 {
	gap: 0 !important;
}

.gap2 {
	gap: 0.2rem !important;
}

.gap4 {
	gap: 0.4rem !important;
}

.gap6 {
	gap: 0.6rem !important;
}

.gap8 {
	gap: 0.8rem !important;
}

.gap12 {
	gap: 1.2rem !important;
}

.gap16 {
	gap: 1.6rem !important;
}

.gap32 {
	gap: 0.4rem 3.2rem !important;
}

.gap40 {
	gap: 0.8rem 4rem !important;
}

/* border */
.bdt0 {
	border-top: 0 !important;
}

/* 정렬 */
.al-center {
	text-align: center !important;
}

.al-left {
	text-align: left !important;
}

.al-right {
	text-align: right !important;
}

/* Height */
.h-96 {
	height: 9.6rem;
}

.h-160 {
	height: 16rem;
}

.h-200 {
	height: 20rem;
}

.h-240 {
	height: 24rem;
}


/*****************************************************************
  Layout
*****************************************************************/
.wrap {
	position: relative;
	min-width: 320px;
	min-height: 100dvh;
}

/* .wrap:has(.main-bottom-menu) {
	padding-bottom: 6.8rem;
} */

.wrap:has(.main-bottom-menu:not([style*="display: none"])):not(:has(.main-bottom-menu[style*="display: none"])) {
	padding-bottom: 6.8rem;
}

.wrap:has(.main-bottom-menu) .bottom-sheet .sheet-body {
	padding-bottom: 10rem;
}

.header {
	position: relative;
	height: 5.6rem;
	background-color: #fff;
}

.header>div {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 100%;
	height: 5.6rem;
	padding-top: 1.2rem;
	background-color: #fff;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	z-index: 100;
}

.header.fixed>div {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.header .center-box {
	position: relative;
	width: 100%;
	margin: 0 5rem;
	text-align: center;
}

.header h1 {
	line-height: 4.4rem;
	color: var(--g900);
	font-size: 1.8rem;
	font-weight: 400;
}

.header.fixed h1 {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.header [class*=btn-] {
	overflow: hidden;
	position: absolute;
	bottom: 0;
	display: block;
	width: 4.4rem;
	height: 4.4rem;
}

.header .btn-back {
	left: 0.8rem;
	background: url(../images/icon/ico_24x24_arrow_left.png) no-repeat center center / 2.4rem auto;
}

/* mobile gnb */
.header .btn-gnb {
	display: flex;
	right: 1.8rem;
	bottom: 1rem;
	/* background: url(../images/icon/ico_24x24_gnb.png) no-repeat center center / 2.4rem auto; */
}

.header .btn-gnb {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	width: 24px;
	height: 24px;
	padding: 6px;
	border-radius: 8px;
	transition: background 0.2s;
	background: none;
	border: none;
	cursor: pointer;
	background: url(../images/icon/ico_24x24_menu.png) no-repeat center center / 2.4rem auto;
}

.header button.btn-gnb:focus-visible {
	border-radius: 0;
}

/* 
.header .btn-gnb span {
	display: block;
	width: 22px;
	height: 2px;
	background: #222;
	border-radius: 2px;
	transition: transform 0.3s, opacity 0.3s;
	transform-origin: center;
}

.nav-open .header .btn-gnb span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.nav-open .header .btn-gnb span:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}

.nav-open .header .btn-gnb span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
} */

.header .btn-alarm {
	right: 5.8rem;
	bottom: 1rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	transition: background 0.2s;
	background: none;
	border: none;
	cursor: pointer;
	background: url(../images/icon/ico_24x24_alarm.png) no-repeat center center / 2.4rem auto;
	overflow: unset;
}

.header .btn-alarm .sum {
	position: absolute;
	right: -3px;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	color: #fff;
	line-height: 100%;
	font-size: 0.9rem;
	font-weight: 700;
	background-color: #e23a32;
}


/* ===== nav Overlay ===== */
.nav-overlay {
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.45);
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--nav-anim-duration) ease;
	touch-action: none;
}

.nav-overlay.is-visible {
	opacity: 1;
	pointer-events: auto;
}

/* ===== Nav Panel (우→좌 슬라이드) ===== */
.nav-panel {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	z-index: 10000;
	width: 100vw;
	background: #fff;
	transform: translateX(100%);
	transition: transform 0.35s cubic-bezier(.4, 0, .2, 1);
	/* commonjs navMenu : ANIM_MS 와 속도와 같이 맞출것 350 */
	overflow: hidden;
	visibility: hidden;
}

.nav-panel.is-open {
	transform: translateX(0);
	visibility: visible;
	pointer-events: auto !important;
}

.nav-panel .nav-header {
	position: relative;
	height: 5.6rem;
}

.nav-panel .nav-header [class*=btn-] {
	overflow: hidden;
	position: absolute;
	bottom: 0;
	display: block;
	width: 4.4rem;
	height: 4.4rem;
}

.nav-panel .nav-header .btn-home {
	left: 0.8rem;
	background: url(../images/icon/ico_24x24_home.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-header>div {
	display: flex;
	align-items: center;
	width: 100%;
	height: 5.6rem;
	padding-top: 1.2rem;
	background-color: #fff;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	z-index: 100;
}

.nav-panel .btn-close {
	position: absolute;
	right: 0.8rem;
	top: 1.2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	width: 40px;
	height: 40px;
	padding: 6px;
	border-radius: 8px;
	transition: background 0.2s;
	background: none;
	border: none;
	cursor: pointer;
}

.nav-panel .btn-close:hover,
.nav-panel .btn-close:focus-visible {
	/* background: #f0f0f0; */
	/* outline: none; */
}

.nav-panel .btn-close span {
	display: block;
	width: 22px;
	height: 2px;
	background: #222;
	border-radius: 2px;
	transition: transform 0.3s, opacity 0.3s;
	transform-origin: center;
}

.nav-panel .btn-close span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.nav-panel .btn-close span:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}

.nav-panel .btn-close span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.nav-panel .nav-infor {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.81rem 2rem 0.81rem;
	min-height: 64px;
	border-bottom: 1px solid var(--g200);
}

.nav-panel .nav-infor .nav-user-name {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.4rem;
	color: #222;
}

.nav-panel .nav-menu-tabs {
	position: relative;
	z-index: 1;
	display: flex;
	gap: 8px;
	min-height: 70px;
	padding: 1.6rem 2rem;
	overflow-x: auto;
	background-color: var(--white);
	scroll-behavior: smooth;
}

.nav-panel .nav-menu-tabs::-webkit-scrollbar {
	display: none;
}

.nav-panel .nav-menu-tab {
	display: block;
	padding: 0.8rem 2rem;
	background-color: #f4f6f9;
	border-radius: 30px;
	line-height: 2.2rem;
	color: #667085;
	font-size: 1.4rem;
	font-weight: 500;
}

.nav-panel .nav-menu-tab[aria-selected="true"] {
	background-color: var(--g700);
	color: var(--white);
	font-weight: 700;
}

.nav-panel button.nav-menu-tab[aria-selected="true"]:focus-visible {
	outline: 3px dashed #fff;
}

.nav-panel .nav-tab[aria-selected="true"] {
	color: #222;
	border-bottom-color: #222;
	font-weight: 700;
	background: #eee;
	border-radius: 20px 20px 0 0;
}

.nav-panel .nav-tab:focus-visible {
	outline: 2px solid #2c7be5;
	outline-offset: 2px;
}

.nav-panel .nav-content {
	overflow-y: auto;
	flex: 1;
	margin-top: -1px;
	/* 메뉴 보더 안보이게 처리 */
	padding: 0 0 40px;
	scroll-behavior: smooth;
	/* touch-action: pan-y;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch; */
}

.nav-panel .nav-content .ui-tab {
	margin: 0px 0 60px;
}

.nav-panel .nav-section {
	margin: 0 2rem;
	padding: 2rem 0;
}


.nav-panel .nav-section+.nav-section {
	border-top: 1px solid var(--g200);
}

.nav-panel .nav-section-title {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 1.2rem 0 0.8rem 0;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.6rem;
	color: #242933;
}

.nav-panel .nav-section-title .health {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_health.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section-title .record {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_record02.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section-title .search {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_search.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section-title .present {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_present.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section-title .umbrella {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_umbrella.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section-title .my {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_member2.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section-title .phone {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_phone.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-section ul {
	list-style: none;
	padding: 0 0.4rem;
}

.nav-panel .nav-section ul li a {
	display: block;
	padding: 1.2rem 0 1.2rem 0rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2.4rem;
	color: #242933;
	text-decoration: none;
	transition: color 0.15s;
}

.nav-panel .nav-section ul li a:has(.ico16-newwin) {
	display: flex;
	align-items: center;
	gap: 0.4rem;
}

.nav-panel .nav-section ul li:last-child a {
	border-bottom: none;
}

.nav-panel .nav-section ul li .inner a {
	font-weight: 400;
}

.nav-panel .nav-section .sub-tit {
	padding: 1.2rem 0;
	font-weight: 500;
}

.nav-panel .nav-section .inner>a {
	/* padding: 0.8rem 0; */
	padding: 1.2rem 0 1.2rem 0rem;
	color: var(--g700);
}

/* =====================================================
* PC (1024px 이상) : 탑다운 드롭다운 메뉴
* ===================================================== */
@media (min-width: 1024px) {
	/* 헤더 */
	/* .site-header {
		height: 60px;
		padding: 0 40px;
		justify-content: flex-start;
		gap: 0;
	} */

	/* 햄버거 숨김 */
	/* .btn-gnb {
		display: none !important;
	} */

	/* 오버레이 완전 비활성 */
	/* .nav-overlay {
		display: none !important;
	} */

	/* ── nav-panel: 슬라이드 패널 → 헤더 인라인 바 ── */
	/* 위치/크기 초기화 */
	/* .nav-panel {
		width: 100% !important;
		height: 60px !important;
		transform: none !important;
		visibility: visible !important;
		transition: none !important;
		overflow: visible !important;
		flex-direction: row !important;
		align-items: stretch !important;
		flex: 1;
		background: #fff !important;
	} */

	/* hidden 속성 강제 무시 */
	/* .nav-panel[hidden] {
		display: flex !important;
	} */

	/* ── 모바일 전용 UI 숨김 ── */
	/* .nav-panel .nav-header,
	.nav-panel .nav-infor,
	.nav-panel .nav-menu-tabs {
		display: none !important;
	} */


	/* ── nav-content: 세로→가로 재배치 ── */
	/* .nav-content {
		display: flex !important;
		flex-direction: row !important;
		align-items: stretch !important;
		overflow: visible !important;
		padding: 0 !important;
		flex: 1;
		z-index: 999;
		justify-content: center;
	} */

	/* ── 섹션: 드롭다운 트리거 래퍼 ── */
	/* .nav-section {
		position: relative !important;
		padding: 0 !important;
		display: flex !important;
		align-items: center !important;
	} */

	/* ── 섹션 타이틀: 탑 메뉴 아이템 버튼 ── */
	/* .nav-section .nav-section-title {
		display: flex !important;
		align-items: center !important;
		margin-bottom: 0 !important;
		padding: 0 18px !important;
		height: 60px !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		color: #333 !important;
		cursor: pointer;
		white-space: nowrap;
		gap: 5px !important;
		border-bottom: 3px solid transparent;
		transition: color 0.2s, border-color 0.2s;
		user-select: none;
	} */

	/* 화살표 */
	/* .nav-section .nav-section-title::after {
		content: '▾';
		font-size: 11px;
		color: #bbb;
		transition: transform 0.2s;
		margin-left: 3px;
	} */

	/* .nav-section:hover .nav-section-title,
	.nav-section.is-pc-open .nav-section-title {
		color: #2c7be5 !important;
		border-bottom-color: #2c7be5 !important;
	} */
	/* 
	.nav-section.is-pc-open .nav-section-title::after {
		transform: rotate(180deg);
	} */

	/* ── 드롭다운 리스트 ── */
	/* .nav-section ul {
		display: none;
		position: absolute;
		top: 60px;
		left: 0;
		min-width: 160px;
		background: #fff;
		border: 1px solid #e8e8e8;
		border-top: 2px solid #2c7be5;
		border-radius: 0 0 8px 8px;
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
		z-index: 500;
		padding: 6px 0;
		list-style: none;
	}

	.nav-section.is-pc-open ul {
		display: block !important;
	} */

	/* 드롭다운 아이템 */
	/* .nav-section ul li a {
		display: block !important;
		padding: 10px 18px !important;
		font-size: 13px !important;
		color: #333 !important;
		border-bottom: none !important;
		white-space: nowrap;
		transition: background 0.15s, color 0.15s;
	} */

	/* .nav-section ul li a:hover,
	.nav-section ul li a:focus-visible {
		background: #f0f6ff;
		color: #2c7be5 !important;
		padding-left: 18px !important;
		outline: none;
	} */
}

/* 알림 */
.nav-panel .nav-header .btn-setting {
	left: 0.8rem;
	background: url(../images/icon/ico_24x24_setting.png) no-repeat center center / 2.4rem auto;
}

.nav-panel .nav-header .center-box {
	position: relative;
	width: 100%;
	margin: 0 5rem;
	text-align: center;

	font-size: 1.8rem;
	font-weight: 400;
	line-height: 2.6rem;
}

.alarm-top-wrap {
	margin: 0 2rem 1.2rem;
}

.alarm-top-wrap .alarm-list-top {
	display: flex;
	justify-content: space-between;
}

.alarm-top-wrap .alarm-list-top .sum {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 2.2rem;
	color: var(--g900);
}

.alarm-content .alarm-list {
	border-top: 1px solid var(--g200);
}

.alarm-content .alarm-list li {
	padding: 2rem 0;
	border-bottom: 1px solid var(--g200);
}

.alarm-content .alarm-list li a {
	display: block;
}

.alarm-content .alarm-list li .alarm-item {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
}

.alarm-content .alarm-list li .alarm-item.guide {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .guide::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_guide.png) no-repeat 0 0 / 2.4rem auto;
}

.alarm-content .alarm-list li .alarm-item.monitor {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .monitor::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_monitor.png) no-repeat 0 0 / 2.4rem auto;
}

.alarm-content .alarm-list li .alarm-item.coupon {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .coupon::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_coupon.png) no-repeat 0 0 / 2.4rem auto;
}

.alarm-list-top .alarm-sum {
	display: flex;
	justify-content: space-between;
	width: 100%;
	height: 2.4rem;
}

.alarm-list-top .alarm-check-edit {
	display: none;
}

.alarm-list-top.on .alarm-sum {
	display: none
}

.alarm-list-top.on .alarm-check-edit {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

/* .alarm-content .alarm-list li .alarm-item.coin {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .coin::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_coin.png) no-repeat 0 0 / 2.4rem auto;
}

.alarm-content .alarm-list li .alarm-item.cancel {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .cancel::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_cancel.png) no-repeat 0 0 / 2.4rem auto;
}

.alarm-content .alarm-list li .alarm-item.approval {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .approval::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_approval.png) no-repeat 0 0 / 2.4rem auto;
} */

.alarm-content .alarm-list li .alarm-item.speech-bubble {
	padding: 0 0 0 3.6rem;
}

.alarm-content .alarm-list li .speech-bubble::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0;
	display: inline-flex;
	width: 24px;
	height: 24px;
	background: url(../images/icon/ico_24x24_speech_bubble2.png) no-repeat 0 0 / 2.4rem auto;
}

.alarm-content .alarm-list li .alarm-item .tit {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2.4rem;
	color: var(--g900);
}

.alarm-content .alarm-list li .alarm-item .tit .badge.new {
	margin: 0.3rem 0 0 0.4rem;
	vertical-align: top;
}

.alarm-content .alarm-list li .alarm-item .txt {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.4rem;
	color: var(--g900);
}

.alarm-content .alarm-list li .alarm-item .date {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 2.2rem;
	color: #667085;
}

.footer {
	padding: 4rem 2rem;
	background-color: var(--g100);
	line-height: 2rem;
	font-size: 1.2rem;
}

.footer .link-list {
	display: flex;
	align-items: center;
}

.footer .link-list li {
	position: relative;
}

.footer .link-list li+li {
	margin-left: 0.6rem;
	padding-left: 0.6rem;
}

.footer .link-list li+li::before {
	content: "";
	position: absolute;
	top: 0.5rem;
	left: 0;
	width: 1px;
	height: 1rem;
	background-color: var(--g400);
}

.footer .link-list a {
	color: var(--g600);
	font-weight: 400;
}

.footer .link-list li:first-child a {
	color: var(--g700);
	font-weight: 700;
}

.footer .company-info {
	margin-top: 1.6rem;
	padding: 0;
	line-height: 2rem;
	color: var(--g500);
	font-size: 1.2rem;
	font-weight: 400;
}

.footer .copyright {
	margin-top: 0.8rem;
	color: var(--g500);
}

/* 건강 수첩 컨텐츠 & Header */
.pets-mark {
	display: none;
	align-items: center;
	justify-content: center;
}

.pets-mark .info-box {
	display: flex;
	align-items: center;
	gap: 1.2rem;
}

.pets-mark .info-box .img-box {
	overflow: hidden;
	flex-shrink: 0;
	width: 4rem;
	height: 4rem;
	border-radius: var(--border-radius-100);
}

.pets-mark .info-box .txt-box .name-txt {
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.pets-mark .pets-header-select {
	position: relative;
	display: block;
	padding-right: 3.2rem;
}

.pets-mark .pets-header-select::after {
	content: "";
	position: absolute;
	top: 0.6rem;
	right: 0;
	width: 2.4rem;
	height: 2.4rem;
	background: url(../images/icon/ico_24x24_droparrow_down.png) no-repeat center center / 2.4rem auto;
}

.gnb .btn-gnb-close {
	position: absolute;
	top: 9px;
	right: 11px;
	z-index: 101;
	width: 28px;
	height: 28px;
	background: #43484d;
	border-radius: 50%;
}

.gnb .btn-gnb-close::before,
.gnb .btn-gnb-close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 3px;
	background-color: #fff;
	border-radius: 2px;
}

.gnb .btn-gnb-close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.gnb .btn-gnb-close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.gnb-bg {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 109;
	opacity: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .7);
	transition: 0.45s cubic-bezier(0.22, 0.61, 0.2, 1) 0.15s;
}

.gnb-bg.show {
	opacity: 1;
	transition-delay: 0s;
}

.gnb {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 110;
	width: 100%;
	background-color: #fff;
	transform: translate3d(120%, 0, 0);
	transition: 0.45s cubic-bezier(0.22, 0.61, 0.2, 1);
	transition-delay: 0.15s;
}

.gnb.show {
	transform: translate3d(0, 0, 0);
}

.gnb-header {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	width: 100%;
	height: 168px;
	padding: 10px 25px;
	background-color: #fff;
	border-bottom: 1px solid #f1f1f1;
}

.gnb-header .gnb-info .tit {
	padding-right: 70px;
	line-height: 1.3;
	color: #1a1a1a;
	font-size: 2rem;
	font-weight: 700;
}

.gnb-header .gnb-util {
	display: flex;
	align-items: center;
	margin-top: 14px;
}

.gnb-header .gnb-util .gnb-btn {
	display: inline-block;
	vertical-align: top;
}

.gnb-header .gnb-util .gnb-btn .btn {
	min-width: 73px;
	line-height: 26px;
	height: 28px;
}

.gnb-header .gnb-util .date {
	margin-left: 9px;
	line-height: 27px;
	color: #767676;
	font-size: 1.3rem;
}

.gnb-header .gnb-util .date span {
	margin-left: 5px;
	font-weight: 700;
}

.gnb-header .gnb-link {
	margin: 15px -25px 0;
	text-align: center;
}

.gnb-header .gnb-link a {
	display: block;
}

.gnb-header .gnb-link [class*=ico] {
	display: block;
	width: 33px;
	height: 33px;
	margin: 0 auto 4px;
	background-color: #e3f4e9;
	background-size: 33px auto;
	border-radius: 50%;
}

.gnb-header .gnb-link span {
	display: block;
	color: #252525;
	font-size: 1.3rem;
}

.gnb-content {
	overflow: hidden;
	position: relative;
	height: 100%;
	padding-top: 168px;
	line-height: 1.3;
}

.gnb-content .gnb-dep1 {
	overflow-y: auto;
	width: 26.66%;
	height: 100%;
	background: #eee;
}

html.mobile .gnb-content .gnb-dep1::-webkit-scrollbar {
	display: none;
}

.gnb-content .gnb-dep1 .gnb-menu1 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 65px;
	line-height: 1.2;
	font-size: 1.6rem;
	font-weight: 500;
}

.gnb-content .gnb-dep1>ul>li.open .gnb-menu1 {
	position: relative;
	z-index: 1;
	background-color: #fff;
	color: #1a1a1a;
	box-shadow: 0 0 5px rgba(0, 0, 0, .1);
}

.gnb-content .gnb-dep2 {
	display: none;
	overflow-y: auto;
	position: fixed;
	left: 26.66%;
	right: 0;
	top: 168px;
	bottom: 0;
	box-shadow: 0 -5px 5px rgba(0, 0, 0, .1);
	transform: translate3d(0, 0, 0);
	-webkit-overflow-scrolling: touch;
}

.gnb-content li.open>.gnb-dep2 {
	display: block;
}

.gnb-content li>.gnb-dep2>ul {
	padding: 0 20px;
}

.gnb-content .gnb-dep2>ul>li {
	padding: 9px 0;
}

.gnb-content .gnb-dep2>ul>li+li {
	border-top: 1px solid #f6f6f6;
}

.gnb-content .gnb-dep2>ul>li>a,
.gnb-content .gnb-dep2>ul>li>.gnb-menu2 {
	position: relative;
	display: flex;
	width: 100%;
	padding: 8px 20px 8px 5px;
	color: #252525;
	font-size: 1.6rem;
	font-weight: 500;
	transition: color 0.3s;
}

.gnb-content .gnb-dep2>ul>li.open>a,
.gnb-content .gnb-dep2>ul>li.open>.gnb-menu2 {
	color: #157941;
	font-weight: 700;
}

.gnb-content .gnb-dep2>ul>li>.gnb-menu2:after {
	content: '';
	display: block;
	position: absolute;
	right: 4px;
	top: 50%;
	margin-top: -3.5px;
	border: 1px solid transparent;
	border-width: 7px 5px 0 5px;
	border-top-color: #c0c0c0;
	transform: rotate3d(1, 0, 0, 0deg);
	transition: 0.3s;
}

.gnb-content .gnb-dep2>ul>li.open>.gnb-menu2:after {
	border-top-color: #157941;
	transform: rotate3d(1, 0, 0, 180deg);
}

.gnb-content .gnb-dep3 {
	display: none;
}

.gnb-content .gnb-dep3>ul {
	padding-left: 5px;
}

.gnb-content .gnb-dep3>ul>li {
	padding: 9.5px 0 9.5px;
}

.gnb-content .gnb-dep3>ul>li>a,
.gnb-content .gnb-dep3>ul>li>.gnb-menu3 {
	position: relative;
	display: inline-block;
	padding: 1px 24px 1px 0;
	border: 1px solid transparent;
	color: #767676;
	font-size: 1.5rem;
}

.gnb-content .gnb-dep3>ul>li>a.on {
	position: relative;
	color: #252525;
}

.gnb-content .gnb-dep3>ul>li>a:focus {
	color: #252525;
	font-weight: 500;
}

.gnb-content .gnb-dep3>ul>li.open>a,
.gnb-content .gnb-dep3>ul>li.open>.gnb-menu3 {
	font-weight: 700;
	color: #252525;
	transition: 0.3s;
}

.gnb-content .gnb-dep3>ul>li>.gnb-menu3.in-sub:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 100%;
	height: 1px;
	background: #252525;
	transition: 0.3s;
}

.gnb-content .gnb-dep3>ul>li>.gnb-menu3.in-sub:after {
	content: '';
	position: absolute;
	display: block;
	right: 0;
	top: 50%;
	border: 1px solid transparent;
	border-width: 7px 5px 0 5px;
	border-top-color: #c0c0c0;
	margin-top: -3.5px;
	transform: rotate3d(1, 0, 0, 0deg);
	transition: 0.3s;
}

.gnb-content .gnb-dep3>ul>li.open>.gnb-menu3.in-sub:before {
	right: 24px;
}

.gnb-content .gnb-dep3>ul>li.open>.gnb-menu3.in-sub:after {
	border-top-color: #252525;
	transform: rotate3d(1, 0, 0, 180deg);
}

.gnb-content .gnb-dep4 {
	display: none;
}

.gnb-content .gnb-dep4>ul {
	display: flex;
	flex-flow: column;
	gap: 11px;
	padding: 16px 0 0 10px;
}

.gnb-content .gnb-dep4>ul>li>a {
	position: relative;
	padding: 5px 0 5px 9px;
	color: #767676;
	font-size: 1.3rem;
}

.gnb-content .gnb-dep4>ul>li>a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 13px;
	width: 4px;
	height: 2px;
	background: #767676;
}

.gnb-content .gnb-dep4>ul>li.open>a {
	color: #252525;
}

.gnb-content .gnb-dep4>ul>li.open>a:before {
	background: #252525;
}


#container {
	position: relative;
}

/* #container:has(.btn-wrap.fixed:has([style*="display: none"]))~.footer {
	padding-bottom: 4rem;
} */

#container:has(.btn-wrap.fixed:not([style*="display:none"]):not([style*="display: none"]))~.footer {
	padding-bottom: 12.8rem;
}

/* #container:not(:has(.btn-wrap.fixed:not([style*="display: none"])))~.footer {
	padding-bottom: 12.8rem;
} */

#container.no-footer {
	padding-bottom: 12.8rem;
}

#content {
	width: 100%;
	min-height: calc(100vh - 260px);
	/* 2026.04.13 min-height 임시 */
	padding: 2.4rem 0 4rem;
}

#content.type2 {
	padding-top: 1.6rem;
}

#content.type3 {
	padding-top: 0;
}

#content:has(.map-wrap) {
	padding: 0;
}

#content.mymain {
	padding-top: 0.8rem;
}

.section {
	padding: 0 2rem;
}

.section.full {
	padding: 0
}

/* .section:has(.btn-wrap.fixed) {
	padding-bottom: 10rem;
} */

.page-title-box {
	position: relative;
	margin-bottom: 3.2rem;
}

.page-title-box .tit2 {
	position: relative;
}

.page-title-box .sub-txt {
	display: block;
	margin-bottom: 0.4rem;
	font-weight: 500;
}

.page-title-box .sub-txt.s-gray {
	line-height: 2.2rem;
	color: var(--g600);
	font-size: 1.4rem;
	font-weight: 400;
}

.page-title-box .description {
	line-height: 2.2rem;
	color: var(--g600);
	font-size: 1.4rem;
	font-weight: 400;
}

.page-title-box .tit1+.description.m-txt {
	margin-top: 1.2rem;
}

.page-title-box .description.m-txt {
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
}

.page-title-box .btn-favorites {
	position: absolute;
	top: -0.3rem;
	right: 1px;
}

.page-title-box .btn-link-arrow {
	margin-top: 2.4rem;
}

.page-title-box+.contents-box {
	margin-top: 0;
}

.page-title-box .inp-wrap.search {
	margin: 1.6rem 0 0;
}

.page-title-box:has(.inp-wrap.search) {
	margin-bottom: 4rem;
}

.divider {
	height: 1.2rem;
	margin: 2rem -2rem;
	background-color: var(--g100);
}

.contents-box {
	margin-top: 2.2rem;
}

.contents-box.first {
	margin-top: 0;
}

/*****************************************************************
	Typography
*****************************************************************/
.big {
	line-height: 4rem !important;
	font-size: 3.2rem !important;
}

.bold {
	font-weight: 700 !important;
}

.medium {
	font-weight: 500 !important;
}

.regular {
	font-weight: 400 !important;
}

.tit1 {
	display: block;
	line-height: 3.2rem;
	color: var(--g900);
	font-size: 2.4rem;
	font-weight: 700;
}

.tit2 {
	display: block;
	line-height: 2.8rem;
	color: var(--g900);
	font-size: 2rem;
	font-weight: 700;
}

.con-tit1 {
	display: block;
	line-height: 2.6rem;
	color: var(--g900);
	font-size: 1.8rem;
	font-weight: 700;
}

.con-tit2 {
	display: block;
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 700;
}

.sm-txt {
	display: block;
	line-height: 2.2rem;
	font-size: 1.4rem;
	font-weight: 400;
}

/* Font Color */
.color-green {
	color: var(--gn700) !important;
}

.color-gray {
	color: var(--g700) !important;
}

.color-gray2 {
	color: var(--g600) !important;
}

.color-gray3 {
	color: var(--g500) !important;
}

.color-black {
	color: var(--g1000) !important;
}

.color-primary {
	color: var(--g900) !important;
}

.color-red {
	color: var(--re600) !important;
}

.underline {
	text-decoration: underline;
}


.txt-block {
	display: block;
}

.inner-txt {
	padding: 0 0.4rem;
}

/*****************************************************************
  Buttons
*****************************************************************/
.btn-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.8rem;
	width: 100%;
}

.btn-wrap.fixed {
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 100;
	padding: 3.2rem 2rem 4rem;
	background-image: linear-gradient(0deg, white 70%, transparent);
}

@supports (-webkit-touch-callout: none) {
	.btn-wrap.fixed {
		position: fixed;
		left: 0;
		bottom: env(safe-area-inset-bottom);
		z-index: 100;
		padding: 3.2rem 2rem 4rem;
		background-image: linear-gradient(0deg, white 70%, transparent);
	}
}

.btn-wrap.grid-type {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.btn-wrap.column {
	flex-flow: column;
}

.btn-wrap.fixed .btn-txt-under-line {
	padding: .8rem;
}

.btn-wrap.first {
	justify-content: flex-start;
}

.btn {
	overflow: hidden;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 5.6rem;
	padding: 0 1.6rem;
	background-color: var(--white);
	border: 1px solid transparent;
	border-radius: var(--border-radius-12);
	text-align: center;
	line-height: 2.6rem;
	font-weight: 500;
	font-size: 1.8rem;
	-webkit-appearance: none;
	cursor: pointer;
}

/* 버튼 - 사이즈 */
.btn.md {
	height: 4.8rem;
	padding: 0 .8rem;
	line-height: 2.4rem;
	font-size: 1.6rem;
}

.btn.sm {
	height: 3.8rem;
	padding: 0 1.2rem;
	line-height: 2.2rem;
	font-size: 1.4rem;
	border-radius: var(--border-radius-8);
}

.btn.w-auto {
	width: auto;
}

.btn.w-80 {
	width: 8rem;
}

.btn.w-130 {
	width: 13rem;
}

.btn.w-197 {
	width: 19.7rem;
}

/* 버튼 - 타입 */
.btn.primary {
	background-color: var(--gn700);
	color: var(--white);
}

.btn.secondary {
	background-color: var(--g100);
	color: var(--gn700);
}

.btn.fill-black {
	background-color: var(--g900);
	color: var(--white);
}

.btn.fill-gray {
	background-color: var(--g100);
	color: var(--g900);
}

[class^="btn line-"] {
	border-color: var(--g300);
}

.btn.line-gray {
	color: var(--g700);
}

.btn.line-green {
	color: var(--gn700);
}

/* 버튼 - 아이콘 타입 */
.btn.ico-type {
	gap: 0.6rem;
}

.btn.md.ico-type,
.btn.sm.ico-type {
	gap: 0.4rem;
}

.btn-select {
	position: relative;
	display: inline-flex;
	min-width: 9.8rem;
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.btn-select::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -1.2rem;
	width: 2.4rem;
	height: 2.4rem;
	background: url(../images/icon/ico_24x24_droparrow_down.png) no-repeat center center / 2.4rem auto;
}

.btn-select:disabled {
	color: var(--g400);
}

.btn-select:disabled::after {
	background-image: url(../images/icon/ico_24x24_droparrow_down_disabled.png);
}

.btn-del {
	display: none;
	position: absolute;
	top: 50%;
	right: 0;
	width: 3.6rem;
	height: 3.6rem;
	background: url(../images/icon/close_circle.png) no-repeat center center / 2rem auto;
	transform: translateY(-50%);
}

.btn-search {
	position: absolute;
	top: 0;
	right: 0;
	width: 3.6rem;
	height: 4.6rem;
	background: url(../images/icon/ico_20x20_search.png) no-repeat center left / 2rem auto;
}

.btn-favorites {
	width: 3rem;
	height: 3rem;
	background: url(../images/icon/ico_24x24_favorites.png) no-repeat center center / 2.4rem auto;
}

.btn-favorites.is-active {
	background-image: url(../images/icon/ico_24x24_favorites_active.png);
}

.btn-favorites.is-active {
	background-image: url(../images/icon/ico_24x24_favorites_active2.png);
}

.btn-favorites.is-active:disabled {
	background-image: url(../images/icon/ico_24x24_favorites_active_disabled.png);
}

.btn-edit {
	line-height: 2.2rem;
	font-size: 1.4rem;
	font-weight: 400;
}

.btn-edit .txt {
	position: relative;
	padding-left: 2rem;
}

.btn-edit .txt::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../images/icon/ico_16x16_edit_black.png) no-repeat center center / 1.6rem auto;
}

.btn-photo-del {
	display: none;
	position: absolute;
	z-index: 1;
	width: 2.8rem;
	height: 2.8rem;
	bottom: 0.4rem;
	right: 0.4rem;
	background: var(--g800) url(../images/icon/ico_16x16_del_white.png) no-repeat 50% 50%/1.6rem 1.6rem;
	border-radius: 100%;
}


[class^="btn-txt-"] {
	display: inline-flex;
	align-items: center;
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.btn-txt-under-line.txt-sm {
	line-height: 2.2rem;
	font-size: 1.4rem;
}

.btn-txt-under-line .txt {
	position: relative;
}

.btn-txt-under-line .txt::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background-color: var(--g700);
}

.btn-txt-more {
	margin-top: 1.2rem;
	padding: 1.2rem;
	color: var(--g500);
}

.btn-txt-more .txt {
	position: relative;
	padding-left: 2.4rem;
}

.btn-txt-more .txt::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	margin-top: -0.8rem;
	background: url(../images/icon/ico_16x16_plus.png) no-repeat center center / 100% auto;
}

.btn-txt-arrow {
	text-align: left;
}

.btn-txt-arrow .txt {
	position: relative;
	padding-right: 2rem;
}

.btn-txt-arrow .txt::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 1.6rem;
	height: 1.6rem;
	margin-top: -0.8rem;
	background: url(../images/icon/ico_16x16_arrow_right_black.png) no-repeat center center / 1.6rem auto;
}

.btn-txt-arrow.sm-txt {
	line-height: 2.2rem;
	font-size: 1.4rem;
}

.btn-txt-arrow.tit-type {
	display: flex;
	width: 100%;
	justify-content: flex-start;
	line-height: 2.6rem;
	color: var(--g900);
	font-size: 1.8rem;
	font-weight: 700;
}

.btn-txt-arrow.tit-type .txt {
	width: 100%;
}

.btn-txt-arrow.ico-type .txt::after {
	background-image: url(../images/icon/ico_16x16_arrow_right_gray2.png);
}

.btn-txt-arrow.ico12-arrow-gray .txt::after {
	width: 1.2rem;
	height: 1.2rem;
	margin-top: -0.6rem;
	background: url(../images/icon/ico_12x12_arrow_right_gray.png) no-repeat center center / 1.2rem auto;
}

.btn-txt-plus .txt {
	position: relative;
	padding-left: 2rem;
}

.btn-txt-plus .txt::before {
	content: "";
	position: absolute;
	top: 0.3rem;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../images/icon/ico_16x16_add_black.png) no-repeat center center / 1.6rem auto;
}

.btn-arrow {
	display: inline-flex;
	width: 2rem;
	height: 2rem;
	background: url(../images/icon/ico_16x16_arrow_right_black.png) no-repeat center center / 1.6rem auto;
}

/* Hover / Active */
.btn.primary:hover,
.btn.primary:active {
	background-color: var(--gn600);
}

.btn.secondary:hover,
.btn.secondary:active {
	background-color: var(--g200);
}

.btn.fill-black:hover,
.btn.fill-black:active {
	background-color: var(--g1000);
}

.btn.fill-gray:hover,
.btn.fill-gray:active {
	background-color: var(--g200);
}

/* .btn.line-gray:hover,
.btn.line-gray:active {
	color: var(--g900);
} */

.btn.line-gray:hover,
.btn.line-gray:active {
	border-color: var(--gn700);
	color: var(--gn800);
}

.btn.line-green:hover,
.btn.line-green:active {
	color: var(--gn700);
}

.btn-txt-more:hover,
.btn-txt-more:active {
	color: var(--g600);
}

.btn-txt-more:hover .txt::before,
.btn-txt-more:active .txt::before {
	background-image: url(../images/icon/ico_16x16_plus_hover.png);
}

/* Disabled */
.btn:disabled,
.btn.disabled {
	background-color: var(--g100) !important;
	color: var(--g500) !important;
	cursor: default;
	pointer-events: none;
}

.btn.primary:disabled,
.btn.primary.disabled {
	background-color: var(--gn150) !important;
	color: #fff !important;
}

.btn.primary.btn-scroll:disabled,
.btn.primary.btn-scroll.disabled {
	background-color: var(--g900) !important;
	color: var(--white) !important;
}

.btn.primary.btn-agree-scroll:disabled,
.btn.primary.btn-agree-scroll.disabled {
	background-color: var(--g400) !important;
	color: var(--white) !important;
}

[class^="btn line-"]:disabled,
[class^="btn line-"].disabled {
	background-color: var(--white) !important;
	border-color: var(--g200) !important;
}

[class^="btn-txt-"]:disabled,
[class^="btn-txt-"].disabled {
	color: var(--g400);
	cursor: default;
	pointer-events: none;
}

.btn-txt-under-line:disabled .txt::before,
.btn-txt-under-line.disabled .txt::before {
	background-color: var(--g400);
}

.btn-txt-more:disabled .txt::before,
.btn-txt-more.disabled .txt::before {
	background-image: url(../images/icon/ico_16x16_plus_disabled.png);
}

.btn-txt-arrow:disabled .txt::after,
.btn-txt-arrow.disabled .txt::after {
	background-image: url(../images/icon/ico_16x16_arrow_right_gray.png);
}

.btn-link-arrow {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	padding: 1.9rem 5.6rem 1.9rem 2rem;
	background-color: var(--g100);
	border: 1px solid transparent;
	border-radius: var(--border-radius-12);
	line-height: 2.4rem;
	text-align: left;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 700;
}

.btn-link-arrow::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 2rem;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../images/icon/ico_16x16_arrow_right_black.png) no-repeat center center / 1.6rem auto;
	transform: translateY(-50%);
}

.btn-link-arrow.line {
	background-color: var(--white);
	border-color: var(--g300);
	color: var(--g700);
	font-weight: 500;
}

.btn-link-arrow.color-green {
	padding-top: 1.1rem;
	padding-bottom: 1.1rem;
}

.btn-link-arrow.color-green::after {
	background-image: url(../images/icon/ico_16x16_arrow_right_darkgreen.png);
}

.btn-link-arrow.md {
	height: 4.8rem;
	padding: 1.3rem 5.6rem 1.3rem 1.6rem;
	line-height: 2.2rem;
	font-size: 1.4rem;
	font-weight: 400;
}

.btn-select-box {
	position: relative;
	display: flex;
	align-items: center;
	gap: 1.2rem;
	width: 100%;
	height: 8rem;
	padding: 1.5rem 4.8rem 1.5rem 2rem;
	background-color: var(--white);
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-12);
	text-align: left;
}

.btn-select-box::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 2rem;
	width: 2.4rem;
	height: 2.4rem;
	background: url(../images/icon/ico_24x24_droparrow_down.png) no-repeat center center / 2.4rem auto;
	transform: translateY(-50%);
}

.btn-select-box:has(.sel-txt)::after {
	top: auto;
	bottom: 1.6rem;
	transform: none;
}

.btn-select-box .img-info {
	flex-shrink: 0;
	overflow: hidden;
	width: 4.8rem;
	height: 4.8rem;
	border-radius: var(--border-radius-100);
}

.btn-select-box .img-info img {
	width: 100%;
}

.btn-select-box .txt-info {
	flex: 1;
	display: flex;
	flex-flow: column;
	gap: 0.2rem;
}

.btn-select-box .sel-txt {
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.btn-select-box.bg-type {
	background-color: var(--g100);
}

/* Disabled */
.btn-select-box.disabled,
.btn-select-box:disabled {
	background-color: var(--g100);
}

.btn-select-box.disabled::after,
.btn-select-box:disabled::after {
	background-image: url(../images/icon/ico_24x24_droparrow_down_disabled.png);
}

.btn-select-box.disabled .inp-tit,
.btn-select-box:disabled .inp-tit {
	color: var(--g400);
	font-weight: 400;
}

.btn-sel-item {
	position: relative;
	display: flex;
	flex-flow: column;
	width: 100%;
	padding: 2rem 3.6rem 2rem 0.4rem;
	text-align: left;
}

.btn-sel-item:has(.pets-info-wrap) {
	padding-left: 0;
}

.btn-sel-item .tit {
	line-height: 2.6rem;
	color: var(--g900);
	font-size: 1.8rem;
	font-weight: 500;
}

.btn-sel-item .txt {
	line-height: 2.4rem;
	color: var(--g600);
	font-size: 1.6rem;
	font-weight: 400;
}

.btn-sel-item.is-selected::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0.4rem;
	width: 2.4rem;
	height: 2.4rem;
	transform: translateY(-50%);
	background: url(../images/icon/ico_24x24_check.png) no-repeat center center / 2.4rem auto;
}

.btn.ico-down .txt::after {
	content: '';
	display: inline-block;
	width: 1.6rem;
	height: 1.6rem;
	margin-left: .4rem;
	background: url(../images/icon/ico_16x16_down.png) no-repeat 0 0 / 1.6rem 1.6rem;
	vertical-align: middle;
}

.btn-research {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.8rem 1.2rem;
	background-color: var(--white);
	border-radius: 3rem;
	line-height: 2.2rem;
	color: var(--g900);
	font-size: 1.4rem;
	font-weight: 500;
	box-shadow: 0 0.2rem 0.8rem 0 rgba(0, 0, 0, 0.16);
}

.btn-link-banner-arrow {
	position: relative;
	display: flex;
	align-items: center;
	gap: 1.6rem;
	width: 100%;
}

.btn-link-banner-arrow::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 2rem;
	height: 2rem;
	transform: translateY(-50%);
	background: url(../images/icon/ico_16x16_arrow_right_black.png) no-repeat center right / 1.6rem auto;
}

.btn-link-banner-arrow .txt-box {
	display: flex;
	flex-flow: column;
	gap: 0.2rem;
}


/*****************************************************************
  Forms UI
*****************************************************************/
/* Common */
input[type="checkbox"],
input[type="radio"] {
	overflow: hidden;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	padding: 0;
	clip: rect(0, 0, 0, 0);
	-webkit-appearance: none;
}

.text-msg {
	margin-top: 0.4rem;
	line-height: 2.2rem;
	color: var(--re600);
	font-size: 1.4rem;
	font-weight: 400;
}

/** Input **/
.inp-wrap {
	position: relative;
}

.inp-tit {
	display: block;
	line-height: 2.2rem;
	color: var(--g500);
	font-size: 1.4rem;
	font-weight: 500;
}

.inp-box {
	position: relative;
	overflow: hidden;
	height: 8rem;
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-12);
	transition: border-color .2s;
}

.inp-box .inp {
	width: 100%;
	height: 8rem;
	padding: 2.8rem 2rem;
	font-size: 1.6rem;
	line-height: 2.4rem;
}

.inp-box .unit {
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.inp-box .inp::placeholder {
	color: var(--g800);
}

.inp-box .inp-in {
	position: relative;
	width: 100%;
}

.inp-box .flex-box {
	gap: 1.6rem;
}

.inp-item {
	width: 100%;
}

.inp-item .text-msg {
	display: none;
}

.inp-item .text-msg.error {
	display: block;
}

.inp-item:has(.error) .inp-box,
.inp-item:has(.error) .btn-select-box {
	border-color: var(--re600) !important;
}

/* .inp-item:has(.error) .inp-box .btn-del {
	display: block !important;
} */

.inp-item+.inp-item {
	margin-top: 2.4rem;
}

.inp-wrap .inp-box.is-filled,
.inp-wrap .inp-box:focus-within {
	border-color: var(--g1000);
}

.inp-wrap .inp-box.is-filled:focus-within .btn-del {
	display: block;
}

.inp-wrap .byte-info {
	display: inline-flex;
	align-items: center;
	line-height: 2.2rem;
	color: var(--g600);
	font-size: 1.4rem;
}

/* .inp-wrap .inp-box [class^="btn"] {
	outline: none;
} */

.inp-wrap .inp-box .btn-del {
	top: auto;
	right: 1.2rem;
	bottom: 1rem;
	transform: none;
}

/* .inp-wrap .inp-box .inp.is-focused, */
.inp-wrap .inp-box .inp:focus {
	padding: 4rem 2rem 1.6rem;
	outline: none;
}

.inp-wrap .inp-box .inp::placeholder {
	opacity: 0;
}

.inp-wrap .inp-box .inp:focus::placeholder {
	opacity: 1;
}

.inp-wrap .inp-box .box-inp-tit {
	position: absolute;
	left: 0;
	top: 0;
	font-size: 1.6rem;
	/* color: var(--g500); */
	line-height: 2.4rem;
	transition: transform 0.1s ease-in-out;
	transform: translate(2rem, 2.8rem);
	pointer-events: none;
	z-index: 1;
}

/* .inp-wrap .inp-box .inp.is-focused .box-inp-tit, */
.inp-wrap .inp-box:has(.inp:focus) .box-inp-tit {
	color: var(--g500);
	font-size: 1.4rem;
	line-height: 2.2rem;
	transform: translate(2rem, 1.6rem);
	outline: none;
}

/* iOS - :focus 스타일 제거 */
/* @supports (-webkit-touch-callout: none) {
	.inp-wrap .inp-box .inp:focus {
		padding: 2.8rem 2rem !important;
	}

	.inp-wrap .inp-box .inp:focus .box-inp-tit {
		font-size: 1.6rem !important;
		line-height: 2.4rem !important;
		transform: none !important;
	}

	.inp-wrap .inp-box .inp.is-focused {
		padding: 4rem 2rem 1.6rem;
		outline: none;
	}

	.inp-wrap .inp-box .inp.is-focused .box-inp-tit {
		color: var(--g500);
		font-size: 1.4rem;
		line-height: 2.2rem;
		transform: translate(2rem, 1.6rem);
		outline: none;
	}
} */

.inp-wrap .inp-box.is-filled:has(.inp:not(:focus)) {
	border-color: var(--g300);
}

.inp-wrap .inp-box .inp:not(:placeholder-shown) {
	padding: 4rem 5rem 1.6rem 2rem;
}

.inp-wrap .inp-box:has(.inp:not(:placeholder-shown)) .box-inp-tit {
	font-size: 1.4rem;
	line-height: 2.2rem;
	transform: translate(2rem, 1.6rem);
	outline: none;
}

.inp-wrap .inp-box:has(.inp:focus:not(:placeholder-shown)) .box-inp-tit {
	display: inline-block;
}


/* Disabled */
.inp-wrap .inp-box:has(.inp:disabled) {
	border-color: var(--g300);
}

.inp-wrap .inp-box:has(.inp:disabled) .inp {
	color: var(--g400);
}

.inp-wrap .inp-box:has(.inp:disabled) .inp::placeholder {
	color: var(--g400);
}

.inp-wrap .inp-box:has(.inp:disabled) .box-inp-tit {
	color: var(--g400);
}

.inp-wrap .inp-box .inp:disabled+.btn-del {
	display: none !important;
}

/* Readonly */
.inp-wrap .inp-box:has(.inp:read-only) {
	background-color: var(--g100);
	border-color: var(--g300);
}

.inp-wrap .inp-box:has(.inp:read-only) .inp {
	background-color: var(--g100);
	/* background-color: var(--g500); */
}

.inp-wrap .inp-box .inp:read-only+.btn-del {
	display: none !important;
}

.inp-wrap .inp-box.btn-type {
	display: flex;
	padding: 1.5rem 2rem;
}

.inp-wrap .inp-box.btn-type .flex-box {
	gap: 0.8rem;
}

.inp-wrap .inp-box.btn-type .inp {
	height: auto;
	border: 0;
	padding: 4rem 0 1.6rem;
}

.inp-wrap .inp-box.btn-type .btn {
	flex-shrink: 0;
	width: auto;
	padding: 1.1rem 1.6rem;
}

/* Readonly */
.inp-wrap .inp-box.btn-type:has(.inp.readonly:read-only),
.inp-wrap .inp-box.btn-type:has(.inp.readonly:read-only) .inp {
	background-color: var(--white);
	/* color: var(--g900); */
}

.inp-wrap .inp-box.btn-type:has(.inp.readonly:read-only) button {
	background-color: var(--g100);
}

.inp-wrap .inp-box.btn-type:has(.inp:read-only) {
	background-color: var(--g100);
	border: 1px solid var(--g400);
}

/* .inp-wrap .inp-box.btn-type:has(.inp:read-only) .inp {
	background-color: var(--g100);
} */

.inp-wrap .inp-box.btn-type:has(.inp:read-only) button {
	background-color: var(--g300);
}

.inp-wrap .inp-box.btn-type:has(.inp:read-only) .box-inp-tit {
	transform: translate(2rem, 2.8rem);
	line-height: 2.4rem;
	font-size: 1.6rem;
}

/* Disabled */
.inp-wrap .inp-box.btn-type:has(.inp:disabled),
.inp-wrap .inp-box.btn-type:has(.inp:disabled) .inp {
	background-color: var(--g100);
}

.inp-wrap .inp-box.btn-type:has(.inp:disabled) .box-inp-tit {
	transform: translate(2rem, 2.8rem);
	line-height: 2.4rem;
	font-size: 1.6rem;
}

.inp-wrap .inp-box.btn-type:has(.inp:disabled) .btn {
	background-color: var(--g200) !important;
	color: var(--g400) !important;
}

.inp-wrap .inp-box.btn-type:has(.inp:not(:placeholder-shown)) .box-inp-tit {
	font-size: 1.4rem;
	line-height: 2.2rem;
	transform: translate(2rem, 1.6rem);
	outline: none;
}

.inp-wrap .inp-box.select-type {
	display: flex;
	flex-flow: column;
	gap: 0.2rem;
	padding: 1.5rem 2rem;
}

.inp-wrap .inp-box.select-type .flex-box:has(.unit) {
	gap: 0.8rem;
}

.inp-wrap .inp-box.select-type .flex-box:has(.unit) .btn-select {
	min-width: 13.2rem;
}

.inp-wrap .inp-box.select-type .flex-box {
	gap: 0.8rem;
}

.inp-wrap .inp-box.select-type .btn-select {
	/* width: 11.8rem; */
	padding-right: 2rem;
	text-align: left;
}

.inp-wrap .inp-box.select-type .btn-select .ico {
	flex-shrink: 0;
	display: inline-flex;
	width: 2rem;
	height: 2rem;
	background-size: 100% auto;
}

.inp-wrap .inp-box.select-type .btn-select:has(.ico) {
	display: flex;
	align-items: center;
	gap: 0.4rem;
}

.inp-wrap .inp-box.select-type .btn-select:has(.ico) .txt {
	overflow: hidden;
	flex-shrink: 1;
	display: block;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.inp-wrap .inp-box.select-type .inp {
	height: 2.4rem;
	padding: 0 3rem 0 0;
	border-radius: 0 !important;
}

.inp-wrap .inp-box.select-type .inp::placeholder {
	opacity: 1;
}

.inp-wrap .inp-box.select-type.bank .inp {
	padding-right: 2rem;
}

.inp-wrap .inp-box.select-type.bank .flex-box {
	gap: 0.8rem;
}

.inp-wrap .inp-box.select-type.bank .btn-select {
	flex-shrink: 0;
	min-width: auto;
	width: 11.8rem;
}

.inp-wrap .inp-box.select-type .box-inp-tit {
	position: relative;
	display: block;
	font-size: 1.4rem !important;
	line-height: 2.2rem !important;
	transform: none !important;
}

.inp-wrap .inp-box.select-type .btn-del {
	bottom: -0.6rem;
	right: -0.8rem;
}

.inp-wrap .inp-box.select-type.bank .btn-del {
	width: 2rem;
	height: 2rem;
	bottom: 0.2rem;
	right: 0;
}

.inp-wrap .inp-box.calender-type {
	display: flex;
	padding: 1.6rem 1.4rem 1.6rem 2rem;
}

.inp-wrap .inp-box.calender-type .inp-in {
	display: flex;
	align-items: center;
}

.inp-wrap .inp-box.calender-type .inp {
	height: auto;
	border: 0;
	padding: 4rem 0 1.6rem;
}

.inp-wrap .inp-box.calender-type .ui-datepicker-trigger {
	flex-shrink: 0;
	width: 3.6rem;
	height: 3.6rem;
	background: url(../images/icon/ico_24x24_calendar.png) no-repeat center center / 2.4rem auto;
}

.inp-wrap .inp-box.calender-type:has(.inp:read-only),
.inp-wrap .inp-box.calender-type:has(.inp:read-only) .inp {
	background-color: var(--white);
}

.inp-wrap .inp-box.calender-type:has(.inp:read-only) .box-inp-tit {
	transform: translate(2rem, 2.8rem);
	line-height: 2.4rem;
	font-size: 1.6rem;
}

.inp-wrap .inp-box.calender-type:has(.inp:not(:placeholder-shown)) .box-inp-tit {
	font-size: 1.4rem;
	line-height: 2.2rem;
	transform: translate(2rem, 1.6rem);
	outline: none;
}

.inp-wrap .inp-box.simple {
	height: 4.8rem;
	padding: 1.1rem 1.4rem 1.1rem 2rem;
}

.inp-wrap .inp-box.simple .inp {
	height: auto;
	padding: 0;
}

/* inp-wrap 오른쪽 정렬 금액일때 class="price" 추가 */
.inp-wrap .inp-box.price-type .inp {
	text-align: right;
}

.inp-wrap .inp-box.price-type .unit {
	color: var(--g900);
}

.inp-wrap .inp-box.price-type .inp:not(:placeholder-shown) {
	padding-right: 4.2rem;
}

/* 삭제버튼 위치 임의 설정 */
.inp-wrap .inp-box.price-type .inp-in .unit+.btn-del {
	right: -0.7rem;
}

/* Input Search */
.inp-wrap.search {
	margin-bottom: 2.4rem;
	padding: 0;
	border-radius: var(--border-radius-12);
}

.inp-wrap.search .inp-box {
	overflow: visible;
	height: auto;
}

.inp-wrap.search .inp {
	width: 100%;
	height: 4.6rem;
	min-width: auto;
	padding: 1.2rem 8rem 1.2rem 2rem;
	background-color: transparent;
	border-radius: var(--border-radius-12);
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
	outline: none;
}

.inp-wrap.search .inp-box .inp:focus,
.inp-wrap.search .inp-box .inp:not(:placeholder-shown) {
	padding: 1.2rem 8rem 1.2rem 2rem;
}

.inp-wrap.search .inp::placeholder {
	opacity: 1 !important;
}

.inp-wrap.search.bg-type {
	background-color: var(--g100);
}

.inp-wrap.search.bg-type .inp-box {
	border-color: var(--g100);
}

.inp-wrap.search .btn-del {
	top: 50%;
	right: 4.4rem;
	background-position: center right;
	transform: translateY(-50%);
}

/* Readonly */
.inp-wrap.search .inp-box:has(.inp:read-only) {
	background-color: var(--white);
	border-color: var(--g300);
}

.inp-wrap.search .inp-box:has(.inp:read-only) .inp {
	background-color: var(--white);
}

.section:has(.inp-wrap.search + .nav-tab) .inp-wrap.search {
	margin-bottom: 2rem;
}

.inp-box .inp-in .unit {
	display: none;
	position: absolute;
	right: 2rem;
	bottom: 1.6rem;
	color: var(--g700);
}

.inp-wrap .inp-box.is-filled:focus-within .inp-in .unit {
	display: block;
}

.inp-box .inp-in .unit+.btn-del {
	right: 4.6rem;
}

/* 인풋 주민등록입력 CASE */
.inp-wrap .inp-box.res-type .flex-box {
	position: relative;
	display: flex;
	align-items: center;
	gap: .9rem;
}

.inp-wrap .inp-box.res-type .flex-box .unit {
	right: 0;
	color: var(--g500);
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.4rem;
}

.inp-wrap .inp-box.res-type .flex-box .masking {
	display: none;
	position: absolute;
	left: 1.6rem;
	bottom: 1.5rem;
	pointer-events: none;
}

.inp-wrap .inp-box.res-type .flex-box .masking .bull {
	display: inline-block;
	width: 1.2rem;
	height: 1.2rem;
	border-radius: 100%;
	background-color: var(--g400);
}

.inp-wrap .inp-box.res-type .flex-box:has(.inp:focus) .masking {
	display: block;
}

.inp-wrap .inp-box.res-type .flex-box .inp-in:last-child .inp,
.inp-wrap .inp-box.res-type .flex-box:has(.inp:focus) .inp-in:last-child .inp {
	padding-left: 0;
}

.inp-wrap .inp-box.res-type .flex-box:has(.inp:focus) .inp {
	position: relative;
	padding: 4rem 2rem 1.6rem;
}

.inp-wrap .inp-box.res-type .flex-box:has(.inp:focus) .inp::placeholder {
	opacity: 1 !important;
}

.inp-wrap .inp-box.res-type .flex-box:has(.inp:focus) .unit {
	display: block !important;
}

.inp-wrap .inp-box.res-type.is-filled:focus-within .btn-del {
	display: none;
}

.inp-wrap .inp-box.res-type .inp-in:focus-within .inp:not(:placeholder-shown)~.btn-del {
	display: block;
}

.inp-wrap .inp-box.res-type:not(:focus-within) .btn-del {
	display: none !important;
}

.inp-wrap .inp-box.res-type .flex-box .inp-in:first-child {
	flex: 0 0 50%;
}

.inp-wrap .inp-box.res-type .flex-box .inp-in:first-child .inp:not(:placeholder-shown)~.btn-del {
	right: 1.2rem;
}

.inp-wrap .inp-box.res-type .flex-box .inp-in:first-child .inp:not(:placeholder-shown)+.unit {
	display: block;
}

.inp-wrap .inp-box.res-type .flex-box .inp-in:last-child .inp:not(:placeholder-shown)~.masking {
	display: block;
}

/* 라스트 인풋 선택또는 값이 있을때 첫번째 인풋 삭제버튼은 숨김처리 */
.inp-wrap .inp-box.res-type .flex-box:has(.inp-in:last-child:focus-within) .inp-in:first-child .btn-del {
	display: none;
}

/* 라스트인풋 값이 있으면 첫번째 인풋 노출 */
.inp-wrap .inp-box.res-type:has(.inp-in:last-child .inp:not(:placeholder-shown)) .flex-box .inp-in:first-child .inp {
	padding: 4rem 2rem 1.6rem;
}

.inp-wrap .inp-box.res-type:has(.inp-in:last-child .inp:not(:placeholder-shown)) .flex-box .inp-in:first-child .unit {
	display: block !important;
}

.inp-wrap .inp-box.res-type:has(.inp-in:last-child .inp:not(:placeholder-shown)) .flex-box .inp-in:first-child .inp::placeholder {
	opacity: 1 !important;
}

/* 첫번째 인풋에 값이 있으면 라스트인풋 내용 없어도 노출 */
.inp-wrap .inp-box.res-type:has(.inp-in:first-child .inp:not(:placeholder-shown)) .flex-box .inp-in:last-child .inp {
	padding: 4rem 2rem 1.6rem 0;
}

.inp-wrap .inp-box.res-type:has(.inp-in:first-child .inp:not(:placeholder-shown)) .flex-box .inp-in:last-child .inp::placeholder {
	opacity: 1 !important;
}

.inp-wrap .inp-box.res-type:has(.inp-in:first-child .inp:not(:placeholder-shown)) .flex-box .inp-in:last-child .masking {
	display: block;
}

.inp-wrap .inp-box.res-type:has(.inp-in :focus) {
	border-color: var(--g1000) !important;
}

/* max 320 일때  미디어쿼리 */
@media (max-width: 320px) {
	.inp-wrap .inp-box.res-type .flex-box .masking .bull {
		width: 0.8rem;
		height: 0.8rem;
	}
}

/* 기간조회 - 아직 미사용 중 */
.period-wrap {
	display: flex;
	align-items: center;
	margin-bottom: 1.2rem;
}

.period-wrap .btn {
	flex-shrink: 0;
	width: auto;
}

.period-box {
	display: flex;
	align-items: center;
	gap: 1.2rem;
}

.period-box .inp-date {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.8rem;
	height: 3.8rem;
}

.period-box .inp-date .ui-datepicker-trigger {
	width: 2.4rem;
	height: 3.8rem;
	background: url(../images/icon/ico_24x24_calendar.png) no-repeat center center / 2.4rem auto;
}

.period-box .inp-date input {
	flex: 1;
	width: 100%;
}

/** Radio **/
.rdo-wrap {
	display: flex;
	align-items: stretch;
	gap: 0.8rem;
}

.rdo-box {
	position: relative;
	width: 100%;
	text-align: center;
}

.rdo-box label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 1.1rem 0.8rem;
	background-color: var(--white);
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-8);
	align-items: center;
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
	font-weight: 400;
}

.rdo-box label:has(.sm-txt) {
	flex-flow: column;
}

.rdo-box label .sm-txt {
	font-weight: 400 !important;
}

.rdo-box input:checked+label {
	border-color: var(--gn500);
	color: var(--gn700);
	font-weight: 700;
}

.rdo-box input:disabled+label {
	border-color: var(--g200);
	color: var(--g100);
	background-color: var(--g500);
}

.rdo-box input:disabled:checked+label {
	border-color: var(--gn200);
	color: var(--gn300);
	/* background-color: var(--g100); */
	background-color: var(--g500);
	font-weight: 700;
}

.rdo-box.error label {
	border-color: var(--re500);
	color: var(--re600);
}

/* 아이콘 타입 (개+고양이) */
.rdo-wrap.ico-pet .rdo-box label {
	height: 6.8rem;
}

.rdo-wrap.ico-pet .rdo-box label .ico-txt {
	position: relative;
	display: inline-flex;
	padding-left: 5.2rem;
}

.rdo-wrap.ico-pet .rdo-box label .ico-txt::before {
	content: '';
	display: inline-flex;
	position: absolute;
	top: 50%;
	left: 0;
	width: 4rem;
	height: 4rem;
	transform: translateY(-50%);
}

.rdo-wrap.ico-pet .rdo-box.ico-dog label .ico-txt::before {
	background: url(../images/icon/ico_40x40_dog.png) no-repeat center center / 4rem auto;
}

.rdo-wrap.ico-pet .rdo-box.ico-cat label .ico-txt::before {
	background: url(../images/icon/ico_40x40_cat.png) no-repeat center center / 4rem auto;
}

/** CheckBox **/
.chk-box {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	line-height: 0;
}

.chk-box+.chk-info-txt {
	margin-top: 0.6rem;
}

.chk-box label {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	padding-left: 2.8rem;
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
	font-weight: 400;
}



.chk-box label::before {
	content: "";
	position: absolute;
	top: 0.2rem;
	left: 0;
	width: 2rem;
	height: 2rem;
	/* border: 1px solid var(--g400); */
	border-radius: 0.4rem;
	background-size: 2rem auto;
	background-position: center;
	background-repeat: no-repeat;
	background: url(../images/icon/ico_20x20_check.png) no-repeat center center / 20px auto;
}

.chk-box input:checked+label {
	color: var(--g900);
	font-weight: 700;
}

.chk-box input:disabled+label,
.chk-box input:checked:disabled+label {
	color: var(--g400);
	font-weight: 400;
}

.chk-box input:checked+label::before {
	border: 0;
	background-image: url(../images/icon/ico_20x20_check_checked.png);
	/* background-image: url(../images/icon/ico_20x20_check01_checked.png); */
}

.chk-box input:disabled+label::before {
	background-image: url(../images/icon/ico_20x20_check01_disabled.png);
}

.chk-box input:checked:disabled+label::before {
	background-image: url(../images/icon/ico_20x20_check01_checked_disabled.png);
}

/* Type2 */
/* .chk-box.type2 label::before {
	background-image: url(../images/icon/ico_20x20_check01.png);
} */

.chk-box.type2 input:checked+label::before {
	background-image: url(../images/icon/ico_20x20_check01_checked.png);
}

.chk-box.type2 input:disabled+label::before {
	background-image: url(../images/icon/ico_20x20_check01_disabled.png);
}

.chk-box.type2 input:checked:disabled+label::before {
	background-image: url(../images/icon/ico_20x20_check01_checked_disabled.png);
}

/* Type3 */
/* .chk-box.type3 label::before {	
	background-image: url(../images/icon/ico_20x20_check02.png);
} */

.chk-box.type3 input:checked+label {
	font-weight: 500;
}

.chk-box.type3 input:checked+label::before {
	background-image: url(../images/icon/ico_20x20_check_checked.png);
	/* background-image: url(../images/icon/ico_20x20_check01_checked.png); */

}

.chk-box.type3 input:disabled+label::before {
	background-image: url(../images/icon/ico_20x20_check01_disabled.png);
}

.chk-box.type3 input:checked:disabled+label::before {
	background-image: url(../images/icon/ico_20x20_check01_checked_disabled.png);
}

.chk-box.type4 label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 1.1rem 0.8rem;
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-8);
	align-items: center;
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
	font-weight: 400;
}

.chk-box.type4 label::before {
	content: none;
}

.chk-box.type4 input:checked+label {
	border-color: var(--gn500);
	color: var(--gn700);
	font-weight: 700;
}

.chk-box.type4 input:disabled+label {
	border-color: var(--g200);
	color: var(--g400);
}

/* Checkbox Button */
.chk-box.btn-type {
	display: block;
	width: 100%;
}

.chk-box.btn-type label {
	display: block;
	width: 100%;
	padding: 1.2rem;
	background-color: var(--g100);
	border-radius: var(--border-radius-12);
	line-height: 2.4rem;
	text-align: center;
}

.chk-box.btn-type label::before {
	content: none;
}

.chk-box.btn-type input:checked+label {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gn700);
	font-weight: 400;
	background-color: var(--gn100);
}

.chk-box.btn-type input:checked+label::before {
	content: '';
	position: static;
	width: 1.1rem;
	height: .8rem;
	margin-right: .8rem;
	background: url(../images/icon/ico_11x8_check_darkgreen.png) no-repeat center center / 1.1rem auto;
}

/* Agree Checkbox */
.chk-box .btn-modal-open,
.chk-box.term .btn-term-open,
.chk-box.term .btn-term-all-open {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.chk-box>.btn-arrow {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: url(../images/icon/ico_16x16_arrow_right_black.png) no-repeat right center / 1.6rem auto;
}

.chk-box.term .btn-term-open {
	padding-right: 2rem;
}

.chk-box.term .btn-term-open.is-hidden,
.chk-box.term .btn-term-all-open.is-hidden {
	display: none;
}

/* .chk-box input[type="checkbox"]:checked~.btn-modal-open, */
.chk-box.term input[type="checkbox"]:checked~.btn-term-open,
.chk-box.term input[type="checkbox"]:checked~.btn-term-all-open {
	display: none;
}

.chk-box:has(.btn-arrow),
.chk-box.term:has(.btn-arrow) {
	padding-right: 1.8rem;
}

.chk-box .btn-arrow,
.chk-box.term .btn-arrow {
	position: absolute;
	top: 1px;
	right: -2px;
	z-index: 3;
}

.chk-box .term-check {
	position: absolute;
	display: block;
	right: -6px;
	top: 1px;
	width: 24px;
	height: 24px;
	background: transparent;
	z-index: 99;
}

/* .terms-round-box .terms-head input:checked~.btn-modal-open {
	display: none;
}

.terms-round-box .chk-box input:checked~.btn-arrow {
	display: none;
	background: none;
}

.terms-round-box .chk-box input~.term-check {
	display: none;
}

.terms-round-box .chk-box input:checked~.term-check {
	display: block;
} */


/** Toggle **/
.chk-box.toggle-switch {
	flex-shrink: 0;
	display: inline-block;
}

.chk-box.toggle-switch label {
	display: inline-flex;
	align-items: center;
	padding-left: 0;
	cursor: pointer;
}

.chk-box.toggle-switch label::before {
	display: none;
}

.chk-box.toggle-switch .switch-track {
	position: relative;
	display: inline-block;
	width: 44px;
	height: 24px;
	border-radius: var(--border-radius-12);
	background-color: var(--g300);
	transition: background 0.2s ease;
}

.chk-box.toggle-switch .switch-thumb {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	border-radius: var(--border-radius-100);
	background-color: var(--white);
	box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.08);
	transition: left 0.2s ease;
}

.chk-box.toggle-switch input:checked+label .switch-track {
	background-color: var(--gn500);
}

.chk-box.toggle-switch input:checked+label .switch-thumb {
	left: 22px;
}


/* Textarea */
.inp-wrap.textarea {
	padding: 2rem 2rem 1.2rem;
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-12);
}

.inp-wrap.textarea .inp-box {
	overflow: visible;
	height: auto;
	border: 0;
}

.inp-wrap.textarea textarea {
	width: 100%;
	height: 31.4rem;
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.5rem;
	resize: none;
}

.inp-wrap.textarea .byte-info {
	justify-content: flex-end;
	width: 100%;
	margin-top: 0.8rem;
}

.inp-item:has(.error) .inp-wrap.textarea {
	border-color: var(--re500) !important;
}

.inp-wrap.textarea.h48 textarea {
	height: 4.8rem;
}

.inp-wrap.textarea.h94 textarea {
	height: 9.4rem;
}

.inp-wrap.textarea.h138 textarea {
	height: 13.8rem;
}

.inp-wrap.textarea.h234 textarea {
	height: 23.4rem;
}

/* Select */
.select-box {
	position: relative;
	width: 100%;
}

.select-box select {
	width: 100%;
	padding: 1.1rem 5.2rem 1.1rem 2rem;
	color: var(--g500);
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.4rem;
	border: .1rem solid var(--g300);
	border-radius: var(--border-radius-12);
	background-color: #fff;
}

.select-box::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 2rem;
	width: 2.4rem;
	height: 2.4rem;
	background: url(../images/icon/ico_24x24_droparrow_down.png) no-repeat center center / 2.4rem auto;
	transform: translateY(-50%);
}

.select-box.h80 select {
	height: 8rem;
}


/*****************************************************************
  Icon
*****************************************************************/
[class^="ico12-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 1.2rem;
	height: 1.2rem;
	vertical-align: top;
	background-size: 1.2rem auto !important;
	background-repeat: no-repeat !important;
}

.ico12-arrow-right-gray01 {
	background-image: url(../images/icon/ico_12x12_arrow_right_gray.png);
}


[class^="ico16-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 1.6rem;
	height: 1.6rem;
	vertical-align: top;
	background-size: 1.6rem auto !important;
	background-repeat: no-repeat !important;
}

.ico16-edit {
	background-image: url(../images/icon/ico_16x16_edit.png);
}

/* 병원 */
.ico16-cate01 {
	background-image: url(../images/icon/map/ico_16x16_category01.png);
}

/* 미용실 */
.ico16-cate02 {
	background-image: url(../images/icon/map/ico_16x16_category02.png);
}

/* 입양 */
.ico16-cate03 {
	background-image: url(../images/icon/map/ico_16x16_category07.png);
}

/* 용품점 */
.ico16-cate04 {
	background-image: url(../images/icon/map/ico_16x16_category03.png);
}

/* 유치원 */
.ico16-cate05 {
	background-image: url(../images/icon/map/ico_16x16_category04.png);
}

/* 호텔 */
.ico16-cate06 {
	background-image: url(../images/icon/map/ico_16x16_category05.png);
}

/* 훈련소 */
.ico16-cate07 {
	background-image: url(../images/icon/map/ico_16x16_category06.png);
}

/* 장례 */
.ico16-cate08 {
	background-image: url(../images/icon/map/ico_16x16_category08.png);
}

.ico16-research {
	background-image: url(../images/icon/ico_16x16_research.png);
}

.ico16-location {
	background-image: url(../images/icon/ico_16x16_company_map.png);
}

.ico16-add {
	background-image: url(../images/icon/ico_16x16_add.png);
}

.ico16-add-black {
	background-image: url(../images/icon/ico_16x16_add_black.png);
}

.ico16-add-white {
	background-image: url(../images/icon/ico_16x16_add_white.png);
}

.ico16-arrow-gray3 {
	background-image: url(../images/icon/ico_16x16_arrow_right_gray3.png);
}

.ico16-newwin {
	background-image: url(../images/icon/ico_16x16_newwin.png);
}

.ico16-quick-search {
	background-image: url(../images/icon/ico_16x16_quick_search.png);
}

.ico16-quick-ai {
	background-image: url(../images/icon/ico_16x16_quick_ai.png);
}

.ico16-chevron-left {
	background-image: url(../images/icon/ico_16x16_arrow_right_gray2.png);
	transform: rotate(180deg);
}

.ico16-chevron-right {
	background-image: url(../images/icon/ico_16x16_arrow_right_gray2.png);
}

.ico16-chevron-down {
	background-image: url(../images/icon/ico_16x16_arrow_down_gray.png);
}

.ico16-chevron-up {
	background-image: url(../images/icon/ico_16x16_arrow_down_gray.png);
	transform: rotate(180deg);
}

.ico16-close {
	background-image: url(../images/icon/ico_16x16_close.png);
}

.ico16-del {
	background-image: url(../images/icon/ico_16x16_del_gray.png);
}

.ico16-edit02 {
	background-image: url(../images/icon/ico_16x16_edit_gray.png);
}

.ico16-search {
	background-image: url(../images/icon/ico_16x16_search.png);
}

.ico16-alert {
	background-image: url(../images/icon/ico_16x16_ex_mark_gray.png);
}

.ico16-refresh {
	background-image: url(../images/icon/ico_16x16_retry.png);
	transform: scaleX(-1);
}

.ico16-papers {
	background-image: url(../images/icon/ico_16x16_papers.png);
}

.ico16-watch {
	background-image: url(../images/icon/ico_16x16_company_watch.png);
}

.ico16-phone {
	background-image: url(../images/icon/ico_16x16_company_phone.png);
}

.ico16-home {
	background-image: url(../images/icon/ico_16x16_company_home.png);
}

.ico16-parking {
	background-image: url(../images/icon/ico_16x16_company_parking.png);
}

[class^="ico20-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 2rem;
	height: 2rem;
	vertical-align: top;
	background-size: 2rem auto !important;
	background-repeat: no-repeat !important;
}

.ico20-back {
	background-image: url(../images/icon/ico_20x20_arrow_left.png);
}

.ico20-pin {
	background-image: url(../images/icon/ico_20x20_pin.png);
}

.ico20-pets-link {
	background-image: url(../images/icon/ico_20x20_pets_link.png);
}

.ico20-pets-share {
	background-image: url(../images/icon/ico_20x20_pets_share.png);
}

.ico20-my-shield2 {
	background-image: url(../images/icon/ico_20x20_my_shield2.png);
}

.ico20-my-record {
	background-image: url(../images/icon/ico_20x20_my_record.png);
}

.ico20-my-record2 {
	background-image: url(../images/icon/ico_28x28_my_record.png);
}

.ico20-my-coin {
	background-image: url(../images/icon/ico_20x20_my_coin.png);
}

.ico20-my-search {
	background-image: url(../images/icon/ico_20x20_my_search.png);
}

.ico20-my-diary {
	background-image: url(../images/icon/ico_20x20_my_diary.png);
}

.ico20-my-health {
	background-image: url(../images/icon/ico_20x20_my_health.png);
}

.ico20-my-camera {
	background-image: url(../images/icon/ico_20x20_my_camera.png);
}

.ico20-my-graph {
	background-image: url(../images/icon/ico_20x20_my_graph.png);
}

.ico20-my-share {
	background-image: url(../images/icon/ico_20x20_my_share.png);
}

.ico20-my-member {
	background-image: url(../images/icon/ico_20x20_my_member.png);
}

.ico20-my-speech-bubble {
	background-image: url(../images/icon/ico_20x20_my_speech_bubble.png);
}

.ico20-my-logout {
	background-image: url(../images/icon/ico_20x20_my_logout.png);
}

.ico20-my-umbrella {
	background-image: url(../images/icon/ico_20x20_my_umbrella.png);
}


/* 동물병원 */
.ico20-cate01 {
	background-image: url(../images/icon/map/ico_20x20_category01.png);
}

/* 미용실 */
.ico20-cate02 {
	background-image: url(../images/icon/map/ico_20x20_category02.png);
}

/* 입양 */
.ico20-cate03 {
	background-image: url(../images/icon/map/ico_20x20_category07.png);
}

/* 용품점 */
.ico20-cate04 {
	background-image: url(../images/icon/map/ico_20x20_category03.png);
}

/* 유치원 */
.ico20-cate05 {
	background-image: url(../images/icon/map/ico_20x20_category04.png);
}

/* 호텔 */
.ico20-cate06 {
	background-image: url(../images/icon/map/ico_20x20_category05.png);
}

/* 훈련소 */
.ico20-cate07 {
	background-image: url(../images/icon/map/ico_20x20_category06.png);
}

/* 장례 */
.ico20-cate08 {
	background-image: url(../images/icon/map/ico_20x20_category08.png);
}

/* 즐겨찾기 */
.ico20-cate09 {
	background-image: url(../images/icon/map/ico_20x20_favorites.png);
}

/* 기타 */
.ico20-cate10 {
	background-image: url(../images/icon/map/ico_20x20_more.png);
}

[class^="ico24-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 2.4rem;
	height: 2.4rem;
	vertical-align: top;
	background-size: 2.4rem auto !important;
	background-repeat: no-repeat !important;
}

.ico24-my-present {
	background-image: url(../images/icon/ico_24x24_my_present.png);
}

.ico24-my-coin {
	background-image: url(../images/icon/ico_24x24_my_coin.png);
}

.ico24-my-record {
	background-image: url(../images/icon/ico_24x24_my_record.png);
}

.ico24-my-qr {
	background-image: url(../images/icon/ico_24x24_my_qr.png);
}

.ico24-chevron-left {
	background-image: url(../images/icon/ico_24x24_arrow_left.png);
}

.ico24-chevron-right {
	background-image: url(../images/icon/ico_24x24_arrow_left.png);
	transform: scaleX(-1);
}

.ico24-chevron-down {
	background-image: url(../images/icon/ico_24x24_arrow_left.png);
	transform: rotate(-90deg);
}

.ico24-chevron-up {
	background-image: url(../images/icon/ico_24x24_arrow_left.png);
	transform: rotate(90deg);
}

.ico24-menu {
	background-image: url(../images/icon/ico_24x24_gnb.png);
}

.ico24-close {
	background-image: url(../images/icon/ico_24x24_close.png);
}

.ico24-calendar {
	background-image: url(../images/icon/ico_24x24_calendar.png);
}

.ico24-close-circle {
	background-image: url(../images/icon/ico_24x24_close_circle.png);
}

.ico24-close-circle02 {
	background-image: url(../images/icon/ico_24x24_close_circle02.png);
}

.ico24-del {
	background-image: url(../images/icon/ico_24x24_del.png);
}

.ico24-edit {
	background-image: url(../images/icon/ico_24x24_edit.png);
}

.ico24-search {
	background-image: url(../images/icon/ico_24x24_search02.png);
}

.ico24-search02 {
	background-image: url(../images/icon/ico_24x24_search.png);
}

.ico24-search03 {
	background-image: url(../images/icon/ico_24x24_search03.png);
}

.ico24-imgage {
	background-image: url(../images/icon/ico_24x24_image.png);
}

.ico24-imgage02 {
	background-image: url(../images/icon/ico_24x24_imgage02.png);
}

.ico24-camera {
	background-image: url(../images/icon/ico_24x24_camera.png);
}

.ico24-camera02 {
	background-image: url(../images/icon/ico_24x24_camera02.png);
}

.ico24-star {
	background-image: url(../images/icon/ico_24x24_star.png);
}

.ico24-plus {
	background-image: url(../images/icon/ico_24x24_plus02.png);
}

.ico24-pin {
	background-image: url(../images/icon/ico_24x24_pin.png);
}

.ico24-thumbs-up {
	background-image: url(../images/icon/ico_24x24_thumbs_up.png);
}

.ico24-download {
	background-image: url(../images/icon/ico_24x24_download.png);
}

.ico24-home {
	background-image: url(../images/icon/ico_24x24_home.png);
}

.ico24-home02 {
	background-image: url(../images/icon/ico_24x24_home02.png);
}

.ico24-setting {
	background-image: url(../images/icon/ico_24x24_setting.png);
}

.ico24-question {
	background-image: url(../images/icon/ico_24x24_question.png);
}

.ico24-link {
	background-image: url(../images/icon/ico_24x24_link.png);
}

.ico24-link02 {
	background-image: url(../images/icon/ico_24x24_link02.png);
}

.ico24-retry {
	background-image: url(../images/icon/ico_24x24_retry.png);
}

.ico24-heart {
	background-image: url(../images/icon/ico_24x24_heart.png);
}

.ico24-heart02 {
	background-image: url(../images/icon/ico_24x24_heart02.png);
}

.ico24-my {
	background-image: url(../images/icon/ico_24x24_my.png);
}

.ico24-my02 {
	background-image: url(../images/icon/ico_24x24_my02.png);
}

.ico24-present {
	background-image: url(../images/icon/ico_24x24_present02.png);
}

.ico24-present02 {
	background-image: url(../images/icon/ico_24x24_present03.png);
}

.ico24-alarm {
	background-image: url(../images/icon/ico_24x24_alarm.png);
}

.ico24-diamond {
	background-image: url(../images/icon/ico_24x24_diamond.png);
}

.ico24-book {
	background-image: url(../images/icon/ico_24x24_book.png);
}

.ico24-book02 {
	background-image: url(../images/icon/ico_24x24_book02.png);
}

.ico24-check {
	background-image: url(../images/icon/ico_24x24_check.png);
}

.ico24-dropdown {
	background-image: url(../images/icon/ico_24x24_droparrow_down.png);
}

.ico24-shield {
	background-image: url(../images/icon/ico_24x24_shield.png);
}

.ico24-shield02 {
	background-image: url(../images/icon/ico_24x24_shield02.png);
}

.ico24-kakao {
	background-image: url(../images/icon/ico_24x24_kakao.png);
}

.ico24-naver {
	background-image: url(../images/icon/ico_24x24_naver.png);
}

.ico24-phone {
	background-image: url(../images/icon/ico_24x24_phone02.png);
}

.ico24-phone02 {
	background-image: url(../images/icon/ico_24x24_phone.png);
}

.ico24-guide {
	background-image: url(../images/icon/ico_24x24_guide.png);
}

.ico24-approval {
	background-image: url(../images/icon/ico_24x24_approval.png);
}

.ico24-cancel {
	background-image: url(../images/icon/ico_24x24_cancel.png);
}

.ico24-monitor {
	background-image: url(../images/icon/ico_24x24_monitor.png);
}

.ico24-coupon {
	background-image: url(../images/icon/ico_24x24_coupon.png);
}

.ico24-health {
	background-image: url(../images/icon/ico_24x24_health.png);
}

.ico24-record {
	background-image: url(../images/icon/ico_24x24_record02.png);
}

.ico24-umbrella {
	background-image: url(../images/icon/ico_24x24_umbrella.png);
}

.ico24-member {
	background-image: url(../images/icon/ico_24x24_member2.png);
}

.ico24-share {
	background-image: url(../images/icon/ico_24x24_share.png);
}

.ico24-diary {
	background-image: url(../images/icon/ico_24x24_diary.png);
}

.ico24-graph {
	background-image: url(../images/icon/ico_24x24_graph.png);
}

.ico24-speech-bubble {
	background-image: url(../images/icon/ico_24x24_speech_bubble.png);
}

.ico24-logout {
	background-image: url(../images/icon/ico_24x24_logout.png);
}

.ico24-my-diamond {
	background-image: url(../images/icon/ico_24x24_my_diamond.png);
}

.ico24-diamond02 {
	background-image: url(../images/icon/ico_24x24_diamond02.png);
}

.ico24-shopping-bag {
	background-image: url(../images/icon/ico_24x24_shopping_bag.png);
}

.ico24-pet-id {
	background-image: url(../images/icon/ico_24x24_pet_id.png);
}

[class^="ico28-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 2.8rem;
	height: 2.8rem;
	vertical-align: top;
	background-size: 2.8rem auto !important;
	background-repeat: no-repeat !important;
}

.ico28-kakao {
	background-image: url(../images/icon/ico_28x28_kakao.png);
}

.ico28-naver {
	background-image: url(../images/icon/ico_28x28_naver.png);
}

.ico28-phone {
	background-image: url(../images/icon/ico_28x28_phone.png);
}

.ico28-shield {
	background-image: url(../images/icon/ico_28x28_shield.png);
}

.ico28-my-diamond {
	background-image: url(../images/icon/ico_28x28_my_diamond.png);
}

.ico28-my-shoppingbag {
	background-image: url(../images/icon/ico_28x28_my_shoppingbag.png);
}

.ico28-my-record {
	background-image: url(../images/icon/ico_28x28_my_record.png);
}

.ico28-my-pet-id {
	background-image: url(../images/icon/ico_28x28_my_pet_id.png);
}

.ico28-home {
	background-image: url(../images/icon/ico_28x28_home.png);
}

.ico28-book {
	background-image: url(../images/icon/ico_28x28_book.png);
}

.ico28-search {
	background-image: url(../images/icon/ico_28x28_search.png);
}

.ico28-diamond {
	background-image: url(../images/icon/ico_28x28_diamond.png);
}

.ico28-my {
	background-image: url(../images/icon/ico_28x28_my.png);
}

.ico28-home-on {
	background-image: url(../images/icon/ico_28x28_home_on.png);
}

.ico28-book-on {
	background-image: url(../images/icon/ico_28x28_book_on.png);
}

.ico28-search-on {
	background-image: url(../images/icon/ico_28x28_search_on.png);
}

.ico28-diamond-on {
	background-image: url(../images/icon/ico_28x28_diamond_on.png);
}

.ico28-my-on {
	background-image: url(../images/icon/ico_28x28_my_on.png);
}

[class^="ico32-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 3.2rem;
	height: 3.2rem;
	vertical-align: top;
	background-size: 3.2rem auto !important;
	background-repeat: no-repeat !important;
}

/* 은행 */
.ico32-bank-039 {
	background-image: url(../images/icon/bank/ico_32x32_bank_039.png);
}

.ico32-bank-034 {
	background-image: url(../images/icon/bank/ico_32x32_bank_034.png);
}

.ico32-bank-004 {
	background-image: url(../images/icon/bank/ico_32x32_bank_004.png);
}

.ico32-bank-003 {
	background-image: url(../images/icon/bank/ico_32x32_bank_003.png);
}

.ico32-bank-011 {
	background-image: url(../images/icon/bank/ico_32x32_bank_011.png);
}

.ico32-bank-012 {
	background-image: url(../images/icon/bank/ico_32x32_bank_012.png);
}

.ico32-bank-031 {
	background-image: url(../images/icon/bank/ico_32x32_bank_031.png);
}

.ico32-bank-032 {
	background-image: url(../images/icon/bank/ico_32x32_bank_032.png);
}

.ico32-bank-002 {
	background-image: url(../images/icon/bank/ico_32x32_bank_002.png);
}

.ico32-bank-064 {
	background-image: url(../images/icon/bank/ico_32x32_bank_064.png);
}

.ico32-bank-050 {
	background-image: url(../images/icon/bank/ico_32x32_bank_050.png);
}

.ico32-bank-045 {
	background-image: url(../images/icon/bank/ico_32x32_bank_045.png);
}

.ico32-bank-007 {
	background-image: url(../images/icon/bank/ico_32x32_bank_007.png);
}

.ico32-bank-088 {
	background-image: url(../images/icon/bank/ico_32x32_bank_088.png);
}

.ico32-bank-048 {
	background-image: url(../images/icon/bank/ico_32x32_bank_048.png);
}

.ico32-bank-027 {
	background-image: url(../images/icon/bank/ico_32x32_bank_027.png);
}

.ico32-bank-020 {
	background-image: url(../images/icon/bank/ico_32x32_bank_020.png);
}

.ico32-bank-071 {
	background-image: url(../images/icon/bank/ico_32x32_bank_071.png);
}

.ico32-bank-037 {
	background-image: url(../images/icon/bank/ico_32x32_bank_037.png);
}

.ico32-bank-035 {
	background-image: url(../images/icon/bank/ico_32x32_bank_035.png);
}

.ico32-bank-090 {
	background-image: url(../images/icon/bank/ico_32x32_bank_090.png);
}

.ico32-bank-089 {
	background-image: url(../images/icon/bank/ico_32x32_bank_089.png);
}

.ico32-bank-092 {
	background-image: url(../images/icon/bank/ico_32x32_bank_092.png);
}

.ico32-bank-081 {
	background-image: url(../images/icon/bank/ico_32x32_bank_081.png);
}

.ico32-bank-055 {
	background-image: url(../images/icon/bank/ico_32x32_bank_055.png);
}

.ico32-bank-061 {
	background-image: url(../images/icon/bank/ico_32x32_bank_061.png);
}

.ico32-bank-060 {
	background-image: url(../images/icon/bank/ico_32x32_bank_060.png);
}

.ico32-bank-054 {
	background-image: url(../images/icon/bank/ico_32x32_bank_054.png);
}

.ico32-bank-057 {
	background-image: url(../images/icon/bank/ico_32x32_bank_057.png);
}

.ico32-bank-023 {
	background-image: url(../images/icon/bank/ico_32x32_bank_023.png);
}

/* 증권 */
.ico32-bank-261 {
	background-image: url(../images/icon/bank/ico_32x32_bank_261.png);
}

.ico32-bank-267 {
	background-image: url(../images/icon/bank/ico_32x32_bank_267.png);
}

.ico32-bank-287 {
	background-image: url(../images/icon/bank/ico_32x32_bank_287.png);
}

.ico32-bank-238 {
	background-image: url(../images/icon/bank/ico_32x32_bank_238.png);
}

.ico32-bank-290 {
	background-image: url(../images/icon/bank/ico_32x32_bank_290.png);
}

.ico32-bank-240 {
	background-image: url(../images/icon/bank/ico_32x32_bank_240.png);
}

.ico32-bank-291 {
	background-image: url(../images/icon/bank/ico_32x32_bank_291.png);
}

.ico32-bank-278 {
	background-image: url(../images/icon/bank/ico_32x32_bank_278.png);
}

.ico32-bank-268 {
	background-image: url(../images/icon/bank/ico_32x32_bank_268.png);
}

.ico32-bank-209 {
	background-image: url(../images/icon/bank/ico_32x32_bank_209.png);
}

.ico32-bank-280 {
	background-image: url(../images/icon/bank/ico_32x32_bank_280.png);
}

.ico32-bank-265 {
	background-image: url(../images/icon/bank/ico_32x32_bank_265.png);
}

.ico32-bank-288 {
	background-image: url(../images/icon/bank/ico_32x32_bank_288.png);
}

.ico32-bank-292 {
	background-image: url(../images/icon/bank/ico_32x32_bank_292.png);
}

.ico32-bank-264 {
	background-image: url(../images/icon/bank/ico_32x32_bank_264.png);
}

.ico32-bank-270 {
	background-image: url(../images/icon/bank/ico_32x32_bank_270.png);
}

.ico32-bank-262 {
	background-image: url(../images/icon/bank/ico_32x32_bank_262.png);
}

.ico32-bank-243 {
	background-image: url(../images/icon/bank/ico_32x32_bank_243.png);
}

.ico32-bank-294 {
	background-image: url(../images/icon/bank/ico_32x32_bank_294.png);
}

.ico32-bank-269 {
	background-image: url(../images/icon/bank/ico_32x32_bank_269.png);
}

.ico32-bank-263 {
	background-image: url(../images/icon/bank/ico_32x32_bank_263.png);
}

.ico32-bank-224 {
	background-image: url(../images/icon/bank/ico_32x32_bank_224.png);
}

.ico32-bank-279 {
	background-image: url(../images/icon/bank/ico_32x32_bank_279.png);
}

.ico32-bank-218 {
	background-image: url(../images/icon/bank/ico_32x32_bank_218.png);
}

.ico32-bank-227 {
	background-image: url(../images/icon/bank/ico_32x32_bank_227.png);
}

.ico32-bank-247 {
	background-image: url(../images/icon/bank/ico_32x32_bank_247.png);
}

.ico32-bank-266 {
	background-image: url(../images/icon/bank/ico_32x32_bank_266.png);
}


.ico32-bene1 {
	background-image: url(../images/icon/ico_32x32_syringe.png);
}

.ico32-bene2 {
	background-image: url(../images/icon/ico_32x32_multiple_dog.png);
}

.ico32-bene3 {
	background-image: url(../images/icon/ico_32x32_registration.png);
}

.ico32-bene4 {
	background-image: url(../images/icon/ico_32x32_abandon_dog.png);
}

.ico32-bene5 {
	background-image: url(../images/icon/ico_32x32_volunteer.png);
}

.ico32-bene6 {
	background-image: url(../images/icon/ico_32x32_blood_donation.png);
}

.ico32-bene7 {
	background-image: url(../images/icon/ico_32x32_multiple_cat.png);
}

.ico32-bene8 {
	background-image: url(../images/icon/ico_32x32_abandon_cat.png);
}

.ico32-ai {
	background-image: url(../images/icon/ico_32x32_AI.png);
}

.ico32-bone {
	background-image: url(../images/icon/ico_32x32_bone.png);
}

.ico32-tooth {
	background-image: url(../images/icon/ico_32x32_tooth.png);
}

.ico32-fat {
	background-image: url(../images/icon/ico_32x32_fat.png);
}

.ico32-eye {
	background-image: url(../images/icon/ico_32x32_eye.png);
}

.ico32-note {
	background-image: url(../images/icon/ico_32x32_note.png);
}

.ico32-no-img {
	background-image: url(../images/icon/ico_32x32_no_img.png);
}

.ico32-default-img {
	background-image: url(../images/icon/ico_32x32_default_img.png);
}

.ico32-play {
	background-image: url(../images/icon/ico_32x32_play.png);
}

.ico32-feed {
	background-image: url(../images/icon/ico_32x32_feed.png);
}

.ico32-poop {
	background-image: url(../images/icon/ico_32x32_poop.png);
}

.ico32-toothbrush {
	background-image: url(../images/icon/ico_32x32_toothbrush.png);
}

.ico32-injection {
	background-image: url(../images/icon/ico_32x32_injection.png);
}

.ico32-treatment {
	background-image: url(../images/icon/ico_32x32_treatment.png);
}

.ico32-hospital {
	background-image: url(../images/icon/ico_32x32_hospital.png);
}

.ico32-diary {
	background-image: url(../images/icon/ico_32x32_diary.png);
}

.ico32-todo {
	background-image: url(../images/icon/ico_32x32_todo.png);
}

.ico32-care {
	background-image: url(../images/icon/ico_32x32_care.png);
}



[class^="ico40-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 4rem;
	height: 4rem;
	vertical-align: top;
	background-size: 4rem auto !important;
	background-repeat: no-repeat !important;
}

.ico40-health-history01 {
	background-image: url(../images/icon/ico_40x40_health_history01.png);
}

.ico40-health-history02 {
	background-image: url(../images/icon/ico_40x40_health_history02.png);
}

.ico40-health-history03 {
	background-image: url(../images/icon/ico_40x40_health_history03.png);
}

.ico40-health-history04 {
	background-image: url(../images/icon/ico_40x40_health_history04.png);
}

.ico40-health-history05 {
	background-image: url(../images/icon/ico_40x40_health_history05.png);
}

.ico40-health-history06 {
	background-image: url(../images/icon/ico_40x40_health_history06.png);
}

.ico40-health-history07 {
	background-image: url(../images/icon/ico_40x40_health_history07.png);
}

.ico40-play-bored {
	background-image: url(../images/icon/ico_40x40_play_bored.png);
}

.ico40-play-enough {
	background-image: url(../images/icon/ico_40x40_play_enough.png);
}

.ico40-play-suitably {
	background-image: url(../images/icon/ico_40x40_play_suitably.png);
}

.ico40-feed {
	background-image: url(../images/icon/ico_40x40_feed.png);
}

.ico40-feed-enough {
	background-image: url(../images/icon/ico_40x40_feed_enough.png);
}

.ico40-feed-some {
	background-image: url(../images/icon/ico_40x40_feed_some.png);
}

.ico40-feed-suitably {
	background-image: url(../images/icon/ico_40x40_feed_suitably.png);
}

.ico40-poop {
	background-image: url(../images/icon/ico_40x40_poop.png);
}

.ico40-poop-blood {
	background-image: url(../images/icon/ico_40x40_poop_blood.png);
}

.ico40-poop-diarrhea {
	background-image: url(../images/icon/ico_40x40_poop_diarrhea.png);
}

.ico40-poop-hard {
	background-image: url(../images/icon/ico_40x40_poop_hard.png);
}

.ico40-poop-no {
	background-image: url(../images/icon/ico_40x40_poop_no.png);
}

.ico40-toothbrush-yes {
	background-image: url(../images/icon/ico_40x40_toothbrush_yes.png);
}

.ico40-toothbrush-no {
	background-image: url(../images/icon/ico_40x40_toothbrush_no.png);
}

.ico40-none::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0.8rem;
	height: 0.8rem;
	background-color: var(--g400);
	border-radius: var(--border-radius-100);
	transform: translate(-50%, -50%);
}

[class^="ico48-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 4.8rem;
	height: 4.8rem;
	vertical-align: top;
	background-size: 4.8rem auto !important;
	background-repeat: no-repeat !important;
}

.ico48-new {
	background-image: url(../images/icon/ico_48x48_new.png);
}

.ico48-add {
	background-image: url(../images/icon/ico_48x48_add.png);
}

.ico48-pet-info {
	background-image: url(../images/icon/ico_48x48_petinfo.png);
}

.ico48-member-edit {
	background-image: url(../images/icon/ico_48x48_member_edit.png);
}

.ico48-point {
	background-image: url(../images/icon/ico_48x48_company_point.png);
}

.ico48-document {
	background-image: url(../images/icon/ico_48x48_document.png);
}

.ico48-auth {
	background-image: url(../images/icon/ico_48x48_auth.png);
}

.ico48-surgery {
	background-image: url(../images/icon/ico_48x48_surgery.png);
}

.ico48-mri {
	background-image: url(../images/icon/ico_48x48_mri.png);
}

.ico48-compensation {
	background-image: url(../images/icon/ico_48x48_compensation.png);
}

.ico48-hotel {
	background-image: url(../images/icon/ico_48x48_hotel.png);
}

.ico48-compensation-cat {
	background-image: url(../images/icon/ico_48x48_compensation_cat.png);
}

.ico48-funeral {
	background-image: url(../images/icon/ico_48x48_funeral.png);
}

.ico48-no-img {
	background-image: url(../images/icon/ico_48x48_no_img.png);
}

.ico48-kakao {
	background-image: url(../images/icon/ico_48x48_kakao.png);
}

.ico48-naver {
	background-image: url(../images/icon/ico_48x48_naver.png);
}

.ico48-mission01 {
	background-image: url(../images/icon/ico_48x48_mission01.png);
}

.ico48-mission02 {
	background-image: url(../images/icon/ico_48x48_mission02.png);
}

.ico48-mission03 {
	background-image: url(../images/icon/ico_48x48_mission03.png);
}

.ico48-mission04 {
	background-image: url(../images/icon/ico_48x48_mission04.png);
}

.ico48-mission05 {
	background-image: url(../images/icon/ico_48x48_mission05.png);
}

.ico48-mission06 {
	background-image: url(../images/icon/ico_48x48_mission06.png);
}

.ico48-mission07 {
	background-image: url(../images/icon/ico_48x48_mission07.png);
}

.ico48-mission08 {
	background-image: url(../images/icon/ico_48x48_mission08.png);
}

.ico48-mission09 {
	background-image: url(../images/icon/ico_48x48_mission09.png);
}

.ico48-mission10 {
	background-image: url(../images/icon/ico_48x48_mission10.png);
}

.ico48-nodata1 {
	background-image: url(../images/icon/ico_48x48_nodata01.png);
}

.ico48-nodata2 {
	background-image: url(../images/icon/ico_48x48_nodata02.png);
}

.ico48-member-edit2 {
	background-image: url(../images/icon/ico_48x48_member_edit02.png);
}

.ico48-counsel {
	background-image: url(../images/icon/ico_48x48_counsel.png);
}

.ico48-checkup {
	background-image: url(../images/icon/ico_48x48_checkup.png);
}

.ico48-care-hart {
	background-image: url(../images/icon/ico_48x48_care_hart.png);
}

.ico48-profile-woman {
	background-image: url(../images/icon/ico_48x48_profile_woman.png);
}

.ico48-profile-man {
	background-image: url(../images/icon/ico_48x48_profile_man.png);
}

.ico48-volunteer {
	background-image: url(../images/icon/ico_48x48_volunteer.png);
}

.ico48-stamp {
	background-image: url(../images/icon/ico_48x48_stamp.png);
}

.ico48-run {
	background-image: url(../images/icon/ico_48x48_run.png);
}

.ico48-puzzle {
	background-image: url(../images/icon/ico_48x48_puzzle.png);
}

.ico48-match {
	background-image: url(../images/icon/ico_48x48_match.png);
}

.ico48-attend {
	background-image: url(../images/icon/ico_48x48_attend.png);
}

.ico48-document2 {
	background-image: url(../images/icon/ico_48x48_document2.png);
}

.ico48-member-edit3 {
	background-image: url(../images/icon/ico_48x48_member_edit03.png);
}

.ico48-no-new {
	background-image: url(../images/icon/ico_48x48_new.png);
	opacity: 0.3;
}

.ico48-no-add {
	background-image: url(../images/icon/ico_48x48_add.png);
	opacity: 0.3;
}

.ico48-point02 {
	background-image: url(../images/icon/ico_48x48_point.png);
}

[class^="ico56-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 5.6rem;
	height: 5.6rem;
	vertical-align: top;
	background-size: 5.6rem auto !important;
	background-repeat: no-repeat !important;
}

.ico56-symptoms01 {
	background-image: url(../images/icon/ico_56x56_symptoms01.png);
}

.ico56-symptoms02 {
	background-image: url(../images/icon/ico_56x56_symptoms02.png);
}

.ico56-symptoms03 {
	background-image: url(../images/icon/ico_56x56_symptoms03.png);
}

.ico56-symptoms04 {
	background-image: url(../images/icon/ico_56x56_symptoms04.png);
}

.ico56-symptoms05 {
	background-image: url(../images/icon/ico_56x56_symptoms05.png);
}

.ico56-symptoms06 {
	background-image: url(../images/icon/ico_56x56_symptoms06.png);
}

.ico56-symptoms07 {
	background-image: url(../images/icon/ico_56x56_symptoms07.png);
}

.ico56-symptoms08 {
	background-image: url(../images/icon/ico_56x56_symptoms08.png);
}

.ico56-symptoms09 {
	background-image: url(../images/icon/ico_56x56_symptoms09.png);
}

.ico56-symptoms10 {
	background-image: url(../images/icon/ico_56x56_symptoms10.png);
}

.ico56-symptoms11 {
	background-image: url(../images/icon/ico_56x56_symptoms11.png);
}

.ico56-symptoms12 {
	background-image: url(../images/icon/ico_56x56_symptoms12.png);
}

.ico56-dog-breeds01 {
	background-image: url(../images/icon/ico_56x56_dog_breeds01.png);
}

.ico56-dog-breeds02 {
	background-image: url(../images/icon/ico_56x56_dog_breeds02.png);
}

.ico56-dog-breeds03 {
	background-image: url(../images/icon/ico_56x56_dog_breeds03.png);
}

.ico56-dog-breeds04 {
	background-image: url(../images/icon/ico_56x56_dog_breeds04.png);
}

.ico56-dog-breeds05 {
	background-image: url(../images/icon/ico_56x56_dog_breeds05.png);
}

.ico56-dog-breeds06 {
	background-image: url(../images/icon/ico_56x56_dog_breeds06.png);
}

.ico56-dog-breeds07 {
	background-image: url(../images/icon/ico_56x56_dog_breeds07.png);
}

.ico56-dog-breeds08 {
	background-image: url(../images/icon/ico_56x56_dog_breeds08.png);
}

.ico56-dog-breeds09 {
	background-image: url(../images/icon/ico_56x56_dog_breeds09.png);
}

.ico56-dog-breeds10 {
	background-image: url(../images/icon/ico_56x56_dog_breeds10.png);
}

.ico56-cat-breeds01 {
	background-image: url(../images/icon/ico_56x56_cat_breeds01.png);
}

.ico56-cat-breeds02 {
	background-image: url(../images/icon/ico_56x56_cat_breeds02.png);
}

.ico56-cat-breeds03 {
	background-image: url(../images/icon/ico_56x56_cat_breeds03.png);
}

.ico56-cat-breeds04 {
	background-image: url(../images/icon/ico_56x56_cat_breeds04.png);
}

.ico56-cat-breeds05 {
	background-image: url(../images/icon/ico_56x56_cat_breeds05.png);
}

.ico56-cat-breeds06 {
	background-image: url(../images/icon/ico_56x56_cat_breeds06.png);
}

.ico56-cat-breeds07 {
	background-image: url(../images/icon/ico_56x56_cat_breeds07.png);
}

.ico56-cat-breeds08 {
	background-image: url(../images/icon/ico_56x56_cat_breeds08.png);
}

.ico56-cat-breeds09 {
	background-image: url(../images/icon/ico_56x56_cat_breeds09.png);
}

.ico56-cat-breeds10 {
	background-image: url(../images/icon/ico_56x56_cat_breeds10.png);
}

.ico56-kakao {
	background-image: url(../images/icon/ico_28x28_kakao.png)
}

.ico56-naver {
	background-image: url(../images/icon/ico_28x28_naver.png)
}

.ico56-nodata-search {
	background-image: url(../images/icon/ico_56x56_nodata_search.png)
}

/* 질환 아이콘 */
.ico56-mi02 {
	background-image: url(../images/icon/ico_56x56_disease_breath.png)
}

.ico56-mi03 {
	background-image: url(../images/icon/ico_56x56_disease_digestion.png)
}

.ico56-mi04 {
	background-image: url(../images/icon/ico_56x56_disease_liver.png)
}

.ico56-mi05 {
	background-image: url(../images/icon/ico_56x56_disease_urination.png)
}

.ico56-mi08 {
	background-image: url(../images/icon/ico_56x56_disease_eye.png)
}

.ico56-mi09 {
	background-image: url(../images/icon/ico_56x56_disease_ear.png)
}

.ico56-mi10 {
	background-image: url(../images/icon/ico_56x56_disease_tooth.png)
}

.ico56-mi11 {
	background-image: url(../images/icon/ico_56x56_disease_muscle.png)
}

.ico56-mi12 {
	background-image: url(../images/icon/ico_56x56_disease_skin.png)
}

.ico56-mi15 {
	background-image: url(../images/icon/ico_56x56_disease_infection.png)
}

.ico56-mi17 {
	background-image: url(../images/icon/ico_56x56_disease_unknown.png)
}

.ico56-mi18 {
	background-image: url(../images/icon/ico_56x56_disease_cancer.png)
}

[class^="ico64-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 6.4rem;
	height: 6.4rem;
	vertical-align: top;
	background-size: 6.4rem auto !important;
	background-repeat: no-repeat !important;
}

.ico64-profile-woman {
	background-image: url(../images/icon/ico_64x64_profile_woman.png)
}

.ico64-profile-man {
	background-image: url(../images/icon/ico_64x64_profile_man.png)
}

.ico64-add {
	background-color: var(--g100);
	background-image: url(../images/icon/ico_24x24_plus.png);
	background-size: 2.4rem auto !important;
	background-position: center center;
	border-radius: var(--border-radius-100);
}

[class^="ico72-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 7.2rem;
	height: 7.2rem;
	vertical-align: top;
	background-size: 7.2rem auto !important;
	background-repeat: no-repeat !important;
}

.ico72-inq {
	background-image: url(../images/icon/ico_72x72_inq.png);
}

.ico72-billing {
	background-image: url(../images/icon/ico_72x72_billing.png);
}

.ico72-hospital {
	background-image: url(../images/icon/ico_72x72_hospital.png);
}

.ico72-map {
	background-image: url(../images/icon/ico_72x72_map.png);
}

.ico72-dog {
	background-image: url(../images/icon/ico_72x72_dog.png);
}

.ico72-cat {
	background-image: url(../images/icon/ico_72x72_cat.png);
}

.ico72-mission01 {
	background-image: url(../images/icon/ico_72x72_mission01.png);
}

.ico72-mission02 {
	background-image: url(../images/icon/ico_72x72_mission02.png);
}

.ico72-mission03 {
	background-image: url(../images/icon/ico_72x72_mission03.png);
}

.ico72-mission04 {
	background-image: url(../images/icon/ico_72x72_mission04.png);
}

.ico72-qr {
	background-image: url(../images/icon/ico_72x72_qr.png);
}

.ico72-qr02 {
	background-image: url(../images/icon/ico_72x72_qr.png);
	opacity: 0.3;
}

.ico72-hospital02 {
	background-image: url(../images/icon/ico_72x72_hospital.png);
	opacity: 0.3;
}

[class^="ico96-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 9.6rem;
	height: 9.6rem;
	vertical-align: top;
	background-size: 9.6rem auto !important;
	background-repeat: no-repeat !important;
}

.ico96-nodata1 {
	background-image: url(../images/icon/ico_96x96_nodata01.png);
}

.ico96-nodata2 {
	background-image: url(../images/icon/ico_96x96_nodata02.png);
}

.ico96-nodata3 {
	background-image: url(../images/icon/ico_96x96_nodata03.png);
}

.ico96-success {
	background-image: url(../images/icon/ico_96x96_success.png);
}

.ico96-success2 {
	background-image: url(../images/icon/ico_96x96_success2.png);
}

.ico96-success3 {
	background-image: url(../images/icon/ico_96x96_success3.png);
}

.ico96-success4 {
	background-image: url(../images/icon/ico_96x96_dog_map.png);
}

.ico96-outpatient-dog {
	background-image: url(../images/icon/ico_96x96_outpatient_dog.png);
}

.ico96-outpatient-cat {
	background-image: url(../images/icon/ico_96x96_outpatient_cat.png);
}

.ico96-hospitalization {
	background-image: url(../images/icon/ico_96x96_hospitalization.png);
}

.ico96-hospitalization-cat {
	background-image: url(../images/icon/ico_96x96_hospitalization_cat.png);
}

.ico96-surgery {
	background-image: url(../images/icon/ico_96x96_surgery.png);
}

.ico96-mri {
	background-image: url(../images/icon/ico_96x96_mri.png);
}

.ico96-compensation {
	background-image: url(../images/icon/ico_96x96_compensation.png);
}

.ico96-compensation-cat {
	background-image: url(../images/icon/ico_96x96_compensation_cat.png);
}

.ico96-training {
	background-image: url(../images/icon/ico_96x96_training.png);
}

.ico96-hotel {
	background-image: url(../images/icon/ico_96x96_hotel.png);
}

.ico96-funeral {
	background-image: url(../images/icon/ico_96x96_funeral.png);
}

.ico96-diary {
	background-image: url(../images/icon/ico_96x96_diary.png);
}

.ico96-error {
	background-image: url(../images/icon/ico_96x96_error.png);
}

.ico96-not-match-number {
	background-image: url(../images/icon/ico_96x96_not_match_number.png);
}



[class^="ico120-"] {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 12rem;
	height: 12rem;
	vertical-align: top;
	background-size: 12rem auto !important;
	background-repeat: no-repeat !important;
}

.ico120-bio-id {
	background-image: url(../images/icon/ico_120x120_bio_id.png);
}

/*****************************************************************
  Badge
*****************************************************************/
.badge {
	display: inline-block;
	flex-shrink: 0;
	padding: 0.4rem 1rem;
	border: 1px solid transparent;
	border-radius: var(--border-radius-20);
	vertical-align: sub;
	line-height: 2.2rem;
	font-size: 1.4rem;
	font-weight: 500;
}

.badge.square {
	padding: 0.3rem 0.8rem;
	border-radius: var(--border-radius-8);
}

.badge.fs12 {
	line-height: 2rem;
	font-size: 1.2rem;
}

.badge.fs16 {
	line-height: 2.4rem;
	font-size: 1.6rem;
}

.badge.gray {
	background-color: var(--g100);
	color: var(--g700);
}

.badge.gray2 {
	background-color: var(--g700);
	color: var(--white);
}

.badge.green {
	background-color: var(--gn100);
	color: var(--gn700);
}

.badge.red {
	background-color: var(--re100);
	color: var(--re600);
}

.badge.yellow {
	background-color: #fffbc5;
	color: #916317;
}

.badge.brown {
	background-color: #fff3e5;
	color: #c0451c;
}

.badge.square.gray {
	color: var(--g600);
}

[class^="badge line-"] {
	padding: 0 0.8rem;
	background-color: var(--white);
}

.badge.line-green {
	border-color: var(--gn500);
	color: var(--gn700);
}

.badge.line-gray {
	border-color: var(--g300);
	color: var(--g500);
}

.badge.line-red {
	border-color: var(--re500);
	color: var(--re600);
}

.badge.new {
	width: 1.6rem;
	height: 1.6rem;
	padding: 0;
	background: url(../images/icon/ico_16x16_badge_new.png) no-repeat center center / 100% auto;
}

.badge.d-day {
	padding: 1px 0.8rem;
	background-color: var(--re100);
	border-color: var(--re500);
	line-height: 2rem;
	color: var(--re600);
	font-size: 1.2rem;
	font-weight: 500;
}

.badge-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
}

.badge-list.just-center {
	justify-content: center;
}


[class^="badge map-"] {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	padding: 1px 0.5rem;
	background-color: var(--white);
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-4);
	line-height: 2rem;
	font-size: 1.2rem;
	font-weight: 700;
}

[class^="badge map-"]::before {
	content: "";
	width: 14px;
	height: 14px;
	background-size: 14px auto;
	background-repeat: no-repeat;
	background-position: center center;
}

.badge.map-cate01 {
	color: var(--gn700);
}

.badge.map-cate01::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate01.png);
}

.badge.map-cate02 {
	color: #ca58c3;
}

.badge.map-cate02::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate02.png);
}

.badge.map-cate03 {
	color: var(--re500);
}

.badge.map-cate03::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate07.png);
}

.badge.map-cate04 {
	color: #50aaff;
}

.badge.map-cate04::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate03.png);
}

.badge.map-cate05 {
	color: #e5a903;
}

.badge.map-cate05::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate04.png);
}

.badge.map-cate056 {
	color: #8e7afe;
}

.badge.map-cate06::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate05.png);
}

.badge.map-cate07 {
	color: #79bd05;
}

.badge.map-cate07::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate06.png);
}



.badge.map-cate08 {
	color: #516a9e;
}

.badge.map-cate08::before {
	background-image: url(../images/icon/map/ico_14x14_map_cate08.png);
}

.badge.map-cate10 {
	color: #587b62;
}

.badge.map-cate10::before {
	background-image: url(../images/icon/map/ico_16x16_category10.png);
}

.badge.map-coupon::before {
	width: 1.6rem;
	height: 1.6rem;
	background-size: 100% auto;
	background-image: url(../images/icon/map/ico_16x16_coupon.png);
}

[class^="badge terms-"] {
	padding: 0 0.8rem;
}

.badge.terms-step1 {
	color: var(--white);
	background-color: #33c2f3;
}

/*****************************************************************
  Table
*****************************************************************/
.tbl-box .table {
	border-top: 1px solid var(--g200);
}

.tbl-box .table thead th {
	padding: 1.2rem;
	background-color: var(--g100);
	border-bottom: 1px solid var(--g200);
	border-left: 1px solid var(--g200);
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.tbl-box .table thead th:first-child {
	border-left: 0;
}

.tbl-box .table tbody th {
	padding: 1.1rem;
	background-color: var(--g100);
	border-bottom: 1px solid var(--g200);
	line-height: 2rem;
	text-align: left;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.tbl-box .table tbody td {
	padding: 1.1rem;
	background-color: var(--white);
	border-bottom: 1px solid var(--g200);
	color: var(--g700);
}

.tbl-box .bul-dot::before {
	left: 0;
}

.tbl-box .bul-dot {
	padding-left: 0.8rem;
	line-height: 2.4rem;
	font-size: 1.6rem;
}

.tbl-box.info-type {
	overflow-y: auto;
}

.tbl-box.info-type .table thead th,
.tbl-box.info-type .table tbody th {
	text-align: center;
	line-height: 2.2rem;
	color: var(--g900);
	font-size: 1.4rem;
	font-weight: 400;
}

.tbl-box.info-type .table tbody td {
	/* border-top: 1px solid var(--g200); */
	border-left: 1px solid var(--g200);
	text-align: center;
	line-height: 2.2rem;
	color: var(--g900);
	font-size: 1.4rem;
	font-weight: 400;
}

.tbl-box.info-type .table .bdr-l {
	border-left: 1px solid var(--g200);
}

.tbl-box.w-large {
	max-width: 78.7rem;
}

.tbl-box.w-medium {
	max-width: 68.3rem;
}

.tbl-box.w-small {
	max-width: 42.3rem;
}


/*****************************************************************
  Bullet Point
*****************************************************************/
.bul-list {
	display: flex;
	flex-flow: column;
	gap: 0.6rem;
}

[class^="bul-"] {
	position: relative;
	line-height: 2.2rem;
	color: var(--g700);
	font-size: 1.4rem;
	font-weight: 400;
}

.bul-dot {
	padding-left: 15px;
}

.bul-dot::before {
	content: "";
	position: absolute;
	top: 0.9rem;
	left: 0.6rem;
	width: 0.3rem;
	height: 0.3rem;
	background-color: var(--g700);
	border-radius: var(--border-radius-100);
}

.bul-dot.fs16 {
	line-height: 2.4rem;
	font-size: 1.6rem;
}

.bul-dot.fs16::before {
	top: 1rem;
}

.bul-dot.gray1 {
	color: var(--g600);
}

.bul-dot.gray1::before {
	background-color: var(--g600);
}

.bul-dot.green1 {
	color: var(--gn700);
}

.bul-dot.green1::before {
	background-color: var(--gn700);
}

.bul-dash {
	padding-left: 1.2rem;
}

.bul-dash::before {
	content: "";
	position: absolute;
	top: 1.1rem;
	left: 1px;
	width: 0.4rem;
	height: 1px;
	background-color: var(--g700);
}

.bul-refer {
	position: relative;
	padding-left: 1.2rem;
	line-height: 2.2rem;
	color: var(--g600);
	font-size: 1.4rem;
	font-weight: 400;
}

.bul-refer::before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.info-bul-list {
	display: flex;
	flex-flow: column;
	gap: 0.6rem;
	margin-top: 2.4rem;
}

.number-list {
	counter-reset: li-number;
}

.number-list li {
	counter-increment: li-number;
	position: relative;
	margin-top: 1.6rem;
	padding-left: 2.6rem;
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
	font-weight: 400;
}

.number-list li:first-child {
	margin-top: 0;
}

.number-list li::before {
	content: counter(li-number) '. ';
	display: block;
	position: absolute;
	left: 0;
	width: 2.4rem;
	height: 2.4rem;
	text-align: center;
}

.bul-ex-mark {
	padding-left: 2.4rem;
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
}

.bul-ex-mark::before {
	content: "";
	position: absolute;
	top: 0.4rem;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../images/icon/ico_16x16_ex_mark.png) no-repeat center center / 1.6rem auto;
}

.bul-ex-mark.green-type {
	color: var(--gn700);
}

.bul-ex-mark.green-type::before {
	background-image: url(../images/icon/ico_16x16_ex_mark_green.png);
}

.no-bul-list {
	display: flex;
	flex-flow: column;
	gap: 0.6rem;
	list-style: none;
	margin-top: 1.6rem;
}

.no-bul-list li {
	position: relative;
	/* margin-top: 1.6rem; */
	/* padding-left: 2.6rem; */
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
	font-weight: 400;
}

/*****************************************************************
  Tabs
*****************************************************************/
.ui-tab,
.nav-tab {
	position: relative;
	margin: 0 -2rem;
	background-color: var(--white);
}

.ui-tab.category {
	margin: 0 0;
	background-color: unset;
	scroll-behavior: smooth;
}

.ui-tab.category .category-list::-webkit-scrollbar {
	display: none;
}

.ui-tab .ui-tab-list,
.nav-tab .nav-list {
	position: relative;
	overflow-x: auto;
	display: flex;
	gap: 0.8rem;
	margin-bottom: 3.2rem;
	padding: 0 2rem;
	-webkit-overflow-scrolling: touch;
	white-space: nowrap;
	scroll-behavior: smooth;
}

.nav-tab .nav-list::-webkit-scrollbar,
.ui-tab .ui-tab-list::-webkit-scrollbar {
	display: none;
}

/* 드래그 중 텍스트 선택 방지 */
[role="tablist"] {
	cursor: grab;
	user-select: none;
}


.ui-tab .ui-tab-list .tab-menu,
.nav-tab .nav-list .nav-menu {
	position: relative;
	padding: 0.8rem 2rem;
	background-color: var(--g100);
	border-radius: 30px;
	line-height: 2.2rem;
	color: var(--g600);
	font-size: 1.4rem;
	font-weight: 500;
}

.ui-tab .ui-tab-list .tab-menu.is-active,
.nav-tab .nav-list .nav-menu.is-active {
	background-color: var(--g700);
	color: var(--white);
	font-weight: 700;
}

.ui-tab .ui-tab-list .tab-menu.is-active:focus-visible,
.ui-tab .ui-tab-list .tab-menu.is-active[role="tab"]:focus-visible,
.nav-tab .nav-list .nav-menu.is-active:focus-visible,
.nav-tab .nav-list .nav-menu.is-active[role="tab"]:focus-visible {
	outline: 3px dashed #fff;
}

.nav-panel .ui-tab .ui-tab-list .tab-menu.is-active:focus-visible,
.nav-panel .ui-tab .ui-tab-list .tab-menu.is-active[role="tab"]:focus-visible,
.modal-panel .ui-tab .ui-tab-list .tab-menu.is-active:focus-visible,
.modal-panel .ui-tab .ui-tab-list .tab-menu.is-active[role="tab"]:focus-visible,
.nav-panel .nav-tab .nav-list .nav-menu.is-active:focus-visible,
.nav-panel .nav-tab .nav-list .nav-menu.is-active[role="tab"]:focus-visible {
	outline: 3px dashed #000;
}

/* .ui-tab .ui-tab-list .tab-menu.is-active:focus-visible {
	outline: none;
} */

.ui-tab .tab-panel {
	margin: 0 20px;
}

.ui-tab.line-type::before,
.nav-tab.line-type::before {
	content: "";
	position: absolute;
	top: 4.9rem;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: var(--g200);
}

.ui-tab.line-type .ui-tab-list,
.nav-tab.line-type .nav-list {
	gap: 2rem;
	padding: 0 2rem;
}

.ui-tab.line-type .ui-tab-list .tab-menu,
.nav-tab.line-type .nav-list .nav-menu {
	height: 5rem;
	padding: 1.2rem 0.4rem;
	background-color: transparent;
	border-radius: 0;
	line-height: 2.4rem;
	color: var(--g600);
	font-size: 1.6rem;
	font-weight: 500;
}

.nav-tab.line-type .nav-list .nav-menu {
	flex: 1;
	text-align: center;
}

.ui-tab.line-type .ui-tab-list .tab-menu.is-active,
.nav-tab.line-type .nav-list .nav-menu.is-active {
	color: var(--g900);
}

.ui-tab.line-type .ui-tab-list .tab-menu.is-active::before,
.nav-tab.line-type .nav-list .nav-menu.is-active::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	width: 100%;
	height: 2px;
	background-color: var(--g900);
}

.ui-tab.line-type.full .ui-tab-list,
.nav-tab.line-type.full .nav-list {
	overflow: hidden;
	gap: 0;
	white-space: normal;
}

.ui-tab.line-type.full .ui-tab-list .tab-menu,
.nav-tab.line-type.full .nav-list .nav-menu {
	width: 100%;
	text-align: center;
}

.nav-tab.sticky {
	position: sticky;
	top: 5.6rem;
	z-index: 10;
}

.ui-tab .ui-tab-list+.total-item-box {
	margin: 0 2rem;
}


/*****************************************************************
  Accordion
*****************************************************************/
.acc-list {
	width: 100%;
	border-top: 1px solid var(--g200);
}

.acc-list .acc-item {
	border-bottom: 1px solid var(--g200);
}

.acc-list .acc-item.last {
	border-bottom: 0;
}

.acc-list .acc-panel[hidden] {
	display: none;
}

.acc-list .acc-panel {
	padding: 1.6rem;
	background-color: var(--g100);
	line-height: 2.4rem;
	color: var(--g700);
	font-size: 1.6rem;
	font-weight: 400;
}

.acc-btn {
	position: relative;
	width: 100%;
	padding: 2rem 3.2rem 2rem 0.4rem;
	text-align: left;
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 400;
}

.acc-btn::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0.4rem;
	width: 2rem;
	height: 2rem;
	margin-top: -1rem;
	background: url(../images/icon/ico_20x20_arrow_down.png) no-repeat center center / 2rem auto;
	transition: transform 0.3s ease-in-out;
}

.acc-btn[aria-expanded="true"] {
	color: var(--gn700);
}

.acc-btn[aria-expanded="true"]::after {
	transform: rotateX(-180deg);
}

.acc-list .acc-panel .inner {
	margin-top: 2.4rem;
}

.acc-list .acc-panel .inner.first {
	margin-top: 0;
}

.acc-list .acc-panel .inner .con-tit2+p {
	margin-top: 0.4rem;
}

.acc-list .acc-panel .inner .bul-refer {
	color: var(--g700);
}

.acc-list .acc-panel .inner-txt {
	padding: 0 0.4rem;
}

/* 2단 아코디언 */
/* .acc-list.type-column2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.acc-list.type-column2 .acc-panel {
	position: relative;
	left: 0;
	width: calc(100% * 2);
	background-color: #ccc;
}

.acc-list.type-column2 .acc-item:nth-child(even) .acc-panel {
	left: -100%;
} */

/* 하단 정보 단일 아코디언 */
.acc-list.type-info {
	border-top: 0;
}

.acc-list.type-info .acc-item {
	border-bottom: 0;
}

.acc-list.type-info .acc-btn {
	padding: 1.6rem 2.4rem 1.6rem 0.4rem;
	border-bottom: 1px solid var(--g200);
	line-height: 2.4rem;
	color: var(--g900);
	font-size: 1.6rem;
	font-weight: 700;
}

.acc-list.type-info .acc-btn[aria-expanded="true"] {
	background-color: #fff;
	color: #333;
}

.acc-list.type-info .acc-panel {
	padding: 20px 0;
	background-color: #fff;
	line-height: 2.2rem;
	color: var(--g700);
	font-size: 1.4rem;
	font-weight: 400;
}

.acc-list.type-info .acc-panel {
	padding: 2rem 0;
	background-color: var(--white);
	/* border-top: 1px solid var(--g200); */
}

.acc-list.bg-white .acc-panel {
	background-color: var(--white);
	border-top: 1px solid var(--g200);
}

/*****************************************************************
  List
*****************************************************************/
.detail-list-info {
	display: flex;
	justify-content: space-between;
	gap: 0.8rem;
}

.detail-list-info .tit {
	color: var(--g600);
}

.detail-list-info .txt {
	text-align: right;
	color: var(--g900);
}

.detail-list-info .txt .in-txt {
	display: block;
	line-height: 2rem;
	color: var(--g600);
	font-size: 1.2rem;
	font-weight: 500;
}

.detail-list-info+.detail-list-info {
	margin-top: 1.2rem;
}

.detail-list-info+.btn-wrap {
	margin-top: 1.6rem;
}

.detail-list-info.sm .tit,
.detail-list-info.sm .txt {
	line-height: 2.2rem;
	font-size: 1.4rem;
	font-weight: 400 !important;
}

.detail-list-info.sm+.detail-list-info.sm {
	margin-top: 0.4rem;
}

.detail-list-info.column {
	flex-flow: column;
	align-items: flex-start;
}

.detail-list-info.total-type {
	margin-top: 2.4rem;
	padding: 1.6rem 0.4rem 0;
	border-top: 1px solid var(--g200);
}

.card-list {
	display: flex;
	flex-flow: column;
	gap: 1.6rem;
}

.card-list-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0.8rem;
}

.card-head {
	margin-bottom: 0.8rem;
}

.card-head.border-type {
	margin-bottom: 1.6rem;
	padding-bottom: 1.6rem;
	border-bottom: 1px solid var(--g200);
}

.card-head .tit {
	line-height: 2.2rem;
	color: var(--g900);
	font-size: 1.4rem;
	font-weight: 500;
}

.card-head .btn-txt-arrow {
	display: flex;
	align-items: flex-start;
	width: 100%;
	line-height: 2.2rem;
	color: var(--g900);
	font-size: 1.4rem;
	font-weight: 500;
}

.card-head .btn-txt-arrow .txt {
	width: 100%;
}

.card-head .btn-txt-arrow .txt::after {
	top: 0.3rem;
	margin-top: 0;
}

.selected-list {
	display: flex;
	flex-flow: column;
}

.selected-list li {
	border-bottom: 1px solid var(--g200);
}

.selected-list li:last-child {
	border-bottom: 0;
}

.selected-list.bank-type {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.8rem;
}

.selected-list.bank-type li {
	border: 0;
}

.selected-list.bank-type .btn-sel-item {
	align-items: center;
	gap: 0.8rem;
	height: 100%;
	padding: 1.2rem 0.5rem;
	background-color: var(--g100);
	border: 1px solid transparent;
	border-radius: var(--border-radius-12);
}

.selected-list.bank-type .btn-sel-item .ico {
	width: 3.2rem;
	height: 3.2rem;
	background-color: #eee;
	background-repeat: no-repeat;
	background-size: 3.2rem auto;
	border-radius: var(--border-radius-100);
}

.selected-list.bank-type .btn-sel-item .tit {
	text-align: center;
	line-height: 2.2rem;
	color: var(--g600);
	font-size: 1.4rem;
	font-weight: 400;
}

.selected-list.bank-type .btn-sel-item.is-selected {
	border-color: var(--gn500);
}

.selected-list.bank-type .btn-sel-item.is-selected .tit {
	color: var(--g900);
}

.selected-list.bank-type .btn-sel-item.is-selected::after {
	display: none;
}

.select-info-txt {
	padding-bottom: 1.6rem;
	border-bottom: 1px solid var(--g200);
	color: var(--g700);
}

.selected-list.box-check-type {
	gap: 1.2rem;
}

.selected-list.box-check-type li {
	border-bottom: 0;
}

.selected-list.box-check-type .btn-sel-item {
	padding: 2rem 4rem 2rem 2rem;
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-12);
}

.selected-list.box-check-type .btn-sel-item.is-selected::after {
	right: 2rem;
	width: 2rem;
	height: 2rem;
	background: url(../images/icon/ico_20x20_sel_check.png) no-repeat center center / 2rem auto;
}

.selected-list.box-check-type .btn-sel-item.is-selected {
	border-color: var(--gn500);
}

.selected-list.box-check-type .flex-box {
	gap: 1.2rem
}

.selected-list.box-check-type:has(.detail-list-info.sm) .txt-info {
	margin-bottom: 0.8rem;
}

.selected-list.box-check-type .btn-sel-item.is-selected .tit {
	font-weight: 700;
}

.selected-list.box-check-type .detail-list-info.sm {
	max-width: 60%;
}

.selected-list.box-check-type .detail-list-info.sm+.detail-list-info.sm {
	margin-top: 0.8rem;
}

/* type2 타입 : txt 기본 컬러 변경, 클릭시 컬러, 굵기변경 */
.selected-list.box-check-type.type2 .btn-sel-item .txt {
	color: var(--g700);
}

.selected-list.box-check-type.type2 .btn-sel-item.is-selected .txt {
	color: var(--gn700);
	font-weight: 700;
}

.page-title-box+.selected-list.box-check-type {
	padding-top: 1.6rem;
}

.hash-list {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.2rem 1.2rem;
	padding-left: 2.2rem;
}

.hash-list::before {
	content: "";
	position: absolute;
	top: 0.3rem;
	left: 0;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../images/icon/ico_16x16_hash.png) no-repeat center center / 1.6rem auto;
}

.hash-list .hash {
	line-height: 2.2rem;
	color: var(--gn700);
	font-size: 1.4rem;
	font-weight: 500;
}

.hash-list .hash .point {
	position: relative;
}

.hash-list .hash .point::before {
	content: "";
	position: absolute;
	inset: 0;
	top: -1px;
	z-index: -1;
	width: 100%;
	height: 18px;
	background-color: var(--gn150);
}


/*****************************************************************
  Box
*****************************************************************/
.flex-box {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	width: 100%;
}

.flex-box.between {
	justify-content: space-between;
}

.flex-box.end {
	justify-content: flex-end;
}

.flex-box.column {
	flex-flow: column;
}

.flex-box.flex-wrap {
	flex-wrap: wrap;
}

.flex-box.flex-start {
	align-items: flex-start;
}

.row2 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	gap: .8rem;
}

.row2>div {
	flex: 0 0 calc(50% - .8rem);
}

.row2>div:last-child:nth-child(odd) {
	flex: 0 0 100%;
}

.grid-box {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.8rem;
}

.grid-box.column3 {
	grid-template-columns: repeat(3, 1fr);
}

.round-box {
	display: block;
	padding: 2rem;
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-12);
}

.round-box.pdtb24 {
	padding: 2.4rem 2rem;
}

.line-box {
	display: block;
	padding: 2rem 0.4rem;
	border-top: 1px solid var(--g200);
	border-bottom: 1px solid var(--g200);
}

.line-box.type-bottom {
	border-top: 0;
}

.gray-box {
	padding: 2rem;
	background-color: var(--g100);
	border-radius: var(--border-radius-12);
}

.gray-box.border-type {
	border: 1px solid var(--g300);
}

.gray-box .detail-list-info+.detail-list-info {
	margin-top: 0.8rem;
}

.gray-box.grid-box .detail-list-info+.detail-list-info {
	margin-top: 0;
}

.gray-box.pdtb32 {
	padding: 3.2rem 2rem !important;
}

.all-select-dec {
	display: none;
	color: var(--gn700);
	font-weight: 700;
}

.icon-box {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 8rem;
	height: 8rem;
	background-color: var(--white);
	border-radius: var(--border-radius-100);
}

.img-box.w-96 {
	width: 100%;
	max-width: 9.6rem;
	margin: auto;
}

.img-box.w-280 {
	width: 100%;
	max-width: 28rem;
	margin: auto;
}

.img-box.w-335 {
	width: 100%;
	max-width: 33.5rem;
	margin: auto;
}

.img-box img {
	width: 100%;
}

.img-box svg {
	display: block;
}


.img-box.ai-consultant {
	width: 100%;
	height: 16rem;
	background: url(../images/img/AI_consultant.png) no-repeat center center / 28rem auto;
}

.img-box.statistics {
	width: 100%;
	height: 16rem;
	background: url(../images/img/statistics.png) no-repeat center center / 28rem auto;
}

/*****************************************************************
  text ellipsis
*****************************************************************/
.ellipsis {
	overflow: hidden;
	display: block;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.ellipsis[class*=line] {
	display: -webkit-box;
	white-space: normal;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

.ellipsis.line2 {
	-webkit-line-clamp: 2;
}

.ellipsis.line3 {
	-webkit-line-clamp: 3;
}

.ellipsis.line4 {
	-webkit-line-clamp: 4;
}

.ellipsis.line5 {
	-webkit-line-clamp: 5;
}



/*****************************************************************
  Swiper
*****************************************************************/
.banner-swiper {
	overflow: hidden;
}

.banner-swiper .campaign-banner {
	margin: 0;
}

.swiper {
	overflow: hidden;
}

.modal-body .swiper {
	overflow: visible;
}

.swiper .swiper-wrapper {
	display: flex;
}

.swiper .swiper-wrapper .swiper-slide {
	height: 100%;
	flex-shrink: 0;
}

.swiper .swiper-controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.8rem;
	margin-top: 1.2rem;
}

.swiper .swiper-controls .btn-prev,
.swiper .swiper-controls .btn-next,
.swiper .swiper-controls .btn-play-toggle {
	width: 1rem;
	height: 1rem;
	background-size: 1rem auto;
	background-repeat: no-repeat;
	background-position: center center;
}

.swiper .swiper-controls .btn-prev {
	background-image: url(../images/icon/ico_12x12_swiper_prev.png);
}

.swiper .swiper-controls .btn-next {
	background-image: url(../images/icon/ico_12x12_swiper_next.png);
}

/* 자동 재생 중 */
.swiper .swiper-controls .btn-play-toggle[aria-pressed="false"] {
	background-image: url(../images/icon/ico_12x12_auto_stop.png);
}

.swiper .swiper-controls .btn-play-toggle[aria-pressed="true"] {
	background-image: url(../images/icon/ico_12x12_auto_start.png);
}

.swiper .swiper-pagination {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.swiper .swiper-pagination .swiper-pagination-bullet {
	width: 0.6rem;
	height: 0.6rem;
	border: 1px solid var(--g400);
	/* border-radius: 0.2rem; */
	border-radius: var(--border-radius-100);
}

.swiper .swiper-pagination .swiper-pagination-bullet[tabindex]:focus-visible,
.swiper .swiper-pagination .swiper-pagination-bullet[role="button"]:focus-visible {
	outline: 5px solid var(--gn500);
}

.swiper .swiper-pagination .swiper-pagination-bullet-active {
	background-color: var(--g700);
	border-color: var(--g700);
}

/* 약관 Swiper */
.swiper.terms-swiper .swiper-wrapper .swiper-slide {
	height: auto;
}

.swiper.terms-swiper .swiper-wrapper .swiper-slide.is-hidden {
	display: none !important;
}

.modal.full .modal-panel .modal-body:has(.terms-swiper) {
	overflow: hidden;
	height: auto;
}

.swiper.terms-swiper .terms-scroll {
	overflow-y: auto;
	max-height: calc(100vh - 208px);
	padding-bottom: 4rem;
}

.swiper.terms-swiper .btn-prev,
.swiper.terms-swiper .btn-next {
	position: fixed;
	top: 50%;
	width: 4rem;
	height: 4rem;
	background-color: var(--bop20);
	border-radius: var(--border-radius-100);
	transform: translateY(-50%);
}

.swiper.terms-swiper .btn-prev {
	left: 0.8rem;
}

.swiper.terms-swiper .btn-next {
	right: 0.8rem;
}

.swiper.terms-swiper .btn-prev::before,
.swiper.terms-swiper .btn-next::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2rem;
	height: 2rem;
	background-repeat: no-repeat;
	background-size: 100% auto;
	transform: translate(-50%, -50%);
}

.swiper.terms-swiper .btn-prev::before {
	background-image: url(../images/icon/ico_20x20_arrow_left_white.png);

}

.swiper.terms-swiper .btn-next::before {
	background-image: url(../images/icon/ico_20x20_arrow_right_white.png);
}


.swiper.terms-swiper .btn-prev.swiper-button-disabled,
.swiper.terms-swiper .btn-next.swiper-button-disabled {
	display: none;
}

.swiper.terms-swiper .single-type>.tit2 {
	display: none;
}

.swiper.terms-swiper .single-type>.tit2+.contents-box {
	margin-top: 0;
}

/*****************************************************************
  Toast
*****************************************************************/
#toastContainer {
	position: fixed;
	bottom: 2rem;
	left: 2rem;
	z-index: 10001;
	width: calc(100% - 4rem);
}

#toastContainer .toast {
	padding: 1.2rem 2rem;
	background-color: var(--g800);
	border-radius: var(--border-radius-12);
	text-align: center;
}

#toastContainer .toast .msg {
	line-height: 2.4rem;
	color: var(--white);
	font-size: 1.6rem;
	font-weight: 400;
}


/*****************************************************************
  Tooltip
*****************************************************************/
.tooltip-wrap {
	display: inline-block;
	vertical-align: middle;
}

.tooltip-wrap .btn-tooltip {
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 100%;
	background: url(../images/icon/ico_20x20_tooltip.png) no-repeat center center / 100% auto;
}

.tooltip-wrap .tooltip-content {
	display: none;
	position: absolute;
	left: 2rem;
	right: 2rem;
	z-index: 1;
	min-height: 10.4rem;
	margin-top: 1.2rem;
	padding: 2rem 4.8rem 2rem 2rem;
	background-color: var(--white);
	border: 1px solid var(--g300);
	border-radius: var(--border-radius-12);
	text-align: left;
}

.tooltip-wrap .tooltip-content .txt {
	color: var(--g600);
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.4rem;
}

.tooltip-wrap .btn-close {
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	height: 56px;
	background: url(../images/icon/ico_16x16_close.png) no-repeat center center / 1.6rem auto;
}



/*****************************************************************
  Loading
*****************************************************************/
.back-loading {
	background: url(../images/img/img_back_loading.png) no-repeat center center / 33.5rem auto;
}

.loading {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(25px);
}

.loading #heroLoading {
	width: 33.5rem;
	height: 20.0rem;
}


/* 스크롤 관리 옵션 */
.scroll-box {
	overflow-x: scroll;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

.scroll-box::-webkit-scrollbar {
	height: 6px;
	/* 가로 스크롤은 height */
}

.scroll-box::-webkit-scrollbar-thumb {
	background: transparent;
	border-radius: 4px;
}

.scroll-box.is-scrolling::-webkit-scrollbar-thumb,
.scroll-box:hover::-webkit-scrollbar-thumb {
	/* 마우스 오버 추가 */
	background: rgba(0, 0, 0, 0.3);
}


/* 미디어 쿼리 */
@media (min-width:38.1rem) {

	body {
		overflow-x: hidden;
		background-color: var(--g100)
	}

	#skipNavi a {
		left: 50%;
		width: 68rem;
		margin: 0 0 0 -34rem;
	}

	.wrap {
		width: 68rem;
		margin: 0 auto;
		/* height: 100%; */
		background-color: #fff
	}

	#content {
		background-color: #fff
	}

	/* .wrap::-webkit-scrollbar {
		width: 6px;
		height: 6px;
	}

	.wrap::-webkit-scrollbar-track {
		-webkit-box-shadow: inset 0 0 6px #cfcece;
		border-radius: 10px;
		background-color: transparent;
	}

	.wrap::-webkit-scrollbar-thumb {
		outline: none;
		border-radius: 10px;
		border: 3px solid transparent;
		background-color: #c5c4c4;
	} */

	.header>div {
		left: 50%;
		width: 68rem;
		margin: 0 0 0 -34rem;
	}

	.nav-panel {
		position: fixed;
		display: none;
		width: 68rem;
		right: calc(50% - 34rem);
	}

	.nav-panel.is-open {
		display: flex;
	}

	.nav-panel .nav-content {
		height: calc(100vh - 192px);
		flex: none;
	}

	#alarmPanel.nav-panel .nav-content {
		height: calc(100vh - 56px);
	}

	.modal,
	.modal-panel,
	.modal.full .modal-panel,
	.modal.bottom .modal-panel {
		width: 68rem;
		margin: 0 auto;
	}

	.modal.alert .modal-panel {
		width: calc(68rem - 4rem);
	}

	.btn-wrap.fixed {
		left: 50%;
		width: 68rem;
		margin: 0 auto;
		margin: 0 0 0 -34rem;
	}

	.footer {
		/* padding: 4rem 2rem 10rem */

	}


}