/* BASIC css start */
/* 아이품고 산후조리원 상세/예약 · 950px 통합 CSS
 * 콘텐츠 최대 폭: --ip-pc-content-width
 * 예약 옵션 / 요금 / 서비스 / 지도 / 리뷰 / 반응형
 */

.ad_bn {
  display: block;
}

.ad_bn a img {
  width: 100%;
}

.ad_bn_2 {
  display: flex;
  gap: 10px;
}

.ad_bn_2 a img {
  width: 100%;
}

.logo_hospital {
  display: block;
  text-align: right;
}

.logo_hospital a {
  display: inline-block;
  background: #f7f7f7;
  padding: 5px 15px;
  border-radius: 10px;
}

.logo_hospital img {
  display: inline-block;
  width: 105px;
  vertical-align: middle;
}

.logo_hospital span {
  display: inline-block;
  padding-right: 10px;
}

.ec-base-product_main_01_left .prdList .thumbnail a {
  width: 100%;
  height: 100%;
}

#matterWrap {
  overflow: hidden;
}

#matterWrap .logo {
  position: relative;
}

#matterWrap .logo .logo_img {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 35px;
}

#matterWrap  #matterLayer {
  position: relative;
  bottom: 110px;
  width: 100%;
  height: 100px;
  background: #e74174;
  text-align: center;
}

#matterWrap  #matterLayer img {
  padding-top: 8px;
  width: 150px;
}

#view_meta #loading-gui #loading-powered-by #loading-mp-logo {
  display: none;
}

#map_wrap {
  float: left;
  width: 100%;
}

#map_wrap #map {
  border-radius: 10px;
}

.meta {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}

.meta .meta_else {
  overflow: hidden;
}

.meta .meta_else img {
  position: absolute;
}

.meta_login p {
  font-size: 24px;
  line-height: 34px;
  font-weight: bold;
}

.meta_login .bt_login:hover {
  background: #e61857;
}

.shopdetail .shopdetailInfo {
  padding: 10px;
}

.top_bar_fix {
  position: fixed;
  top: 58px;
  width: 100%;
  z-index: 999;
}

.pd_top_80 {
  padding-top: 80px;
}

.name {
  text-align: left;
  color: #333;
}

ul.tabs li.current {
  border-radius: 10px;
}

.price td p {
  background-size: 11px auto;
  background-position: 0 6px;
}

#fix_shop_op {
  position: fixed;
  top: 0;
  width: 100%;
  background: #fff;
  z-index: 10;
  height: 63px;
}

.joriwon_event {
  display: none;
  text-align: center;
}

.joriwon_event .event_wrap {
  background: url(/design/kichmom/reserve/bg_event.jpg) no-repeat;
  background-size: 100%;
  padding: 22px;
}

.joriwon_event h1 {
  font-size: 46px;
  font-weight: 500;
  color: #fff;
  padding: 54px 0 32px 0;
}

.joriwon_event .event_wrap .event_contents {
  background: #fff;
  border-radius: 11px;
  padding: 0 22px 32px 22px;
}

.joriwon_event .event_wrap .event_contents .tit {
  color: #000;
  padding-bottom: 11px;
  padding-top: 32px;
}

.joriwon_event .event_wrap .event_contents p {
  color: #999;
  letter-spacing: -1px;
}

#productDetail .page-body {
  margin-top: 10px;
}

.detail-info .price {
  color: #666;
  border-top: 1px solid #ededed;
}

.detail-info .price tr {
  height: 45px;
  border-bottom: 1px solid #eee;
}

.detail-info .price tr.ip {
  color: #e74174;
  font-weight: 500;
}

.detail-info .price .title {
  background: #f8f8f8;
}

.detail-info .price td {
  padding: 5px 25px;
}

.detail-info .table_wrap {
  float: left;
  color: #666;
}

.detail-info .table_wrap table {
  margin-bottom: 15px;
  border-top: 1px solid #eee;
}

.detail-info .table_wrap table tr {
  height: 42px;
  border-bottom: 1px solid #eee;
}

.detail-info .table_wrap table .title {
  background: #f8f8f8;
  width: 120px;
}

.detail-info .table_wrap table td {
  padding: 0 15px;
}

.detail-info .table_wrap table td a:hover {
  font-weight: bold;
  color: #e74174;
}

.detail-info .table_wrap .all {
  float: right;
  padding: 10px 20px;
  border: 1px solid #ddd;
}

.detail-info .table_wrap .all:hover {
  font-weight: bold;
  color: #e74174;
}

.detail-info svg {
  width: 100px !important;
}

#productDetail .thumb-info {
  position: relative;
  zoom: 1;
}

#productDetail .thumb-info .thumb-wrap {
  float: left;
  width: 500px;
  text-align: center;
}

#productDetail .thumb-info .thumb {
  width: 500px;
  text-align: center;
  margin: 0 auto;
}

#productDetail .thumb-info .thumb img {
  width: 500px;
  display: inline-block;
}

#productDetail .thumb-info .thumb-ctrl {
  clear: both;
  padding-top: 20px;
  text-align: center;
}

#productDetail .thumb-info .thumb-ctrl a {
  font-size: 11px;
}

#productDetail .thumb-info .thumb-ctrl a img {
  vertical-align: middle;
  margin-right: 3px;
}

#productDetail .thumb-info .thumb-ctrl a:hover {
  text-decoration: underline;
}

#productDetail .thumb-info .info {
  margin-bottom: 10px;
}

#productDetail .thumb-info .info .text .tit-prd {
  font-size: 25px;
  color: #333;
  padding-bottom: 10px;
  font-weight: 500;
}

#productDetail .thumb-info .info .text .tit-sub {
  font-size: 17px;
  color: #666;
  line-height: 21px;
  letter-spacing: -1px;
}

#productDetail .thumb-info .info .ico {
  position: absolute;
  right: 0;
  top: 14px;
}

#productDetail .thumb-info .info .ico a {
  margin-left: 15px;
}

#productDetail .thumb-info .info .ico img {
  width: 30px;
}

#productDetail .thumb-info .info .update {
  float: right;
  color: #ccc;
  display: inline-block;
}

#productDetail .thumb-info .detail .sub {
  font-size: 16px;
  color: #666;
  vertical-align: top;
}

#productDetail .thumb-info .detail .detail-info {
  width: 100%;
  border-top: 1px solid #e3e3e3;
}

#productDetail .thumb-info .detail .detail-info li {
  display: inline-block;
}

#productDetail .thumb-info .info .table-opt {
  margin-top: 25px;
}

#productDetail .thumb-info .info .table-opt th,
#productDetail .thumb-info .info .table-opt td {
  font-size: 16px;
  padding: 7px 0 8px;
}

#productDetail .thumb-info .info .table-opt th {
  width: 100px;
  font-weight: normal;
  letter-spacing: -1px;
}

.map_wrap {
  position: absolute;
  left: 0;
  bottom: 45px;
  width: 380px;
  height: 125px;
  margin-left: -189px;
  line-height: 1.5;
  text-align: center;
  overflow: hidden;
  font-family: "Noto Sans KR", Nanum Gothic, AppleGothic, Helvetica, sans-serif;
}

.map_wrap * {
  padding: 0;
  margin: 0;
}

.map_wrap .info {
  width: 380px;
  height: 120px;
  border-radius: 5px;
  border-bottom: 2px solid #ccc;
  border-right: 1px solid #ccc;
  overflow: hidden;
  background: #fff;
}

.map_wrap .info:nth-child(1) {
  border: 0;
  box-shadow: 0px 1px 2px #888;
}

.info .title {
  padding-top: 10px;
  height: 35px;
  background: #fff;
  border-bottom: 1px solid #eee;
  font-size: 16px;
  font-weight: 500;
}

.info .close {
  position: absolute;
  bottom: 10px;
  right: 2px;
  color: #888;
  width: 30px;
  height: 30px;
  background: url("https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/overlay_close.png") no-repeat 0 8px;
  background-size: 12px;
}

.info .close:hover {
  cursor: pointer;
}

.info .body {
  position: relative;
  overflow: hidden;
}

.info .desc {
  position: relative;
  margin: 10px;
  height: 40px;
  font-size: 14px;
}

.desc .ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  color: #666;
}

.info .desc .link {
  margin-top: 5px;
}

.info .desc .link a {
  padding: 0 5px;
  color: #5085BB;
  text-decoration: none;
}

.info .desc .link a:hover {
  font-weight: 600;
}

#map_wrap {
  overflow: hidden;
  box-sizing: border-box;
}

#map_wrap #map {
  height: 350px;
}

.root_daum_roughmap {
  margin: 15px 0;
  width: 100%;
}

.root_daum_roughmap .wrap_map {
  height: 350px;
}

.intro {
  color: #333;
}

.map_addr {
  position: relative;
  padding: 10px;
  margin: 360px 0 0 0;
  border-radius: 10px;
  background: #f7f7f7;
  color: #333;
}

.map_addr span {
  font-weight: bold;
  padding-right: 10px;
}

.prdanchor .tab:after {
  content: "";
  display: block;
  clear: both;
}

.prdanchor .tab {
  margin: 30px 0;
}

.prdanchor .tab a {
  float: left;
  width: 20%;
  height: 54px;
  padding: 16px 0 0;
  margin: 0 0 0 -1px;
  border: 1px solid #dfdfdf;
  border-bottom: 1px solid #707070;
  color: #787878;
  font-size: 13px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.prdanchor .tab a:first-child {
  margin: 0;
}

.prdanchor .tab a.on {
  position: relative;
  border: 1px solid #707070;
  border-bottom: 1px solid #fff;
  color: #111;
  font-weight: bold;
}

.prdanchor .tab a strong {
  color: #3e3d3c;
}

#productDetail .tit-detail {
  zoom: 1;
  position: relative;
  margin-top: 70px;
  padding-left: 5px;
  font-size: 0;
  line-height: 0;
  margin: 0 55px;
}

#productDetail .tit_terms {
  float: left;
  display: inline-block;
  width: 100%;
  color: #e74174;
  font-size: 20px;
  font-weight: 500;
}

#productDetail  .btns_box:after {
  content: "";
  display: block;
  clear: both;
}

#productDetail  .btns {
  float: right;
  font-size: 0;
}

.skinbtn.point1.gv-qnalist,
.skinbtn.point2.gv-qnawrite,
.skinbtn.point1.gv-reviewlist,
.skinbtn.point2.gv-reviewwrite {
  width: 151px;
  height: 40px;
  line-height: 38px;
}

.skinbtn.point1 {
  border: 1px solid #3e3d3c;
  color: #3e3d3c;
}

.skinbtn.point2 {
  background: #3e3d3c;
  border: 1px solid #3e3d3c;
  color: #fff;
  font-weight: bold;
}

.skinbtn {
  display: inline-block;
  height: 40px;
  padding: 0 5px;
  text-align: center;
  vertical-align: top;
  box-sizing: border-box;
  cursor: pointer;
  font-size: 12px;
}

.skinbtn {
  margin: 0 0 0 10px;
}

#productDetail .prd-detail table {
  table-layout: auto;
}

#productDetail .prd-detail {
  margin-top: 60px;
  width: 100%;
  overflow: hidden;
}

#productDetail .prd-detail img {
  max-width: 100%;
}

#productDetail .prd-detail .detail_align {
  text-align: center;
  margin: 0 auto;
}

#productDetail .related_prd_box {
  border: 1px solid #e1e1e1;
  padding: 0 25px;
  float: left;
}

#productDetail .related_prd_box .item-list .item {
  margin: 20px 0;
  width: 185px;
  font-size: 11px;
  color: #555;
}

#productDetail .related_prd_box .item-list li {
  margin-bottom: 10px;
  text-align: center;
}

#productDetail .related_prd_box .item-list td {
  vertical-align: top;
}

#productDetail .related_prd_box .item-list .prd-thumb {
  width: 185px;
  height: 185px;
  margin-left: auto;
  margin-right: auto;
}

