@charset "utf-8";
@import url(reset.css);



/* header */
#header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	height: 55px;
	line-height: 55px;
	background:#fff;
	top: 0;
    left: 0;
    right: 0;
	max-width:600px;
	margin:0 auto;

}
#header .subtitle {
	font-size: 16px;
	font-weight: 500;
	color: #111;
	line-height:55px;
	padding-left:55px;
}
#header .menuBtn{
	position: absolute;
	left: 20px;	
}
.menuBtn img{
	width: 24px;
	vertical-align:middle;
}

/* footer */
.bottom-btn {/*20250203*/
	position: fixed;
	clear: both;
	bottom: 0;
	left:0;
	right:0;
	z-index: 10;
	text-align: center;
	padding:2rem 0 1rem;
	width: 100%;
	background: #bd2137; /* 20250206 */
	max-width:600px;
	margin:0 auto;
	height:55px;
}
.bottom-btn .cscenter{ /*20250203*/
	color:#fff;
	font-weight:500;
	font-size:1.4rem;
	position:relative;
	letter-spacing: -0.1rem;
}
.bottom-btn .cscenter .ico{
	padding-left:20px; /*20250203*/
	position:relative;
}
.bottom-btn .cscenter .ico::before{
	position:absolute;
	left:0;
	top:1px;
	content:'';
	width:15px;
	height:15px;
	display: block;
	background:url(../images/cs_icon.png) 0 0 /15px no-repeat;
}


/*================================== main layout ===================================*/

.content{
	width:100%;
	box-sizing: border-box;
	padding: 0 0 55px 0; /*20250203*/
	max-width:600px;
	margin:0 auto;
	position:relative;
}
.logo-wrap{ /* 20250203 */
	background:#fff;
	padding:5rem 0 3rem;
}
.logo-wrap .logo-box{ /* 20250203 */
	width:200px;
	margin:0 auto;
	background:url(../images/main_logo.png) 0 0 /200px no-repeat;
	height:50px; /*20250206 */
	padding-top:4rem;
}

/* 카드 조회 */
.searchtop{
	padding:0 2rem 2rem;
	background:#fff;
}
.search-box .del {
	position: absolute;
	right: 4.5rem;
	top: 50%;
	margin-top: -24px;
	background: transparent;
	line-height: 45px;
	font-size: 1.8rem;
}
.search-box .del img{
	width:16px;
}
.form-box .form-item{
	display:flex;
	justify-items: flex-end;
}
.form-box .form-item label{
	width:80px;
	font-size:1.4rem;
	font-weight:500;
	line-height:45px;
}
.form-box .form-item + .form-item{
	margin-top:1rem;
}
.form-box .form-item .input-set{
	position:relative;
	width:calc(100% - 80px);
}
.input-set .del{
	position: absolute;
	right: 1rem;
	top: 50%;
	margin-top: -24px;
	background: transparent;
	line-height: 45px;
	font-size: 1.8rem;
}
.input-set .del img{
	width:16px;
}
.form-box .submit{
	width:100%;
	line-height:4.5rem;
	border-radius:4px;
	margin-top:1rem;
	font-size:1.5rem;
	font-weight:500;
	color:#fff;
	background:#bd2137; /* 20250206 */
}

/* 서비스 바로가기 */
.quick-menu-list{
	width:100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction:row;
	margin-top:3rem;
	padding:0;
}
.quick-menu-list li{
	width:33.3%;
}
.quick-menu-list li a{
	display: block;
	cursor: pointer;
}
.quick-menu-list li a div{
	position:relative;
	margin:0 auto;
	width:76px;
	height:76px;
	background-color: #fff;
	border-radius:100px;
	box-shadow: -1px 6px 10px 1px rgb(0 0 0 / 5%);
}
.quick-menu-list li a div:before{
	content:'';
	width:50px;
	height:50px;
	position:absolute;
	top:50%;
	left:50%;
	margin-left:-25px;
	margin-top:-25px;
	display: block;
	background:url(../images/quick-menu-list_ico.png) 0 0 /150px no-repeat;
}
.quick-menu-list li a div.menu-ico2:before{
	background-position:-50px 0;
}
.quick-menu-list li a div.menu-ico3:before{
	background-position:-100px 0;
}
.quick-menu-list li a h4{
	text-align:center;
	font-weight:600;
	font-size:1.4rem;
	margin-top:10px;
	color:#fff;
	letter-spacing: -0.05rem;
}



