@charset "UTF-8";

:root {
	--font-noto: "Noto Sans KR", sans-serif;
	--font-ivy: ivymode, sans-serif;
	--font-redHot: "Red Hat Display", sans-serif;
	--font-mont: "Montserrat", sans-serif;
	--color-black: #231916;
	--color-brown: #622D20;
	--color-brown2: #8B321D;
	--color-brown3: #7E2210;
	--color-deep: #57271C;
	--color-deep2: #581F14;
	--color-light: #9D503A;
	--color-light2: #F2EFEE;
	--color-light3: #EEE2D9;
	--color-ivory: #D7C6BD;
	--color-ivory2: #B7A296;
	--color-ivory3: #D5C7BE;
	--color-ivory4: #D7C3B5;
	--color-gray: #707070;
	--color-gray2: #C4C4C4;
	--color-point: #BE300A;
	--color-red: #FF0000;
	--color-bg: #AE3E23;
	--line: rgba(215, 198, 189, 0.5);
	--line2: #ceb5aa;
	--line3: #7f5347;
	--line4: rgba(0, 0, 0, 0.2);
	--line5: rgba(0, 0, 0, 0.3);
	--line6: #b0968f;
	--line7: #7C5043;
	--line8: #714235;
	--line_gray: #d1d1d1;
	--line_gray2: #F5F5F5;
	--size10: clamp(8px, 2.051vw * 0.5, 11px);
	--size10-5: clamp(5px, 1.282vw * 0.6, 11px);
	--size11: clamp(9px, 2.308vw * 0.5, 11px);
	--size13: clamp(8px, 2.051vw * 0.55, 13px);
	--size13-10: clamp(10px, 2.564vw * 0.5, 13px);
	--size14: clamp(11px, 2.821vw * 0.55, 14px);
	--size14-8: clamp(8px, 2.051vw * 0.55, 14px);
	--size15: clamp(12px, 3.077vw * 0.5, 15px);
	--size15-9: clamp(9px, 2.308vw * 0.7, 15px);
	--size16: 16px;
	--size18: clamp(12px, 3.077vw * 0.55, 18px);
	--size18-10: clamp(10px, 2.564vw * 0.55, 18px);
	--size18-11: clamp(11px, 2.821vw * 0.55, 18px);
	--size18-13: clamp(13px, 3.333vw * 0.5, 18px);
	--size18-14: clamp(14px, 3.59vw * 0.5, 18px);
	--size18-15: clamp(15px, 3.846vw * 0.5, 18px);
	--size20: clamp(12px, 3.077vw * 0.55, 20px);
	--size20-10: clamp(10px, 2.564vw * 0.55, 20px);
	--size20-13: clamp(13px, 3.333vw * 0.55, 20px);
	--size20-15: clamp(15px, 3.846vw * 0.5, 20px);
	--size21: clamp(14px, 3.59vw * 0.5, 21px);
	--size21-15: clamp(15px, 3.846vw * 0.5, 21px);
	--size22: clamp(17px, 4.359vw * 0.5, 22px);
	--size22-14: clamp(14px, 3.59vw * 0.5, 22px);
	--size22-18: clamp(18px, 4.615vw * 0.5, 22px);
	--size23: clamp(16px, 4.103vw * 0.55, 23px);
	--size24: clamp(15px, 3.846vw * 0.55, 24px);
	--size24-14: clamp(14px, 3.59vw * 0.55, 24px);
	--size24-16: clamp(16px, 4.103vw * 0.55, 24px);
	--size24-19: clamp(19px, 4.872vw * 0.5, 24px);
	--size24-21: clamp(21px, 5.385vw * 0.5, 24px);
	--size25: clamp(12px, 3.077vw * 0.6, 25px);
	--size25-13: clamp(13px, 3.333vw * 0.6, 25px);
	--size25-14: clamp(14px, 3.59vw * 0.6, 25px);
	--size25-15: clamp(15px, 3.846vw * 0.6, 25px);
	--size25-16: clamp(16px, 4.103vw * 0.6, 25px);
	--size25-17: clamp(17px, 4.359vw * 0.6, 25px);
	--size25-18: clamp(18px, 4.615vw * 0.55, 25px);
	--size25-20: clamp(20px, 5.128vw * 0.55, 25px);
	--size25-21: clamp(21px, 5.385vw * 0.55, 25px);
	--size26: clamp(15px, 3.846vw * 0.55, 26px);
	--size28: clamp(18px, 4.615vw * 0.6, 28px);
	--size28-10: clamp(10px, 2.564vw * 0.7, 28px);
	--size28-13: clamp(13px, 3.333vw * 0.7, 28px);
	--size28-19: clamp(19px, 4.872vw * 0.6, 28px);
	--size30: clamp(25px, 6.41vw * 0.5, 30px);
	--size30-10: clamp(10px, 2.564vw * 0.7, 30px);
	--size30-22: clamp(22px, 5.641vw * 0.55, 30px);
	--size33: clamp(17px, 4.359vw * 0.6, 33px);
	--size33-24: clamp(24px, 6.154vw * 0.55, 33px);
	--size33-26: clamp(26px, 6.667vw * 0.55, 33px);
	--size34: clamp(26px, 6.667vw * 0.55, 34px);
	--size35: clamp(15px, 3.846vw * 0.6, 35px);
	--size35-17: clamp(17px, 4.359vw * 0.6, 35px);
	--size36: clamp(30px, 7.692vw * 0.5, 36px);
	--size38: clamp(25px, 6.41vw * 0.56, 38px);
	--size40: clamp(18px, 4.615vw * 0.6, 40px);
	--size40-27: clamp(27px, 6.923vw * 0.5, 40px);
	--size41: clamp(27px, 6.923vw * 0.55, 41px);
	--size42: clamp(30px, 7.692vw * 0.55, 42px);
	--size43: clamp(34px, 8.718vw * 0.55, 43px);
	--size43-30: clamp(30px, 7.692vw * 0.55, 43px);
	--size46: clamp(32px, 8.205vw * 0.55, 46px);
	--size48: clamp(39px, 10vw * 0.55, 48px);
	--size50: clamp(45px, 11.538vw * 0.5, 50px);
	--size50-23: clamp(23px, 5.897vw * 0.6, 50px);
	--size50-30: clamp(30px, 7.692vw * 0.55, 50px);
	--size50-33: clamp(33px, 8.462vw * 0.55, 50px);
	--size50-35: clamp(35px, 8.974vw * 0.55, 50px);
	--size58: clamp(50px, 12.821vw * 0.55, 58px);
	--size60: clamp(40px, 10.256vw * 0.6, 60px);
	--size60-34: clamp(34px, 8.718vw * 0.6, 60px);
	--size60-35: clamp(35px, 8.974vw * 0.6, 60px);
	--size60-50: clamp(50px, 12.821vw * 0.55, 60px);
	--size60-51: clamp(51px, 13.077vw * 0.55, 60px);
	--size61: clamp(25px, 6.410vw * 0.6, 61px);
	--size63: clamp(39px, 10vw * 0.6, 63px);
	--size65: clamp(33px, 8.462vw * 0.6, 65px);
	--size65-31: clamp(31px, 7.949vw * 0.6, 65px);
	--size65-34: clamp(34px, 8.718vw * 0.6, 65px);
	--size69: clamp(53px, 13.5906vw * 0.55, 69px);
	--size70: clamp(40px, 10.256vw * 0.55, 70px);
	--size70-34: clamp(34px, 8.718vw * 0.55, 70px);
	--size75: clamp(61px, 15.641vw * 0.55, 75px);
	--size80: clamp(33px, 8.462vw * 0.7, 80px);
	--size80-50: clamp(50px, 12.821vw * 0.6, 80px);
	--size90: clamp(70px, 17.949vw * 0.55, 90px);
	--size100: clamp(80px, 20.513vw * 0.55, 100px);
	--size104: clamp(32px, 8.205vw, 104px);
	--size126: clamp(36px, 9.231vw, 126px);
	--size155: clamp(116px, 29.744vw * 0.6, 155px);
	--size180: clamp(150px, 38.462vw * 0.6, 180px);
	--size170: clamp(100px, 25.641vw * 0.6, 170px);
	--size170-30: clamp(30px, 7.692vw, 170px);
	--size250: clamp(100px, 25.641vw * 0.8, 250px);
	--size340: clamp(123px, 31.538vw * 0.9, 340px);
	--size400: clamp(300px, 76.923vw * 0.55, 400px);
	--size600: clamp(430px, 110.256vw * 0.55, 600px);
	--lineH15-9: 2;
	--lineH15-12: 1.7334;
	--lineH18: 1.9445;
	--lineH18-12: 1.9445;
	--lineH18-14: 1.6667;
	--lineH20: 1.8;
	--lineH20-15: 1.5;
	--lineH20-30: 1.5;
	--lineH20-40: 2;
	--lineH24: 1.5417;
	--lineH25: 1.4;
	--lineH25-14: 1.6;
	--lineH25-15: 1.4;
	--lineH25-16: 1.5417;
	--lineH25-21: 1.4;
	--lineH50-30: 1.28;
	--lineH70: 1.28572;
	--pdd: clamp(16px, 4.359vw * 0.6, 36px);
	--pdd20: clamp(20px, 5.128vw * 0.6, 36px);
	--pdd30: clamp(30px, 7.692vw * 0.55, 36px);
	--pdd90: clamp(30px, 7.692vw * 0.7, 90px);
	--rds: clamp(5px, 1.282vw * 0.5, 7px);
	--rds-3: clamp(3px, 0.769vw * 0.55, 7px);
	--rds20: 20px;
	--rds30: 30px;
	--font-xsm: 200;
	--font-sm: 300;
	--font-rg: 400;
	--font-md: 500;
	--font-semi: 600;
	--font-bd: 700;
	--font-xbd: 800;
	--font-bk: 900;
	--trans: .3s ease;
	--easing_in: cubic-bezier(.44, 0, .99, .73);
	--easing_out: cubic-bezier(.18, .61, .34, .99);
	--easing_out-soft: cubic-bezier(.23, .45, .49, 1.02);
	--height: calc(var(--vh, 1vh) * 100);
	--header: 128px;
}