#productDetail .related_prd_box .item-list .prd-thumb img {
  border: 1px solid #e1e1e1;
  width: 100%;
  height: 100%;
}

#productDetail .related_prd_box .item-list .names {
  line-height: 16px;
}

#productDetail .related_prd_box .item-list .sub_names {
  color: #FF0000;
}

#productDetail .related_prd_box .item-list .prd-price {
  font-weight: bold;
  color: #000000;
}

#productDetail .related_prd_box .item-list .prd-price .sold_out {
  text-align: left;
  color: #FF0000;
  font-weight: bold;
}

#productDetail .related_prd_box .item-list .prd-price .ori_price {
  text-align: right;
  font-weight: bold;
  color: #000000;
}

#productDetail .related_prd_box .item-list .prd-price .consumer {
  color: #999;
}

#productDetail .related_prd_box .item-list .prd-price .discount {
  font-size: 13px;
  color: #FF0000;
  font-weight: bold;
}

#productDetail .related_prd_box .item-list .prd-price .prd-price2 {
  font-size: 13px;
  color: #000;
  font-weight: bold;
}

#price_2 {
  display: inline-block;
  padding-top: 60px;
}

.blogSearchWrap {
  float: left;
  height: 260px;
}

.blogSearchWrap #blogSearchIframe {
  height: 100%;
}

.MK-oneclick-title {
  margin: 10px 0 10px 0;
  font-size: 18px;
  text-indent: 5px;
}

.option_tk {
  padding-top: 20px;
}

.option_tk .shopdetailInfoOneclick {
  clear: both;
  overflow: hidden;
  zoom: 1;
  display: block;
  padding: 0 20px;
}

.option_tk .shopdetailInfoOneclick > span {
  float: left;
  display: inline-block;
  width: 100%;
  color: #e74174;
  font-size: 20px;
  padding: 10px 0 10px 0;
  font-weight: 600;
}

.option_tk .shopdetailInfoOneclick .shopdetailInfoList {
  display: inline-block;
  width: 100%;
}

.option_tk .txt {
  display: inline-block;
  border-bottom: 1px solid #ccc;
  margin: 0 20px;
  width: 320px;
  height: 50px;
  padding: 0 10px;
}

.option_tk .txt img {
  width: 28px;
  padding-top: 9px;
}

.option_tk .txt input {
  width: 310px;
  border: none;
  padding: 5px 5px 5px 0;
  color: #777;
}

.datepicker {
  inputmode: none;
}

.MK-oneclick-list {
  overflow: hidden;
  zoom: 1;
}

.MK-oneclick-list:after {
  content: "";
  display: block;
  clear: both;
}

.MK-oneclick-list li {
  min-height: 44px;
  max-height: 365px;
  position: relative;
  box-sizing: border-box;
  float: left;
  margin: 5px 0;
  width: 100%;
  padding: 5px;
  border-radius: 10px;
  border: 1px solid #ccc;
  margin-right: 10px;
}

.MK-oneclick-list li a {
  display: inline-block;
  border-radius: 1px;
  box-sizing: border-box;
}

.MK-oneclick-list li.MK-oneclick-sel a {
  font-weight: 600;
  color: #e74174;
}

.MK-oneclick-list li.MK-oneclick-dis a {
  filter: alpha(opacity=60);
  -moz-opacity: .6;
  opacity: .6;
}

.MK-oneclick-list li.MK-oneclick-color.MK-oneclick-sel a {
  padding: 1px;
  filter: alpha(opacity=100);
  opacity: 1;
}

.MK-oneclick-list li a span {
  display: block;
  text-align: center;
  vertical-align: middle;
  line-height: 24px;
}

.MK-oneclick-list li a img {
  width: 100%;
  height: 100%;
}

.MK-oneclick-list li.MK-oneclick-image {
  width: 49%;
}

.MK-oneclick-list li.MK-oneclick-image a img {
  width: 100%;
  border-radius: 10px;
}

.MK-oneclick-list li.MK-oneclick-image.MK-oneclick-sel a img {
  width: 100%;
  filter: alpha(opacity=30);
  -moz-opacity: .3;
  opacity: .3;
}

.MK-oneclick-list li.MK-oneclick-text .MK-oneclick-list li.MK-oneclick-text {
  min-width: 35px;
  max-width: 100%;
  height: 50px;
}

.MK-oneclick-list li.MK-oneclick-text a {
  padding: 2px;
}

.MK-oneclick-list li.MK-oneclick-text.MK-oneclick-sel a {
  padding: 1px;
}

.MK-oneclick-list li.MK-oneclick-text span {
  min-width: 29px;
}

.MK-oneclick-list li.MK-oneclick-text .MS-oneclick-sel span {
  min-width: 30px;
  line-height: 27px;
}

.MK-oneclick-value {
  padding-bottom: 3px;
  display: none;
}

.MK-oneclick-only-text li.MK-oneclick-text {
  width: 400px;
  border: 1px solid #ccc;
  padding: 5px;
  text-align: center;
  border-radius: 5px;
  margin: 5px;
}

.MK-oneclick-only-text li.MK-oneclick-text span {
  height: auto;
  font-weight: 600;
}

.MK-oneclick-only-text li.MK-oneclick-text a {
  display: block;
}

.MK-oneclick-list li.MK-oneclick-sel {
  max-width: 530px;
  max-height: 365px;
  padding: 4px;
  background: #fef7f9;
  border: 1px solid #e74174;
}

.MK-oneclick-list li.MK-oneclick-sel span {
  line-height: 29px;
}

.MK-oneclick-list li.MK-oneclick-sel a {
  display: block;
}

.buy_on {
  position: absolute;
  width: 385px;
  bottom: 0;
  font-weight: 400;
}

.buy_on a {
  width: 100%;
  color: #e74174;
  background-color: #fff;
  display: inline-block;
  padding: 8px 0;
  margin: 0;
  font-size: 22px;
  text-align: center;
}

.buy_on a.buy {
  background-color: #e74174;
  color: #fff;
}

.shopdetail .shopdetailInfo .shopdetailInfoBottom .shopdetailTotal {
  background-color: #fff;
  text-align: right;
  padding: 15px;
  font-size: 14px;
}

.shopdetail .shopdetailInfo .shopdetailInfoBottom .shopdetailTotal em {
  color: #f1191f;
  font-size: 16px;
  margin-left: 16px;
}

.navi_wrap {
  box-sizing: border-box;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  background: #fff;
}

#main-navigation .links-container {
  position: relative;
  overflow-x: auto;
}

#main-navigation .links-container .nav-link {
  flex-grow: 1;
  cursor: pointer;
}

#main-navigation .links-container .nav-link.active {
  border-bottom: 3px solid #e74174;
}

.reserve_notice span {
  display: block;
  color: #000;
  font-weight: 600;
  font-size: 18px;
  line-height: 17px;
  padding: 5px 0 5px 0;
}

.reserve_notice p {
  white-space: normal;
  color: #000;
  line-height: 16px;
}

@keyframes blink-effect {
  50% {
    opacity: 0;
  }
}

.blink {
  animation: blink-effect 1.5s step-end infinite;
}

.blink_p {
  float: right;
  width: 70%;
  padding-left: 50px;
  line-height: 2.5px;
}

.reserve_wrap {
  display: block;
  width: 100%;
  margin-top: 55px;
  border-top: 1px solid #e3e3e3;
}

.reserve_wrap .tit {
  font-size: 20px;
  font-weight: 500;
  color: #e74174;
}

.reserve_terms {
  width: 60%;
  height: 100%;
  float: left;
  position: relative;
  display: block;
  overflow: hidden;
  padding: 25px 15px 0 20px;
}

.terms_basic {
  display: inline-block;
  position: relative;
  margin-top: 10px;
}

.terms_special {
  display: inline-block;
  margin-left: 20px;
}

.terms_basic label,
.terms_special label {
  display: block;
  color: #333;
  float: left;
  font-size: 20px;
  padding: 0 20px;
}

.terms_basic a,
.terms_special a {
  float: left;
  width: 200px;
  height: 42px;
  line-height: 40px;
  font-weight: normal;
  background: #f5f5f5;
  font-size: 16px;
  display: inline-block;
  text-align: center;
  padding: 0 13px;
}

.terms_basic a:hover,
.terms_special a:hover {
  font-weight: bold;
}

.close_bt {
  position: absolute;
  background: none !important;
  right: 18px !important;
  top: 16px !important;
  width: auto !important;
}

.reserve_info span {
  display: block;
  color: #444;
  font-weight: 600;
  font-size: 14px;
  padding: 5px 0;
}

.reserve_info .event {
  color: #e74174;
  padding: 0 0 5px 0;
}

.reserve_info .notice1 {
  color: #666;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.6;
}

.reserve_info p {
  white-space: normal;
  color: #777;
  padding: 0 0 3px 10px;
  background: url(/design/kichmom/reserve/ico_bul.png) 0 0 no-repeat;
  background-size: 8px auto;
  background-position: 0 2px;
  word-break: keep-all;
  letter-spacing: -0.6px;
}

.reserve_info .color_b {
  color: #444;
  font-weight: 500;
}

.summary li {
  background: url(/design/kichmom/reserve/ico_notice.png) no-repeat;
  background-size: 23px;
  padding-bottom: 10px;
  background-position: 0 4px;
  width: 100%;
  float: left;
}

.summary li p {
  font-size: 17px;
  color: #333;
  line-height: 25px;
  font-weight: 400;
  padding-left: 33px;
}

.shopdetailInfoMultiSelect {
  height: 380px;
  position: relative;
  display: block;
  margin-top: 25px;
  border-left: 1px solid #f4f4f4;
}

.MK_optAddWrap {
  display: inline-block;
}

.MK_optAddWrap .tit {
  font-size: 22px;
  font-weight: 500;
  color: #e74174;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_p-name {
  font-weight: 500;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_qty-ctrl {
  margin-top: 8px;
  padding: 0 15px;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_qty-ctrl input[type="tel"] {
  padding: 0 6px;
  width: 79px;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_btn-del img {
  padding-top: 8px;
  padding-left: 8px;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_price {
  position: absolute;
  bottom: 21px;
  right: 0;
  font-size: 13px;
  margin-right: 5px;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_qty-ctrl .btn-type-02 {
  background-color: #bbb;
  width: 35px;
  height: 35px;
  text-align: center;
  vertical-align: middle;
  line-height: 35px;
  color: #fff;
  display: inline-block;
}

.MK_optAddWrap .MK_total {
  display: inline-block;
}

.op_info {
  width: 100%;
  display: inline-block;
  margin-bottom: 20px;
  line-height: 30px;
}

.sub_tit {
  font-size: 20px;
  color: #999;
  padding-right: 20px;
}

.sub_tit_a {
  font-size: 21px;
  color: #000;
  font-weight: 500;
  line-height: 26px;
}

.MK_optAddWrap_div {
  height: 10px;
  padding: 0;
  background: #f6f6f6;
  border-top: 1px solid #c7c7c7;
  border-bottom: 1px solid #c7c7c7;
}

.MK_optAddWrap_line {
  height: 1px;
  padding: 0;
  background: #f6f6f6;
  border-bottom: 1px solid #c7c7c7;
}

.shopdetail .shopdetailInfo .shopdetailInfoBottom .option_area .MK_optAddWrap #MK_innerOptPrice,
.shopdetail .shopdetailInfo .shopdetailInfoBottom .option_area .MK_optAddWrap #MK_innerOptAdd {
  padding-bottom: 5px;
  margin-right: 10px;
}

.shopdetail .shopdetailInfo .shopdetailInfoBottom .option_area .MK_optAddWrap #MK_optAddWrapList {
  background-color: #f6f6f6;
}

#MK_innerOptWrap {
  display: inline-block;
}

.serviceList {
  flex-wrap: wrap;
  justify-content: flex-start;
}

.serviceList li {
  height: 110px;
  vertical-align: top;
}

.serviceList li .icoArea img {
  overflow: hidden;
}

.serviceList li span {
  display: block;
  font-size: 16px;
  color: #666;
  vertical-align: top;
  line-height: 20px;
  padding-top: 10px;
}

.serviceList li span .sub {
  font-size: 14px;
  color: #ccc;
}

.serviceList li .icoArea .ico_01 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_08.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_02 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_02.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_03 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_21.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_04 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_22.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_05 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_30.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_06 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_01.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_07 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_04.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_08 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_03.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_09 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_06.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_10 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_13.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_11 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_10.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_12 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_05.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_13 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_20.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_14 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_15.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_15,
.serviceList li .icoArea .ico_16 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_11.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_17 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_12.png) no-repeat center;
  background-size: 45px auto;
}