/*====================================================================================================*/

/*==========================================  공통 css  ==============================================*/
.sub-content{
	max-width:600px;
	margin:0 auto;
	position:relative;
}
.container {
	width: 100%;
	box-sizing: border-box;
	padding: 0 0 60px 0;
	background: #bd2137;  /* 20250206 */
    min-height: -webkit-calc(100vh - 105px);
    min-height: calc(100vh - 105px);
}
.con-box{
	position:relative;
	padding:1rem 2rem;
}
.bgBlue{
	background:#bd2137; /* 20250206 */
    min-height: -webkit-calc(100vh - 55px);
	min-height: calc(100vh - 55px);
}

/* > 화살표 */
.arrow {
	border: solid #939ca5;
	border-width: 0 1px 1px 0;
	vertical-align: middle;
	display: inline-block;
	padding: 2px;
	margin-left:3px;
	margin-top:-3px;
}
.arrow.right {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

/* 결과 없음 */
.no_result{
	width:100%;
	text-align: center;
	color: #222;
	font-size: 1.4rem;
	padding:2.5rem 0 3rem;
}
.ico_wrap {
	position: relative;
	display: block;
	width: 6rem;
	height: 6rem;
	margin: auto;
	background-color: #f4f4f4;
	border-radius: 50%;
	margin-bottom: 1.5rem;
}
.ico_wrap .ico_point:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 5px;
	height: 22px;
	background: url(../images/ico_point.png);
	transform: translate(-50%,-50%);
}
.no_result p{
	color:#999;
}

/* 말머리 */
.guidF-list{
	margin-top:8px;
}
.guidF-list li {
	position: relative;
	padding-left: 15px;
	padding-bottom: 2px;
	letter-spacing: -0.05rem;
	line-height: 1.3;
	word-break: normal;
	color: #4f565a;
	font-weight:400;
	
}
.guidF-list li:before {
	content: '';
	position: absolute;
	width: 3px;
	height: 3px;
	border-radius: 100%;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	background: #aab9bb;
	top: 6px;
	left: 5px;
	box-sizing: none;
}

/* 라운드 박스 */
.round-box{
	padding:2rem;
	border-radius:16px;
	background:#fff;
	box-shadow: -1px 6px 10px 1px rgb(0 0 0 / 5%);
}
.round-box + .round-box{
	margin-top:1rem;
}
.border-tit{
	border-bottom:1px solid #e8e8e8;
	padding-bottom:1.5rem;
	font-size:1.4rem;
	font-weight:700;
	margin-bottom:1.5rem;
}
.result-box{
    border-top:2px solid #222;
    padding:1.5rem 0;
}
.recipe-box{
	border-top:2px solid #222;
}
.bottom-btn .recipe-box{
	padding:0 1rem;
}
.recipe-box +.recipe-box{
	border-top:1px solid #e8e8e8;
	padding-top:10px;
}
.recipe-tit{
	font-size:1.5rem;
	font-weight:600;
	color:#000;
	margin-bottom:1rem;
	letter-spacing: -0.08rem;
	padding-top:2rem;
}
.recipe-tit .edit-btn{
	margin-top:-5px;
	color:#222;
	font-size:1.3rem;
	color:#4f565a;
	float:right;
	height:3rem;
	line-height:3rem;
	border:1px solid #ddd;
	border-radius:1.5rem;
	padding: 0 1.5rem;
}
.order-info + .recipe-tit{
	margin-top:1rem;
	border-top:1px solid #e8e8e8;
}
.order-info{
	margin:1rem 0 0.5rem;	
}
.order-info + .order-info{
	border-top:1px solid #e8e8e8;
	padding-top:1.5rem;
}
.order-info li{
	font-size:1.4rem;
	display: table;	
	table-layout: fixed;
	width:100%;
}
.order-info li + li{
	margin-top:.5rem;
}
.order-info li .tit {
    font-weight: 500;
    color:#4f565a;
	display:table-cell;
	vertical-align: top;
	width:8rem;
	position:relative;
}
.order-info li .tit-head {
    font-weight: 600;
    color:#222;
	display:table-cell;
	vertical-align: top;
	position:relative;
	padding-top:0.5rem;
}
.order-info li .tit.line:before {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 8px;
    height: 8px;
    border: solid #e8e8e8;
    border-width: 0 0 2px 2px;
    content: ''
}
.order-info li .txt{
	display:table-cell;
	vertical-align: middle;
	color:#000;
	text-align:right;
	font-weight:500;
}
.order-info li .txt em{
	font-weight:600;
}
.order-info + .edit-txt{
	margin-top:2rem;
}
.order-info .total-top .tit,
.order-info .total-top .txt{
	color:#000;
	font-weight:600;
}