@media (min-width: 993px) {
	:root {
		--pdd90: min(4.688vw, 90px);
	}
}

@media (max-width: 992px) {
	:root {
		--lineH15-9: 1.6667;
		--lineH15-12: 1.6667;
		--lineH18: 2.0834;
		--lineH18-12: 1.6667;
		--lineH18-14: 1.7858;
		--lineH20: 1.6667;
		--lineH20-15: 1.4667;
		--lineH25-16: 1.75;
		--lineH20-40: 1.9167;
		--lineH24: 1.6667;
		--lineH25-14: 1.8572;
		--lineH25-15: 1.6667;
		--lineH25-21: 1.3334;
		--lineH50-30: 1.4667;
		--lineH70: 1.3;
		--header: 92px;
	}
}

@media (max-width: 576px) {
	:root {
		--header: 62px;
	}
}

/* html {scroll-behavior: smooth;} */
body {
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-text-size-adjust: none;
	word-break: keep-all;
	word-wrap: break-word;
	font-family: var(--font-noto);
	font-size: var(--size18);
	letter-spacing: -0.03em;
}

*,
*::before,
*::after {
	box-sizing: border-box;
	line-height: inherit;
}

* {
	letter-spacing: -0.03em;
}

*>* {
	letter-spacing: inherit;
}

body,
div,
dl,
dt,
dd,
th,
td,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
p,
blockquote,
button,
input,
textarea {
	margin: 0;
	padding: 0;
}

section,
article,
header,
footer,
main,
nav,
aside,
hgroup,
figure,
figcaption {
	display: block;
	margin: 0;
	padding: 0
}

table caption,
legend,
.blind {
	position: absolute;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

table th {
	font-weight: normal
}

img,
fieldset,
button,
input {
	border: 0;
	vertical-align: middle
}

img,
svg {
	max-width: 100%;
	border: 0;
	vertical-align: top;
}

ul,
ol,
li {
	list-style: none
}

em,
address {
	font-style: normal
}

label,
button {
	cursor: pointer
}

a {
	color: inherit;
	text-decoration: none
}

button {
	vertical-align: top;
	background: transparent;
	font: inherit;
	-webkit-appearance: none;
	border: 0;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0
}

a[disabled],
button:disabled {
	pointer-events: none;
}

a.underline,
button.underline {
	text-decoration: underline;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: normal
}

input,
select,
button,
textarea {
	font: inherit;
	color: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

textarea {
	overflow-y: auto;
	resize: none
}

/* skip navigation */
#accessibility {
	position: absolute;
	z-index: 99999;
	top: 0;
	left: 5%;
	width: 90%
}

#accessibility a {
	position: absolute;
	top: -2px;
	left: 0;
	width: 100%;
	height: 0;
	overflow: hidden;
	background: #fff;
	color: var(--color-black);
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid var(--color-black);
}

#accessibility a:focus,
#accessibility a:active {
	height: 50px;
	top: 0;
}

/* common */
.ly_inner {
	position: relative;
	margin: 0 auto;
	width: 100%;
	max-width: calc(1360px + var(--pdd) * 2);
	padding-left: var(--pdd);
	padding-right: var(--pdd);
}

.ly_inner.xsm {
	max-width: calc(700px + var(--pdd) * 2);
}

.ly_inner.sm {
	max-width: calc(1342px + var(--pdd) * 2);
}

.ly_inner.md {
	max-width: calc(1440px + var(--pdd) * 2);
}

.ly_inner.lg {
	max-width: calc(1640px + var(--pdd20) * 2);
	padding-left: var(--pdd20);
	padding-right: var(--pdd20);
}

.ly_inner.lg2 {
	max-width: calc(1640px + var(--pdd30) * 2);
	padding-left: var(--pdd30);
	padding-right: var(--pdd30);
}

.ly_inner.full {
	max-width: calc(1920px + var(--pdd) * 2);
}

.noscroll {
	overflow: hidden;
}


body.noscroll,
.noscroll .ly_header,
.noscroll .gnb_li {
	padding-right: var(--scrollbar);
}

.d_flex {
	display: flex;
}

.d_flex .ml {
	margin-left: auto;
}

.flex_ct {
	display: flex;
	justify-content: center;
	align-items: center;
}

@media (max-width: 1500px) {
	.xxp_hide {
		display: none !important;
	}
}

@media (min-width: 1401px) {
	.xp_show {
		display: none !important;
	}
}

@media (max-width: 1400px) {
	.xp_hide {
		display: none !important;
	}
}

@media (min-width: 1201px) {
	.p_show {
		display: none !important;
	}
}

@media (max-width: 1200px) {
	.p_hide {
		display: none !important;
	}
}

@media (min-width: 993px) {
	.t_show {
		display: none !important;
	}
}