.serviceList li .icoArea .ico_18 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_16.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_19 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_14.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_20 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_19.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_21 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_18.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_22 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_29.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_23 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_09.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_24 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_17.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_26,
.serviceList li .icoArea .ico_27 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_24.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_28 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_25.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_29 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_23.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_30 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_26.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_31 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_28.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_32 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_27.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_33 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_29.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_34 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_34.png) no-repeat center;
  background-size: 48px auto;
}

.serviceList li .icoArea .ico_35 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_35.png) no-repeat center;
  background-size: 48px auto;
}

.popup_layer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}

.popup_box {
  position: relative;
  top: 50%;
  left: 50%;
  height: 550px;
  width: 600px;
  transform: translate(-50%, -50%);
  z-index: 1002;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 2px 5px 10px 0px rgba(0,0,0,0.35);
  -webkit-box-shadow: 2px 5px 10px 0px rgba(0,0,0,0.35);
  -moz-box-shadow: 2px 5px 10px 0px rgba(0,0,0,0.35);
}

.popup_box .top {
  position: fixed;
  height: 60px;
  display: block;
  padding: 10px 30px 8px 24px;
  background: #fff;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
  border-bottom: 1px solid #eee;
}

.popup_box .top img {
  width: 25px;
  height: 25px;
}

.popup_box h5 {
  display: inline-block;
  font-size: 22px;
}

.popup_box .popup_cont {
  height: 650px;
  padding: 15px;
  padding-top: 60px;
}

.popup_box .popup_cont iframe {
  border: none;
  height: 450px;
  overflow-y: scroll;
  width: 100%;
}

.popup_box .popup_cont iframe  scroll {
  overflow: hidden;
}

.popup_box .popup_cont iframe {
  -ms-overflow-style: none;
}

.popup_box .popup_cont iframe::-webkit-scrollbar {
  display: none;
}

.popup_box .popup_btn {
  position: absolute;
  bottom: 0;
  display: table;
  table-layout: fixed;
  width: 100%;
}

.popup_box .popup_btn a {
  position: relative;
  display: table-cell;
  height: 30px;
  font-size: 30px;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  background: #e74174;
  color: #fff;
}

.popup_box .popup_btn a.close_day {
  background: #5d5d5d;
}

.popup_box .popup_btn a.close_day:before,
.popup_box .popup_btn a.close_day:after {
  display: none;
}

.popup_overlay {
  position: fixed;
  top: 0px;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 1001;
  background: rgba(0,0,0,0.5);
}

.serviceList li .icoArea .ico_25 {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url(/design/kichmom/reserve/list_ico_07.png) no-repeat center;
  background-size: 48px auto;
}

:root {
  --ip-pink-soft: #fff5f8;
  --ip-bg2: #f2f4f6;
  --ip-white: #fff;
}

.meta_login {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: calc(100% - 40px);
  box-sizing: border-box;
  transform: translate(-50%, -50%);
  text-align: center;
  color: var(--ip-text);
  background: rgba(255,255,255,.98);
  border-radius: 14px;
  box-shadow: 0 8px 28px rgba(0,0,0,.08);
}

.meta_login .meta_login_badge {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4.5px 9px;
  color: var(--ip-sub);
  background: var(--ip-bg2);
  border-radius: 100px;
  font-weight: 600;
}

.meta_login strong {
  display: block;
  color: var(--ip-text);
  font-weight: 700;
  letter-spacing: -0.5px;
}

.meta_login .meta_login_desc {
  margin-top: 9px;
  color: var(--ip-sub);
  font-weight: 400;
}

.meta_login .bt_login {
  display: block;
  margin-top: 18px;
  color: #fff;
  background: var(--ip-pink);
  border-radius: 10px;
  font-weight: 700;
}

.meta_login .meta_login_note {
  margin-top: 9px;
  color: var(--ip-light);
  font-weight: 400;
}

.meta .meta_else img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(.72) opacity(.55);
}

.option_tk {
  display: block;
}

.reserve_intro {
  margin: 0 0 15px;
  border: 0;
}

.reserve_intro_text strong {
  display: block;
  color: var(--ip-text);
  font-weight: 700;
}

.reserve_intro_text p {
  margin-top: 4.5px;
  color: var(--ip-sub);
}

.reserve_intro_text p em {
  color: var(--ip-text);
  font-style: normal;
  font-weight: 700;
}

.reserve_progress {
  margin-top: 14px;
}

.reserve_progress_text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 7px;
  color: var(--ip-light);
}

.reserve_progress_text strong {
  color: var(--ip-sub);
  font-weight: 600;
}

.reserve_progress_text strong em {
  font-style: normal;
}

.reserve_progress_bar {
  width: 100%;
  overflow: hidden;
  background: #e7eaee;
  border-radius: 100px;
}

.reserve_progress_bar span {
  display: block;
  width: 0;
  height: 100%;
  background: var(--ip-pink);
  border-radius: 100px;
  transition: width .25s ease;
}

