@charset "utf-8";
/* 공동 */
.tel { position: relative; }
.tel:before { content: "-"; position: absolute; top: 0; left: -3px; line-height: 40px; }
.tel:after { content: "-"; position: absolute;  top: 0; right: -3px; line-height: 40px; }

/* 예약확인 */
.login { max-width: 800px; margin: 0 auto; padding: 50px 10px; }
.login h4 { padding-bottom: 20px; text-align: center; }
.login .btn_wrap { padding: 20px 0 0 0; }
.login input[type="submit"] { display: block; width: 60%; height: 50px; line-height: 55px; font-weight: 500; margin: 0 auto; border-radius: 50px; }

@media (max-width:991px) {
  .login { padding: 20px 10px; }
  .login .btn_wrap { padding: 10px 0 0 0; }
}

#order { padding: 50px 0; }
#order .web_col{ display: table-column-group; }
#order .mob_col{ display: none; }
#order .mob_td{ display: none; }
@media ( max-width: 991px) {
	#order .web_col{ display: none; }
	#order .mob_col{ display: table-column-group; }
	#order .web_td{ display: none; }
	#order .mob_td{ display: table-cell; }
	#order { padding: 0 0 30px 0; }
}

/* 주문 공통 */
#order h2 { font-size: 1.2em; padding: 1em 0 15px 0; font-weight: 800; }
	#order h2 i{ margin: 0 5px 0 0; padding: 5px; font-size: 0.8em; font-weight: 300; color: #fff; border-radius: 5px; background: #51ac17; }

/* 주문상황 */
#order .order_status { display: flex; flex-wrap: wrap; justify-content: flex-start; overflow: hidden; margin: 0; }
	#order .order_status dt, #order .order_status dd{ line-height: 1em; }
	#order .order_status dt { padding: 10px 30px; font-weight: 300; border-radius: 5px 0 0 0; background: #f3f3f3; }
	#order .order_status dd { padding: 10px 50px; font-weight: 700; color: #51ac17; border: 1px solid #f3f3f3; }

/* 주문상세 */
#order .product { border-top:2px solid #51ac17; }
	#order .product th, #order .product td{ position: relative; text-align: center; border-bottom: 1px solid #eee; }
	#order .product th{ padding: 1em 10px; background: #f3f3f3; }

#order .product ul { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; overflow: hidden; }
	#order .product ul li { padding: 1em 10px; }
	#order .product ul li:nth-child(1) { width: 70%; }
	#order .product ul li:nth-child(2) { width: 15%; }
	#order .product ul li:nth-child(3) { width: 15%; }
#order .product .img { float: left; width: 20%; border-radius: 10px; overflow: hidden; }
#order .product .img img{ width: 100%; height: 100%; object-fit: cover; aspect-ratio: 1; }
#order .product .title{ float: left; width: 40%; padding: 0 0 20px 10px; text-align: left; }
#order .product .icon{ text-align: left; }
#order .product .icon i{ display: inline-block; margin: 0 5px 0 0; padding: 2px 10px; font-size: 0.7em; border: 1px solid; border-radius: 20px; }
#order .product .option{ float: left;  width: 40%; text-align: left; line-height: 1.5em; }
#order .product .option p{ padding:0 0 5px 0; }
#order .product .all_del{ display: inline-block; padding:0 5px; border-radius: 5px; background:#eee; }

#order .product dl{ overflow: hidden; margin: 0; }
#order .product dt, #order .product dd{ float: initial; margin: 0; }
#order .product dt{ line-height: 1.5em; font-weight: 300; text-align: center; border: 0; border-radius: 0; background: none; }
@media (max-width:991px) {
#order .product ul li:nth-child(1) { width: 100%; border-bottom: 1px solid #eee; }
	#order .product ul li:nth-child(2) { width: 50%; }
	#order .product ul li:nth-child(3) { width: 50%; }
#order .product .img{ width: 30%; }
	#order .product .title{ width: 70%; padding: 0 0 10px 10px; }
	#order .product .option{ width: 70%; padding: 0 0 0 10px; }
	#order .product .option i{ display: inline-block; padding: 5px 10px; font-size: 0.8em; line-height: 1.1em; border-radius: 5px; background: #f3f3f3; }
}

/* 총 주문금액 */
#order .total { text-align: right; padding: 1em; background: #f3f3f3; }
#order .total h4 { display: inline-block; font-size: 1.5em; font-weight: 800; }
#order .total span { font-size: 0.8em; }
#order .total p { padding: 5px 0 0 0; font-size: 0.8em; }