@media (max-width: 992px) {
	.t_hide {
		display: none !important;
	}
}

@media (min-width: 769px) {
	.xm_show {
		display: none !important;
	}
}

@media (max-width: 768px) {
	.xm_hide {
		display: none !important;
	}
}

@media (min-width: 577px) {
	.m_show {
		display: none !important;
	}
}

@media (max-width: 576px) {
	.m_hide {
		display: none !important;
	}
}

.txt_ct {
	text-align: center;
}

.txt_wrap {
	white-space: nowrap;
}

.txt_ivy {
	font-family: var(--font-ivy) !important;
}

.color_white {
	color: #fff !important;
}

.color_ivory {
	color: var(--color-ivory) !important;
}

.color_brown {
	color: var(--color-brown) !important;
}

.color_point {
	color: var(--color-point) !important;
}

.bg_ivory {
	background-color: var(--color-ivory) !important;
}

.txt_nexis {
	display: block;
	aspect-ratio: 1 / 0.1780;
	position: relative;
	margin: 0 auto;
}

.txt_nexis svg {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	fill: currentColor;
}

@media (min-width: 993px) {
	.theme_white .color_point {
		color: var(--color-red) !important;
	}
}

.el_title {
	--mg: -.08em;
	color: #fff;
	width: 100%;
	margin-bottom: var(--mg);
	text-align: center;
}

.el_title .txt {
	display: block;
	font-family: var(--font-ivy);
	line-height: 1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin-top: var(--mg);
}

.el_ico {
	--ratio: 1;
	display: inline-block;
	aspect-ratio: var(--ratio);
}

.el_ico img,
.el_ico svg {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.el_img {
	overflow: hidden;
}

.el_img>img,
.el_img>picture img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

/* btn */
.el_btn {
	--color: inherit;
	--bg: transparent;
	--bd: 1px solid transparent;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	color: var(--color);
	background: var(--bg);
	border: 1px solid var(--bd);
	line-height: 1;
	width: var(--size180);
	height: var(--size50);
	padding-bottom: .15em;
}

.el_btn.eng {
	font-size: var(--size18-15);
	font-family: var(--font-ivy);
	letter-spacing: 0.08em;
	padding-bottom: 0;
}

.el_btn.eng.md {
	font-size: var(--size28-19);
	font-weight: var(--font-semi);
	letter-spacing: 0.1em;
}

.el_btn.han.md {
	font-size: var(--size24-19);
	font-weight: var(--font-bd);
	letter-spacing: -0.03em;
}

/* .el_btn.md {width: clamp(230px, 58.974vw * 0.55, 350px); height: var(--size58);} */
.el_btn.md {
	width: clamp(200px, 51.282vw * 0.55, 350px);
	height: var(--size58);
}

.el_btn.md2 {
	width: clamp(200px, 51.282vw * 0.6, 478px);
	height: var(--size60-50);
	font-size: var(--size20-15);
	letter-spacing: -0.03em;
}

.el_btn.md3 {
	width: 209px;
	height: 49px;
	font-size: var(--size18-15);
	font-weight: var(--font-md);
	letter-spacing: -0.03em;
}

.el_btn.md4 {
	font-size: var(--size28-19);
	font-weight: var(--font-semi);
	width: clamp(230px, 58.974vw * 0.55, 350px);
	height: var(--size58);
}

.el_btn.full {
	width: 100% !important;
}

.el_btn.line.white {
	--color: #fff;
	--bd: #fff;
}

.el_btn.line.black {
	--color: #000;
	--bd: var(--color-gray);
}

.el_btn.line.ivory {
	--color: var(--color-ivory);
	--bd: var(--color-ivory);
	--bg: transparent;
}

.el_btn.line.brown {
	--color: var(--color-brown3);
	--bd: var(--color-brown3);
	--bg: #fff;
}

.el_btn.ivory {
	--bg: var(--color-ivory);
	--color: var(--color-brown);
}

.el_btn.white {
	--bg: #fff;
	--color: var(--color-brown);
}

.el_btn.brown {
	--bg: var(--color-brown3);
	--color: var(--color-ivory4);
}

.el_btn.black:not(.line) {
	--bg: #000;
	--color: #fff;
}

.el_btn.black:not(.line):disabled {
	--bg: #DEDEDE;
}

.el_btn.rds {
	border-radius: var(--rds);
}

.btn_area.group {
	--gap: var(--size30-10);
	display: flex;
	gap: var(--gap);
}

.btn_area.group.sm {
	--gap: 8px;
}

.btn_area.group .el_btn {
	flex: 1;
}

@media (min-width: 993px) {
	.el_btn.p_white {
		color: #fff;
		font-weight: var(--font-rg);
	}

	.el_btn.p_full {
		width: 100% !important;
	}
}

@media (max-width: 992px) {
	.el_btn.eng {
		letter-spacing: 0.1em;
	}

	.el_btn.eng.md {
		letter-spacing: 0;
	}

	.el_btn.md3 {
		width: 200px;
		height: 50px;
		font-weight: var(--font-rg);
	}

	.el_btn.line.white {
		--color: var(--color-ivory);
		--bd: var(--color-ivory);
	}

	.el_btn.m_rds {
		border-radius: var(--rds);
	}
}

/* hover event */
.txt_hover {
	--btm: -.25em;
}

.txt_hover .line {
	display: inline-block;
	position: relative;
}

.txt_hover .line::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: var(--btm);
	width: 100%;
	height: 1px;
	background: var(--color);
	transform-origin: right center;
	transform: scaleX(0);
	transition: transform .3s ease-out;
	will-change: transform;
}

.img_hover .thumb img,
.img_hover .thumb .no_img {
	transition: transform .5s var(--easing_out);
	will-change: transform;
	-webkit-font-smoothing: antialiased;
	-moz-osz-font-smoothing: grayscale;
}

.img_hover:hover .thumb img,
.img_hover:hover .thumb .no_img {
	transform: scale(1.1);
}

.no_img {
	display: block;
	width: 100%;
	height: 100%;
	background: var(--line_gray2);
}

.no_img img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	transition: none !important;
	transform: scale(0.26) !important;
}

@media (min-width: 993px) {

	.gnb_li.on .gnb_link .line::after,
	.txt_hover:not(.gnb_link).on .line::after {
		transform: scaleX(1);
		transform-origin: 0 center;
	}
}

.anchor {
	--top: 0;
	position: absolute;
	left: 0;
	top: var(--top);
}

/* form */
[class*="frm_field"] {
	--bd: #c6a498;
}

[class*="frm_field"] :is(dt, dd, th, td) {
	font-size: var(--size20-15);
	line-height: var(--lineH20-15);
	letter-spacing: -0.03em;
	color: var(--color-brown3);
}

.frm_field {
	--pdd: 17px;
	display: table;
	width: 100%;
	border-top: 1px solid var(--bd);
	border-bottom: 1px solid var(--bd);
}

.frm_field .row {
	display: table-row;
	width: 100%;
}

.frm_field .row dt,
.frm_field .row dd {
	display: table-cell;
	padding: var(--pdd) 0;
	height: clamp(82px, 21.026vw * 0.55, 93px);
}

.frm_field .row:not(:first-child) dt,
.frm_field .row:not(:first-child) dd {
	border-top: 1px solid var(--bd);
}

.frm_field .row dt {
	width: 1%;
	white-space: nowrap;
	padding-left: calc(var(--size23) + 7px);
	padding-right: var(--size23);
	line-height: var(--lineH20-15);
	vertical-align: top;
}