.reserve_notice,
.reserve_notice.reserve_notice--closed {
  position: relative;
  margin: 0 0 16px !important;
  padding: 15px 16px !important;
  box-sizing: border-box;
  background: var(--ip-white) !important;
  border: 1px solid #f1c5d1 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

.reserve_notice--closed .reserve_notice_head {
  display: flex;
  align-items: center;
  gap: 7px;
}

.reserve_notice--closed .reserve_notice_icon {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  padding: 0 !important;
  color: #fff !important;
  background: var(--ip-pink) !important;
  border-radius: 50%;
  font-size: 10.5px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
}

.reserve_notice--closed .reserve_notice_head strong {
  color: var(--ip-text);
  font-weight: 700;
}

.reserve_notice--closed .reserve_notice_month {
  margin-top: 9px !important;
  padding: 0 !important;
  color: var(--ip-text) !important;
  background: none !important;
  font-weight: 700 !important;
  letter-spacing: -0.4px;
}

.reserve_notice--closed .reserve_notice_desc {
  margin-top: 4.5px !important;
  padding: 0 !important;
  color: var(--ip-sub) !important;
  background: none !important;
  font-weight: 400 !important;
}

.reserve_fields {
  counter-reset: reserveField;
}

.reserve_field {
  counter-increment: reserveField;
}

.reserve_field_no {
  font-size: 0 !important;
}

.reserve_field_no::before {
  content: counter(reserveField, decimal-leading-zero);
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  text-align: center;
  font-weight: 700;
}

.reserve_field {
  position: relative;
  box-sizing: border-box;
  transition: border-color .18s ease, box-shadow .18s ease;
}

.reserve_field.is-complete {
  background: var(--ip-white);
  border-color: var(--ip-line);
}

.reserve_field.is-attention {
  border-color: var(--ip-pink) !important;
  box-shadow: 0 0 0 3px rgba(231,65,116,.08) !important;
}

.reserve_field_head {
  display: flex;
  align-items: center;
}

.reserve_field_no {
  flex: 0 0 27px;
  box-sizing: border-box;
  color: var(--ip-sub);
  background: var(--ip-bg2);
  border: 0;
  text-align: center;
  font-weight: 700;
}

.reserve_field.is-complete .reserve_field_no {
  color: var(--ip-sub);
  background: var(--ip-bg2);
  border: 0;
}

.reserve_field_title {
  flex: 1;
  min-width: 0;
  padding: 0;
}

.reserve_field_title strong {
  display: inline;
  color: var(--ip-text);
  font-weight: 700;
}

.required_badge {
  display: inline-block;
  vertical-align: 1px;
  color: var(--ip-light);
  background: var(--ip-bg2);
  border-radius: 4.5px;
  font-weight: 600;
}

.field_guide {
  color: var(--ip-light);
}

.field_status {
  flex: 0 0 auto;
  margin: 0;
  padding: 2.5px 0;
  color: var(--ip-light);
  background: transparent;
  border: 0;
  font-weight: 500;
  white-space: nowrap;
}

.reserve_field_body,
.reserve_field .shopdetailInfoOneclick,
.reserve_field .shopdetailInfoList {
  width: 100%;
}

.reserve_field .shopdetailInfoOneclick {
  clear: both;
  overflow: visible;
}

.reserve_field .MK-oneclick-title {
  display: block;
  padding: 0 0 7px;
  color: var(--ip-light);
  font-weight: 500;
}

.reserve_field .MK-oneclick-title::before {
  display: none !important;
}

.reserve_field .MK-oneclick-list {
  flex-wrap: wrap;
  zoom: 1;
}

.reserve_field .MK-oneclick-list:after {
  display: none !important;
}

.reserve_field .MK-oneclick-list li a {
  display: block !important;
  width: 100%;
  box-sizing: border-box;
  color: var(--ip-text) !important;
}

.reserve_field .MK-oneclick-list li a span {
  display: block;
  color: var(--ip-text) !important;
  font-size: 12.5px;
  line-height: 17.5px;
  font-weight: 500;
  text-align: center;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-sel a,
.reserve_field .MK-oneclick-list li.MK-oneclick-sel a span {
  color: var(--ip-text) !important;
  font-weight: 700 !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-sel::after {
  content: "선택";
  position: absolute;
  color: #fff;
  background: var(--ip-pink);
  border-radius: 100px;
  font-weight: 600;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-dis {
  background: var(--ip-bg);
  border-color: var(--ip-line);
}

.reserve_field .MK-oneclick-list li.MK-oneclick-image.MK-oneclick-sel a img {
  opacity: 1 !important;
  filter: none !important;
}

.shopdetailInfoSelectRow .txt,
.reserve_field .txt {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box;
}

.reserve_field .txt input,
.reserve_field .txt select,
.reserve_field input[type="text"],
.reserve_field input[type="date"],
.reserve_field input[type="tel"],
.reserve_field input[type="number"],
.reserve_field input[type="email"],
.reserve_field select,
.reserve_field textarea {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 13px !important;
  box-sizing: border-box !important;
  color: var(--ip-text) !important;
  background: var(--ip-bg) !important;
  border: 1px solid transparent !important;
  font-family: inherit !important;
  font-weight: 500 !important;
  text-align: left !important;
  outline: none !important;
  box-shadow: none !important;
}

.reserve_field textarea {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  resize: vertical;
}

.reserve_field .txt input:focus,
.reserve_field .txt select:focus,
.reserve_field input:focus,
.reserve_field select:focus,
.reserve_field textarea:focus {
  background: var(--ip-white) !important;
  border-color: #aeb7c1 !important;
  outline: none !important;
  box-shadow: none !important;
}

.reserve_field.is-complete .txt input:not(.birth-date-original),
.reserve_field.is-complete .txt select,
.reserve_field.is-complete input:not(.birth-date-original),
.reserve_field.is-complete select,
.reserve_field.is-complete textarea {
  color: var(--ip-text) !important;
  background: var(--ip-bg) !important;
  border-color: transparent !important;
}

.reserve_field .birth-date-original {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.reserve_field input.birth-date-native {
  left: auto !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  line-height: normal !important;
  text-align: left !important;
}

.reserve_field input.birth-date-native:focus {
  background: var(--ip-white) !important;
  border-color: #aeb7c1 !important;
  outline: none !important;
  box-shadow: none !important;
}

.reserve_field input.birth-date-native::-webkit-calendar-picker-indicator {
  display: block !important;
  margin-left: auto !important;
}

.shopdetailInfoMultiSelect {
  padding: 0 16px;
}

.MK_optAddWrap {
  background: var(--ip-bg);
  border: 0;
  border-radius: 14px;
}

.MK_optAddWrap .MK_inner-opt-cm li {
  position: relative;
  margin-top: 0;
  padding: 0;
  border: 0;
}

.MK_optAddWrap .MK_inner-opt-cm li:last-child {
  border-bottom: 0;
}

.MK_optAddWrap .MK_inner-opt-cm li::before {
  display: block;
  margin-bottom: 7px;
  content: "선택한 예약 정보";
  color: var(--ip-text);
  font-weight: 700;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_p-name {
  display: block;
  padding: 2px 30px 12px 0;
  color: var(--ip-sub);
  border-bottom: 1px solid var(--ip-line);
  letter-spacing: 0;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_qty-ctrl,
.MK_optAddWrap .MK_inner-opt-cm .MK_price {
  display: none;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_btn-del {
  position: absolute;
  top: 32px;
  right: 2px;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_btn-del img {
  width: 14px;
  opacity: .55;
}

#MK_innerOptTotal {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  padding: 15px 0 1px;
  text-align: left;
}

.pay_total_label .MK_txt-total {
  display: block;
  color: var(--ip-sub);
  font-weight: 600;
}

.pay_total_label small {
  display: block;
  margin-top: 3px;
  color: var(--ip-light);
}

.pay_total_price {
  flex: 0 0 auto;
  white-space: nowrap;
}

.MK_optAddWrap .MK_total {
  margin: 0 2.5px 0 0;
  color: var(--ip-text);
  font-weight: 800;
}

.MK_optAddWrap .MK_txt-won {
  color: var(--ip-text);
  font-weight: 700;
}

.payment_notice {
  margin: 16px 16px 8px;
}

.payment_notice strong {
  display: block;
  margin-bottom: 7px;
  color: var(--ip-text);
  font-weight: 700;
}

.payment_notice p {
  position: relative;
  padding-left: 10px;
  color: var(--ip-sub);
}

.payment_notice p + p {
  margin-top: 3px;
}

.payment_notice p::before {
  content: "";
  position: absolute;
  top: 6.2px;
  left: 0;
  width: 3px;
  height: 3px;
  background: #b0b8c1;
  border-radius: 50%;
}

.payment_notice_caption {
  margin: 0 16px 20px;
  color: var(--ip-light);
  text-align: center;
}

.shopdetail .shopdetailInfo .buy_on,
.buy_caption {
  display: none !important;
}

.reserve_info {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0 16px;
  background: none;
}

.reserve_info_item {
  padding: 15px;
  background: var(--ip-bg);
  border-radius: 13px;
}

.reserve_info_item span {
  display: block;
  padding: 0 0 7px;
  color: var(--ip-text);
  font-weight: 700;
}

.reserve_info_item p {
  padding: 0 0 3.5px 10px;
  color: var(--ip-sub);
}

.reserve_info_item .color_b {
  color: #4e5968;
  font-weight: 500;
}

#navi_container > .terms_wrap {
  margin: 10px 16px 20px;
  overflow: hidden;
  background: var(--ip-bg);
  border: 0;
  border-radius: 12px;
}

.terms_wrap a {
  display: block;
  color: var(--ip-sub);
  font-weight: 600;
}

.reserve_sticky_progress {
  display: none;
  position: fixed;
  left: 0;
  width: 100%;
  padding: 9px 16px 8px;
  box-sizing: border-box;
  background: rgba(255,255,255,.98);
  border-bottom: 1px solid var(--ip-line);
  box-shadow: none;
}

.reserve_sticky_progress.is-visible {
  display: block;
}

.reserve_sticky_progress_text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 6px;
}

.reserve_sticky_progress_text > span {
  color: var(--ip-text);
  font-weight: 700;
}

.reserve_sticky_progress_text strong {
  color: var(--ip-sub);
  font-weight: 600;
}

.reserve_sticky_progress_text em {
  font-style: normal;
}

.reserve_sticky_progress_bar {
  width: 100%;
  height: 3.5px;
  overflow: hidden;
  background: #e7eaee;
  border-radius: 100px;
}

.reserve_sticky_progress_bar span {
  display: block;
  width: 0;
  height: 100%;
  background: var(--ip-pink);
  border-radius: 100px;
  transition: width .25s ease;
}

.reserve_bottom_bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
  box-sizing: border-box;
  background: rgba(255,255,255,.98);
  border-top: 1px solid var(--ip-line);
}

.reserve_bottom_inner {
  display: flex;
  align-items: center;
  gap: 12px;
}

.reserve_bottom_status {
  flex: 0 0 auto;
  min-width: 80px;
}

.reserve_bottom_status span {
  display: block;
  margin-bottom: 1.5px;
  color: var(--ip-light);
}

.reserve_bottom_status strong {
  display: block;
  color: var(--ip-text);
  font-weight: 700;
  white-space: nowrap;
}

.reserve_bottom_btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  box-sizing: border-box;
  color: #8b95a1 !important;
  background: var(--ip-bg2) !important;
  font-weight: 700;
  text-align: center;
  box-shadow: none !important;
}

.reserve_bottom_bar.is-ready .reserve_bottom_btn {
  color: #fff !important;
  background: var(--ip-pink) !important;
  box-shadow: none !important;
}

.reserve_bottom_bar.is-ready .reserve_bottom_status span {
  color: var(--ip-light);
}

.reserve_bottom_bar.is-ready .reserve_bottom_status strong {
  color: var(--ip-text);
}

html.has-reserve-fixed #container_op {
  padding-bottom: 90px;
}

#main-navigation .links-container .nav-link {
  color: var(--ip-sub);
  font-weight: 500;
}

#main-navigation .links-container .nav-link.active {
  color: var(--ip-text);
  font-weight: 700;
}

@media screen and (max-width:360px) {
  .option_tk {
    padding: 0 13px;
  }

  .reserve_field {
    padding: 13.5px;
  }

  .reserve_field_head {
    gap: 7px;
  }

  .reserve_field_no {
    flex-basis: 25px;
    width: 25px;
    height: 25px;
  }

  .reserve_field_no::before {
    line-height: 25px;
  }

  .reserve_field_title strong {
    font-size: 13.3px;
  }

  .field_status {
    font-size: 8.8px;
  }

  .reserve_bottom_bar {
    padding-left: 13px;
    padding-right: 13px;
  }

  .reserve_bottom_status {
    min-width: 72px;
  }

  .reserve_bottom_status strong {
    font-size: 11px;
  }

  .reserve_bottom_btn {
    font-size: 13.5px;
  }
}

@media screen and (min-width:768px) {
  .option_tk,
  .shopdetailInfoMultiSelect {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
  }

  .reserve_bottom_inner,
  .reserve_sticky_progress_inner {
    max-width: 760px;
    margin: 0 auto;
  }
}

.reserve_field.is-current {
  border-color: var(--ip-pink) !important;
  box-shadow: 0 0 0 1px rgba(231,65,116,.04) !important;
}

.reserve_field.is-current .reserve_field_no {
  color: #fff !important;
  background: var(--ip-pink) !important;
}

.reserve_field.is-current .reserve_field_title strong {
  color: var(--ip-pink) !important;
}

.reserve_field.is-current .required_badge {
  color: var(--ip-pink) !important;
  background: var(--ip-pink-soft) !important;
}

.reserve_field.is-current .field_guide {
  color: var(--ip-sub) !important;
}

.field_status:empty {
  display: none !important;
}

.reserve_field.is-complete .field_status {
  display: block;
  color: var(--ip-sub);
  background: transparent;
  font-weight: 600;
}

.option_tk h4,
.shopdetail .detail_tit,
#productDetail .tit,
#navi_container .h3_tit,
.detail-info > .tit,
.shopdetailInfoName,
.shopdetailInfoName_op,
.shopdetail .reserve_tit {
  padding-top: 23px !important;
  padding-bottom: 12px !important;
}

#price_2 > .container {
  padding: 0 16px !important;
}

ul.tabs {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  list-style: none !important;
}

ul.tabs li {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  color: var(--ip-sub) !important;
  background: #fff !important;
  border: 1px solid var(--ip-line) !important;
  border-radius: 100px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  cursor: pointer;
}

ul.tabs li.current {
  color: var(--ip-pink) !important;
  background: var(--ip-pink-soft) !important;
  border-color: var(--ip-pink) !important;
  font-weight: 700 !important;
}

.tab-content {
  display: none;
  padding: 0;
}

.tab-content.current {
  display: block;
}

.price {
  width: 100% !important;
  overflow: visible !important;
  white-space: normal !important;
  border: 0 !important;
  border-top: 1px solid var(--ip-line) !important;
  border-radius: 0 !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  color: var(--ip-text) !important;
  background: #fff !important;
}

.price tr {
  height: auto !important;
  border: 0 !important;
}

.price td {
  color: var(--ip-text) !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ip-line) !important;
  vertical-align: middle !important;
  word-break: keep-all;
}

.price .title,
.price td.title {
  width: 34%;
  color: var(--ip-sub) !important;
  background: #fff !important;
  font-weight: 500 !important;
}

.price tr .retail {
  color: var(--ip-light) !important;
  text-decoration: line-through;
}

.price tr.ip,
.price tr.ip td {
  color: var(--ip-text) !important;
  font-weight: 700 !important;
}

.price td p {
  position: static !important;
  padding-left: 0 !important;
  color: inherit;
  background: none !important;
  white-space: normal;
}

.price td p::before {
  display: none !important;
}

@media screen and (max-width:360px) {
  .option_tk h4,
  .shopdetail .detail_tit,
  #productDetail .tit,
  #navi_container .h3_tit,
  .detail-info > .tit,
  .shopdetailInfoName,
  .shopdetailInfoName_op,
  .shopdetail .reserve_tit {
    font-size: 16px !important;
    line-height: 22px !important;
  }

  .serviceList {
    padding: 0 13px !important;
    gap: 6px !important;
  }

  .serviceList li {
    min-height: 43px !important;
    padding-left: 32px !important;
  }

  .serviceList li::before {
    left: 10px;
  }
}

.serviceList {
  background: #fff !important;
}

.serviceList li {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: auto !important;
  margin: 0 !important;
  text-align: center !important;
  background: #fff !important;
  border-radius: 0 !important;
}

.serviceList li::before {
  display: none !important;
  content: none !important;
}

.serviceList li .icoArea,
.serviceList .service_icon {
  display: flex !important;
  flex: 0 0 30px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.serviceList li .icoArea > div {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.serviceList li .icoArea img {
  display: block !important;
  object-fit: contain !important;
  filter: none !important;
}

.serviceList li > span,
.serviceList .service_text {
  display: block !important;
  min-width: 0 !important;
  padding: 0 !important;
  color: var(--ip-text) !important;
  letter-spacing: -0.25px !important;
  text-align: center !important;
}

.serviceList li > span .sub,
.serviceList .service_text .sub {
  display: block !important;
  margin-top: 1.5px !important;
  padding: 0 !important;
  color: var(--ip-light) !important;
  font-weight: 400 !important;
}

.service_more_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4.5px;
  width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
  color: var(--ip-sub);
  border-radius: 10px;
  font-family: inherit;
  font-weight: 600;
  cursor: pointer;
}

.service_more_btn::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: -3px;
  border-right: 1.5px solid #8b95a1;
  border-bottom: 1.5px solid #8b95a1;
  transform: rotate(45deg);
  transition: transform .2s ease, margin .2s ease;
}

.service_more_btn.is-open::after {
  margin-top: 3.5px;
  transform: rotate(225deg);
}

#map_2 .root_daum_roughmap,
#map_2 .root_daum_roughmap_landing,
#map_2 #map_wrap {
  display: none !important;
}

