@charset "utf-8";
.modal-logo{width:90px;}

.main-container {
	width: 100%;
	max-width: 440px;
	margin: 0 auto;
	background-color: var(--white);
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.content-wrapper {
	max-height: calc(100dvh - 18rem);
	overflow-y: auto;
	padding: 20px;
}

.content-wrapper2 {
	overflow-y: auto;
	padding: 20px;
}

.content-wrapper3 {
	overflow-y: auto;
	padding: 20px;
	/*margin-bottom: 130px;*/
}

.content-wrapper4 {
	overflow-y: auto;
	padding: 20px;
	margin-bottom: 140px;
}

.content-wrapper5 {
	max-height: calc(100vh - 15rem);
	overflow-y: auto;
	padding: 20px;
}

.header2 {
	position: relative;
	height: 40px;
	background-color: var(--white);
	margin-bottom: 10px;
}

.header2-left {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	padding-left: 2rem;
}

.header2-title {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	font-size: 18px;
	font-weight: 800;
}

.header2-right {
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	padding-right: 2rem;
}

:root {
	--black: #333;
	--white: #fff;
	--orange: #ff9028;
	--red: #ed3024;
	--red2: #d4000b;
	--red3: #ff6960;
	--red4: #c34d45;
	--footer: rgba(103, 103, 103, 0.5);
	--gray: #999999;
	--gray2: #ddd;
	--gray3: #c8c8c8;
	--gray4: #676767;
	--gray5: #b3b3b3;
	--gray6: #f5f5f5;
	--pink: #fd978a;
	--pink2: #fff2f3;
	--pink3: #ec7b74;
	--green: #a9c300;
	--sky: #20aff6;
	--navy: #0a203f;
	--fs8: 0.8rem;
	--fs10: 1rem;
	--fs12: 1.2rem;
	--fs13: 1.3rem;
	--fs14: 1.4rem;
	--fs16: 1.6rem;
	--fs18: 1.8rem;
	--fs20: 2rem;
	--fs22: 2.2rem;
	--fs24: 2.4rem;
}

/* text */
.fblack {
	color: var(--black);
}

.fnavy {
	color: var(--navy);
}

.bgblack {
	background-color: var(--black);
}

.fwhi {
	color: var(--white);
}

.bgwhi {
	background-color: var(--white);
}

.bggray6 {
	background-color: var(--gray6);
}

.fred {
	color: var(--red);
}

.fred2 {
	color: var(--red2);
}

.fred3 {
	color: var(--red3);
}

.fgray {
	color: var(--gray);
}

.fgray2 {
	color: var(--gray2);
}

.fgra3 {
	color: var(--gray3);
}

.fgra4 {
	color: var(--gray4);
}

.fgra5 {
	color: var(--gray5);
}

.fpink {
	color: var(--pink);
}

.fpink2 {
	color: var(--pink2);
}

.fgreen {
	color: var(--green);
}

.fsky {
	color: var(--sky);
}

.forange {
	color: var(--orange);
}

.bggray6 {
	background-color: var(--gray6);
}

.fupline {
	text-decoration: line-through;
}

.fital {
	font-style: italic;
}

.fs8 {
	font-size: 0.8rem;
}

.fs10 {
	font-size: 1rem;
}

.fs12 {
	font-size: 1.2rem;
}

.fs13 {
	font-size: 1.3rem;
}

.fs14 {
	font-size: 1.4rem;
}

.fs16 {
	font-size: var(--fs16);
}

.fs18 {
	font-size: var(--fs18);
}

.fs20 {
	font-size: var(--fs20);
}

.fs22 {
	font-size: var(--fs22);
}

.fs24 {
	font-size: var(--fs24);
}

.lh12 {
	line-height: 120%;
}

.lh14 {
	line-height: 140%;
}

.tx-spa4 {
	letter-spacing: -0.4px;
}

.tx-spa57 {
	letter-spacing: -0.57px;
}

.tx-spa8 {
	letter-spacing: -0.8px;
}

.underline {
	text-decoration: underline;
}

/* text-weight */
.fw400 {
	font-weight: 400;
}

.fw500 {
	font-weight: 500;
}

.fw600 {
	font-weight: 600;
}

.fw700 {
	font-weight: 700;
}

.fwbold {
	font-weight: bold;
}

/* .text-align */
.txcen {
	text-align: center;
}

/* margin */
.mr3 {
	margin-right: 0.3rem;
}

.mr4 {
	margin-right: 0.4rem;
}

.mr5 {
	margin-right: 0.5rem;
}

.mr10 {
	margin-right: 1rem;
}

.mr20 {
	margin-right: 2rem;
}

.mr40 {
	margin-right: 4rem;
}

.ml3 {
	margin-left: 0.3rem;
}

.ml5 {
	margin-left: 0.5rem;
}

.ml8 {
	margin-left: 0.8rem;
}

.ml10 {
	margin-left: 1rem;
}

.ml20 {
	margin-left: 2rem;
}

.ml30 {
	margin-left: 3rem;
}

.ml40 {
	margin-left: 4rem;
}

.mt5 {
	margin-top: 0.5rem;
}

.mt8 {
	margin-top: 0.8rem;
}

.mt10 {
	margin-top: 1rem;
}

.mt12 {
	margin-top: 1.2rem;
}

.mt18 {
	margin-top: 1.8rem;
}

.mt20 {
	margin-top: 2rem;
}

.mt30 {
	margin-top: 3rem;
}

.mt40 {
	margin-top: 4rem;
}

.mt50 {
	margin-top: 5rem;
}

.mt60 {
	margin-top: 6rem;
}

.mt80 {
	margin-top: 8rem;
}

.mt100 {
	margin-top: 10rem;
}

.mb3 {
	margin-bottom: 0.5rem;
}

.mb5 {
	margin-bottom: 0.3rem;
}

.mb8 {
	margin-bottom: 0.8rem;
}

.mb10 {
	margin-bottom: 1rem;
}

.mb12 {
	margin-bottom: 1.2rem;
}

.mb15 {
	margin-bottom: 1.5rem;
}

.mb20 {
	margin-bottom: 2rem;
}

.mb30 {
	margin-bottom: 3rem;
}

.mb40 {
	margin-bottom: 4rem;
}

.mb50 {
	margin-bottom: 5rem;
}

.mb80 {
	margin-bottom: 5rem;
}

.mx10 {
	margin: 0 1rem;
}

/* padding */
.p5 {
	padding: 0.5rem;
}

.p10 {
	padding: 1rem;
}

.p12 {
	padding: 1.2rem;
}

.p15 {
	padding: 1.5rem;
}

.p20 {
	padding: 2rem;
}

.plr21 {
	padding: 0.2rem 1rem;
}

.pt20 {
	padding: 2rem 0rem;
}

.pr20 {
	padding: 0 2rem;
}

.pt2pr15 {
	padding: 2rem 1.5rem;
}

.py5 {
	padding: 0 0.5rem;
}

.pb10 {
	padding: 0 0.5rem;
}

.p720 {
	padding: 7px 20px;
}

.p615 {
	padding: 0.6rem 1.5rem;
}
/* gap */
.gap3 {
	gap: 0.3rem;
}

.gap5 {
	gap: 0.5rem;
}

.gap8 {
	gap: 0.8rem;
}

.gap10 {
	gap: 1rem;
}

.gap15 {
	gap: 1.5rem;
}

.gap20 {
	gap: 2rem;
}

.gap30 {
	gap: 3rem;
}

/* align */
.ali-row {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.row {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.row2 {
	display: flex;
	flex-direction: row;
}

.fd-row {
	display: flex;
	flex-direction: row;
}

.ali-col {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.col {
	display: flex;
	flex-direction: column;
	padding-bottom:10px;
}

.sb {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.sb2 {
	display: flex;
	justify-content: space-between;
}

.jc {
	justify-content: center;
}

.alfs {
	align-items: flex-start;
}

.jcfe {
	justify-content: flex-end;
}

.rel {
	position: relative;
}

/* border-radius */
.br5 {
	border-radius: 0.5rem;
}

.br8 {
	border-radius: 0.8rem;
}

.br20 {
	border-radius: 2rem;
}

.br30 {
	border-radius: 3rem;
}

.br54 {
	border-radius: 5.4rem;
}

/* border */
.overlay-border {
	border-bottom: 1px solid var(--gray2);
}

/* .divider  */
.divider {
	width: 100%;
	height: 1px;
	background-color: #efefef;
	margin: 2rem 0;
}

.divider-ord {
	width: 100%;
	height: 1px;
	background-color: #efefef;
}

.didashed {
	border: 1px dashed var(--gray2);
}

.divide {
	border-left: 1px solid var(--gray2);
	padding-left: 1rem;
	height: 1.6rem;
}

.divide2 {
	border-left: 1px solid var(--gray2);
	/* padding-left: 2rem; */
	height: 0.7rem; /* 세로 구분선 길이 */
	display: flex;
	align-items: center; /* 내부 텍스트를 수직 정렬 */
}

.divide3 {
	/*border-left: 1px solid var(--gray2);*/
	padding-left: 0rem;
	height: 0.7rem; /* 세로 구분선 길이 */
	display: flex;
	align-items: center; /* 내부 텍스트를 수직 정렬 */
}

.divide4 {
	border-left: 1px solid var(--gray2);
	padding-left: 1rem;
	height: 0.7rem; /* 세로 구분선 길이 */
	display: flex;
	align-items: center; /* 내부 텍스트를 수직 정렬 */
}

.line {
	width: 100%;
	height: 2px;
	transition: all 0.3s ease-in-out;
}

/* width */
.w100 {
	width: 100%;
}

.w60 {
	width: 60%;
}

.w50 {
	width: 50%;
}

.w25 {
	width: 25%;
}

.w66px {
	width: 66px;
}

.w72px {
	width: 72px;
}

.mx90 {
	min-width: 9rem;
}

.w92 {
	width: 92px;
}

.w98 {
	width: 98px;
}

.w115 {
	width: 115px;
}

/* height */
.h44 {
	height: 4.4rem;
}

/* shadow */
.sh15 {
	box-shadow: 0 0px 8px rgba(0, 0, 0, 0.15);
}

/* box */
.box1 {
	padding: 2rem;
	border-radius: 1rem;
}

.box1-w100 {
	border-radius: 1rem;
}

/* .box1.active {
  padding: 2rem;
  border-radius: 1rem;
  box-shadow: 0 0px 4px 0 #d4000b;
} */

/* 장바구니 박스 */
.box2-buy {
	border-radius: 1rem;
	border: 1px solid transparent;
}
/* 메뉴박스 */
.box {
	width: 100%;
	height: 252px;
	position: relative;
}

.box2 {
	border-radius: 1.3rem;
	border: 1px solid transparent;
	width: 100%;
	height: 268px;
	position: relative;
}

.box2.active {
	border: 1px solid var(--red2);
	border-radius: 1rem;
}

.box3 {
	border-radius: 1.3rem;
	border: 1px solid transparent;
	width: 100%;
	height: 218px;
	position: relative;
}
/* 메뉴박스 끝 */

/* button */
.bt-gray {
	border: 1px solid var(--gray2);
	color: var(--gray);
}

.bt-red-br {
	border: 1px solid var(--red2);
	color: var(--red2);
}

.bt-red-bg {
	background-color: var(--red2);
	color: var(--white);
}

.order-button-ticket {
	background-color: var(--black);
	color: var(--white);
	padding: 1.5rem 1rem;
	border-radius: 0.8rem;
	width: 18%;
	height: 4.4rem;
}

/* 토글 스위치 기본 스타일 */
.toggleSwitch {
	width: 40px;
	height: 20px;
	display: block;
	position: relative;
	border-radius: 30px;
	background-color: var(--gray2);
	cursor: pointer;
	transition: background 0.2s ease-in;
}

/* 토글 스위치의 버튼 */
.toggleSwitch .toggleButton {
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: 1px;
	transform: translateY(-50%);
	border-radius: 50%;
	background: var(--white);
	transition: all 0.2s ease-in;
}

/* 체크된 상태 */
input[type='checkbox']:checked+.toggleSwitch {
	background: #f03d3d;
}

input[type='checkbox']:checked+.toggleSwitch .toggleButton {
	left: calc(100% - 18px);
	background: #fff;
}

/* 인풋 관련 */
.input-button {
	width: 25%;
	color: var(--gray);
	border: 1px solid var(--gray2);
	padding: 1rem;
	border-radius: 0.8rem;
	height: 44px;
	transition: background-color 0.2s ease, color 0.2s ease, border 0.2s
		ease;
}

/* 버튼이 활성화될 때 적용될 스타일 */
.input-button.active {
	background-color: var(--pink2);
	color: var(--red);
	border: none;
}

.input-box {
	width: 75%;
	height: 44px;
	padding: 10px;
	border: 1px solid var(--gray2);
	border-radius: 0.8rem;
}

.input-box2 {
	width: 100%;
	height: 40px;
	padding: 10px;
	border: 1px solid var(--gray2);
	border-radius: 0.8rem;
}

.input-box2_search {
	padding: 10px 10px 10px 30px;
}

.input-box3 {
	width: 100%;
	min-height: 23rem;
	padding: 10px;
	border: 1px solid var(--gray2);
	border-radius: 0.8rem;
}

.order-input {
	width: 80%;
	border-radius: 0.8rem;
	border: 1px solid var(--gray2);
	padding: 1.5rem;
	height: 4.4rem;
}

/* 다음 버튼 */
.start-btn {
	background-color: var(--white);
	padding: 1.6rem 0;
	text-align: center;
	border: none;
	border-radius: 54px;
	cursor: pointer;
	width: 32rem;
	height: 5rem;
	border: 1px solid var(--gray2);
	width: 100%;
}

.bali {
	/* margin: 0 2rem 4rem 2rem; */
	position: fixed;
	bottom: 0;
	max-width: 440px;
	width: 90%;
	left: 50%;
	transform: translateX(-50%);
	padding: 0 0 2rem 0;
	background-color: transparent;
	background-clip: padding-box;
}

.start-btn-black {
	background-color: var(--black);
	padding: 1.6rem 0;
	text-align: center;
	border: none;
	border-radius: 54px;
	cursor: pointer;
	width: 32rem;
	height: 5rem;
	border: none;
	color: var(--white);
	width: 100%;
}

.start-btn-red {
	background-color: var(--red2);
	padding: 1.6rem 0;
	text-align: center;
	border: none;
	border-radius: 54px;
	cursor: pointer;
	width: 32rem;
	height: 5rem;
	border: none;
	color: var(--white);
	width: 100%;
}

/* ord03 등록하기 버튼 */
.ord03-save-btn {
	border: 1px solid var(--gray2);
	padding: 1.6rem 0;
	text-align: center;
	border-radius: 8px;
	cursor: pointer;
	width: 32rem;
	height: 5rem;
	color: var(--gray);
	width: 100%;
}

.ord03-save-btn.re {
	border: 1px solid var(--red);
	padding: 1.6rem 0;
	text-align: center;
	border-radius: 8px;
	cursor: pointer;
	width: 32rem;
	height: 5rem;
	color: var(--red);
	width: 100%;
}

/* 필수입력 *표시 클래스 */
.required-label {
	position: relative;
	display: inline-block;
}

.required-label::after {
	content: '*';
	color: var(--red);
	margin-left: 2px;
	font-size: 1.4rem;
}

/* 버튼 */
.btn {
	padding: 12px 20px;
	border-radius: 8px;
	border: 1px solid var(--gray2);
	background-color: #fff;
	font-size: 16px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-gray {
	border: 1px solid var(--gray2);
	color: var(--gray);
	font-size: 1.4rem;
	height: 4.4rem;
}

.bt-bg-gray {
	background-color: var(--gray6);
	color: var(--gray);
	height: 4.4rem;
	font-size: 1.4rem;
}

.bt-bg-red {
	background-color: var(--red2);
	color: #fff;
}

.btn.active {
	background-color: var(--red);
	color: var(--white);
	border: none;
}

/* 버튼두개있는 모달 (모달1) */
/* 모달 오버레이: 화면 전체 덮는 반투명 배경 */
.modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
	display: flex; /* 가운데 정렬 */
	align-items: center;
	justify-content: center;
}

/* 숨기기 */
.modal-overlay.hidden {
	display: none;
}

.hidden {
	display: none;
}

/* 모달 박스 */
.modal-container {
	width: 90%;
	max-width: 440px;
	background-color: #fff;
	border-radius: 8px;
	text-align: center;
	box-shadow: 0 0px 8px rgba(0, 0, 0, 0.15);
}

.modal-container2 {
	width: 90%;
	max-width: 440px;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 0px 8px rgba(0, 0, 0, 0.15);
}

.modal-top2 {
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.modal-top {
	padding: 4rem 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

.modal-bot {
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
	border-top: 1px solid #ddd;
}

/* 로고 이미지 */
.modal-logo {
	display: block;
	margin: 0 auto 10px auto; /* 가운데 정렬 + 아래 여백 */
}

/* 버튼 공통 스타일 */
.modal-buttons button {
	flex: 1;
	padding: 12px 0;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
}

/* 모달 버튼 */
.btn-more {
	width: 50%;
	height: 100%;
	color: var(--red);
}

/* 모달 닫기 버튼 */
.btn-close {
	color: #fff;
	width: 50%;
	height: 100%;
	color: var(--gray);
	border-right: 1px solid #ddd;
}

.btn-confirm {
	color: var(--red);
	width: 100%;
	height: 100%;
}

/* 체크박스 */
/* 커스텀 체크박스 컨테이너 */
.custom-checkbox {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}

/* 기본 체크박스 숨기기 */
.custom-checkbox input {
	display: none;
}

/* 체크박스 모양 */
.custom-checkbox .checkbox-mark {
	width: 16px;
	height: 16px;
	background-color: var(--white);
	border: 1px solid var(--gray2);
	border-radius: 4px;
	position: relative;
	transition: background-color 0.3s, border-color 0.3s;
}

/* 체크 아이콘 (기본 회색) */
.custom-checkbox .checkbox-mark::after {
	content: '';
	position: absolute;
	left: 4px;
	top: 1px;
	width: 5px;
	height: 10px;
	border: solid var(--gray2);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
	transition: border-color 0.3s;
	opacity: 1;
}

/* 체크박스가 체크되었을 때 */
.custom-checkbox input:checked+.checkbox-mark {
	background-color: var(--red);
	border-color: var(--red);
}

.custom-checkbox input:checked+.checkbox-mark::after {
	border-color: #fff;
}

/* 메뉴 뱃지 */
.badge {
	display: inline-block;
	padding: 3px 6px;
	font-size: 12px;
	border-radius: 4px;
	background-color: #ffefba;
}

.badge.quick {
	background-color: var(--red);
	color: var(--white);
	border-radius: 99px;
	font-size: 1.1rem;
	padding: 0.3rem 1rem;
}

.badge.new {
	background-color: var(--red);
	color: var(--white);
	border-radius: 99px;
	font-size: 0.8rem;
}

.badge.md {
	background-color: var(--orange);
	color: var(--white);
	border-radius: 99px;
	font-size: 8px;
}

.badge.best {
	background-color: var(--pink);
	color: var(--white);
	border-radius: 99px;
	font-size: 8px;
}

.badge.nprdetail {
	background-color: var(--white);
	color: var(--black);
	border-radius: 99px;
	font-size: 10px;
	height: 1.8rem;
}

.badge.not {
	background-color: var(--black);
	color: var(--white);
	border-radius: 99px;
	font-size: 10px;
	height: 1.8rem;
}

.badge.faq3 {
	background-color: var(--white);
	border: 1px solid var(--gray2);
	color: var(--gray);
	border-radius: 99px;
	font-size: 10px;
	height: 1.8rem;
}

.badge.play {
	border: 1px solid var(--red);
	background-color: var(--white);
	color: var(--red);
	border-radius: 99px;
	font-size: 0.8rem;
}

.store-open {
	border-radius: 50%;
	background-color: var(--green);
	width: 1rem;
	height: 1rem;
	margin-right: 0.5rem;
}

.store-close {
	border-radius: 50%;
	background-color: var(--gray2);
	width: 1rem;
	height: 1rem;
	margin-right: 0.5rem;
}

.method-de-open-con {
	border-radius: 0.8rem;
	border: 1px solid #e8e8e8;
	padding: 1rem;
}

.method-de-close-con {
	background-color: rgba(51, 51, 51, 0.4);
	border: 1px solid var(--gray);
	position: relative;
}

.method-de-close-con::after {
	content: '준비중';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	font-size: 12px;
}

.ad-cir.on {
	width: 2.2rem;
	height: 2.2rem;
	background-color: var(--red2);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ad-cir {
	width: 2.2rem;
	height: 2.2rem;
	background-color: var(--gray6);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ad-cir img {
	max-width: 1.5rem;
}

/* 아래에서 나오는 팝업 css */
.popup-overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
}

.popup-overlay2 {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.popup-bottom {
	position: fixed;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	max-width: 440px;
	background-color: #fff;
	border-radius: 15px 15px 0 0;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
}

.popup-inner {
	padding: 20px;
}

.popup-inner2 {
	padding: 20px 20px 80px 20px;
}

/* 팝업 타이틀 */
.popup-title {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}

.popup-close {
	position: absolute;
	right: 2px;
}

/* 팝업 메시지 */
.popup-message {
	font-size: 14px;
	line-height: 1.5;
	color: #333;
	margin-bottom: 16px;
	text-align: center;
}

/* 확인 버튼 */
.popup-confirm {
	display: block;
	width: 100%;
	border: none;
	background-color: var(--white);
	font-weight: bold;
	cursor: pointer;
	text-align: center;
	border-top: 1px solid #d5d5d5;
	padding: 14px;
}

/* 확인 버튼2 - 결제 */
.popup-confirm2 {
	display: block;
	width: 100%;
	border-radius: 54px;
	background-color: var(--red2);
	font-weight: bold;
	cursor: pointer;
	text-align: center;
	border-top: 1px solid #d5d5d5;
	padding: 18px 52px;
	color: var(--white);
}

.reco-btn-add {
	width: 50%;
	border-radius: 0.8rem;
	border: 1px solid var(--gray2);
	height: 4rem;
}

.reco-btn-myp {
	width: 50%;
	border-radius: 0.8rem;
	border: none;
	background-color: var(--red);
	height: 4rem;
}

/* 아래 팝업 css 끝 */
.pay-img {
	max-height: 2rem;
}

/* 푸터 위 팝업 */
.new-pop-con {
	position: fixed;
	bottom: 95px;
	left: 50%;
	transform: translateX(-50%);
}

.new-pop {
	background-color: rgba(51, 51, 51, 0.7);
	color: var(--white);
	width: 26rem;
	height: 3.4rem;
	border-radius: 5rem;
}

.new-pop-con2 {
	position: fixed;
	bottom: 345px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 999;
}

.reco-con {
	display: flex;
	gap: 0.5rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
	width: 100%;
	padding-bottom: 2rem;
}

.reco {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 11rem;
	height: 11rem;
	border: 1px solid var(--gray2);
	border-radius: 1rem;
	position: relative;
	padding-bottom: 1rem;
}

.reco img {
	max-height: 72%;
}

.reco-plus {
	position: absolute;
	right: 3px;
	top: 4px;
}

.quick-con {
	display: flex;
	flex-direction: row;
	gap: 1rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
	width: 100%;
	padding-bottom: 5rem !important;
}

.quick-box {
	flex: 0 0 auto;
	max-width: 90%;
	border: 1px solid var(--red2);
	border-radius: 1rem;
	height: auto;
	padding: 1rem 1.5rem;
	position: relative;
}

.quick-box-empty {
	flex: 0 0 auto;
	max-width: 90%;
	border: 1px dotted var(--gray2);
	border-radius: 1rem;
	height: 14rem;
	padding: 2rem;
	background-color: var(--gray6);
	display: flex;
	justify-content: center; /* 가로 가운데 정렬 */
	align-items: center; /* 세로 가운데 정렬 */
}

.quick-img {
	max-width: 7rem;
	max-height: 7rem;
}

.quick-img2 {
	max-width: 9rem;
	max-height: 9rem;
}

.quick-regi {
	background-color: var(--white);
	border: 1px solid var(--gray2);
	font-size: 1.4rem;
	border-radius: 5.4rem;
	padding: 1.3rem 5rem;
}

.quick-close {
	position: absolute;
	right: 20px;
	top: 20px;
	width: 20px;
	height: 20px;
}

.menu-bt2 {
	background-color: var(--white);
	box-shadow: 0 0 8px 0 #00000026;
	border-radius: 30px;
	color: var(--red);
	font-size: var(--fs13);
	position: absolute;
	left: 45%;
	transform: translate(-39%, 55%);
	bottom: 0;
}

.menu-bt3 {
	background-color: var(--white);
	box-shadow: 0 0 8px 0 #00000026;
	border-radius: 30px;
	color: var(--red);
	font-size: var(--fs13);
	position: absolute;
	left: 45%;
	transform: translate(-35%, -9%);
	bottom: -18px;
}

/*검색페이지 ui*/
.load_first_search .fwbold {
	margin-bottom: 2rem;
}

.menu_none {
	font-size: 13px;
	margin: 1rem;
}

.cunt_total {
	font-weight: 800;
	font-size: 15px;
	margin-bottom: 1rem;
}

.cunt_total span {
	margin-right: 0.5rem;
}

.menu_list_cont li {
	display: flex;
	align-items: center;
}

.menu_list_cont li img {
	width: 20%;
	margin-right: 1rem;
	max-width: 95px;
}

.menu_list_cont li span {
	font-size: 13px;
}

.menu_list_cont li:after {
	content: '';
	background: url(../assets/img/main-arrow.svg);
	width: 14px;
	height: 14px;
	position: absolute;
	right: 3rem;
}

/*개인정보 활용 동의 */
.agree-item .fs16 {
	font-size: 12px;
}

/* 공통 셀렉박스 */
.not-select {
	width: 100%;
	background: none;
	line-height: normal;
}

.gap10_selected .not-select {
	width: 100%;
	background: none;
	line-height: normal;
	padding: 1rem;
	height: auto;
}

.gap10 .not-select span {
	vertical-align: middle;
}

.nice-select.open .list {
	width: 100%;
	border: 1px solid #cfcfcf;
	max-height:200px;overflow:auto;
}

.nice-select .option {
	border: 0;
}

.gap10_box {
	background: #f8f8f8;
	padding: 2.5rem 2rem;
	color: #999;
	margin-top: 1rem;
}

.gap10_box .fs14 {
	font-size: 0.9rem;
}

.content-wrapper3 .not-select {
	background: none;
	line-height: normal;
}

.quick_list {
	display: block;
}

.quick_list span {
	display: block;
}

#quick_order_replace_area .gap5 .fw600 {
	width: 44%;
}

#quick_order_replace_area .gap5 .fgray {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 69%;
}

.quick-box .row.gap10 {
	width: 250px;
}

.quick-box .col.gap10 {
	width: 60%;
}

#quick_order_replace_area .l-scroll-style {
	border: 0;
}

.reco-con.l-scroll-style {
	border: 0;
	padding-left: 0;
}

.code_time_div {
	position: relative;
	margin-right: 0.5rem;
	width: 75%;
}

.code_time_div input {
	width: 100%;
}

.code_time {
	font-size: 1.2rem;
	width: 20%;
	color: var(--red);
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	text-align: right;
}

.box1 .fs14 {
	line-height: normal;
}

/*패드 추가 해상도 */
@media ( min-width : 576px) and (max-width: 1024px) {
	#footer-container-overlay .footer-overlay, .popup-bottom,
		.main-container, .banner-slider .main-banner, #footer-container .footer,
		#footer-container-overlay .footer, #footer-container .footer-overlay,
		.main-container #top-tab, .main-container .tab-container {
		max-width: 100%;
	}
	.ham-top-con2 img {
		margin: auto !important;
	}
	/*.content-wrapper3{max-width:700px;margin:70px auto 130px;}*/
	.content-wrapper3 {
		margin: 97px 1rem 130px;
	}
	.content-wrapper3 .box1 .sb {
		margin: 0 auto;
		width: 60%;
	}
	.exchange-container {
		margin: 5rem auto;
		max-width: none !important;
	}
	.exchange-container img {
		display: none;
	}
	.exchange-content2 {
		position: unset !important;
		transform: none !important;
		border-radius: 0.8rem;
		padding: 1.2rem;
		width: 100%;
		background: var(--black);
	}
	.exchange-content2 img {
		display: block;
	}
}

.search-container {
	position: relative;
	max-width: 400px;
	margin: 0 auto;
}

.search-input {
	width: 100%;
	font-size: 16px;
	outline: none;
	transition: border-color 0.3s ease;
	box-sizing: border-box;
}

.search-input:focus {
	border-color: #000;
}

.clear-btn {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	background: #999;
	color: white;
	border: none;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	display: none;
	transition: background-color 0.3s ease;
	align-items: center;
	justify-content: center;
	line-height: 24px;
}

.clear-btn:hover {
	background: #666;
}

/*결제하기 주소검색하기 팝업 */
#post_wrap {
	width: 100%;
	height: 100dvh !important;
	background: #fff;
	display: none;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 99;
	background: #fff;
}

#post_wrap .header2 {
	margin-bottom: 4rem;
}

/*퀵오더 추가 css*/
.left_list_line {
	width: 70px;
}

.right_list_line {
	width: 70%;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.quick-box .row.gap10 {
	width: 100%;
}

.right_opction_line {
	width: 70%;
}

.list_number_count i {
	color: var(--red);
}

#quick_order_replace_area .gap5 .fw600 {
	width: 65px;
}

.quick-box .row.gap10 {_menu_name
	width: 280px;
}

.Ntext {
	display: flex;
    align-items: center;
    width: 69%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#quick_order_replace_area .gap5 .fgray.N_menu_name {
	max-width: 100%;
	width: auto;
}

.footer_location_info {
	margin-top: 3rem;
}

/*푸터하단바 배달인지 포장인지 체크 */
.order_chose {
	background: #c73232;
	/* width: 88px; */
	text-align: center;
	padding: 0.5rem 0.8rem;
	border-radius: 5px;
	/* float: right; */
	margin-right: 0.5rem;
	vertical-align: middle;
}

.agree-item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.circle-checkbox {
  position: relative;
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  cursor: pointer;
}

.circle-checkbox input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.circle-checkbox .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  border: 1px solid var(--gray2);
  border-radius: 50%; /* 원형 */
  background-color: var(--white);
  background-image: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* 체크된 상태 */
.circle-checkbox input:checked ~ .checkmark {
  background-color: var(--red);
  border-color: var(--red);
  background-image: url('../mo/assets/img/check-white.svg');}
  
 .ali-row.bali{background:#fff;z-index:1;} 

 .content-wrapper_footer_none{max-height: calc(100dvh - 40px);}
 
 
 /*멤버십쿠폰 기한만료*/
 .coupon-wrap{z-index:0;}
 
 /*셀렉박스*/
 .nice-select{height:40px;line-height:40px;}
 
 /*메인 햄버거쪽 마이페이지 */
 .my_i_fo{display:flex;    justify-content: space-around; width: 100%;padding: 0 9% 3rem;
    border-bottom: 1px solid #ececec;}
    .my_i_fo_row{    flex-direction: column;     align-items: stretch;margin: 2rem 2rem 0;}
    .box1_1 .my_i_fo_row .fs14_i{font-size:11px;color:#999;}
    .mem-badge{width:100%;}
    .my_i_fo_row .mem-w{width:auto;margin: auto;}
   .my_i_fo_row .mem-badge{font-size:10px;margin-top: 0.2rem;    padding: 0.3rem 0.8rem;width: 100%;}
    .box1_1{padding:2rem 0;}
    .exchange-content2{width:100%;}
    @media only screen and (max-width: 450px){
    .my_i_fo_row{margin:2rem 0 0;}
    }
    @media only screen and (max-width: 344px){
    .my_i_fo_row{margin:2rem 0 0;}
    }
    
    
   /*매장찾기 정보박스 */
    .map-icon-item{padding:1rem;height:120px;line-height:1.4;font-size:13px;}
    .map-icon-item .name{font-weight:800;}
    .map-icon-item .delivery{text-align: end;color: #d00606;}
    .map-icon-item .desc::after {
        content: '';
    position: absolute;
    bottom: -12px;
    left: 50%;
    width: 15px;
    height: 15px;
    border: 1px solid #7681a8;
    border-width: 0 1px 1px 0;
    background-color: #fff;
    -webkit-transform: rotate(45deg) translateX(-50%);
    transform: rotate(45deg) translateX(-50%);
}