.frm_field .row dt .frm_label {
	min-height: var(--size60-35);
}

.frm_field .row dd {
	vertical-align: middle;
}

.frm_field *+.frm_desc {
	margin-top: calc(16px + var(--mg));
}

.frm_field .frm_input,
.frm_field .nice-select :is(.current, .option) {
	font-size: var(--size20);
	letter-spacing: -0.03em;
	padding: 0 var(--size28-10);
}

.frm_field .nice-select .option {
	padding: .55em clamp(20px, 5.128vw * 0.6, 34px);
}

.frm_field textarea.frm_input {
	line-height: var(--lineH20-40);
	height: 264px;
	padding-top: 0.6em;
	padding-bottom: 0.6em;
}

.frm_field.no_line {
	border: none;
}

.frm_field.no_line .row :is(dt, dd) {
	border: none;
	padding-top: var(--size13-10);
	padding-bottom: var(--size13-10);
	height: auto;
}

.theme_white .frm_field {
	--bd: var(--line4);
}

.theme_white .frm_field .row dt,
.theme_white .frm_field .row dd {
	color: #000;
}

.frm_field+.btn_area {
	text-align: center;
	margin-top: var(--size80-50);
}

@media (min-width: 993px) {
	.frm_field.noline_top {
		border-top: none;
		margin-top: calc(var(--pdd) * -1);
	}

	.frm_field.noline_btm {
		border-bottom: none;
		margin-bottom: calc(var(--pdd) * -1);
	}

	.frm_field.p_column,
	.frm_field.p_column .row,
	.frm_field.p_column .row dt,
	.frm_field.p_column .row dd {
		display: block;
		border: none;
		padding: 0;
		height: auto;
	}

	.frm_field.p_column .row dt {
		width: auto;
		font-size: 21px;
		line-height: 1;
		font-weight: var(--font-md);
		letter-spacing: -0.03em;
		margin-bottom: 14px;
	}

	.frm_field.p_column .row dt .frm_label {
		min-height: auto;
	}

	.frm_field.p_column .row+.row {
		margin-top: 35px;
	}

	.frm_field.p_column .frm_input {
		font-size: 18px;
		padding: 0 20px;
	}

	.frm_field.p_column textarea.frm_input {
		line-height: 1.5556;
		height: 200px;
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.frm_field.p_column .frm_checkbox label {
		--size: 23px;
		height: var(--size);
		margin-left: auto;
		padding-left: var(--size);
	}

	.frm_field.p_column .frm_checkbox.box {
		font-size: 18px;
		font-weight: var(--font-md);
		letter-spacing: -0.03em;
		padding: 0 20px;
	}

	.frm_field.p_column .frm_checkbox .openModal {
		opacity: 0.5;
		margin-left: 11px;
		position: relative;
		display: flex;
		align-items: center;
	}

	.frm_field.p_column .frm_checkbox .openModal::after {
		content: "";
		display: block;
		width: 11px;
		aspect-ratio: 1;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.59 11.06'%3E%3Cpath d='M1.06 11.06 0 10l4.47-4.47L0 1.06 1.06 0l5.53 5.53-5.53 5.53z' style='fill: %23000'/%3E%3C/svg%3E") no-repeat center / contain;
		margin-left: 5px;
	}

	.frm_field.p_column .frm_desc {
		font-size: 18px;
		line-height: 1;
		letter-spacing: -0.03em;
		opacity: 0.3;
		padding: 0;
	}

	.frm_field.p_column *+.frm_desc {
		margin-top: 14px;
	}
}

@media (max-width: 992px) {
	.frm_field {
		--pdd: 30px;
	}

	.frm_field .row dt {
		padding-left: 0;
	}
}

.frm_field_tbl :is(th, td) {
	font-size: var(--size20-15);
	height: 60px;
	text-align: center;
	border-top: 1px solid var(--bd);
	border-bottom: 1px solid var(--bd);
	vertical-align: middle;
	padding: .7em .4em;
}

.frm_field_tbl th {
	font-weight: var(--font-md);
}

@media (max-width: 992px) {
	.frm_field_tbl th {
		font-size: var(--size20);
		height: 3.1667em;
	}

	.frm_field_tbl td {
		font-size: var(--size21);
		height: 2.93em;
		word-break: break-all;
	}
}

/* custom select (25.03.28) */
.nice-select {
	--arr: clamp(13px, 3.3334vw * 0.6, 31px);
	cursor: pointer;
	position: relative;
	user-select: none;
	border-radius: var(--rds);
}

.nice-select .current {
	display: block;
	line-height: var(--size60-35);
	position: absolute;
	align-items: center;
	left: 0;
	right: var(--ar);
	top: 0;
	max-width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	word-break: break-all;
	color: inherit;
}

.nice-select::after {
	content: "";
	position: absolute;
	right: var(--size20-13);
	top: 50%;
	width: var(--arr);
	aspect-ratio: 1;
	background: url('../../images/common/ico_arrow_select.svg') no-repeat center/contain;
	margin-top: calc(var(--arr) * -0.5);
}

.nice-select .list {
	overflow: hidden;
	position: absolute;
	top: calc(100% + var(--size10-5));
	left: -1px;
	width: 100%;
	z-index: 15;
	background: var(--color-light2);
	overflow-y: auto;
	color: inherit;
	max-height: 300px;
	border-radius: var(--rds);
	text-align: left;
	display: none;
}

.nice-select.rt .list {
	left: auto;
	right: -1px;
}

.nice-select .option {
	display: flex;
	align-items: center;
	white-space: nowrap;
	line-height: 1.4;
}

.nice-select .option.selected {
	background: var(--color-brown3);
	color: var(--color-light2);
}

.nice-select .option.disabled {
	display: none;
}

.nice-select [data-display] {
	display: none;
}

.frm_select:invalid+.nice-select .current {
	color: var(--color-ivory3);
	font-weight: var(--font-sm);
}

@media (max-width: 992px) {
	.nice-select .option {
		line-height: 1.8334;
	}
}


:where(.frm_input, .frm_select) {
	width: 100%;
	border-radius: var(--rds-3);
	font-size: inherit;
	color: var(--color-deep2);
	background: var(--color-light2);
	border: none;
}

.frm_input::-webkit-input-placeholder {
	color: var(--color-ivory3);
	font-weight: var(--font-sm);
}

.frm_input::-moz-placeholder {
	color: var(--color-ivory3);
	font-weight: var(--font-sm);
}

.frm_input::placeholder {
	color: var(--color-ivory3);
	font-weight: var(--font-sm);
}

.nice-select,
input.frm_input {
	height: var(--size60-35);
}

.frm_label {
	display: inline-flex;
	align-items: center;
}

.frm_label.req>span::after {
	content: "*";
	color: var(--color-point);
	display: inline-block;
	margin-left: 4px;
}

.theme_white .frm_input {
	color: #000;
}

.theme_white .frm_input::-webkit-input-placeholder {
	color: var(--line5);
	font-weight: var(--font-rg);
}

.theme_white .frm_input::-moz-placeholder {
	color: var(--line5);
	font-weight: var(--font-rg);
}

.theme_white .frm_input::placeholder {
	color: var(--line5);
	font-weight: var(--font-rg);
}

@media (min-width: 993px) {
	.theme_white .frm_input {
		background: #fff;
		border-radius: 0;
		border: 1px solid var(--line4);
	}

	.theme_white .frm_label.req>span::after {
		color: var(--color-red);
	}
}

@media (max-width: 992px) {
	textarea.frm_input {
		padding-top: 0.41667em;
		padding-bottom: 0.41667em;
	}

	.theme_white .frm_input {
		background: #EFEFEF;
	}
}

.frm_checkbox.box {
	width: 100%;
	border-radius: var(--rds);
	font-size: var(--size20);
	color: var(--color-deep2);
	background: var(--color-light2);
	border: none;
	padding: 0.85em var(--size20-10);
	min-height: var(--size60-35);
	;
	display: flex;
	align-items: center;
}

.frm_checkbox input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.frm_checkbox label {
	--size: 28px;
	line-height: var(--size);
	position: relative;
	padding-left: calc(var(--size) + 1.05em);
	letter-spacing: -0.03em;
}

.frm_checkbox label::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: var(--size);
	aspect-ratio: 1;
	border-radius: 11px;
	vertical-align: middle;
	background: var(--color-ivory3) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15.02 14.22'%3E%3Cpath d='M6.01 14.22 0 5.48l1.65-1.13 4.36 6.34L13.37 0l1.65 1.13-9.01 13.09z' style='fill:%23fff;stroke-width:0'/%3E%3C/svg%3E") no-repeat center / 48% auto;
}