#map_2 .map_addr {
  color: var(--ip-sub) !important;
  background: var(--ip-bg) !important;
  border-radius: 12px !important;
}

#map_2 .map_addr span {
  margin-right: 7px;
  color: var(--ip-text);
  font-weight: 700;
}

.ip_kakao_location {
  margin: 0 16px;
  padding-bottom: 24px;
}

.ip_kakao_map {
  position: relative;
  width: 100%;
  height: 200px;
  overflow: hidden;
  background: var(--ip-bg);
  border: 1px solid var(--ip-line);
  border-radius: 14px;
  box-sizing: border-box;
}

.ip_kakao_map::before {
  content: "지도를 불러오는 중이에요";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  transform: translate(-50%, -50%);
  color: var(--ip-light);
  font-size: 10.5px;
  line-height: 15px;
  white-space: nowrap;
}

.ip_kakao_map.is-ready::before {
  display: none;
}

.ip_kakao_map_error {
  display: none;
  margin-top: 8px;
  padding: 11px 12px;
  color: var(--ip-sub);
  background: var(--ip-bg);
  border-radius: 10px;
}

.ip_kakao_map_error.is-visible {
  display: block;
}

.ip_kakao_map_actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 7px;
  margin-top: 9px;
}

.ip_kakao_map_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  box-sizing: border-box;
  color: var(--ip-text);
  background: #fff;
  border: 1px solid var(--ip-line);
  border-radius: 10px;
  font-weight: 600;
  text-align: center;
}

.ip_kakao_map_btn.is-primary {
  color: #fff;
  background: var(--ip-pink);
  border-color: var(--ip-pink);
}

@media screen and (max-width:360px) {
  #map_2 .map_addr,
  .ip_kakao_location {
    margin-left: 13px !important;
    margin-right: 13px !important;
  }

  .ip_kakao_map {
    height: 180px;
  }
}

.terms_basic_link {
  position: relative;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  padding: 0 14px;
  box-sizing: border-box;
}

.terms_basic_link > div {
  flex: 1;
  text-align: left;
}

.terms_link_arrow {
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-right: 3px;
  border-top: 1.5px solid #b0b8c1;
  border-right: 1.5px solid #b0b8c1;
  transform: rotate(45deg);
}

.terms_sheet {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10050;
}

.terms_sheet.is-open {
  display: block;
}

.terms_sheet_dim {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  background: rgba(0,0,0,.42);
  border: 0;
  cursor: pointer;
}

.terms_sheet_panel {
  position: absolute;
  left: 50%;
  bottom: 0;
  display: flex;
  flex-direction: column;
  height: calc(100% - 60px);
  transform: translateX(-50%);
  overflow: hidden;
  background: #fff;
  border-radius: 18px 18px 0 0;
  box-shadow: 0 -10px 30px rgba(0,0,0,.08);
}

.terms_sheet_header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 56px;
  height: 56px;
  padding: 0 56px;
  box-sizing: border-box;
  background: #fff;
  border-bottom: 1px solid var(--ip-line);
}

.terms_sheet_header strong {
  color: var(--ip-text);
  font-weight: 700;
  letter-spacing: -0.4px;
}

.terms_sheet_close {
  position: absolute;
  top: 50%;
  right: 13px;
  width: 36px;
  height: 36px;
  padding: 0;
  transform: translateY(-50%);
  background: transparent;
  border: 0;
  cursor: pointer;
}

.terms_sheet_close span,
.terms_sheet_close span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 1.5px;
  content: "";
  background: #4e5968;
  border-radius: 10px;
}

.terms_sheet_close span {
  transform: translate(-50%, -50%) rotate(45deg);
}

.terms_sheet_close span::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.terms_sheet_content {
  flex: 1 1 auto;
  min-height: 0;
  padding: 18px 16px 30px;
  box-sizing: border-box;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  outline: none;
}

.terms_article {
  padding: 0 0 20px;
}

.terms_article + .terms_article {
  padding-top: 20px;
  border-top: 1px solid var(--ip-line);
}

.terms_article h4 {
  margin: 0 0 10px;
  color: var(--ip-text);
  font-weight: 700;
  letter-spacing: -0.3px;
}

.terms_article p {
  margin: 0;
  color: var(--ip-sub);
  font-weight: 400;
  letter-spacing: -0.2px;
  word-break: keep-all;
}

.terms_article p + p {
  margin-top: 7.5px;
}

.terms_article .terms_item {
  padding-left: 2px;
  color: #4e5968;
}

.terms_sublist {
  margin: 8px 0;
  padding: 10px 12px;
  background: var(--ip-bg);
  border-radius: 10px;
}

.terms_sublist p {
  color: var(--ip-sub);
}

.terms_confirm {
  margin: 10px 0 0;
  padding: 14px;
  color: var(--ip-text);
  background: var(--ip-bg);
  border-radius: 12px;
  font-size: 10.5px;
  line-height: 16.5px;
  font-weight: 600;
  word-break: keep-all;
}

.terms_sheet_footer {
  flex: 0 0 auto;
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
  box-sizing: border-box;
  background: #fff;
  border-top: 1px solid var(--ip-line);
}

.terms_sheet_confirm {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 50px;
  padding: 0 10px;
  box-sizing: border-box;
  color: #fff;
  background: var(--ip-pink);
  border: 0;
  border-radius: 12px;
  font-family: inherit;
  line-height: 17px;
  font-weight: 700;
  cursor: pointer;
}

html.terms-sheet-open,
html.terms-sheet-open body {
  overflow: hidden !important;
}

@media screen and (max-width:360px) {
  .terms_sheet_panel {
    height: calc(100% - 40px);
  }

  .terms_sheet_content,
  .terms_sheet_footer {
    padding-left: 14px;
    padding-right: 14px;
  }
}

.terms_sheet_meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 18px;
  padding: 10px 12px;
  background: var(--ip-bg);
  border-radius: 10px;
}

.terms_sheet_meta span {
  color: var(--ip-sub);
  font-weight: 500;
}

.terms_sheet_meta strong {
  color: var(--ip-text);
  font-weight: 700;
  white-space: nowrap;
}

.terms_number_list {
  margin: 8px 0 0;
  padding-left: 20px;
  color: var(--ip-sub);
  list-style: decimal;
}

.terms_number_list > li {
  margin: 5.5px 0;
  padding-left: 1.5px;
  color: var(--ip-sub);
  font-weight: 400;
  word-break: keep-all;
}

.terms_dash_list {
  margin: 7px 0 0;
  padding: 10px 12px;
  background: var(--ip-bg);
  border-radius: 10px;
  list-style: none;
}

.terms_dash_list > li {
  position: relative;
  margin: 4.5px 0;
  padding-left: 11px;
  color: var(--ip-sub);
  word-break: keep-all;
}

.terms_dash_list > li::before {
  content: "-";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--ip-light);
}

.terms_confirm {
  display: none;
}

.refund_preview {
  margin: 12px 16px 16px;
  background: #fff;
  border: 1px solid var(--ip-line);
}

.refund_preview_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.refund_preview_head > strong {
  color: var(--ip-text);
  font-weight: 700;
  letter-spacing: -0.3px;
}

.refund_type {
  flex: 0 0 auto;
  padding: 3px 6.5px;
  color: var(--ip-sub);
  background: var(--ip-bg2);
  border-radius: 100px;
  font-weight: 600;
  white-space: nowrap;
}

.refund_type--custom {
  color: var(--ip-pink);
  background: var(--ip-pink-soft);
}

.refund_preview_guide {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  color: var(--ip-sub) !important;
  word-break: keep-all;
}

.refund_preview_guide::before {
  display: none !important;
}

.refund_preview_guide b {
  color: var(--ip-text);
  font-weight: 700;
}

.refund_preview_owner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-top: 11px;
  padding: 10px 0;
  border-top: 1px solid var(--ip-line);
  border-bottom: 1px solid var(--ip-line);
}

.refund_preview_owner span {
  flex: 0 0 auto;
  color: var(--ip-light);
}

.refund_preview_owner strong {
  color: var(--ip-text);
  font-weight: 700;
  text-align: right;
  word-break: keep-all;
}

.refund_preview_list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.refund_preview_list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  border-bottom: 1px solid #f0f1f3;
}

.refund_preview_list li:last-child {
  border-bottom: 0;
}

.refund_preview_list li span {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--ip-sub);
  word-break: keep-all;
}

.refund_preview_list li strong {
  flex: 0 0 auto;
  color: var(--ip-text);
  font-weight: 700;
  white-space: nowrap;
}

.refund_preview_list .refund_no {
  color: var(--ip-pink);
}

.refund_preview_caption {
  margin: 7px 0 0 !important;
  padding: 9px 10px !important;
  color: var(--ip-light) !important;
  background: var(--ip-bg) !important;
  border-radius: 8px;
  word-break: keep-all;
}

.refund_preview_caption::before {
  display: none !important;
}

@media screen and (max-width:360px) {
  .refund_preview {
    margin-left: 13px;
    margin-right: 13px;
    padding: 12.5px;
  }

  .refund_preview_owner,
  .refund_preview_list li {
    gap: 7px;
  }
}

.shopdetail-status.stay-card__status {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 0;
}

.shopdetail-status .stay-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.4px;
  white-space: nowrap;
  box-sizing: border-box;
}

.shopdetail-status .stay-status--realtime {
  border-color: #ffd1de;
  background: #fff0f4;
  color: var(--ip-pink);
}

.shopdetail-status .stay-status--waiting {
  border-color: #e5e7e9;
  background: #f5f6f7;
  color: #777;
}

.shopdetail-status .stay-status--tour {
  border-color: #d8eaff;
  background: #edf6ff;
  color: #347dcc;
}

.shopdetail-status .stay-status-link {
  display: inline-flex;
  color: inherit;
  text-decoration: none;
}

@media screen and (min-width:768px) {
  .option_tk,
  .shopdetailInfoMultiSelect,
  .payment_notice,
  .refund_preview,
  .reserve_info,
  #navi_container > .terms_wrap,
  .payment_notice_caption {
    width: 100%;
    max-width: var(--ip-pc-content-width);
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }

  .reserve_bottom_inner,
  .reserve_sticky_progress_inner {
    max-width: var(--ip-pc-content-width);
    margin: 0 auto;
  }

  .reserve_sticky_progress {
    top: 63px;
  }

  .terms_sheet_panel {
    max-width: 760px;
  }
}

ul.tabs {
  float: none !important;
}

.tab-content,
.tab-content.current {
  float: none !important;
  width: 100% !important;
  height: auto !important;
  box-sizing: border-box !important;
}

#navi_container .shopdetailInfoMultiSelect {
  float: none !important;
  height: auto !important;
  border-left: 0 !important;
}

#navi_container .MK_optAddWrap {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#navi_container #MK_innerOptWrap {
  display: block !important;
  width: 100% !important;
}

.reserve_bottom_bar {
  z-index: 10020;
}

.name {
  font-size: 30px !important;
  line-height: 42px !important;
  font-weight: 700 !important;
}

.shopdetail-status .stay-status {
  height: 30px !important;
  padding: 0 10px !important;
  font-size: 13px !important;
}

#main-navigation .links-container .nav-link {
  font-size: 17px !important;
  line-height: 24px !important;
}

.reserve_intro_text p {
  line-height: 24px !important;
}

.reserve_progress_text,
.reserve_progress_text strong {
  line-height: 21px !important;
}

.reserve_notice--closed .reserve_notice_head strong {
  font-size: 17px !important;
  line-height: 24px !important;
}

.reserve_notice--closed .reserve_notice_month {
  font-size: 20px !important;
  line-height: 28px !important;
}

.reserve_notice--closed .reserve_notice_desc {
  font-size: 15px !important;
  line-height: 23px !important;
}

.reserve_field {
  margin-bottom: 16px !important;
}

.reserve_field_head {
  gap: 13px !important;
}

.reserve_field_no {
  flex-basis: 38px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 10px !important;
}