/*====================================================================================================*/
.wrap-items .period{
    font-size: 1.2rem;
    padding: 2rem 2rem 1rem;
    color: #fff;
}
/* 쿠폰 목록 */
.storage-wrap > li{
	padding:1rem 1.5rem 0;
}
.coupon-box{
	display:flex;
	width:100%;
}
.coupon-box .coupon-status{
	width:60px;
	color:#222;
	background:#fff;
	border-radius:10px;
	position:relative;
	border-left:2px dotted #ccc;
	background:#fff2f2; /* 20250206 */
}
.coupon-box .coupon-status.off{
	background:#f3f3f3;
	color:#999;
}
.coupon-box .coupon-status .status{
	position:absolute;
	left:50%;
	top:50%;
	transform: translate(-50%,-50%);
	font-size:1.4rem;
	font-weight:700;
	color:#bd2137; /*20250206*/
}
.coupon-box .coupon-status.off .status{
	color:#aaa;
}
.giftcard-text{
	width:calc(100% - 60px);
	position:relative;
	text-align: center;
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
	color:#333;
	padding:1.5rem 1rem 1rem 1rem;
	background:#fff;
	border-radius:10px;
}
.giftcard-text .shop{
	line-height: 1;
	font-weight: 400;
	font-size: 1.2rem;
	text-align: left;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	word-wrap: break-word;
	color:#596675;
	margin-bottom:5px;
	width:calc(100% - 70px);
}
.giftcard-text .name{
	font-size:1.4rem;
	text-align: left;
	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-wrap: break-word;
    min-height: 30px;
    font-weight: 500;
    color: #222;
    letter-spacing: -.08rem;
	margin:5px 0 8px;
}
.giftcard-text .date{
	font-size:1.2rem;
	color: #aaa;
	text-align:left;
	max-width:130px;
	text-align:right;
}
.giftcard-text .text-group{
	display:flex;
	justify-content: space-between;
	font-size:1.2rem;
	letter-spacing: -0.08rem;
}
.giftcard-text .text-group .left{
	text-align:left;
	color:#939ca5;
	width:calc(100% - 130px);
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.giftcard-text .text-group .right{
	text-align:right;
	color:#939ca5;
}
.giftcard-text .text-group .right i{
	padding-left:5px;
	color:#939ca5;
	line-height:14px;
	font-size:1rem;
}
.giftcard-text .text-group .info{
	padding-right:16px;
	position:relative;
	color:#222; /* 20250206 */
}
.giftcard-text .text-group .info::after{
	content:'';
	display: block;
	position:absolute;
	width:12px;
	height:12px;
	right:0;
	top:1px;
	background:url(../images/info_ico.png) 0 0 /12px no-repeat;
}
/* 사용가능,완료 탭 */
.normal-tabs-wrap{
	padding:0 2rem;
	position: fixed;
	top: 55px;
	left: 0;
	right:0;
	z-index: 10;
	background: #bd2137; /* 20250206 */
	width: 100%;
	max-width:600px;
	margin:0 auto;
	border-top:1px solid rgba(255,255,255,0.5);
	border-bottom:1px solid rgba(255,255,255,0.5);
}
ul.normal-tabs{
	width:100%;
	text-align:center;
}
ul.normal-tabs:after{
	content:'';
	display:block;
	clear:both;
}
ul.normal-tabs li{
	float:left;
	margin:0 auto;
	text-align:center;
	width:50%;
	font-size:1.4rem;
	font-weight:600;
	display:block;
	color:#fff;
	letter-spacing: -0.08rem;
	padding:1.5rem 0;
}
ul.normal-tabs li:last-child{
	border-right:none;
}
ul.normal-tabs li.current{
	color: #fff;
	font-weight:700;
	position:relative;
}
ul.normal-tabs li.current::after{
	content:'';
	display: block;
	width:80px;
	height:2px;
	background:#fff;
	position:absolute;
	left:50%;
	margin-left:-40px;
	bottom:0;
}
.normal-tab-content.current{
	display:inherit;
}
.normal-tab-content{
	display:none;
}

/* 이용안내 상세 */
.edit-txt-wrap{
	padding:1.5rem 0 0;
}
.edit-txt-wrap .edit-tit{
	color:#000;
	font-weight:700;
	font-size:1.4rem;
	letter-spacing: -0.08rem;
	margin-bottom:0.5rem;
}
.edit-txt-wrap .edit-txt{
	line-height:1.5;
	font-size:1.4rem;
	color:#666;
	letter-spacing: -0.08rem;
}

/*====================================================================================================*/

/*==========================================   modal   ==============================================*/
.modal-content {
    position: fixed;
    border: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 85%;
	max-width:500px;
    max-height: 85%;
    overflow-y: auto;
    border-radius: 16px;
}
.modal-header{
	padding:15px;
	background:#Fff;
}
.modal-header .close{
	padding:1rem;
}
.modal-header .terms-tit{
	font-size: 1.3rem;
}
.modal-header .close img{
	width:15px;
}
.modal-body {
    padding: 15px;
	min-height: 200px;
	overflow-y: scroll;
}


/* error 페이지 20250203 */
#notfound {
	position: relative;
	height: 100vh;
	background-color: #fff
}