.frm_checkbox input:checked+label::before {
	background-color: var(--color-brown3);
}

.theme_white .frm_checkbox.box {
	background: #EFEFEF;
	color: #000;
}

.theme_white .frm_checkbox label::before {
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.1 9.93'%3E%3Cpath d='M5.58 9.93.29 4.65A.996.996 0 1 1 1.7 3.24l3.87 3.87L12.39.29A.996.996 0 1 1 13.8 1.7L5.58 9.93Z' style='fill:%23b2b2b2;stroke-width:0'/%3E%3C/svg%3E") no-repeat center 46% / 66.667% auto;
	border-radius: 0;
	border: 1px solid #B2B2B2;
}

.theme_white .frm_checkbox input:checked+label::before {
	background-color: #000;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.1 9.93'%3E%3Cpath d='M5.58 9.93.29 4.65A.996.996 0 1 1 1.7 3.24l3.87 3.87L12.39.29A.996.996 0 1 1 13.8 1.7L5.58 9.93Z' style='fill:%23fff;stroke-width:0'/%3E%3C/svg%3E");
}

@media (max-width: 992px) {
	.frm_checkbox.box {
		padding-top: 0.6667em;
		padding-bottom: 0.6667em;
	}

	.frm_checkbox label {
		--size: var(--size28-19);
		padding-left: calc(var(--size) + 0.5em);
	}

	.frm_checkbox label::before {
		border-radius: 50%;
		top: .05em;
	}
}

.frm_checkbox.type2 {
	--size: 17px;
	display: inline-block;
	width: var(--size);
	aspect-ratio: 1;
	position: relative;
}

.frm_checkbox.type2 .box {
	position: absolute;
	inset: 0;
	border: 1px solid var(--color-brown3);
}

.frm_checkbox.type2 input:checked+.box {
	background: var(--color-brown3) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.1 9.93'%3E%3Cpath d='M5.58 9.93.29 4.65A.996.996 0 1 1 1.7 3.24l3.87 3.87L12.39.29A.996.996 0 1 1 13.8 1.7L5.58 9.93Z' style='fill:%23fff;stroke-width:0'/%3E%3C/svg%3E") no-repeat center 60% / 66.667% auto;
}

@media (max-width: 992px) {
	.frm_checkbox.type2 {
		--size: 0.9286em;
	}
}

.frm_radio_group {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: var(--size10);
}

.frm_radio_group.type2 {
	display: flex;
	justify-content: center;
	text-align: center;
	gap: 120px;
}

.frm_radio input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.frm_radio input:disabled+label {
	opacity: 0.2;
	pointer-events: none;
}

.frm_radio.box label {
	--bg: var(--color-light2);
	--color: var(--color-brown3);
	display: flex;
	justify-content: center;
	align-items: center;
	height: var(--size50-35);
	background: var(--bg);
	color: var(--color);
	border-radius: var(--rds-3);
	font-weight: var(--font-bd);
	font-size: var(--size20);
	letter-spacing: 0.05em;
}

.frm_radio.box input:checked+label {
	--bg: var(--color-brown3);
	--color: var(--color-light3);
}

.frm_radio.ccl label {
	--bd: var(--line5);
	--bg: #fff;
	--color: #000;
	width: clamp(120px, 30.769vw * 0.5, 142px);
	display: block;
}

.frm_radio.ccl label .icon {
	--size: 0.4072;
	border: 1px solid var(--bd);
	background: var(--bg);
	border-radius: 50%;
	color: var(--color);
	margin-bottom: var(--size25-14);
}

.frm_radio.ccl label .icon svg {
	fill: currentColor;
	transform: scale(var(--size));
}

.frm_radio.ccl label .txt {
	display: block;
	font-size: var(--size21-15);
	line-height: 1;
	font-weight: var(--font-md);
	letter-spacing: -0.03em;
	color: #000;
}

.frm_radio.ccl input:checked+label {
	--bd: #000;
	--bg: #000;
	--color: #fff;
}

@media (max-width: 992px) {
	.frm_radio.box label {
		font-weight: var(--font-md);
		letter-spacing: 0.02em;
	}
}

.frm_desc {
	--mg: -.45em;
	font-size: var(--size13);
	margin: var(--mg) 0;
	padding-left: 1.6923em;
}

.frm_desc.lg {
	font-size: 18px;
	padding: 0;
}

.frm_desc a {
	display: inline-block;
}

@media (max-width: 992px) {
	.frm_desc {
		padding-left: 0;
	}
}

#wrap {
	min-width: 320px;
	background: var(--color-brown);
}

.theme_white #wrap {
	background: #fff;
	color: #000;
}

@media (max-width: 992px) {
	.theme_white.hasBg #wrap {
		background: var(--color-brown);
	}
}

/* header */
.preload .ly_header,
.preload .ly_header * {
	transition: none !important;
}

.ly_header {
	--color: #fff;
	--bg: transparent;
	background: var(--bg);
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 100;
	transition: background var(--trans);
	transition-property: background, top;
}

.header_inner {
	height: var(--header);
	display: flex;
	align-items: center;
	transition: height var(--trans);
}

.header_logo {
	position: relative;
	z-index: 300;
}

.header_logo a {
	display: block;
	width: 140px;
	fill: var(--color);
}

.header_logo svg {
	width: 100%;
	height: 100%;
	transition: fill var(--trans);
}

.header_logo .txt {
	position: absolute;
	inset: 0;
	pointer-events: none;
	color: transparent;
}

.header_gnb {
	margin-left: auto;
	height: 100%;
}

.gnb_list {
	display: flex;
	height: 100%;
}

.gnb_link,
.sub_link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: var(--color);
	font-family: var(--font-ivy);
	font-size: 17px;
	font-weight: var(--font-sm);
	text-align: center;
	transition: color var(--trans);
	height: 100%;
}

/* 1342px 기준 */
.gnb_link::after {
	content: attr(data-text);
	display: block;
	font-weight: var(--font-md);
	height: 0;
	visibility: hidden;
}

.gnb_link .line,
.sub_link .line {
	letter-spacing: 0.05em;
}

.gnb_sub {
	display: none;
}

.sub_link {
	text-align: left;
	height: 44px;
	align-items: flex-start;
}