.reserve_field_no::before {
  font-size: 14px !important;
  line-height: 38px !important;
}

.reserve_field_title strong {
  letter-spacing: -.35px !important;
}

.required_badge {
  margin-left: 7px !important;
  padding: 4px 8px !important;
  font-size: 12px !important;
  line-height: 17px !important;
}

.field_guide {
  margin-top: 6px !important;
  font-size: 15px !important;
  line-height: 22px !important;
}

.field_status {
  line-height: 20px !important;
}

.reserve_field .MK-oneclick-title {
  padding-bottom: 10px !important;
  font-size: 15px !important;
  line-height: 22px !important;
}

.reserve_field .MK-oneclick-list,
.reserve_field .MK-oneclick-only-text {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}

.reserve_field .MK-oneclick-list::after {
  display: none !important;
  content: none !important;
}

.reserve_field .MK-oneclick-list li {
  position: relative !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--ip-line) !important;
  border-radius: 14px !important;
}

.reserve_field .MK-oneclick-only-text li.MK-oneclick-text {
  position: relative !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--ip-line) !important;
  border-radius: 14px !important;
}

.reserve_field .MK-oneclick-list li:only-child {
  position: relative !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--ip-line) !important;
  border-radius: 14px !important;
}

.reserve_field .MK-oneclick-list li > a {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  color: var(--ip-text) !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-image a img,
.reserve_field .MK-oneclick-list li.MK-oneclick-image > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  filter: none !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-image a span,
.reserve_field .MK-oneclick-list li.MK-oneclick-image > span,
.reserve_field .MK-oneclick-list li.MK-oneclick-image .MK-oneclick-text {
  display: block !important;
  width: 100% !important;
  min-height: 58px !important;
  padding: 16px 18px !important;
  box-sizing: border-box !important;
  color: var(--ip-text) !important;
  font-size: 17px !important;
  line-height: 25px !important;
  font-weight: 600 !important;
  text-align: left !important;
  word-break: keep-all !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-text,
.reserve_field .MK-oneclick-only-text li.MK-oneclick-text {
  min-height: 62px !important;
  justify-content: center !important;
  padding: 0 !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-text a,
.reserve_field .MK-oneclick-only-text li.MK-oneclick-text a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 62px !important;
  padding: 14px 18px !important;
  box-sizing: border-box !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-text a span,
.reserve_field .MK-oneclick-only-text li.MK-oneclick-text span,
.reserve_field .MK-oneclick-list li:not(.MK-oneclick-image) a span {
  height: auto !important;
  padding: 0 !important;
  color: var(--ip-text) !important;
  font-size: 17px !important;
  line-height: 24px !important;
  font-weight: 600 !important;
  text-align: center !important;
  word-break: keep-all !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-sel {
  background: var(--ip-pink-soft) !important;
  border: 2px solid var(--ip-pink) !important;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-sel::after {
  top: 10px !important;
  right: 10px !important;
  padding: 5px 9px !important;
  font-size: 12px !important;
  line-height: 16px !important;
  z-index: 3;
}

.reserve_field .MK-oneclick-list li.MK-oneclick-dis {
  opacity: .45 !important;
}

.reserve_field .txt input,
.reserve_field .txt select,
.reserve_field input[type="text"],
.reserve_field input[type="date"],
.reserve_field input[type="tel"],
.reserve_field input[type="number"],
.reserve_field input[type="email"],
.reserve_field select,
.reserve_field textarea {
  height: 60px !important;
  min-height: 60px !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
  font-size: 18px !important;
  line-height: 24px !important;
  border-radius: 12px !important;
}

.birth-date-native-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-height: 60px !important;
}

.reserve_field input.birth-date-native {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 60px !important;
  min-height: 60px !important;
  padding: 0 64px 0 18px !important;
  color: var(--ip-text) !important;
  background: var(--ip-bg) !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-size: 18px !important;
  cursor: pointer !important;
  color-scheme: light;
  -webkit-appearance: auto !important;
  appearance: auto !important;
}

.reserve_field input.birth-date-native::-webkit-calendar-picker-indicator {
  position: absolute !important;
  right: 15px !important;
  width: 26px !important;
  height: 26px !important;
  opacity: 1 !important;
  cursor: pointer !important;
}

.birth-date-picker-btn {
  position: absolute !important;
  top: 50% !important;
  right: 10px !important;
  z-index: 5 !important;
  display: block !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  background: #fff !important;
  border: 1px solid #e5e8eb !important;
  border-radius: 10px !important;
  cursor: pointer !important;
}

.birth-date-picker-btn::before {
  content: "";
  position: absolute;
  top: 11px;
  left: 11px;
  width: 20px;
  height: 19px;
  box-sizing: border-box;
  border: 2px solid #4e5968;
  border-radius: 4px;
}

.birth-date-picker-btn::after {
  content: "";
  position: absolute;
  top: 17px;
  left: 13px;
  width: 16px;
  border-top: 2px solid #4e5968;
}

.birth-date-picker-btn:hover {
  background: #f7f8fa !important;
}

.MK_optAddWrap {
  padding: 22px !important;
}

.MK_optAddWrap .MK_inner-opt-cm li::before {
  font-size: 17px !important;
  line-height: 24px !important;
}

.MK_optAddWrap .MK_inner-opt-cm .MK_p-name {
  font-size: 16px !important;
  line-height: 24px !important;
}

.pay_total_label .MK_txt-total {
  font-size: 16px !important;
  line-height: 22px !important;
}

.pay_total_label small {
  font-size: 14px !important;
  line-height: 20px !important;
}

.MK_optAddWrap .MK_total {
  font-size: 28px !important;
  line-height: 34px !important;
}

.MK_optAddWrap .MK_txt-won {
  font-size: 18px !important;
}

.payment_notice strong,
.reserve_info_item span {
  font-size: 17px !important;
  line-height: 24px !important;
}

.reserve_info_item p {
  font-size: 15px !important;
  line-height: 23px !important;
}

.terms_wrap a {
  font-size: 16px !important;
  line-height: 54px !important;
}

.reserve_sticky_progress_text > span {
  font-size: 16px !important;
  line-height: 22px !important;
}

.reserve_sticky_progress_text strong {
  font-size: 15px !important;
  line-height: 22px !important;
}

.reserve_bottom_status span {
  font-size: 14px !important;
  line-height: 20px !important;
}

.reserve_bottom_status strong {
  font-size: 17px !important;
  line-height: 24px !important;
}

.reserve_bottom_btn {
  line-height: 25px !important;
}

ul.tabs li {
  font-size: 16px !important;
  line-height: 23px !important;
  padding: 10px 18px !important;
}

.price,
.detail-info .price,
.detail-info .table_wrap {
  font-size: 16px !important;
  line-height: 24px !important;
}

.price td {
  padding: 16px 10px !important;
}

.price tr .retail {
  font-size: 14px !important;
}

.price td p {
  line-height: 24px !important;
}

.serviceList:not(.has-more) li:nth-child(n+13) {
  display: flex !important;
}

.serviceList.has-more:not(.is-expanded) li:nth-child(n+13) {
  display: none !important;
}

.service_more_wrap {
  padding-top: 14px !important;
}

.ip_kakao_map_btn {
  min-height: 48px !important;
  font-size: 15px !important;
  line-height: 22px !important;
}

.ip_kakao_map_error {
  font-size: 15px !important;
  line-height: 22px !important;
}

.refund_preview_head > strong {
  font-size: 17px !important;
  line-height: 24px !important;
}

.refund_type {
  font-size: 13px !important;
  line-height: 18px !important;
}

.refund_preview_owner span,
.refund_preview_owner strong,
.refund_preview_list li span,
.refund_preview_list li strong {
  font-size: 15px !important;
  line-height: 22px !important;
}

.refund_preview_list li {
  min-height: 50px !important;
  padding: 12px 0 !important;
}

.terms_sheet_header strong {
  font-size: 20px !important;
  line-height: 27px !important;
}

.terms_article h4 {
  font-size: 17px !important;
  line-height: 24px !important;
}

.terms_number_list > li {
  font-size: 15px !important;
  line-height: 24px !important;
}

.terms_dash_list > li {
  font-size: 14px !important;
  line-height: 22px !important;
}

.terms_sheet_meta span,
.terms_sheet_meta strong {
  font-size: 14px !important;
  line-height: 20px !important;
}

.terms_sheet_confirm {
  font-size: 18px !important;
}

.navi_wrap#topBar {
  box-shadow: none !important;
}

.navi_wrap#topBar.top_bar_fix {
  position: sticky !important;
  top: var(--ip-pc-nav-top, 0px) !important;
  width: 100% !important;
}

#navi_container.pd_top_80 {
  padding-top: 0 !important;
}

#main-navigation,
#main-navigation .links-container {
  width: 100% !important;
  box-sizing: border-box !important;
}

#main-navigation .links-container {
  display: flex !important;
  align-items: stretch !important;
  overflow: visible !important;
  white-space: normal !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#main-navigation .links-container .nav-link {
  flex: 1 1 20% !important;
  width: 20% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  text-align: center !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

#main-navigation .links-container .nav-link > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 12px !important;
  color: #6b7684 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

#main-navigation .links-container .nav-link.active {
  border-bottom-color: #e74174 !important;
}

#main-navigation .links-container .nav-link.active > a {
  color: #191f28 !important;
  font-weight: 700 !important;
}

.serviceList {
  margin: 0 !important;
  box-sizing: border-box !important;
}

.serviceList li:nth-child(6n+1) {
  border-left: 0 !important;
}

.serviceList li:nth-child(-n+6) {
  border-top: 0 !important;
}

.serviceList li {
  border-right: 1px solid #e5e8eb !important;
  border-bottom: 1px solid #e5e8eb !important;
  box-sizing: border-box !important;
}

.serviceList li:nth-child(8n+1) {
  border-left: 1px solid #e5e8eb !important;
}

.serviceList li:nth-child(-n+8) {
  border-top: 1px solid #e5e8eb !important;
}

.serviceList li .icoArea,
.serviceList .service_icon {
  width: 38px !important;
  height: 38px !important;
  flex-basis: 38px !important;
  background-size: 30px auto !important;
}

.serviceList li .icoArea > div {
  background-size: 30px auto !important;
}

.serviceList li .icoArea img {
  width: 30px !important;
  height: 30px !important;
}

.serviceList.is-expanded li.service-extra,
.serviceList.is-expanded li:nth-child(n+13) {
  display: flex !important;
}

.service_more_wrap {
  width: 100% !important;
  padding: 14px 0 0 !important;
  box-sizing: border-box !important;
}

.service_more_btn {
  border: 1px solid #e5e8eb !important;
  background: #f7f8fa !important;
}

#map_2 {
  position: relative !important;
  display: block !important;
  clear: both !important;
  min-height: 0 !important;
  overflow: visible !important;
}

#map_2 .map_addr {
  position: relative !important;
  float: none !important;
  width: auto !important;
  margin: 0 0 16px !important;
  padding: 15px 17px !important;
  box-sizing: border-box !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

#map_2 .ip_kakao_location {
  position: relative !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 0 30px !important;
  clear: both !important;
}

#map_2 .ip_kakao_map {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #f7f8fa !important;
  border: 1px solid #e5e8eb !important;
  border-radius: 14px !important;
}

#map_2 .ip_kakao_map > div {
  max-width: none !important;
}

#map_2 .ip_kakao_map_error {
  margin-top: 10px !important;
  padding: 13px 15px !important;
  font-size: 14px !important;
  line-height: 21px !important;
}

#map_2 .ip_kakao_map_actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

#map_2 .ip_kakao_map_btn {
  min-height: 50px !important;
  line-height: 20px !important;
}

#productDetail,
.meta,
#matterWrap,
.ad_bn,
#price_2 > .container,
.blogSearchWrap {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  box-sizing: border-box !important;
}

