@charset "utf-8";
/* *******************************************************
 * filename : content.css
 * description : 서브페이지 컨텐츠 CSS
 * date : 2022-03-14
******************************************************** */

img{
	image-rendering: -moz-crisp-edges;         /* Firefox */
	image-rendering:   -o-crisp-edges;         /* Opera */
	image-rendering: -webkit-optimize-contrast;/* Webkit (non-standard naming) */
	image-rendering: crisp-edges;
	-ms-interpolation-mode: nearest-neighbor;  /* IE (non-standard property) */
}
svg{
	shape-rendering: geometricPrecision;
	backface-visibility: hidden;
	transform: translateZ(0);
	will-change: transform;
	image-rendering: -webkit-optimize-contrast;
 }

.img-pc{display: block;}
.img-m{display: none;}
@media all and (max-width:800px){
	.img-pc{display: none;}
	.img-m{display: block;} 
}

/* ******************  서브공통 ********************** */
/* -------- 공통 스크롤바  -------- */
.custom-scrollbar-cover,
.cm-scroll-drag-guide{display:none;}

/* -------- 공통 :: 탭 -------- */
/* Tab 공통 스타일 */
.sub-tab-wrapper-style{position:relative; height:5rem; margin-top:2rem; margin-bottom:3rem;}
.sub-tab-list-style ul{display:flex; width:100%; height:100%; table-layout:fixed; border-radius:1rem; border:1px solid var(--main-color); box-sizing:border-box; overflow:hidden;}
.sub-tab-list-style ul li{vertical-align:middle; position:relative; width:100%; background-color:#fff;}
.sub-tab-list-style ul li:before{position: absolute; content:''; width:1px; height:1.6rem; background:#ddd; top:50%; left:0; transform:translateY(-50%);}
.sub-tab-list-style ul li:first-child:before{display: none;}
.sub-tab-list-style ul li a{display:flex; align-items:center; justify-content:center; height:5rem; width:100%; padding-inline: 1rem; box-sizing: border-box;}
.sub-tab-list-style ul li a em{color:#666; font-size:1.8rem; letter-spacing:-0.03em; text-align:center; font-weight:600;}
.sub-tab-list-style ul li a em i{margin-right:0.5rem;}
.sub-tab-list-style ul li.selected{z-index:1; background-color:var(--main-color);}
.sub-tab-list-style ul li.selected a em{color:#fff; }
.sub-tab-list-style ul li.selected:before,
.sub-tab-list-style ul li.selected + li:before{display: none;}
/* Tab Fixed Move*/
.sub-tab-list-style.top-fixed{position:fixed; top:70px; left:0; width:100%; height:60px;}
/* Mobile Tab Drop Menu */
.sub-drop-open-btn-style{display:none}

@media all and (min-width:1025px){
	/* Tab Fixed Background */
	.sub-tab-list-style:before{position:absolute; top:0px; bottom:0px; left:50%; width:0; content:""; background-color:#fff; border-bottom:1px solid #e5e5e5; transition:all 0.5s}
	.sub-tab-list-style.top-fixed:before{width:100%; margin-left:-50%}
}

.highlight{color:var(--main-color) !important;}
.mb-0{margin-bottom:0 !important;}
.mt-0{margin-top:0 !important;}
.pb-0{padding-bottom:0 !important;}
.pt-0{padding-top:0 !important;}

/* ****************** 예약하기 ********************** */
/* 예약 레이아웃 */
#reservationWrap{ display:block; position:absolute; top:100%; right:0; width:100%; height:100%; background-color:rgba(17,17,17,0.95); z-index:9999; transition:var(--transition-custom); visibility:hidden;}
#reservationWrap.open{ top:0px; visibility:visible; }
.reservation-pop-wrapper{position: absolute; left:0; right:0; bottom:0; width:100%; height:calc(100% - var(--header-height)); background:#fbf8f2; border-radius:2rem 2rem 0 0; box-sizing:border-box; padding-top:1rem; padding-bottom:var(--header-height);}
/* 닫기버튼 */
.reservation-pop-wrapper #reservationCloseBtn{position: absolute; top:0; right:1rem; transform:translateY(calc(-100% - 1rem));}

/* 스크롤 */
.reservation-con-wrap{overflow:auto; height:calc(100% - 4.5rem); /* padding-bottom: 4.5rem; */ box-sizing: border-box;}
.reservation-con-wrap::-webkit-scrollbar { width: 0px; height: 0px; }
.reservation-con-wrap::-webkit-scrollbar-track { background-color: #f1f1f1; }
.reservation-con-wrap::-webkit-scrollbar-thumb { background-color: #c1c1c1; }
.reservation-con-wrap > .area{padding-bottom:4.5rem;}

/* 컨텐츠 */
.reservation-con:not(:last-child){padding-bottom:4rem; border-bottom:1px solid #ddd; margin-bottom:4rem;}
.reservation-con > .reservation-box{margin-bottom:4rem;}
.reservation-con > .reservation-box:last-child{margin-bottom:0rem;}
.reservation-con.last-con{padding-bottom:0rem; border-bottom:0;}

.reservation-con.last-fixed{padding-bottom:15rem; border-bottom:none; margin-bottom:0rem;}
.reservation-con.last-fixed02{padding-bottom:10rem; border-bottom:none; margin-bottom:0rem;}

.reservation-con.bg-white{position: relative; background:#fff; padding-bottom:7rem;}


/* 상단 탭 스타일 */
.reservation-tab-list{border-bottom:1px solid #dbdbdb;}
.reservation-tab-list ul{display: flex; align-items:center; justify-content:center; margin:0 -1.5rem;}
.reservation-tab-list ul li{margin:0 1.5rem;}
.reservation-tab-list ul li a{position: relative; display: block; font-size:1.6rem; letter-spacing:-0.03em; color:#666; font-weight:600; height:4.5rem; line-height:4.5rem;}
.reservation-tab-list ul li a:before{position: absolute; content:''; left:0; bottom:-1px; width:100%; height:3px; background:var(--main-color); opacity:0;}

.reservation-tab-list ul li.active a{color:var(--main-color);}
.reservation-tab-list ul li.active a:before{opacity:1;}

/* 예약 타이틀 */
.reservation-tit-box{display: flex; justify-content:space-between; align-items:flex-end; margin-bottom:1.5rem;}
.reservation-tit-box .reservation-tit{font-size:1.8rem; line-height:1.3; letter-spacing:-0.03em; color:#222; font-weight:700;}
.reservation-tit-box .reservation-tit i{position: relative; top:2px; margin-right: 2px;}
.reservation-tit-box .remove-btn{font-size:1.4rem; letter-spacing:-0.03em; color:#999; font-weight:600;}

/* 주의사항 */
.caution-info{background:rgba(220,99,46,0.1); border-radius:5px; padding:1.5rem; box-sizing:border-box;}
.caution-info dl{display: flex; font-size:1.3rem; line-height:1.29; letter-spacing:-0.03em; color:var(--main-color); margin-bottom:0.7rem;}
.caution-info dl:last-child{margin-bottom:0;}
.caution-info dl dt{margin-right:4px;}

/* 동의 체크박스 */
.cm-agree-txt{margin-top:1rem; font-size:1.5rem; letter-spacing:-0.03em; color:#666;}
.cm-agree-txt input{display:none;}
.cm-agree-txt label{position:relative; padding-left:2.4rem; }
.cm-agree-txt label i{position:absolute; top:-1px; left:0px; font-size:1.333em; color:#666;}
.cm-agree-txt input:checked + label i{color:var(--main-color);}

/* 인풋 */
.cm-input-box{}
.cm-fieldset-box{position: relative; margin-bottom:1rem;}
.cm-fieldset-box:last-child{margin-bottom:0;}
.cm-fieldset-box .write-input{height: 4.2rem; width: 100%; background-color: #fff; border:1px solid #ddd; color: #000; font-size: 1.4rem; text-indent: 1.5rem; vertical-align: middle; box-sizing: border-box; border-radius: 8px; outline: none;}
.cm-fieldset-box .write-select{height: 4.2rem; width: 100%; background-color: #fff; border:1px solid #ddd; color: #000; font-size: 1.4rem; text-indent: 1.5rem; vertical-align: middle; box-sizing: border-box; border-radius: 8px; outline: none;}
/* 인풋 :: 버튼 */
.cm-fieldset-box.btn-fieldset{}
.cm-fieldset-box.btn-fieldset .write-input{padding-right:10rem;}
.cm-fieldset-box.btn-fieldset .write-sub-btn{position: absolute; top:0; right:0; background:#333; width:10rem; height:100%; display: flex; align-items:center; justify-content:center; font-size:1.4rem; letter-spacing:-0.03em; color:#fff; border-radius:0 5px 5px 0;}
.cm-fieldset-box.btn-fieldset .write-sub-btn.loding{background:var(--main-color); pointer-events:none;}
/* 인풋 :: 국가별 전화번호 */
.cm-fieldset-box .iti{width:100%;}
.cm-fieldset-box.tel-fieldset{}
.cm-fieldset-box.tel-fieldset .write-input{padding-left:10rem; text-indent:0;}
.cm-fieldset-box.tel-fieldset .country-icon{position: absolute; top:0; left:0; width:8rem; height:100%; display: flex; align-items:center; justify-content:center; font-size:1.4rem; letter-spacing:-0.03em; color:#999; z-index:1;}
.cm-fieldset-box.tel-fieldset .country-icon .flag{border:1px solid #cacaca; border-radius:50%; box-sizing:border-box; margin-right:0.5rem; overflow:hidden; height: 28px; width:28px;}
.cm-fieldset-box.tel-fieldset .country-icon .flag svg{width:100% !important; height:100% !important;}

.cm-fieldset-box.tel-fieldset .iti{width:100%;}
.cm-fieldset-box.tel-fieldset .iti .iti__search-input-wrapper{display: none !important;}
.cm-fieldset-box.tel-fieldset .iti .iti__selected-dial-code{font-size:1.4rem;}
.cm-fieldset-box.tel-fieldset .iti .iti__selected-country-primary{width:5.5rem; justify-content: space-between; padding-left:1.5rem;}
.cm-fieldset-box.tel-fieldset .iti .iti__flag { transform: scale(1.5); transform-origin: center; }
.cm-fieldset-box.tel-fieldset .iti__selected-country{width:10rem; background:#f3f3f3; border-radius:8px 0 0 8px;}
.cm-fieldset-box.tel-fieldset .iti input.iti__tel-input, 
.cm-fieldset-box.tel-fieldset .iti input.iti__tel-input[type=text], 
.cm-fieldset-box.tel-fieldset .iti input.iti__tel-input[type=tel]{padding-left:11rem !important;}

.cm-fieldset-box.tel-fieldset .iti .iti__country{padding:8px 1.5rem;}
.cm-fieldset-box.tel-fieldset .iti .iti__country-name{margin-left:8px;}

/* 텍스트에리어 */
.cm-textarea-box{}
.cm-textarea-box .write-textarea{width:100%; height:18rem; border:1px solid #ddd; border-radius:5px; padding:1.5rem; box-sizing:border-box; font-size:1.4rem; color:#000; line-height:1.42; letter-spacing:-0.03em; font-weight:500;}
.cm-textarea-box .write-textarea::placeholder{color:#666;}

/* 하단 고정 금액 */
.reservation-fixed-con{position: absolute; left:0; bottom:var(--header-height); width:100%; background:#fff; border-radius:1rem 1rem 0 0; box-shadow: 0px -10px 20px -5px rgba(220,99,46,0.3); padding:2rem var(--area-padding); box-sizing:border-box;}
.reservation-fixed-con .price-box{margin-bottom:1.5rem;}
.reservation-fixed-con .price-box .price{display: flex; align-items:center; justify-content:space-between; margin-bottom:1.5rem;}
.reservation-fixed-con .price-box .price:last-child{margin-bottom:0;}
.reservation-fixed-con .price-box .price.discount-price{font-size:1.2rem; letter-spacing:-0.03em; color:#999; font-weight:500;}
.reservation-fixed-con .price-box .price.discount-price dd{text-decoration: line-through;}
.reservation-fixed-con .price-box .price.total-price{font-size:1.6rem; letter-spacing:-0.03em; color:#222; font-weight:600;}
.reservation-fixed-con .price-box .price.total-price dd{font-size:1.8rem; color:var(--main-color); letter-spacing:0;}


/* -------- Datepicker Component -------- */
.reservation-datepicker-box{position: relative; /* background:#fff; */ padding-top:2rem;}
/* datepicker box  */
.ui-datepicker{position: relative; background-color:#fff; text-align:center;}
/* datepicker header  */
.ui-datepicker-header{position:relative;height:47px; line-height:47px; color:#333; text-align:center; display: inline-flex; align-items:center;}
.ui-datepicker-header a:hover{text-decoration:none;}
.ui-datepicker-prev,.ui-datepicker-next{position:absolute; top:0px; text-align:center; cursor:pointer; font-size:1.6rem; color:#666;}
.ui-datepicker-prev span,.ui-datepicker-next span{display:none;}
.ui-datepicker-prev{left:-3rem; }
.ui-datepicker-prev:before{content:""; font-family:"xeicon"; content: "\e93b";}
.ui-datepicker-next{right:-3rem; }
.ui-datepicker-next:before{content:""; font-family:"xeicon"; content: "\e93e";}
.ui-datepicker-title{font-size:2.2rem; font-weight:700; color:#222;}
/* datepicker calendar */
.ui-datepicker-calendar{width:100%; box-sizing:border-box;  }
/* datepicker calnedar :: 요일 */
.ui-datepicker-calendar thead th{width:14.25%; height:3rem; text-align:center; font-size:1.5rem; font-weight:bold; color:#333;}
.ui-datepicker-calendar thead th:first-child{width:14.5%}
.ui-datepicker-calendar thead .ui-datepicker-week-end{/* color:#0000ff */} /* SAT */
.ui-datepicker-calendar thead .ui-datepicker-week-end:first-child{/* color:#ff0000 */} /* SUN*/
/* datepicker calnedar :: 날짜 */
.ui-datepicker-calendar td{position: relative; height:3.5rem; text-align:center; vertical-align:top; font-size:1.5rem;}
.ui-datepicker-calendar tr td:first-child{border-left:0;}
.ui-datepicker-calendar td a{display:block; position:relative;}
.ui-datepicker-calendar td a:hover{text-decoration:none;}
.ui-datepicker-calendar td.ui-datepicker-unselectable{color:#ddd; font-weight: 300;}	/* 비활성화 */
.ui-datepicker-calendar td .ui-state-default{display:block; width:100%; height:100%; box-sizing:border-box; color:inherit; font-weight: 500; border-radius:3px; line-height:3.5rem;}
.ui-datepicker-calendar td .ui-state-active{position: relative; width:3.5rem; height:3.5rem; background:var(--main-color); border-radius:5px; color:#fff; margin:auto;}
/* datepicker calnedar :: 공휴일 */
.ui-datepicker-calendar td.date-holiday a{color:#4fa235;}
.ui-datepicker-calendar td.date-holiday:before{position: absolute; content:attr(title); bottom:0; left:50%; transform:translateX(-50%); width:100%; font-size:1rem; color:#4fa235; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ui-datepicker-calendar td.date-holiday.ui-datepicker-current-day a{color:#fff;}
.ui-datepicker-calendar td.date-holiday.ui-datepicker-current-day:before{opacity:0;}
.ui-datepicker-calendar td.date-holiday.ui-state-disabled:before{color:#ddd;}

/* 시간 선택 */
.time-picker{padding-top:3rem; border-top:1px solid #ddd; margin-top:3rem; margin-bottom:3rem;}
.time-picker .time-radio-list{display: flex; flex-wrap:wrap; margin:-2px;}
.time-picker .time-radio-list .time-item{width:calc(25% - 4px); margin:2px;}
.time-picker .time-radio-list .time-item input[type="radio"]{display:none;}
.time-picker .time-radio-list .time-item label{display: flex; align-items:center; justify-content:center; border:1px solid #ddd; border-radius:5px; background:#fff; height:4rem; font-size:1.4rem; color:#666}
.time-picker .time-radio-list .time-item input[type="radio"]:checked + label{color:var(--main-color); border-color:var(--main-color); background:rgba(220,99,46,0.1); font-weight:700;}
.time-picker .time-radio-list .time-item input[type="radio"]:disabled + label{color:#ccc; border-color:#f6f6f6; background:#f6f6f6;}

/* 이전버튼 */
.reservation-anchor-box{padding:2.5rem 0; box-sizing:border-box;}
.reservation-anchor-box a{display: inline-flex; align-items:center; font-size:1.8rem; letter-spacing:-0.03em; color:#222; font-weight:700;}
.reservation-anchor-box a i{color:#888; font-weight:400; margin-right:0.5rem;}

.reservation-anchor-box a.logout-btn{position: relative; top:3px; float: right; font-size: 1.4rem; color: #999; text-decoration: underline;}

/* sns 버튼 */
.sns-link-btn{display: flex; align-items:center; justify-content:center; width:13rem; height:4rem; font-size:1.6rem; font-weight:600; border-radius:5px; margin-top:2rem;}
.sns-link-btn i,
.sns-link-btn img{/* margin-right:5px; */}
.sns-link-btn.kakao{background:#f6e500; color:#381e1f; width:15rem;}
.sns-link-btn.whatsapp{background:#25d366; color:#fff; width:15rem;}
.sns-link-btn.line{background:#36b54a; color:#fff; width:15rem;}

.caution-sns-list{display: flex; margin-top:2rem;}
.caution-sns-list .sns-link-btn{margin-top:0 !important; margin-right:1rem;}

.sns-link-btn + .cm-link-btn,
.caution-sns-list + .cm-link-btn{margin-top:3rem;}
.sns-link-btn span:not(.img-m){margin-right:7px;}


/* 예약정보 확인 */
.reservation-prd-tit-box{}
.reservation-prd-tit-box .category-txt-box{display: flex; align-items:center;}
.reservation-prd-tit-box .category-txt-box .cm-prd-category{margin:0; margin-right:0.5rem;}
.reservation-prd-tit-box .category-txt-box .cm-category{display: inline-block; font-size:1.2rem; font-weight:500; padding:5px 8px; box-sizing:border-box; border-radius:3px; line-height:1;}
.reservation-prd-tit-box .prd-txt{font-size:1.4rem; letter-spacing:-0.03em; color:#999;}
.reservation-prd-tit-box .prd-tit{display: flex; font-size:1.8rem; letter-spacing:-0.03em; color:#222; font-weight:700; margin-top:1rem;}
.reservation-prd-tit-box .prd-tit .tit{display: inline-block; max-width:calc(100% - 5.7rem); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.reservation-prd-tit-box .prd-tit .etc{display: inline-block; width:5.2rem; margin-left:0.5rem;}

.reservation-info-box{margin-bottom:4rem;}
.reservation-info-box:last-child{margin-bottom:0;}
.reservation-info-box .inner-box{background:#fff; border:1px solid #ddd; border-radius:5px; padding:1.5rem; box-sizing:border-box;}
.reservation-info-box .inner-box dl{display: flex; font-size:1.4rem; letter-spacing:-0.03em; line-height:1.5; margin-bottom:0.8rem;}
.reservation-info-box .inner-box dl:last-child{margin-bottom:0;}
.reservation-info-box .inner-box dl dt{width:8.5rem; color:#666; font-weight:500;}
.reservation-info-box .inner-box dl dd{width:calc(100% - 8.5rem); color:#999; word-break: break-word;}

.reservation-tit-box .total-price{font-size:1.4rem; line-height:1.15; letter-spacing:-0.03em; color:#999; font-weight:400;}
.reservation-tit-box .total-price .highlight{font-size:1.8rem; line-height:0.88; font-weight:600; margin-right:0.7rem;}


/* 예약완료 팝업 */
.reservation-finish-box{}
.reservation-finish-box .finish-tit-box{text-align:center; margin-bottom:2rem;}
.reservation-finish-box .finish-tit-box .tit{font-size:2rem; line-height:1.5; letter-spacing:-0.03em; color:var(--main-color); font-weight:700; margin-bottom:1rem;}
.reservation-finish-box .finish-tit-box .txt{font-size:1.4rem; line-height:1.5; letter-spacing:-0.03em; color:#999;}
.reservation-finish-box .info-box{padding:1.5rem; border-radius:5px; background:#fbf8f2; box-sizing:border-box;  margin-bottom:2.5rem;}
.reservation-finish-box .info-box dl{display: flex; font-size:1.4rem; letter-spacing:-0.03em; line-height:1.5; margin-bottom:0.8rem;}
.reservation-finish-box .info-box dl dt{width:8.5rem; color:#666; font-weight:500;}
.reservation-finish-box .info-box dl dd{width:calc(100% - 8.5rem); color:#999;}

/* 항목없음 */
.no-items{display: flex; align-items:center; justify-content:center; height:15rem;}
.no-items .no-txt{font-size:1.5rem; font-weight:500; color:#666; letter-spacing:-0.03em;}


/* ********* 바로상담 ********* */
.counsel-list{}
.counsel-list .list-item{margin-bottom:1rem;}
.counsel-list .list-item:last-child{margin-bottom:0;}
.counsel-list .list-item a{display: flex; align-items:center; padding:1.5rem; box-sizing:border-box; border:1px solid #ddd; border-radius:1rem;}
.counsel-list .list-item .icon{position: relative; width:28px; height:28px; border-radius:3px; overflow:hidden;}
.counsel-list .list-item .icon img{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.counsel-list .list-item .icon svg{width:100%; height:auto;}
.counsel-list .list-item dl{display: flex; flex-wrap:wrap; align-items:center; padding-left:1rem; box-sizing:border-box;}
.counsel-list .list-item dl dt{font-size:1.5rem; line-height:1; letter-spacing:-0.03em; font-weight:600; color:#333; margin-right:1rem;}
.counsel-list .list-item dl dd{font-size:1.6rem; line-height:1; letter-spacing:-0.03em; color:#999}


/* ********* 소개 ********* */
.intro-con{position: relative; padding-bottom:8rem;}
.intro-con:first-child{margin-top:2rem;}
.intro-con.bg-brown{padding:3.5rem var(--area-padding) 5rem; overflow:hidden; margin:0 calc(-1 * var(--area-padding));}
.intro-con.bg-brown:before{position: absolute; content:''; width:100vw; height:100%; background:#cbc2b5; top:0; left:50%; transform:translateX(-50%);}
.intro-con.bg-brown .cm-sub-tit{color:#fff;}

.intro-top-txt{font-size:1.5rem; line-height:1.46; letter-spacing:-0.03em; color:#666; padding-top:1.5rem;}

.cm-sub-tit{font-size:2.2rem; line-height:1.45; letter-spacing:-0.03em; color:#222; font-weight:700; margin-bottom:2rem;}
/* 소개 */
.intro-con:has(.intro-benefit){padding-bottom:6rem;}
.intro-benefit{padding-bottom:6rem; border-bottom:1px solid #ddd;	}
.intro-benefit .top-item{margin-bottom:6rem;}
.intro-benefit .top-item .img-box{position: relative; width:100%;}
.intro-benefit .top-item .img-box span{position: relative; display: block; width:100%; height:0; padding-top:100%; border-radius:1rem; overflow:hidden;}
.intro-benefit .top-item .img-box span img{position: absolute; top:0; left:0; right:0; bottom:0; margin:auto; object-fit:cover; width:100%; height:100%;}
.intro-benefit .top-item .img-box .inner-txt-box{position: absolute; bottom:2rem; left:1.5rem;}
.intro-benefit .top-item .img-box .inner-txt-box .inner-tit{font-size:3rem; color:#fff; font-weight:700;}
.intro-benefit .top-item .img-box .inner-txt-box .inner-txt{font-size:1.4rem; line-height:1.42; letter-spacing:-0.03em; color:rgba(255,255,255,0.8); margin-top:1.5rem;}

.intro-benefit-list{}
.intro-benefit-list .list-item{display: flex; margin-bottom:3.5rem;}
.intro-benefit-list .list-item:last-child{margin-bottom:0;}
.intro-benefit-list .list-item .num{position: relative; top:-0.4rem; font-size:3.4rem; letter-spacing:-0.03em; color:#c4bfaf; font-weight:600; width:5.4rem;}
.intro-benefit-list .list-item .info-box{width:calc(100% - 5.4rem);}
.intro-benefit-list .list-item .info-box dl{margin-bottom:1.5rem;}
.intro-benefit-list .list-item .info-box dl dt{font-size:1.8rem; line-height:1.77; letter-spacing:-0.03em; color:#222; font-weight:700; margin-bottom:0.5rem;}
.intro-benefit-list .list-item .info-box dl dd{font-size:1.5rem; line-height:1.46; letter-spacing:-0.03em; color:#999;}
.intro-benefit-list .list-item .info-box .img-box{opacity:0; transition:var(--transition-custom2); transition-delay:0.3s;}
.intro-benefit-list .list-item .info-box .img-box span{position: relative; display: block; width:100%; height:0; padding-top:53.33%; border-radius:1rem; overflow:hidden;}
.intro-benefit-list .list-item .info-box .img-box span img{position: absolute; top:0; left:0; right:0; bottom:0; margin:auto; object-fit:cover; width:100%; height:100%;}

.intro-benefit-list .list-item.animated .info-box .img-box{opacity:1;}
/* 의료진 소개 */
.intro-member-list{}
.intro-member-list .list-item{background:#fff; border-radius:1rem; box-shadow: 2px 2px 15px 0px rgba(0,0,0,0.15); padding:1.5rem; box-sizing:border-box; margin-bottom:1.5rem;}
.intro-member-list .list-item:last-child{margin-bottom:0;}

.member-toggle-item{}
.member-toggle-item dt{display: flex; align-items:center; cursor:pointer;}
.member-toggle-item dt .img-box{width:6rem; height:6rem; border-radius:50%; overflow:hidden;}
.member-toggle-item dt .img-box span{position: relative; display: block; width:100%; height:0; padding-top:100%;}
.member-toggle-item dt .img-box span img{position: absolute; top:0; left:0; right:0; bottom:0; margin:auto; object-fit:cover; width:100%; height:100%;}
.member-toggle-item dt .tit-box{padding-left:2.5rem; padding-right:1rem; box-sizing:border-box; width:calc(100% - 9rem);}
.member-toggle-item dt .tit-box .profile{display: flex; align-items:flex-end;}
.member-toggle-item dt .tit-box .profile .name{font-size:1.6rem; letter-spacing:-0.03em; color:var(--main-color); font-weight:700;}
.member-toggle-item dt .tit-box .profile .part{font-size:1.4rem; line-height:1.15; letter-spacing:-0.03em; color:#222; margin-left:1rem;}
.member-toggle-item dt .tit-box .profile-en{font-size:1.2rem; line-height:1.33; letter-spacing:-0.03em; color:#999; margin-top:0.7rem;}
.member-toggle-item dt .toggle-btn{display: flex; align-items:center; justify-content:center; width:3rem; height:3rem; border-radius:50%; background:#eee; font-size:1.8rem; color:#666;}
.member-toggle-item dd{padding:1.5rem 0 0; border-top:1px solid #eee; margin-top:1.5rem; display: none;}
.member-toggle-item dd .txt-list{}
.member-toggle-item dd .txt-list .txt{position: relative; padding-left:1rem; font-size:1.2rem; line-height:1.66; letter-spacing:-0.03em; color:#999;}
.member-toggle-item dd .txt-list .txt:before{position: absolute; content:'•'; top:0; left:0;}

.member-toggle-item.open dt .toggle-btn i{transform:rotate(180deg);}

/* 인테리어 */
.intro-interior-list{margin:0 1.5rem}
.intro-interior-list .slick-list{overflow:visible;}
.intro-interior-list .list-item{margin:0 1.5rem}
.intro-interior-list .list-item span{position: relative; display: block; width:100%; height:0; padding-top:133.33%; border-radius:1rem; overflow:hidden;}
.intro-interior-list .list-item span img{position: absolute; top:0; left:0; right:0; bottom:0; margin:auto; object-fit:cover; width:100%; height:100%;}
.intro-interior-list .slick-arrow{position: absolute; top:50%; font-size:2.4rem; color:#fff; z-index:99;}
.intro-interior-list .slick-arrow.slick-prev{left:-1.2rem;}
.intro-interior-list .slick-arrow.slick-next{right:-1.2rem;}


/* ********* 제품 & 이벤트 ********* */
.prd-con{margin-bottom:4rem;}
.prd-con:last-child{margin-bottom:0rem;}
/* 상단 메뉴리스트 */
.product-menu-box{width:100%; margin-top:1rem;}
.product-category-style01{position: relative; overflow:hidden; padding:0 var(--area-padding); border-bottom:1px solid #dbdbdb; height:4.5rem;}
.product-category-style01 .product-category-list{position: relative; display: flex; width:auto !important; margin:0 -1.25rem;}
.product-category-style01 .product-category-list::-webkit-scrollbar{display: none;}
.product-category-style01 .product-category-list li{width:auto !important; padding:0 1.25rem;}
.product-category-style01 .product-category-list li a{position: relative; display: flex; align-items:center; font-size:1.6rem; letter-spacing:-0.03em; white-space:nowrap; font-weight:600; height:4.5rem; color:#666;  transition:var(--transition-custom);}
.product-category-style01 .product-category-list li a:before{position: absolute; content:''; width:100%; height:3px; background:var(--main-color); bottom:0px; left:0; opacity:0; transition:var(--transition-custom);}
.product-category-style01 .product-category-list li.on a,
.product-category-style01 .product-category-list li.selected a{color:var(--main-color);}
.product-category-style01 .product-category-list li.on a:before,
.product-category-style01 .product-category-list li.selected a:before{opacity:1;}

.product-category-style02{position: relative; overflow:hidden; padding:0 var(--area-padding); margin-top:2rem; height:3.5rem;}
.product-category-style02 .product-category-list{position: relative; display: flex; width:auto !important; margin:0 -0.3rem;}
.product-category-style02 .product-category-list::-webkit-scrollbar{display: none;}
.product-category-style02 .product-category-list li{width:auto !important; padding:0 0.3rem;}
.product-category-style02 .product-category-list li a{display: flex; align-items:center; justify-content:center; font-size:1.4rem; letter-spacing:-0.03em; white-space:nowrap; font-weight:600; height:3.5rem; color:#666; border-radius:3.5rem; border:1px solid #ddd; box-sizing:border-box; background:#fff; padding:0 1.5rem; min-width:7rem; text-align:center;}
.product-category-style02 .product-category-list li.on a{color:var(--main-color); background:rgba(220,99,46,0.1); border-color:var(--main-color);}

/* 컨텐츠 */
.event-con:not(:last-child){padding-bottom:4rem; margin-bottom:4rem; border-bottom:1px solid #ddd;}
.cm-sub-tit-box{display: flex; justify-content:space-between; align-items:center; margin-bottom:2rem;}
.cm-sub-tit-box .cm-sub-tit{margin-bottom:0;}

.cm-filter-btn{font-size:1.4rem; color:#999; font-weight:600;}
.cm-filter-btn i{font-weight:400;}

.filter-select{font-size:1.4rem; color:#999; font-weight:600; border:none; outline:none; padding-right:3rem; text-align:right;}

/* 이벤트배너 */
.event-top-banner{position: relative; width:100%; margin-bottom:2rem;}
.event-top-banner .img-box{}
.event-top-banner .img-box{display: block; position: relative; width:100%; height:0; padding-top:100%; border-radius:1rem; overflow:hidden; background:#fff2d9;}
.event-top-banner .img-box img{position: absolute; top:0; left:0; right:0; bottom:0; margin:auto; width:100%; height:100%; object-fit:cover;}
.event-top-banner .icon{position: absolute; display: flex; align-items:center; justify-content:center; top:3rem; left:50%; transform:translateX(-50%); font-size:1.4rem; color:#fff2d9; font-weight:700; background:#292929; width:7.5rem; height:2.8rem; border-radius:2.8rem;}
.event-top-banner .txt{position: absolute; bottom:3rem; text-align:center; width:100%; font-size:3.6rem; letter-spacing:-0.05em; color:#fff; font-weight:700; text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);}
/* 이벤트 안내사항 */
.event-info-box{position: relative; padding:1.5rem; box-sizing:border-box; border-radius:6px; overflow:hidden;}
.event-info-box .bg{display: block; position: absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:100%; height:100%; object-fit:cover;}
.event-info-box .bg img{width:100%; height:100%; object-fit:cover;}
.event-info-box .tit{position: relative; font-size:1.8rem; color:#fff; font-weight:700;}
.event-info-box .tit span{font-size:0.88em;}
.event-info-box .txt{position: relative; font-size:1.4rem; color:rgba(255,255,255,0.8); line-height:1.42; margin-top:1rem;}


/* 제품 상단 배너 */
.prd-top-banner{position: relative; width:100%; margin-bottom:2rem;}
.prd-top-banner .img-box{}
.prd-top-banner .img-box{display: block; position: relative; width:100%; height:0; padding-top:100%; border-radius:1rem; overflow:hidden; background:#fff2d9;}
.prd-top-banner .img-box img{position: absolute; top:0; left:0; right:0; bottom:0; margin:auto; width:100%; height:100%; object-fit:cover; transition:var(--transition-custom)}
.prd-top-banner .img-box:hover img{transform:scale(1.03);}

.prd-top-banner .txt-box{position: absolute; bottom:3rem; left:2.5rem; width: calc(100% - 5rem);}
.prd-top-banner .txt-box .tit{font-size:3.2rem; line-height:1.1; letter-spacing:-0.05em; color:#fff; font-weight:600; text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.5);}
.prd-top-banner .txt-box .txt{font-size:1.8rem; line-height:1.5; letter-spacing:-0.05em; color:#fff; font-weight:500; margin-top:0.8rem; text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.5);}

/* 제품 :: 시술안내 */
.sub-prd-txt-item{margin-bottom:4rem;}
.sub-prd-txt-item:last-child{margin-bottom:0;}
.sub-prd-txt-item .sub-prd-tit{font-size:1.8rem; letter-spacing:-0.03em; color:#222; font-weight:700;}
.sub-prd-txt-item .txt-list{margin-top:1.5rem;}
.sub-prd-txt-item .txt-list .inner-txt{display: flex; font-size:1.4rem; line-height:1.71; letter-spacing:-0.03em; color:#666;}
.sub-prd-txt-item .txt-list .inner-txt dt{margin-right:0.3rem;}

/* 제품 :: QnA */
.prd-qna-box{margin:1rem calc(-1 * var(--area-padding)) 0;}
.prd-qna-box .qna-tit{padding:var(--area-padding); background:var(--main-color); font-size:1.8rem; letter-spacing:-0.03em; color:#fff; font-weight:700;}
.prd-qna-box .qna-list{}
.prd-qna-box .qna-list .list-item{border-bottom:1px solid #dbdbdb;}
.prd-qna-box .qna-list .list-item dt{position: relative; display: flex; padding:var(--area-padding); padding-right:5.5rem; background:#fbf8f2; font-size:1.5rem; line-height:1.2; letter-spacing:-0.03em; color:#222; font-weight:500; cursor:pointer; box-sizing: border-box; word-break: break-word; line-height: 1.5;}
.prd-qna-box .qna-list .list-item dt:before{position: absolute; content:'\e942'; top:50%; right:var(--area-padding); transform:translateY(-50%); font-family:'xeicon'; font-size:2rem; color:#999; transition:var(--transition-custom);}
.prd-qna-box .qna-list .list-item dt .num,
.prd-qna-box .qna-list .list-item dt .category{margin-right:0.7rem;}
.prd-qna-box .qna-list .list-item dt .num{white-space:nowrap;}
.prd-qna-box .qna-list .list-item dt .category{color:var(--main-color);}
.prd-qna-box .qna-list .list-item dt .tit{font-size:1em;}
.prd-qna-box .qna-list .list-item dd{background:#fff; padding:1.5rem var(--area-padding); font-size:1.4rem; line-height:1.47; letter-spacing:-0.03em; color:#666; border-top:1px solid #dbdbdb; display: none;}

.prd-qna-box .qna-list .list-item.open dt:before{transform:translateY(-50%) rotate(180deg);}


/* ********* 검색페이지 ********* */
.cm-fieldset-box.search-fieldset{position: relative; width: calc(100% - 5rem);}
.cm-fieldset-box.search-fieldset .write-input{border-radius:4.2rem; background:#eee; padding-right: 6rem;}
.cm-fieldset-box.search-fieldset .header-search-open-btn{position: absolute; top: 50%; right: 2rem; transform: translateY(-50%);}
.cm-fieldset-box.search-fieldset .header-search-open-btn svg *{stroke:#686868 !important;}

/* 검색페이지 컨텐츠 */
.search-con{margin:2rem 0 4rem;}

.search-recent-list{display: flex; flex-wrap:wrap; margin:-3px;}
.search-recent-list .list-item{position: relative; margin:3px; display: flex; align-items:center; justify-content: space-between; min-width:7.5rem; background:#f2f2f2; padding:0 1rem 0 1.5rem; box-sizing:border-box; border-radius:2.5rem;}
.search-recent-list .list-item a{display: block; line-height:2.5rem; height:2.5rem; font-size:1.2rem; color:#717171; font-weight:500; margin-right:0.5rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width:calc(100% - 2rem);}

.search-delete-btn{width:1.5rem; height:1.5rem;}
.search-delete-btn svg{width:100%; height:100%;}
.search-delete-btn svg *{stroke:#717171;}

.search-popular-list{border-top:1px solid #ddd;}
.search-popular-list .list-item{border-bottom:1px solid #ddd; padding:0rem var(--area-padding); box-sizing:border-box;}
.search-popular-list .list-item a{display: flex; align-items:center; padding:1.5rem 0;}
.search-popular-list .list-item a .num{font-size:1.7rem; color:#888; font-weight:500; width:3rem; text-align:left;}
.search-popular-list .list-item a .txt{font-size:1.5rem; color:#888; font-weight:500; width:calc(100% - 3rem);}


/* qr 팝업 */
.qr-modal-content{position:relative; width:calc(100% - (2 * var(--area-padding))); max-width:370px; margin:20px auto; }
.qr-modal-content .close-btn{position: absolute; top:1rem; right:1rem;}
.qr-modal-content .close-btn svg *{stroke:#ABA7A7}
.qr-inner-box{padding:4rem 2rem 3rem; background-color:#fff; border-radius:2rem; box-sizing:border-box; text-align:center;}
.qr-inner-box .qr-tit-box{text-align:center; margin-bottom:2rem;}
.qr-inner-box .qr-tit-box .tit{font-size:2.2rem; line-height:1.27; letter-spacing:-0.03em; color:#555; font-weight:700;}
.qr-inner-box .qr-tit-box .txt{font-size:1.8rem; line-height:1.55; letter-spacing:-0.03em; color:#555; font-weight:600;}
.qr-inner-box .qr-box{position: relative; width:16rem; height:16rem; border-radius:1rem; box-shadow: 0px 0px 1.5rem -3px rgba(0,0,0,0.25); padding:1rem; box-sizing:border-box; text-align:center; margin:auto; margin-bottom:2rem;}
.qr-inner-box .qr-box img{max-width:100%;}
.qr-inner-box .id-box{display: inline-block; padding:1rem 2rem; box-sizing:border-box; background:#00c73c; border-radius:2rem;}
.qr-inner-box .id-box .id{font-size:1.8rem; color:#fff; font-weight:700;}

/* filter 팝업 */
.filter-checkbox-item-box{display: flex; flex-wrap:wrap; margin:-4px; margin-top:3rem;}
.filter-checkbox-item-box .filter-checkbox-item{display: block; width:calc(33.33% - 8px); margin:4px;}
.filter-checkbox-item-box .filter-checkbox-item input[type="checkbox"]{display:none;}
.filter-checkbox-item-box .filter-checkbox-item label{display:flex; align-items:center; justify-content:center; min-height:4rem; height:100%; font-size:1.4rem; line-height:1.2; letter-spacing:-0.03em; color:#999; font-weight:500; border:1px solid #ddd; border-radius:2rem; box-sizing:border-box; text-align:center; transition:var(--transition-custom); padding:0.5rem 1rem; box-sizing:border-box; white-space: break-spaces;}
.filter-checkbox-item-box .filter-checkbox-item input[type="checkbox"]:checked + label{color:var(--main-color); background:rgba(220,99,46,0.1); border-color:var(--main-color);}

/* 카테고리 박스 */
.cm-catagory-box{display: flex; justify-content:space-between;}

.cm-catagory-box02{display: flex; justify-content:space-between; align-items:center; width:100%; height:4.5rem; padding:0 2rem 0 1.5rem; box-sizing:border-box; background:#fff; border-radius:5.4rem; box-shadow: 2px 2px 15px 0px rgba(0, 0, 0, 0.15); margin-bottom:2rem;}
.cm-catagory-box02 .category-tit-box{overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.cm-catagory-box02 .category-tit-box .category-tit{position: relative; font-size:1.5rem; color:#AAAAA9; font-weight:700; margin-right:2rem; line-height:2.1;}
.cm-catagory-box02 .category-tit-box .category-tit:before{position: absolute; content: "\e940"; left:-1.8rem; top:calc(50% + 1px); transform:translateY(-50%); font-size:1.4rem; font-family:'xeicon';}
.cm-catagory-box02 .category-tit-box .category-tit:first-child{color:var(--main-color);}
.cm-catagory-box02 .category-tit-box .category-tit:first-child:before{display: none;}

.cm-catagory-box02 .cm-filter-btn svg{height:1.5rem;}
.cm-catagory-box02.on .cm-filter-btn svg *{stroke:var(--main-color);}

/* 잔여시술 추가하기 */
.remain-txt-box{margin-top: 3rem; font-size: 1.6rem; letter-spacing: -0.03em; color: #222; margin-bottom: 2rem; padding-bottom: 2rem; border-bottom: 1px solid #ddd;}
.remain-txt-box input{display:none;}
.remain-txt-box label{position:relative; padding-left:2.6rem; font-weight:600;}
.remain-txt-box label i{position:absolute; top:1px; left:0px; font-size:1.333em; color:#666; font-weight:400;}
.remain-txt-box input:checked + label i{color:var(--main-color);}