.theme_white:not(.hasBg) .ly_header,
.ly_header.fixed {
	--color: #000;
	--bg: #fff;
}

.theme_white:not(.hasBg) .gnb_link,
.theme_white:not(.hasBg) .sub_link,
.ly_header.fixed .gnb_link,
.ly_header.fixed .sub_link {
	font-weight: var(--font-md);
}

.ly_header.fixed {
	top: -100px;
}

.up .ly_header.fixed {
	top: 0;
}

@media (min-width: 993px) {
	.ly_header.fixed {
		--header: 92px;
	}

	.header_gnb {
		width: 75%;
		max-width: 913px;
	}

	.gnb_list {
		--pdd: clamp(15px, 1.512vw * 1.2, 35px);
		transform: translateX(var(--pdd));
	}

	/* 992px 기준 */
	.gnb_list>li {
		flex-grow: 1;
		position: relative;
	}

	.gnb_link {
		align-items: center;
	}

	.gnb_link .line,
	.sub_link .line {
		letter-spacing: 0.06em;
	}

	.gnb_sub {
		position: absolute;
		top: 72px;
		left: 50%;
		width: calc(var(--w) + 60px);
		padding: 20px 30px;
		transform: translateX(-50%);
	}

	.sub_list {
		width: var(--w);
		margin-inline: auto;
	}

	.ly_header.fixed .gnb_sub,
	.theme_white:not(.hasBg) .gnb_sub {
		background: #fff;
	}

	.theme_white:not(.hasBg) .ly_header,
	.ly_header.fixed {
		box-shadow: 0 1px 0 0 var(--line_gray);
	}
}

@media (max-width: 992px) {

	.theme_white:not(.hasBg).navOn .ly_header,
	.navOn .ly_header {
		--color: #fff
	}

	.header_logo {
		margin-left: 8px;
	}

	.header_logo a {
		width: 105px;
	}

	.header_gnb {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		padding-top: calc(var(--header) + 33px);
		z-index: 200;
		margin: 0;
		background: var(--color-brown);
		transform: translateX(100%);
		transition: transform .3s var(--easing_out), padding-top var(--trans);
		pointer-events: none;
		visibility: hidden;
		will-change: transform;
	}

	.header_gnb.open {
		transform: translateX(0);
		pointer-events: all;
	}

	.gnb_list {
		--color: var(--color-black);
		flex-direction: column;
		border-top: 1px solid var(--color-ivory);
		height: auto;
	}

	.gnb_list>li {
		border-bottom: 1px solid var(--color-ivory);
	}

	.hasSub .gnb_link {
		position: relative;
	}

	.hasSub .gnb_link::before {
		content: "";
		position: absolute;
		width: 20px;
		height: 11px;
		background: url('../../images/common/ico_arrow_down.svg') no-repeat 0 0/contain;
		right: calc(var(--pdd) + 7px);
	}

	.hasSub.on .gnb_link::before {
		transform: rotate(180deg);
	}

	.gnb_link {
		text-align: left;
		color: var(--color-ivory);
		font-size: 23px;
		white-space: nowrap;
		padding: 0 var(--pdd);
		padding-left: calc(var(--pdd) + 10px);
		height: 90px;
	}

	.gnb_sub {
		padding: 5px 0 40px;
	}

	.sub_link {
		font-size: 18px;
		height: 56px;
		color: var(--color-ivory);
		padding: 0 var(--pdd);
		padding-left: calc(var(--pdd) + 10px);
	}
}

@media (max-width: 576px) {
	.header_logo a {
		width: 67px;
	}
}

/* toggle */
.nav_toggle {
	--w: 27px;
	position: relative;
	width: calc(var(--w) + var(--pdd20) * 2);
	height: 100%;
	margin-right: calc(var(--pdd20) * -1);
	z-index: 300;
}

.nav_toggle .line {
	display: block;
	width: var(--w);
	height: 2px;
	background: var(--color);
	position: absolute;
	left: 50%;
	top: 50%;
	transform-origin: center;
	transform: translate(-50%, -50%);
	transition: var(--trans);
	transition-property: background, transform, margin-top, opacity;
}

.nav_toggle .line:nth-child(1) {
	margin-top: -4px;
}

.nav_toggle .line:nth-child(2) {
	margin-top: 4px;
}

.nav_toggle.on .line:nth-child(1) {
	transform: translate(-50%, -50%) rotate(45deg);
	margin-top: 0;
}

.nav_toggle.on .line:nth-child(2) {
	transform: translate(-50%, -50%) rotate(-45deg);
	margin-top: 0;
}

@media (min-width: 577px) {
	.nav_toggle {
		--w: 32px;
	}

	.nav_toggle .line:nth-child(1) {
		margin-top: -5px;
	}

	.nav_toggle .line:nth-child(2) {
		margin-top: 5px;
	}
}

@media (max-width: 992px) {
	.nav_toggle {
		margin-left: auto;
	}
}

/* container */
.ly_container {
	min-height: 70vh;
}

/* footer */
.ly_footer {
	background: var(--color-deep);
	position: relative;
	z-index: 1;
}

.ly_footer .row1 {
	position: relative;
}

.ft_logo {
	grid-area: logo;
	fill: #fff;
}

.ft_logo svg {
	width: 100%;
	height: 100%;
}

.ft_menu_list {
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
}

.ft_menu_list a {
	--color: var(--color-ivory);
	--btm: -.45em;
	color: var(--color-ivory);
	padding: 0 1.3889em;
}

.ft_menu_list.menu1 {
	grid-area: menu1;
}

.ft_menu_list.menu2 {
	grid-area: menu2;
}

.ly_footer .row2 {
	padding: var(--size33) 0;
	text-align: center;
}

.ft_copy {
	--color: #fff;
	--op: 0.5;
	line-height: 1;
	color: var(--color);
	letter-spacing: 0;
	opacity: var(--op);
}

@media (min-width: 993px) {
	body:not(.theme_white) .ly_footer {
		border-top: 1px solid var(--line8);
	}

	.ly_footer .row1 {
		--pddTop: 70px;
		text-align: center;
	}

	.ft_logo {
		width: 139px;
		padding: 64px 0;
		margin-inline: auto;
	}

	.ly_footer .row2 {
		padding: 30px 0;
	}

	.ft_menu_list.menu1 {
		border-bottom: 1px solid rgba(255, 255, 255, .2);
		margin-inline: calc(var(--pdd) * -1);
		padding-bottom: 30px;
	}
}

@media (max-width: 992px) {
	.ly_footer {
		border-top: 1px solid #9c796e;
		background: var(--color-brown);
	}

	.ly_footer .row1 {
		display: grid;
		grid-template-areas: "logo menu1" "contact contact" "menu2 menu2";
		grid-template-columns: min-content auto;
		grid-template-rows: clamp(80px, 20.513vw * 0.55, 90px) auto min-content;
	}

	.ft_logo {
		grid-area: logo;
		margin-inline: 10px;
		margin-top: 25px;
		width: max(124px, 31.795vw * 0.6);
		aspect-ratio: 1 / 0.2342;
	}

	.ft_menu_list a {
		flex-grow: 1;
		padding: 0;
		text-align: center;
	}

	.ft_menu_list.menu1 {
		grid-area: menu1;
		justify-content: flex-end;
		margin-right: calc(var(--pdd20) * -1);
	}

	.ft_menu_list.menu1 a {
		max-width: 8em;
	}

	.ft_menu_list.menu2 {
		grid-area: menu2;
		font-size: var(--size18-10);
		border-top: 1px solid #84412f;
		border-bottom: 1px solid #84412f;
		padding: clamp(21px, 5.385vw * 0.55, 33px) 0;
	}

}