.container {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.option_tk,
.shopdetailInfoMultiSelect,
.payment_notice,
.payment_notice_caption,
.reserve_info {
  margin-left: auto !important;
  margin-right: auto !important;
}

#navi_container > .terms_wrap {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.refund_preview {
  margin-left: auto !important;
  margin-right: auto !important;
}

.reserve_bottom_inner,
.reserve_sticky_progress_inner {
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.ad_bn img,
.meta img,
#matterWrap img {
  max-width: 100%;
}

#contentWrapper,
#contentWrap,
#content,
#productDetail,
#navi_container {
  font-size: 18px !important;
  line-height: 1.6;
}

#content input,
#content select,
#content textarea,
#content button,
#navi_container input,
#navi_container select,
#navi_container textarea,
#navi_container button {
  font-size: 18px !important;
}

.intro,
.shopdetail .subname,
.map_addr {
  font-size: 18px !important;
  line-height: 28px !important;
}

.MK-oneclick-list li.MK-oneclick-text a,
.MK-oneclick-only-text li.MK-oneclick-text span {
  font-size: 20px !important;
  line-height: 28px !important;
}

.option_tk h4,
.shopdetail .detail_tit,
#productDetail .tit,
#navi_container .h3_tit,
.detail-info > .tit,
.shopdetailInfoName,
.shopdetailInfoName_op,
.shopdetail .reserve_tit,
.shopdetail .tit,
#navi_container > .tit,
.hd-tpl {
  display: block !important;
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 28px 0 16px !important;
  box-sizing: border-box !important;
  color: #191f28 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 24px !important;
  line-height: 34px !important;
  font-weight: 700 !important;
  letter-spacing: -0.5px !important;
  text-align: left !important;
}

.hd-tpl > h1,
.hd-tpl > h2,
.hd-tpl > h3,
.hd-tpl > h4,
.hd-tpl > h5,
.hd-tpl > strong,
.hd-tpl > span {
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
}

.navi_wrap#topBar {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  background: #fff !important;
  border-top: 1px solid #e5e8eb !important;
  border-bottom: 1px solid #e5e8eb !important;
  box-sizing: border-box !important;
  z-index: 1000 !important;
}

.navi_wrap#topBar.is-pc-fixed,
.navi_wrap#topBar.top_bar_fix.is-pc-fixed {
  position: fixed !important;
  top: var(--ip-pc-nav-top, 0px) !important;
  left: 50% !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  z-index: 10050 !important;
  box-shadow: 0 6px 18px rgba(0,0,0,0.06) !important;
}

.ip-pc-nav-placeholder {
  display: block;
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0;
}

.tcat_fixed.ip-hidden-by-section-nav,
#tcat_fixed.ip-hidden-by-section-nav,
html.ip-pc-section-nav-fixed .tcat_fixed,
html.ip-pc-section-nav-fixed #tcat_fixed {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

#main-navigation .links-container .nav-link > a {
  line-height: 26px !important;
}

.review-list#review {
  scroll-margin-top: 100px !important;
}

.serviceList {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
}

.serviceList li {
  min-width: 0 !important;
}

.serviceList li > span,
.serviceList .service_text {
  font-weight: 600 !important;
  word-break: keep-all !important;
}

.service_more_btn {
  line-height: 24px !important;
}

#map_2 .ip_kakao_location {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  box-sizing: border-box !important;
}

#map_2 .ip_kakao_map {
  max-width: var(--ip-pc-content-width) !important;
  box-sizing: border-box !important;
}

.loc-navi {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas: "location status"
  "name name" !important;
  align-items: center !important;
  column-gap: 24px !important;
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

.loc-navi .shopdetail-status {
  grid-area: status !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  justify-self: end !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
}

.loc-navi > .name {
  grid-area: name !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.loc-navi > .location-path {
  grid-area: location !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  justify-self: start !important;
  gap: 6px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #8b95a1 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  text-align: left !important;
}

.loc-navi > .location-path .ico_map {
  flex: 0 0 auto !important;
  width: 16px !important;
  height: auto !important;
  margin: 0 2px 0 0 !important;
  vertical-align: middle !important;
}

.loc-navi > .location-path a {
  color: #6b7684 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  text-decoration: none !important;
}

.loc-navi > .location-path a:hover {
  color: #191f28 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

#review.review-list,
.review-list#review {
  display: block !important;
  clear: both !important;
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  margin: 48px auto 0 !important;
  padding: 0 0 40px !important;
  box-sizing: border-box !important;
  background: #fff !important;
}

#review > .tit,
#review .hd-tpl {
  font-size: inherit;
}

#review #mPowerreview,
#mPowerreview {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  color: var(--ip-text) !important;
  background: var(--ip-white) !important;
}

#review #mPowerreview > .tit,
#review #mPowerreview .total .btn-white,
#mPowerreview > .tit,
#mPowerreview .total .btn-white {
  display: none !important;
}

#review #mPowerreview .total,
#mPowerreview .total {
  margin: 0 !important;
  padding: 20px 0 16px !important;
  color: var(--ip-text) !important;
  font-size: 18px !important;
  line-height: 26px !important;
  font-weight: 500 !important;
  border: 0 !important;
}

#review #mPowerreview .photo-odr,
#mPowerreview .photo-odr {
  margin: 10px 0 16px !important;
  padding: 0 !important;
  color: var(--ip-sub) !important;
  font-size: 15px !important;
  line-height: 22px !important;
}

#review #mPowerreview .photo-odr a,
#mPowerreview .photo-odr a {
  color: var(--ip-sub) !important;
  font-size: 15px !important;
  line-height: 22px !important;
  text-decoration: none !important;
}

#review #mPowerreview .photo-odr a span,
#review #mPowerreview .photo-odr .odr select,
#mPowerreview .photo-odr a span,
#mPowerreview .photo-odr .odr select {
  min-height: 36px !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
  color: var(--ip-sub) !important;
  background: var(--ip-white) !important;
  border: 1px solid var(--ip-line) !important;
  border-radius: 8px !important;
  font-size: 15px !important;
  line-height: 34px !important;
}

#review #mPowerreview .graph .txt,
#review #mPowerreview .graph .label,
#review #mPowerreview .grade .txt,
#review #mPowerreview .grade .label,
#review #mPowerreview .score .txt,
#review #mPowerreview .score .label,
#review #mPowerreview .satisfy .txt,
#review #mPowerreview .satisfy .label,
#review #mPowerreview [class*="graph"] .txt,
#review #mPowerreview [class*="graph"] .label,
#review #mPowerreview [class*="satisf"] .txt,
#review #mPowerreview [class*="satisf"] .label,
#mPowerreview .graph .txt,
#mPowerreview .graph .label,
#mPowerreview .grade .txt,
#mPowerreview .grade .label,
#mPowerreview .score .txt,
#mPowerreview .score .label,
#mPowerreview .satisfy .txt,
#mPowerreview .satisfy .label {
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
}

#review #mPowerreview .graph li,
#review #mPowerreview .grade li,
#review #mPowerreview .satisfy li,
#mPowerreview .graph li,
#mPowerreview .grade li,
#mPowerreview .satisfy li {
  font-size: 14px !important;
  line-height: 20px !important;
}

#review #mPowerreview .graph .num,
#review #mPowerreview .grade .num,
#review #mPowerreview .satisfy .num,
#review #mPowerreview [class*="graph"] .num,
#review #mPowerreview [class*="satisf"] .num,
#mPowerreview .graph .num,
#mPowerreview .grade .num,
#mPowerreview .satisfy .num {
  color: var(--ip-light) !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

#review #mPowerreview .review-wrap,
#mPowerreview .review-wrap {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#review #mPowerreview .review-wrap > li,
#mPowerreview .review-wrap > li {
  margin: 0 !important;
  padding: 24px 0 !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ip-line) !important;
  background: var(--ip-white) !important;
}

#review #mPowerreview .review-wrap > li:first-child,
#mPowerreview .review-wrap > li:first-child {
  border-top: 0 !important;
}

#review #mPowerreview .sumup,
#mPowerreview .sumup {
  margin: 0 !important;
  padding: 6px 0 12px !important;
  color: var(--ip-text) !important;
  font-size: 19px !important;
  line-height: 28px !important;
  font-weight: 700 !important;
  letter-spacing: -0.3px !important;
}

#review #mPowerreview .item,
#mPowerreview .item {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

#review #mPowerreview .item p,
#mPowerreview .item p {
  margin: 6px 0 !important;
  padding: 0 !important;
  color: var(--ip-sub) !important;
  background: none !important;
  font-size: 17px !important;
  line-height: 26px !important;
  font-weight: 400 !important;
  word-break: keep-all !important;
}

#review #mPowerreview .roll,
#mPowerreview .roll {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
}

#review #mPowerreview .roll li,
#mPowerreview .roll li {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#review #mPowerreview .roll li img,
#mPowerreview .roll li img {
  display: block !important;
  width: 150px !important;
  height: 150px !important;
  object-fit: cover !important;
  border-radius: 10px !important;
}

#review #mPowerreview .review-none,
#mPowerreview .review-none {
  margin: 0 !important;
  padding: 32px 0 !important;
  color: var(--ip-light) !important;
  font-size: 16px !important;
  line-height: 24px !important;
  text-align: center !important;
}

#review #mPowerreview .btn-more,
#mPowerreview .btn-more {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 48px !important;
  margin: 20px 0 0 !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
  color: var(--ip-sub) !important;
  background: var(--ip-bg) !important;
  border: 0 !important;
  border-radius: 11px !important;
  font-size: 16px !important;
  line-height: 48px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}

#review #mPowerreview a,
#mPowerreview a {
  text-decoration: none;
}

#review .ip-review-satisfaction-host,
#mPowerreview .ip-review-satisfaction-host {
  box-sizing: border-box !important;
  min-width: 0 !important;
  padding: 0 !important;
  color: #191f28 !important;
  background: #fff !important;
}

#review .ip-review-satisfaction,
#mPowerreview .ip-review-satisfaction {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 22px 8px !important;
  box-sizing: border-box !important;
}

#review .ip-review-satisfaction-row,
#mPowerreview .ip-review-satisfaction-row {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) 24px !important;
  align-items: center !important;
  column-gap: 12px !important;
  width: 100% !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  border: 0 !important;
  background: transparent !important;
}

#review .ip-review-satisfaction-label,
#mPowerreview .ip-review-satisfaction-label {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #4e5968 !important;
  background: transparent !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 500 !important;
  letter-spacing: -0.2px !important;
  white-space: nowrap !important;
}

#review .ip-review-satisfaction-track,
#mPowerreview .ip-review-satisfaction-track {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: #eeeeee !important;
  border: 0 !important;
  border-radius: 999px !important;
}

#review .ip-review-satisfaction-fill,
#mPowerreview .ip-review-satisfaction-fill {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  display: block !important;
  height: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #e74174 !important;
  border: 0 !important;
  border-radius: 999px !important;
}

#review .ip-review-satisfaction-num,
#mPowerreview .ip-review-satisfaction-num {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #8b95a1 !important;
  background: transparent !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

:root {
  --ip-pc-content-width: 950px;
  --ip-pink: #e74174;
  --ip-text: #191f28;
  --ip-sub: #586575;
  --ip-light: #697586;
  --ip-line: #e5e8eb;
  --ip-bg: #f7f8fa;
}

#contentWrapper {
  max-width: var(--ip-pc-content-width) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

#contentWrap,
#content {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

#contentWrapper {
  width: calc(100% - 32px) !important;
}

#content {
  color: var(--ip-text);
  font-family: "Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
}

#productDetail *,
.loc-navi * {
  box-sizing: border-box;
}

#productDetail .page-body,
#productDetail .thumb-info,
#productDetail .thumb-info .info,
#productDetail .thumb-info .detail,
#productDetail .detail-info,
#productDetail .container,
#navi_container,
.option_tk,
.shopdetailInfoMultiSelect,
.payment_notice,
.refund_preview,
.reserve_info,
.terms_wrap,
.payment_notice_caption,
#review,
#map_2 {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  min-width: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}