#notfound .notfound {
	width: 100%;
	position: absolute;
	left: 0;
	top: 45%;
	margin-top: -170px;
	text-align: center;
	padding: 0 20px
}
.notfound p {
	color: #4f565a;
	font-size: 14px;
	margin-bottom: 25px;
	line-height: 1.4!important
}
.notfound p strong {
	color: #222;
	font-weight: 600;
	font-size: 1.8rem;
	line-height: 2.2!important
}
.notfound .back-btn {
	font-size: 1.4rem;
	color: #222;
	text-transform: uppercase;
	background: 0 0;
	border: 1px solid #bbb;
	display: inline-block;
	padding: 12px 30px;
	font-weight: 500;
	width: 12rem;
	border-radius:4px;
}


/*====================================================================================================*/

/*==========================================   modal   ==============================================*/
@media screen and (max-width: 1366px){ /*iPad Pro , web*/
	#header, .sub-content, .content,.container,.bottom-btn, .normal-tabs-wrap{
		max-width:100%;
	}
}

@media screen and (max-width: 768px) { /*iPad*/
}

@media screen and (max-width: 717px) {
}
@media screen and (max-width: 430px) { /*iPhone pro Max*/
}
@media screen and (max-width: 414px) { /*iPhone 6/7/8 plus*/
}

@media screen and (max-width: 375px) { /*iPhone 6/7/8*/
}

@media screen and (min-height: 812px) { /*Pixel 2 XL , iPhone X*/
}

@media all and (max-width:360px) { /*galaxy S5*/
}

@media screen and (max-width: 320px) { /*iPhone 5/SE*/
}

@media screen and (max-width: 280px) { /* galaxy fold1 font */
}

/*=============================================================================================================*/

.vnumber {
	color: #bd2137;
	font-weight: 600;
	text-align: left;
	margin-bottom: 5px;
}

.vnumber em {
	font-weight: 600;
}