.ft_contact {
	grid-area: contact;
	color: #fff;
	color: var(--color-light3);
	font-size: var(--size15);
	padding: 3.75em 10px 3.3334em;
	position: relative;
}

.ft_contact .tit {
	font-size: var(--size22);
	letter-spacing: 0.1em;
	margin-bottom: 26px;
	font-family: var(--font-ivy);
}

.ft_contact .tit,
.ft_contact .address {
	line-height: 1.4167;
}

.ft_contact .address dt {
	font-family: var(--font-ivy);
	line-height: 1;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--color-ivory4);
}

.ft_contact .address dt,
.ft_contact .address dd {
	--mg: -.15em;
	margin: var(--mg) 0;
}

.ft_contact .address dt {
	margin-bottom: calc(0.9167em + var(--mg));
	font-weight: var(--font-rg);
}

.ft_contact .address dd+dt {
	margin-top: calc(2.3334em + var(--mg));
}

.ft_contact .address dd {
	opacity: 0.7;
	font-weight: var(--font-sm);
}

.ft_copy {
	--color: var(--color-light3);
	--op: 0.7;
	font-size: var(--size18-10);
}

.ft_tel,
.ft_time {
	--mt: 0.3572em;
	font-size: var(--size18-14);
	line-height: 1.4286;
	color: var(--color-ivory4);
}

.ft_tel dl {
	display: flex;
}

.ft_tel dt {
	--pr: 0.642em;
	position: relative;
	padding-right: var(--pr);
	margin-right: var(--pr);
}

.ft_tel dt::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	width: 1px;
	height: 1em;
	background: var(--color-ivory4);
	opacity: .3;
	transform: translateY(-45%);
}

.ft_time {
	font-weight: var(--font-sm);
	margin-top: var(--size25-20);
}

.ft_time p+p {
	margin-top: var(--mt);
}

@media (min-width: 993px) {
	.ft_contact {
		padding: 30px 0 0;
	}

	.ft_contact .address {
		font-size: 0;
	}

	.ft_contact .address :is(dt, dd),
	.ft_tel {
		font-size: 16px;
		line-height: 24px;
		letter-spacing: 0;
		color: #fff;
		font-weight: var(--font-xsm);
		opacity: 0.5;
	}

	.ft_contact .address :is(dt, dd) {
		display: inline;
	}

	.ft_contact .address dt {
		letter-spacing: 0.05em;
	}

	.ft_contact .address dd::after {
		content: "\A";
		display: block;
	}

	.ft_contact .address dd>span+span::before,
	.ft_contact .address dt::after {
		content: "";
		display: inline-block;
		width: 1px;
		height: 12px;
		background: currentColor;
		margin: 0 12px;
		opacity: .5;
	}

	.ft_tel {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 26px;
	}

	.ft_tel dt::after {
		background: currentColor;
		opacity: 1;
		height: 12px;
		transform: translateY(-40%);
		opacity: 0.5;
	}
}

@media (max-width: 992px) {
	.ft_contact::before {
		--pos: calc(var(--pdd20) * -1);
		content: "";
		position: absolute;
		left: var(--pos);
		right: var(--pos);
		top: 0;
		height: 1px;
		background: #d6c5bc;
	}

	.ft_tel {
		margin-top: var(--size34);
	}

	.ft_tel dl+dl {
		margin-top: var(--mt);
	}
}

.theme_white .ly_footer {
	background: var(--line_gray2);
}

.theme_white .ft_logo {
	fill: #000;
}

.theme_white .ft_menu_list a {
	--color: #000;
	color: #000;
}

.theme_white .ly_footer .row2 {
	border-color: var(--line4);
}

.theme_white .ft_copy {
	--color: #000;
}

.theme_white .ly_footer {
	border-color: var(--line4);
}

.theme_white .ft_menu_list.menu2 {
	border-color: var(--line4);
}

.theme_white .ft_contact .tit,
.theme_white .ft_contact dl dt,
.theme_white .ft_contact dl dd {
	color: #000;
}

.theme_white .ft_contact dl dd {
	font-weight: var(--font-rg);
}

.theme_white :is(.ft_tel, .ft_time) {
	color: #000;
}

@media (min-width: 993px) {
	.theme_white .ft_menu_list.menu1 {
		border-color: var(--line4);
	}

	.theme_white .ft_contact .address dt {
		font-weight: var(--font-sm);
	}

	.theme_white .ft_contact .address dd,
	.ft_tel dt {
		font-weight: var(--font-rg);
	}
}

@media (max-width: 992px) {
	.theme_white .ft_contact dl dd {
		font-weight: var(--font-rg);
	}

	.theme_white .ft_contact::before {
		background-color: var(--line4);
	}
}

.gotoTop {
	--delay: .2s !important;
	position: fixed;
	right: 3.646vw;
	bottom: 8.98vh;
	width: clamp(40px, 11.538vw * 0.5, 70px);
	aspect-ratio: 1;
	background: url('../../images/common/ico_gotop.svg') no-repeat center/contain;
	z-index: 100;
}

@media (max-width: 992px) {
	.gotoTop {
		right: max(4.615vw, 18px);
		bottom: 2.406vh;
	}
}

/* tab */
.tab_panel[hidden] {
	display: none;
}

/* modal */
.modal {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 999;
}

.modal.open {
	display: block;
}

.modal.hide {
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease;
}

.modal_module {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10vh var(--pdd);
	pointer-events: none;
}

.modal_content {
	width: 100%;
	max-width: 1440px;
	background: #fff;
	position: relative;
	pointer-events: all;
	padding: var(--size36) var(--pdd);
}

/* 992px 기준 */
.modal_header {
	text-align: center;
	color: var(--color-brown);
	margin: var(--size25-20) 0 var(--size50-23);
}

.modal_tit {
	font-size: var(--size24-21);
	line-height: 1;
	font-weight: var(--font-bd);
	letter-spacing: -0.03em;
}

.modal_header .tit_desc {
	--mg: -.45em;
	font-size: var(--size20);
	line-height: var(--lineH20);
	letter-spacing: -0.03em;
	font-weight: var(--font-sm);
	margin: calc(28px + var(--mg)) 0 var(--mg);
}

.modal_body {
	/* max-height: 80vh; height: auto; overflow: hidden; overflow-y: auto; */
}

.modal_body::-webkit-scrollbar {
	width: 8px;
	border-radius: 10px;
}

.modal_body::-webkit-scrollbar-track {
	background: none;
}

.modal_body::-webkit-scrollbar-thumb {
	background: rgba(216, 216, 216, 0.7);
}

.modal .modal_close {
	position: absolute;
	top: 26px;
	right: 0;
	width: var(--size26-18);
	aspect-ratio: 1;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.44' height='20.438'%3E%3Cpath fill='%23111' d='m20.43 1.427-19 19-1.42-1.416 19-19ZM1.43.011l19 19-1.42 1.416-19-19Z'/%3E%3C/svg%3E") no-repeat center / 50%;
}

.modal .btn_area {
	text-align: center;
	margin-top: var(--size33-26);
}

.modal .btn_close {
	width: 200px;
	height: 50px;
}

.modal .btn_close_sm {
	width: 80px;
	height: 35px;
	font-size: 16px;
	letter-spacing: -0.03em;
}