#productDetail .thumb-info {
  display: block;
  margin: 0 !important;
}

#productDetail .thumb-info .detail {
  display: block;
  margin-top: 32px !important;
}

#productDetail .thumb-info .detail .detail-info {
  display: block;
  padding: 32px 0 !important;
}

#productDetail .detail img {
  max-width: 100%;
  height: auto;
}

#productDetail .detail table {
  max-width: 100%;
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

#productDetail .detail table td,
#productDetail .detail table th {
  overflow-wrap: anywhere;
}

#productDetail .detail-info .table_wrap {
  float: none;
  width: 100%;
}

.loc-navi {
  padding: 24px 0 18px !important;
  row-gap: 12px !important;
}

.loc-navi > .name {
  font-size: 30px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
  letter-spacing: -.7px;
}

.loc-navi > .location-path {
  white-space: normal !important;
  flex-wrap: wrap;
}

.loc-navi .stay-status {
  font-size: 13px;
  line-height: 20px;
}

#matterWrap {
  height: auto !important;
  aspect-ratio: 16 / 9;
  border-radius: 16px !important;
  background: var(--ip-bg);
}

#matterWrap #view_meta,
#matterWrap #view_meta_else {
  width: 100% !important;
  height: 100% !important;
}

#matterWrap iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

.meta_login {
  max-width: 440px;
  padding: 28px;
}

.meta_login strong {
  font-size: 22px;
  line-height: 1.45;
}

.meta_login .meta_login_badge,
.meta_login .meta_login_note {
  font-size: 13px;
  line-height: 1.6;
}

.meta_login .meta_login_desc {
  font-size: 15px;
  line-height: 1.6;
}

.meta_login .bt_login {
  font-size: 16px;
  line-height: 50px;
}

.ad_bn {
  margin: 24px 0 !important;
  overflow: hidden;
  border-radius: 12px;
}

.ad_bn img {
  display: block;
  width: 100%;
  height: auto;
}

.ad_bn_2 a {
  flex: 1;
  min-width: 0;
  width: auto;
}

.navi_wrap#topBar {
  width: 100% !important;
  max-width: var(--ip-pc-content-width) !important;
  margin: 0 auto !important;
  border-radius: 0;
}

.navi_wrap#topBar.is-pc-fixed,
.navi_wrap#topBar.top_bar_fix.is-pc-fixed {
  width: calc(100% - 32px) !important;
  max-width: var(--ip-pc-content-width) !important;
}

#main-navigation .links-container .nav-link > a {
  min-height: 60px !important;
  font-size: 17px !important;
}

.option_tk {
  padding: 0 !important;
}

.reserve_intro {
  padding: 24px !important;
  margin-bottom: 24px !important;
  background: var(--ip-bg);
  border-radius: 16px;
}

.reserve_intro_text strong {
  font-size: 20px !important;
  line-height: 1.5 !important;
}

.reserve_intro_text p,
.reserve_progress_text,
.reserve_progress_text strong {
  font-size: 15px !important;
  line-height: 1.6;
}

.reserve_progress_bar {
  height: 6px;
}

.reserve_fields {
  display: grid;
  gap: 16px;
}

.reserve_field {
  margin: 0 !important;
  padding: 24px !important;
  border: 1px solid var(--ip-line) !important;
  border-radius: 16px !important;
  background: #fff;
}

.reserve_field_head {
  margin-bottom: 16px !important;
}

.reserve_field_title strong {
  font-size: 19px !important;
  line-height: 1.5 !important;
}

.reserve_field_title .required_badge,
.field_status {
  font-size: 13px !important;
}

.reserve_field_title .field_guide {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: var(--ip-sub);
}

.option_tk input,
.option_tk select,
.option_tk .txt input {
  min-height: 52px;
  font-size: 17px !important;
  line-height: 1.5 !important;
  border-radius: 10px;
}

.option_tk .MK-oneclick-list li.MK-oneclick-text a,
.option_tk .MK-oneclick-only-text li.MK-oneclick-text span {
  font-size: 17px !important;
  line-height: 1.5 !important;
}

.MK_optAddWrap {
  margin-top: 24px;
}

.payment_notice,
.refund_preview,
.reserve_info {
  margin-top: 24px !important;
  padding: 24px !important;
  border-radius: 16px !important;
}

.payment_notice {
  background: #fff5f8;
  border: 1px solid #f6d7e0;
}

.payment_notice p,
.payment_notice_caption,
.reserve_info p,
.refund_preview_guide,
.refund_preview_owner,
.refund_preview_list,
.refund_preview_caption,
.terms_article p,
.terms_article li {
  font-size: 16px !important;
  line-height: 1.75 !important;
}

.refund_preview_list li {
  padding: 14px 0;
  gap: 16px;
}

.reserve_info_item + .reserve_info_item {
  margin-top: 24px;
}

.reserve_info_item > span {
  display: block;
  margin-bottom: 8px;
  font-size: 17px;
  font-weight: 700;
}

.terms_wrap {
  margin: 24px 0 32px;
}

.terms_basic_link {
  min-height: 56px;
}

.reserve_sticky_progress {
  top: var(--ip-reserve-progress-top, 60px);
  z-index: 10040;
  pointer-events: none;
}

.reserve_bottom_inner,
.reserve_sticky_progress_inner {
  width: calc(100% - 32px) !important;
  max-width: var(--ip-pc-content-width) !important;
  padding: 12px 0 !important;
  box-sizing: border-box;
}

.reserve_bottom_bar {
  padding-bottom: env(safe-area-inset-bottom);
  box-shadow: 0 -4px 20px rgba(25,31,40,.06);
}

.reserve_bottom_btn {
  min-height: 52px !important;
  font-size: 17px !important;
  border-radius: 12px !important;
}

html.has-reserve-fixed #contentWrapper {
  padding-bottom: 110px;
}

.reserve_field,
#reserve,
#price_2,
#info_2,
#map_2,
#review {
  scroll-margin-top: 140px !important;
}

#price_2 ul.tabs {
  display: flex;
  float: none !important;
  width: 100% !important;
  max-width: 100%;
  gap: 8px;
  padding: 0;
  margin: 0 0 20px !important;
  overflow-x: auto;
}

#price_2 ul.tabs li {
  flex: 0 0 auto;
  width: auto;
  min-width: 100px;
  padding: 12px 20px;
  margin: 0;
  border: 1px solid var(--ip-line);
  border-radius: 10px;
  color: var(--ip-sub);
  font-size: 16px;
  text-align: center;
  white-space: nowrap;
}

#price_2 ul.tabs li.current {
  color: #fff;
  border-color: var(--ip-pink);
  background: var(--ip-pink);
}

#price_2 .tab-content {
  width: 100% !important;
  float: none !important;
}

#price_2 .tab-content[hidden] {
  display: none !important;
}

.serviceList {
  display: grid !important;
  grid-template-columns: repeat(6,minmax(0,1fr)) !important;
  gap: 10px !important;
  padding: 0 !important;
}

.serviceList li,
.serviceList li:nth-child(n) {
  border: 1px solid var(--ip-line) !important;
  border-radius: 12px;
  min-height: 120px !important;
  padding: 16px 8px !important;
  background: #fff;
}

.serviceList li > span,
.serviceList .service_text {
  font-size: 15px !important;
  line-height: 1.5 !important;
}

.serviceList li > span .sub,
.serviceList .service_text .sub {
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.serviceList.has-more:not(.is-expanded) li.service-extra {
  display: none !important;
}

.service_more_btn {
  font-size: 16px !important;
  min-height: 48px !important;
}

#map_2 .ip_kakao_map {
  width: 100% !important;
  height: 400px !important;
  min-height: 400px !important;
}

#map_2 .map_addr {
  margin-top: 0 !important;
}

#map_2 .ip_kakao_map_btn {
  font-size: 16px !important;
}

.terms_sheet_panel {
  width: calc(100% - 32px) !important;
  max-width: var(--ip-pc-content-width) !important;
  max-height: calc(100dvh - 48px);
}

.terms_sheet:not(.is-open) {
  visibility: hidden;
  pointer-events: none;
}

#content a:focus-visible,
#content button:focus-visible,
#content input:focus-visible,
#content select:focus-visible,
#content [role=tab]:focus-visible {
  outline: 3px solid var(--ip-pink);
  outline-offset: 3px;
}

@media screen and (max-width:767px) {
  .loc-navi {
    grid-template-columns: 1fr !important;
    grid-template-areas: "location" "name" "status" !important;
  }

  .loc-navi .shopdetail-status {
    justify-self: start !important;
    justify-content: flex-start !important;
  }

  .loc-navi > .name {
    font-size: 25px !important;
  }

  .serviceList {
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  }

  .reserve_field,
  .reserve_intro,
  .payment_notice,
  .refund_preview,
  .reserve_info {
    padding: 18px !important;
  }

  #main-navigation .links-container .nav-link > a {
    font-size: 15px !important;
    min-height: 52px !important;
    padding: 0 4px !important;
  }

  .meta_login {
    padding: 18px;
  }

  .meta_login strong {
    font-size: 18px;
  }

  .meta_login .meta_login_desc {
    font-size: 13px;
  }

  #matterWrap {
    aspect-ratio: 4 / 3;
  }

  .terms_sheet_panel {
    width: 100% !important;
    max-height: 90dvh;
  }
}

@media screen and (max-width:480px) {
  .serviceList {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 8px !important;
  }

  .reserve_field_title strong {
    font-size: 17px !important;
  }

  .reserve_intro_text strong {
    font-size: 18px !important;
  }

  .refund_preview_list li,
  .refund_preview_owner {
    flex-wrap: wrap;
  }

  .refund_preview_list li strong {
    white-space: nowrap;
  }

  #map_2 .ip_kakao_map {
    height: 300px !important;
    min-height: 300px !important;
  }

  #map_2 .ip_kakao_map_actions {
    grid-template-columns: 1fr !important;
  }

  .reserve_bottom_inner {
    gap: 12px;
  }

  .reserve_bottom_status {
    min-width: 0;
  }

  .reserve_bottom_btn {
    flex: 1;
    font-size: 16px !important;
  }

  #review .ip-review-satisfaction-row {
    grid-template-columns: 60px minmax(0,1fr) 28px !important;
    gap: 8px !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  #productDetail *,
  #productDetail *::before,
  #productDetail *::after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}

/* 개별 환불규정: 소비자 귀책사유 / 입소 후 규정 */
.refund_preview_subtitle {
  margin:20px 0 8px;
  padding:0;
  color:var(--ip-text);
  font-size:16px;
  line-height:1.6;
  font-weight:700;
}
.refund_preview_after {
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--ip-line);
}
.refund_preview_after > .refund_preview_subtitle { margin-top:0; }
.refund_preview_after_item {
  margin-top:12px;
  padding:16px;
  background:var(--ip-bg);
  border-radius:10px;
}
.refund_preview_after_item > strong {
  display:block;
  margin-bottom:6px;
  color:var(--ip-text);
  font-size:15px;
  line-height:1.6;
}
.refund_preview_after_item > p {
  margin:0;
  color:var(--ip-sub);
  font-size:15px;
  line-height:1.75;
  word-break:keep-all;
  overflow-wrap:anywhere;
}
@media screen and (max-width:480px) {
  .refund_preview_list li { align-items:flex-start; }
  .refund_preview_list li > span { flex:1 1 100%; }
  .refund_preview_list li > strong { margin-left:auto; }
  .refund_preview_after_item { padding:14px; }
}

/* 상품 조건은 HTML if_number에서 각각 독립적으로 처리합니다.
 * 서버가 개별 규정을 출력한 경우 표준약관 영역을 숨깁니다.
 * 4개 상품에 모두 해당하지 않으면 표준약관만 남습니다.
 */
.refund_preview:has(> .refund_rule--custom) > .refund_rule--standard {
  display:none !important;
}

/* BASIC css end */