/*할인정보*/
#order .sale ul{ overflow: hidden; }
	#order .sale li{ text-align: center; }
	#order .sale li div{ border:1px solid #f3f3f3; }
	#order .sale li p{ margin: 0; padding: 1em 0; background: #f3f3f3; }
	#order .sale li b{ display: block; padding: 1em 0; }
	#order .sale .sign{ position: relative; }
	#order .sale .sign:before{ content: "-"; position: absolute; top:45%; left: -14px; width: 30px; z-index: 10; height: 30px; line-height: 30px; color: #fff; border-radius: 30px; background: #e72d18; }
	#order .sale .sign:after{ content: "="; position: absolute; top:45%; right: -14px; width: 30px; z-index: 10; height: 30px; line-height: 30px; color: #fff; border-radius: 30px; background: #51ac17; }
	#order .sale dl { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; gap: 10px; }
	#order .sale dt { width: 200px; font-weight: 300; line-height: 40px; text-align: center; background: #f3f3f3; }
	#order .sale dd { width: calc(100% - 210px); }
	#order .sale label { display: block; }
@media (max-width:991px) {
	#order .sale .sign:after{ display: none; }
	#order .sale li:nth-child(3){ padding-top: 15px; }
	#order .sale li:nth-child(3) b{ color: #fff; background: #51ac17; }
}
@media (max-width:797px) {
	#order .sale dt { width: 100px; }
	#order .sale dd { width: calc(100% - 110px); }
}

/* 포인트 */
#order .point{ padding: 1em 10px; border-left:1px solid #f3f3f3; border-right:1px solid #f3f3f3; border-bottom:1px solid #f3f3f3; }
#order .help-block{ clear: both; margin: 0; padding: 10px 10px 0 10px; font-size: 0.9em; }

/*쿠폰*/
#order .coupon { padding: 1em 10px; border:1px solid #f3f3f3; border-top: 0; }

/* 주문자 정보 */
#order .buyer { display: flex; flex-direction: column; gap: 20px; }
#order .buyer dl { display: flex; justify-content: flex-start; align-items: stretch; flex-wrap: wrap; gap: 10px; width: 100%; }
	#order .buyer dt { width: 200px; font-weight: 300; line-height: 40px; text-align: center; background: #f3f3f3; }
	#order .buyer dd { width: calc(100% - 210px); }
	#order .buyer label { display: block; }
@media (max-width:797px) {
	#order .buyer dt { width: 100px; }
	#order .buyer dd { width: calc(100% - 110px); }
}


/* 결제정보 */
#order .billing { display: flex; flex-direction: column; gap: 15px; }
#order .billing dl { display: flex; justify-content: flex-start; align-items: stretch; flex-wrap: wrap; gap: 10px; width: 100%; }
	#order .billing dt { width: 200px; font-weight: 300; line-height: 40px; text-align: center; background: #f3f3f3; }
	#order .billing dd { width: calc(100% - 210px); }
	#order .billing label { display: block; line-height: 40px; }
	#order .billing .pay_way div { width: 40%; }
@media (max-width:797px) {
	#order .billing dt { width: 100px; }
	#order .billing dd { width: calc(100% - 110px); }
}

/*주문자 동의*/
#order .agree label{ padding: 10px 0; }
#order .agree .title{ line-height: 40px; }
#order .agree .con{ /* height: 250px; margin: 0 0 10px 0; */ padding: 1em; border: 1px solid #ccc; /* overflow-y: scroll; */ }
#order .agree dl { display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; gap: 10px; width: 100%; }
	#order .agree dt { width: 200px; font-weight: 300; line-height: 40px; text-align: center; background: #f3f3f3; }
	#order .agree dd { width: calc(100% - 210px); line-height: 40px; }
@media (max-width:797px) {
	#order .agree dt { width: 100%; }
	#order .agree dd { width: 100%; }
}
/* 결제버튼 */
.btn_bottom { padding: 1.5em 0 0 0; text-align: center; }
.btn_bottom a { display: inline-block; margin: 0 5px; padding: 0 30px; line-height: 40px; vertical-align: middle; color: #51ac17; border-radius: 5px; border:1px solid #51ac17; }
.btn_bottom input { width: 150px; margin: 0 5px; color: #fff; border-radius: 5px; background: #ff5a5f; }
.btn_bottom .order_cancel { height: 50px; padding: 0 40px; font-size: 1.2em; font-weight: 500; background: #fa4169; }
/* 버튼 에니메이션 */
.btn_light{ position: relative; display: inline-block; vertical-align: middle; overflow: hidden; }
.btn_light::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(120deg, rgba(255,255,255,0.3), rgba(255,255,255,0));
  transform: skewX(-25deg);
  animation: light-sweep 2s infinite;
}

@keyframes light-sweep {
  0% { left: -75%; }
  50% { left: 125%; }
  100% { left: 125%; }
}

/*데이터없음*/
.no_data{ padding: 5em 0 !important; text-align: center; }
.no_data i{ display: block; position: relative; padding: 0 0 0.5em 0; font-size: 2.5em; }


/* 회사파일 */
input[type="file"] { height: 40px; line-height: 40px; border: 1px solid #ccc }
.input-group > .pd1 { padding: 0;  }
.input-group > .pd0 { padding: 0;  }
.input-group > .pd0 input {border-left: 0;}