.modal.alert .modal_content {
	max-width: 450px;
	min-height: 200px;
	border-radius: 16px;
	padding-top: 28px;
	padding-bottom: 19px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.modal.alert .modal_header {
	margin: 0 0 10px;
}

.modal.alert .modal_tit {
	font-size: 22px;
	line-height: 1.454;
}

.modal.alert .modal_body {
	font-size: 16px;
	line-height: 1.625;
	text-align: center;
	letter-spacing: -0.03em;
	color: var(--color-brown);
}

.modal.alert .btn_area {
	margin-top: 25px;
}

.theme_white .modal_tit,
.theme_white .modal_header,
.theme_white .privacy_box .item dd {
	color: #000;
}

.theme_white .privacy_box .item dt {
	background: #000;
}

.theme_white .privacy_box .item dd {
	background: var(--line_gray2);
}

@media (min-width: 993px) {
	.modal.alert .modal_body {
		letter-spacing: -0.045em;
	}
}

@media (max-width: 992px) {
	.modal.full .modal_module {
		padding: 0;
	}

	.modal.full .modal_content {
		height: 100%;
	}

	.modal_header .tit_desc {
		--mg: -.35em;
	}
}

.dim {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .65);
	z-index: 900;
	display: none;
}

.gm-style-cc,
.map [alt="Google"] {
	display: none !important;
}

/* brands logo */
.brands_list .logo1 {
	--h: clamp(26px, 6.667vw * 0.6, 50px);
}

/* minotticucine */
.brands_list .logo2 {
	--h: clamp(21px, 5.385vw * 0.6, 41px);
}

/* elmar */
.brands_list .logo3 {
	--h: clamp(13px, 3.334vw * 0.6, 31px);
}

/* Euromobil */
.brands_list .logo4 {
	--h: clamp(26px, 6.667vw * 0.6, 65px);
}

/* febalcasa */
.brands_list .logo5 {
	--h: clamp(23px, 5.897vw * 0.6, 55px);
}

/* falper */
.brands_list .logo6 {
	--h: clamp(33px, 8.462vw * 0.6, 81px);
}

/* Lama */
.brands_list .logo7 {
	--h: clamp(28px, 7.179vw * 0.6, 68px);
}

/* MIXAL */
.brands_list .logo8 {
	--h: clamp(11px, 2.821vw * 0.6, 28px);
}

/* GIOBAGNARA */
.brands_list .logo9 {
	--h: clamp(38px, 9.744vw * 0.6, 94px);
}

/* fabita */
.brands_list .logo10 {
	--h: clamp(11px, 2.821vw * 0.6, 26px);
}

/* BARAZZA */
.brands_list .logo11 {
	--h: clamp(22px, 5.641vw * 0.6, 55px);
}

/* Fim */
.brands_list .logo12 {
	--h: clamp(19px, 4.872vw * 0.6, 46px);
}

/* MisuraEmme */

/* animation */
[data-anim],
[data-anim-inline] {
	--delay: 0s;
	--dist: 120px;
	--dur: 1.2s;
	opacity: 0;
	will-change: transform;
	-webkit-font-smoothing: antialiased;
	-moz-osz-font-smoothing: grayscale;
}

[data-anim="group"] {
	opacity: 1;
}

[data-anim="fadeUp"].on,
:is(.on) [data-anim-inline="fadeUp"] {
	animation: fadeUp var(--dur) var(--delay) var(--easing_out) both;
}

@keyframes fadeUp {
	0% {
		transform: translateY(var(--dist));
		opacity: 0;
	}

	100% {
		transform: translateY(0);
		opacity: 1;
	}
}

.txt_anim_wrap {
	overflow: hidden;
	display: inline-block;
	vertical-align: top;
}

.txt_anim {
	display: inline-block;
	white-space: nowrap;
	vertical-align: top;
}

[data-anim-txt] {
	--delay: 0s;
	--dur: 1s;
	opacity: 0;
	will-change: transform;
	-webkit-font-smoothing: antialiased;
	-moz-osz-font-smoothing: grayscale;
}

[data-anim-txt="up"].on {
	--dist: 150%;
	animation: textUp var(--dur) var(--delay) var(--easing_out) both;
}

[data-anim-txt="right"].on {
	animation: textRight var(--dur) var(--delay) var(--easing_out) both;
}

@keyframes textUp {
	0% {
		transform: translateY(var(--dist));
		opacity: 0;
	}

	100% {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes textRight {
	0% {
		clip-path: polygon(0 0, 0 0, 0% 100%, 0% 100%);
		opacity: 0;
	}

	100% {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
		opacity: 1;
	}
}

/* 쇼룸 예약 플로팅 버튼 스타일 */
.cookie .top_btn_wr {
	bottom: 20rem;
}

.top_btn_wr {
	position: fixed;
	bottom: 3rem;
	right: 2rem;
	z-index: 100;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	transition: all 0.4s ease-in-out;
	pointer-events: none;
}

.top_btn_wr .top_btn {
	color: #fff;
	width: 6.0rem;
	height: 6.0rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	background: transparent;
	background: rgb(64 64 64 / 84%);
	display: none;
}

.top_btn_wr .demo_btn_wr {
	position: relative;
	width: 5.2rem;
	height: 7.6rem;
	margin-top: 1rem;
	overflow: visible;
}

.top_btn_wr .demo_btn.on {
	line-height: 110%;
	width: 50px;
	height: 100px;
	border-radius: 10rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	background: #2a96a6 ;
	position: absolute;
	top: 0;
	right: 0;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 600;
	z-index: 2;
	transform-origin: right center;
	transition: opacity 0.32s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.32s ease;
}

.top_btn_wr .demo_btn.on img {
	width: 1.8rem;
	height: auto;
	margin-bottom: 0.4rem !important;
}

.top_btn_wr .demo_btn {
	display: none;
}

.top_btn_wr .top_btn,
.top_btn_wr .demo_btn {
	pointer-events: auto;
}

.top_btn_wr .demo_btn_wr,
.top_btn_wr .demo_btn_hover {
	pointer-events: none;
}

.demo_btn_hover {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 220px;
	height: 100%;
	padding: 0;
	border: 0;
	background: none;
	opacity: 0;
	pointer-events: none;
	transform: translateX(1.2rem) scaleX(0.9);
	transform-origin: right center;
	transition: opacity 0.28s ease, transform 0.46s cubic-bezier(0.22, 1, 0.36, 1);
}

.demo_btn_hover img {
	display: block;
	width: 100%;
}

.demo_btn.on:hover {
	opacity: 0;
	transform: scale(0.92);
}

.demo_btn.on:hover+.demo_btn_hover {
	opacity: 1;
	transform: translateX(0) scaleX(1);
}

@media screen and (max-width: 992px) {
	.top_btn_wr {
		right: 1rem;
		bottom: 2rem;
	}

	.top_btn_wr .demo_btn.on {
		font-size: 0.85rem;
		width: 3.4rem;
		height: 5.8rem;
	}

	.top_btn_wr .demo_btn.on img {
		width: 1.4rem;
		margin-bottom: 0.2rem !important;
	}

	.top_btn_wr .demo_btn_wr {
		width: 4.4rem;
		height: 6.4rem;
	}

	.top_btn_wr .top_btn {
		display: block;
		width: 4.4rem;
		height: 4.4rem;
	}

	.demo_btn_hover {
		width: 13.0rem;
	}
}