@charset "utf-8";

/* activity */
.topArea {
  padding: 50px 20px 20px;
}
.topArea02 {
  padding: 30px 20px 20px;
}
.topArea .stepWrap + .titArea {
  margin-top: 30px;
}
.topArea .titArea .txt {
  font-size: 15px;
  font-family: gothamL;
  font-weight: 600;
}
.topArea .titArea .date {
  margin: 7px 0 5px;
  font-size: 14px;
}
.topArea .titArea .bar:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 12px;
  margin: 0 10px 0 12px;
  vertical-align: middle;
  background: #ccc;
}
.topArea .titArea .side {
  top: -4px;
}
.topArea .titDep2 {
  margin: 0;
}
.topArea .sTxt {
  margin-top: 5px;
  text-transform: uppercase;
}

.toggleList.divTop > li:first-child {
  border-top: 0;
}

.roomSelectCon .opSelect .frm {
  display: block;
}
.roomSelectCon .opSelect .numCont:after {
  content: "";
  display: block;
  clear: both;
}
.roomSelectCon .opSelect .numPeople.type02 {
  width: 100%;
}
.roomSelectCon .opSelect .numPeople.type02 span {
  width: auto;
}
.roomSelectCon .opSelect .frm label {
  width: 100%;
  box-sizing: border-box;
  padding: 0 40px;
}
.roomSelectCon .opSelect .frm .numPeople:first-child {
  margin-top: 16px;
}
.roomSelectCon .opSelect .frm .numPeople {
  margin-top: 10px;
}
.roomSelectCon .opSelect .frm .date,
.roomSelectCon .opSelect .frm .sTxt {
  display: block;
  font-family: gothamL;
}
.roomSelectCon .opSelect .frm .date {
  font-size: 17px;
  font-weight: 500;
}
.roomSelectCon .opSelect .frm .sTxt {
  font-size: 14px;
  color: #777;
  margin-top: 6px;
}
.roomSelectCon .opSelect li:first-child {
  padding-top: 0;
  border-top: 0;
}
.roomSelectCon .opSelect li {
  padding: 29px 0 26px;
  border-top: 1px solid #e5e5e5;
}

.activityTbCont {
  padding: 0 20px 35px;
}
.activityTbCont .sTit + table {
  margin-top: 15px;
}

/* 총 예약 금액 */
.prvScroll {
  z-index: 99;
}

.priceInfo {
  overflow-y: auto;
  padding: 27px 20px 29px;
  margin: 0 -20px;
  background: #f9f9f9;
}
.priceInfo ul li + li {
  margin-top: 13px;
}
.priceInfo .sum:after,
.priceInfo ul li:after {
  content: "";
  display: block;
  clear: both;
}
.priceInfo .sum .txt,
.priceInfo ul li .txt {
  float: left;
}
.priceInfo .sum .pay,
.priceInfo ul li .pay {
  float: right;
}
.priceInfo ul li .pay {
  font-weight: 500;
}
.priceInfo .sum {
  padding-top: 28px;
  margin-top: 28px;
  border-top: 1px solid #e5e5e5;
}
.priceInfo ul + ul {
  padding-top: 32px;
  margin-top: 32px;
  border-top: 1px solid #e5e5e5;
}

.totalWrap {
  height: 195px;
}
.totalWrap .totalCont {
  width: 100%;
  padding: 30px 20px 165px;
  background: #fff;
  z-index: 81;
  box-shadow: 0px -10px 10px 0px #f2f2f23d;
}
.totalWrap .totalCont.on {
  box-shadow: none;
  padding: 30px 20px 190px;
}
.totalWrap .totalCont .moreBtn {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 30px;
  color: transparent;
  z-index: 99;
  background: #fff;
  border-top: 1px solid #000;
}
.totalWrap .totalCont .moreBtn:after {
  content: "";
  position: absolute;
  top: 12px;
  left: 50%;
  margin-left: -18px;
  display: block;
  clear: both;
  width: 36px;
  height: 4px;
  border-radius: 4px;
  background: #e5e5e5;
  z-index: 99;
}
.totalWrap .totalCont .infoCont .title {
  display: block;
  margin: 30px 0 22px;
  font-size: 16px;
}
.totalWrap .totalCont .infoCont {
  display: none;
  margin: 0 -20px;
  padding: 0 20px;
  overflow-y: auto;
  height: 100%;
}
.totalWrap .totalCont .infoCont.on {
  display: block;
}
.totalWrap .totalCont.on .total {
  border-top: 1px solid #ccc;
  height: 122px;
}
.totalWrap .totalCont.on .total.noLine {
  border: 0;
}
.totalWrap .total {
  position: absolute;
  left: 0;
  bottom: 68px;
  width: 100%;
  height: 127px;
  background: #fff;
  z-index: 99;
  border-top: 1px solid #000;
}
.totalWrap .total .tit {
  position: absolute;
  bottom: 80px;
  left: 20px;
  font-size: 14px;
}
.totalWrap .total .price {
  position: absolute;
  right: 20px;
  bottom: 44px;
  margin: 0;
  text-align: right;
  line-height: 30px;
  font-size: 14px;
  font-family: gothamL;
}
.totalWrap .total .price em {
  display: inline-block;
  vertical-align: -5px;
  font-size: 30px;
  margin-right: 5px;
  font-family: playfair;
  font-weight: 700;
  letter-spacing: 2px;
  font-feature-settings: "lnum", "pnum";
}
.totalWrap .total .sTxt {
  position: absolute;
  bottom: 80px;
  right: 20px;
  font-size: 14px;
  color: #777;
}
.totalWrap .total .info {
  position: absolute;
  bottom: 15px;
  right: 20px;
  color: #006633;
  font-family: gothamL;
  letter-spacing: -1px;
}
.totalWrap .total .info span + span:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 12px;
  margin: 0 10px;
  background: #ccc;
}
.totalWrap .btnArea {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}

.layerCont .roomSelectCon {
  margin-top: 33px;
}
.layerCont .roomSelectCon .opSelect .frm .date {
  font-size: 15px;
  font-weight: 600;
}
.layerCont .roomSelectCon .opSelect .frm .sTxt {
  color: #000;
}

/*activity agree*/
.noMg {
  margin: 0 -20px;
}
.frmDiv {
  margin: 25px 0 32px;
}
.lineInner {
  border-top: 1px solid #e5e5e5;
  margin-top: 23px;
  padding-top: 21px;
}
.agreeCon .toggleCont {
  color: #777;
}
.agreeCon .frm {
  z-index: 1;
}
.toggleList.agreeCon > li .btnToggle {
  left: inherit;
  right: 0;
  width: 58px;
}
/*.agreeCon .toggleOn{border-top:none}*/

.frm.type02 {
  display: block;
}
.frm.type02 label {
  padding-left: 19px;
}
.frm.type02 label:before {
  left: 0;
  top: 19px;
  width: 11px;
  height: 8px;
}
.frm.type02 input[type="checkbox"] + label:before {
  background-position: -22px 0;
  top: 8px;
}
.frm.type02 input[type="checkbox"]:checked + label:before {
  background-position: -11px 0;
}

/*activity finish*/
.finishArea {
  text-align: center;
  padding: 53px 20px 55px;
}
.finishArea .titDep2 {
  margin: 0 0 14px;
}
.finishArea .revNumber {
  font-size: 15px;
  color: #333;
  line-height: 15px;
  margin-top: 13px;
}
.finishArea .revNumber em {
  margin-left: 8px;
  color: #989442;
  font-family: playfair;
  font-weight: 600;
  vertical-align: top;
  font-feature-settings: "lnum", "pnum";
}
.finishArea .pageGuide {
  margin-top: 19px;
}

.inner .imgCont {
  margin: 0 -20px -40px;
}

.topViewCont + .inner .infoArea {
  margin: 33px 0 13px;
}

.infoPay {
  border-top: 1px solid #ccc;
  margin: 0 -20px;
  padding: 0 20px;
}
.infoPay .title {
  display: block;
  margin: 22px 0 7px;
  color: #989442;
}
.infoPay .infoArea .tit {
  color: #777;
}
.infoPay .infoArea li .tit {
  float: left;
  color: #777;
}
.infoPay .infoArea li .txt {
  padding-left: 90px;
  text-align: right;
}

.payTotalCont {
  padding-bottom: 20px;
}
.payTotal .tit {
  display: block;
  margin: 18px 0 2px;
  font-size: 16px;
}
.payTotal .pay {
  font: 600 30px/1 playfair;
  text-align: right;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.05em;
}
.payTotal .pay em {
  display: inline-block;
  margin: 0 0 5px 0;
  font-size: 14px;
  font-family: gothamL;
  vertical-align: middle;
}
.payTotal .tax {
  text-align: right;
  padding: 5px 0;
}

.promotion {
  padding-bottom: 68px;
  overflow: hidden;
}
.promotion.package,
.promotion.type02 {
  padding-bottom: 0;
}
.promotion .inner {
  padding: 0 40px 40px;
  margin-left: -20px;
}
.promotion .swipeWrap {
  overflow: visible;
  margin: 0;
}
.promotion .promList > li {
  padding-right: 20px;
}
.promotion .promList > li a,
.promotion .promList > li > div {
  display: block;
  position: relative;
  padding-top: 120%;
}
.promotion .promList > li .tit {
  font-size: 22px;
  font-family: playfair;
  font-weight: 700;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  margin-bottom: 10px;
  word-break: break-all;
}
.promotion .promList > li .txt {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-all;
}
.promotion .promList > li .date {
  font-family: gothamL;
  font-weight: 600;
  font-size: 14px;
  padding-top: 10px;
}
.promotion .promList > li .thum {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.promotion .promList > li .keyword {
  margin-top: 10px;
}
.promotion .date {
  margin-top: 15px;
  font-family: gothamL;
}
.promotion .date li {
  color: #777;
  font-weight: 400;
}
.promotion .date li em {
  margin-right: 5px;
}
.promotion .price {
  display: block;
  margin-top: 6px;
  font: 400 14px/1.5 gothamB;
}
.promotion .price em {
  display: inline-block;
  margin: -4px 6px 0 0;
  font: 600 22px/1 playfair;
  font-feature-settings: "lnum", "pnum";
  vertical-align: middle;
  letter-spacing: 0.05em;
}
.promotion.type02 .titDep2 {
  margin-top: 20px;
}
.divTop.package h2.titDep2 {
  padding-top: 40px;
}

/* 시설안내/주요프로그램/관심리스트 (facility : thum 280*194 스크립트적용) */
.promotion .promList.facility > li a,
.promotion .promList.facility > li > div {
  padding-top: 77%;
}
.promotion .promList.facility .txt {
  -webkit-line-clamp: none;
}
.promotion.type02 .promList.facility .txt {
  -webkit-line-clamp: 1;
}

/* 다른프로그램 (program : thum 280*334 스크립트적용) */
.promotion .promList.program > li a,
.promotion .promList.program > li > div {
  padding-top: 112.5%;
}

.numPaging {
  display: none;
  text-align: center;
  font-size: 12px;
  margin-top: 15px;
  margin-right: -50px;
} /* display:none -> yjs */
.numPaging span {
  font-family: gothamL;
  color: #777;
}
.numPaging .now {
  color: #000;
  font-weight: 600;
}

.keyword > span {
  display: inline-block;
  padding: 5px 8px;
  font-size: 12px;
  margin: 0 5px 5px 0;
  background: #f2f2f2;
  font-family: gothamL;
  text-transform: uppercase;
}
.keyword .keyword-j,
.keyword-j {
  display: inline-block;
  padding: 5px 8px 5px 18px;
  font-size: 12px;
  margin: 0 5px 5px 0;
  background: #a5674f url("../../../images/ko/mo/common/icon_josun_13x28.png") center left 7px / 6.5px no-repeat;
  font-family: gothamL;
  color: #fff;
  text-transform: uppercase;
}
.keyword-j {
  margin: 0;
}

/* 입력폼 리스트 */
.intList > li .tit {
  display: inline-block;
  position: relative;
}
.intList > li .tit label {
  display: inline-block;
  font: 400 14px/1 gothamM;
  color: #333;
  text-transform: uppercase;
}
.intList > li .essential {
  display: inline-block;
  width: 5px;
  height: 5px;
  text-indent: -9999px;
  overflow: hidden;
}
.intList > li .essential:after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -5px;
  top: 9px;
  width: 5px;
  height: 5px;
  background: url(../../../images/ko/mo/common/ico_essential.png) no-repeat 0 0;
  background-size: 5px 5px;
}
.intList > li .intInner {
  position: relative;
}
.intList > li .intInner .intArea > .btnSC {
  margin-top: 20px;
}
.intList > li .intInner .txtGuide {
  margin-top: 7px;
}
.intList > li .intInner > span {
  display: block;
  position: relative;
}
.intList > li .intInner .alertMessage {
  display: none;
  position: absolute;
  top: -27px;
  left: 0;
  width: 100%;
  background: #fff;
  color: #b01414;
  font: 500 14px/32px spoqaR;
}
.intList > li .intArea {
  position: relative;
}
.intList > li .phoneInp .dash {
  position: relative;
  display: inline-block;
  width: 20px;
}
.intList > li .phoneInp .dash:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 10px;
  height: 1px;
  margin-left: -5px;
  background: #ccc;
}
.intList > li .phoneInp .intArea.selectWrap {
  display: table;
  width: 100%;
}
.intList > li .phoneInp .intArea.selectWrap + .intArea {
  padding-top: 1px;
}
.intList > li .phoneInp span {
  display: table-cell;
  width: 33%;
  padding: 0 3px;
}
.intList > li .phoneInp span:first-child {
  padding-left: 0;
}
.intList > li .phoneInp span:last-child {
  padding-right: 0;
}
.intList > li .phoneInp .intArea {
  display: table;
  width: 100%;
}
.intList > li .duobuleInp .intArea {
  display: table;
  width: 100%;
}
.intList > li .duobuleInp span {
  display: table-cell;
  width: 24.5%;
  padding: 0 3px;
} /* 카드번호(span4개) */
.intList > li .duobuleInp span:first-child {
  padding-left: 0;
}
.intList > li .duobuleInp span:last-child {
  padding-right: 0;
}
.intList > li .tripleInp .intArea {
  display: table;
  width: 100%;
}
.intList > li .tripleInp span {
  display: table-cell;
  width: 33%;
  padding: 0 3px;
}
.intList > li .tripleInp span:first-child {
  padding-left: 0;
}
.intList > li .tripleInp span:last-child {
  padding-right: 0;
}
.intList > li .duobuleSelect div {
  width: 49%;
  float: left;
}
.intList > li .duobuleSelect:after {
  content: "";
  display: block;
  clear: both;
}
.intList > li .duobuleSelect div + div {
  float: right;
}
.intList > li .emailInp .intArea {
  display: table;
  width: 100%;
}
.intList > li .emailInp span {
  display: table-cell;
  width: 50%;
}
.intList > li .emailInp .idInput {
  padding-right: 18px;
}
.intList > li .emailInp .domainInput {
  padding-left: 18px;
}
.intList > li .emailInp .dash {
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 15px;
  width: auto;
  margin-left: -7px;
}
.intList > li.error .errorFocus input,
.intList > li.error .errorFocus .ui-selectmenu-button {
  border-bottom: 1px solid #b01414 !important;
}
.intList > li.error label {
  color: #b01414;
}
.intList > li.error .essential:after {
  background-position: -6px 0;
}
.intList > li + li {
  margin-top: 30px;
}
.intList + .txtGuide {
  margin-top: 15px;
}

/* 예약 */
.titArea .titDep2 + .side {
  top: 10px;
}

.rsvList > li {
  box-shadow: 0px 8px 14px 0px #f2f2f2;
}
.rsvList > li .hotelSel a {
  display: block;
  position: relative;
  background: #fff;
  font-size: 16px;
  padding: 28px 25px;
  text-align: center;
}
.rsvList > li .dateSelect {
  background: #fff;
}
.rsvList > li .dateSelect a {
  display: block;
  position: relative;
  padding: 17px 0;
}
.rsvList > li .dateSelect a:after {
  content: "";
  display: block;
  clear: both;
}
.rsvList > li .dateSelect a > span {
  position: relative;
  float: left;
  width: 50%;
  text-align: center;
  padding-top: 25px;
  box-sizing: border-box;
  font-size: 14px;
  font-family: gothamL;
}
.rsvList > li .dateSelect a > span strong {
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -25px;
  font-size: 16px;
  font-weight: 400;
}
.rsvList > li .dateSelect a > span strong em {
  font-size: 20px;
  line-height: 1;
  font-family: gothamM;
}
.rsvList > li .dateSelect a > .checkIn {
  padding-right: 40px;
}
.rsvList > li .dateSelect a > .checkIn strong {
  margin-left: -42px;
}
.rsvList > li .dateSelect a > .checkOut {
  padding-left: 40px;
}
.rsvList > li .dateSelect a > .checkOut strong {
  margin-left: -4px;
}
.rsvList > li .dateSelect .dayCount {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -18px 0 0 -18px;
  font-size: 14px;
  width: 36px;
  height: 36px;
  line-height: 36px;
  border-radius: 100%;
  background: #f2f2f2;
  box-sizing: border-box;
  text-align: center;
  padding: 0;
}
.rsvList > li .roomContainer a {
  display: block;
  background: #fff;
  padding: 16px 12px 17px;
}
.rsvList > li .roomWrap {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.rsvList > li .roomWrap .roomInner {
  position: relative;
  display: table-cell;
  position: relative;
  padding-bottom: 17px;
  text-align: center;
  font-size: 20px;
  font-family: gothamB;
}
.rsvList > li .roomWrap .roomInner:before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -16px;
  display: block;
  width: 1px;
  height: 32px;
  background: #f2f2f2;
}
.rsvList > li .roomWrap .roomInner:first-child:before {
  display: none;
}
.rsvList > li .roomWrap .roomInner .tit {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  font-size: 14px;
  color: #777;
}
.rsvList > li + li {
  margin-top: 12px;
}
.rsvList.rsvList02 {
  padding: 60px 0 90px;
}

.promCode {
  text-align: right;
  margin-top: 19px;
  padding-bottom: 60px;
}
.promCode .btnPromo {
  display: inline-block;
  font-size: 14px;
  margin-bottom: 12px;
}
.promCode .btnPromo:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background: url(../../../images/ko/mo/common/ico_up_10x10.png) no-repeat 0 0;
  background-size: 10px auto;
  margin-left: 6px;
}
.promCode .btnPromo.on:after {
  background: url(../../../images/ko/mo/common/ico_down_10x10.png) no-repeat 0 0;
  background-size: 10px 10px;
}
.promCode .promInt {
  display: none;
  border-radius: 5px;
  background: #fff;
  overflow: hidden;
}
.promCode .promInt .selectWrap {
  margin: 0 24px;
}
.promCode .promInt .selectWrap select {
  border: 0;
}
.promCode .promInt .inputWrap {
  position: relative;
  margin: 0 24px;
}
.promCode .promInt .inputWrap:before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #ccc;
  padding: 0 28px;
  margin-left: -28px;
}
.promCode .promInt input {
  border: 0;
  padding-right: 40px;
}
.promCode .promInt .btnLine {
  position: absolute;
  right: 0;
  bottom: 15px;
}
.promCode .errorMsg {
  font-size: 14px;
  color: #b01414;
  text-align: left;
  padding: 10px 24px 30px;
}

/* 객실예약 */
.opRoomWrap {
  padding-bottom: 40px;
}

.selectCont {
  margin-bottom: 22px;
}
.selectCont .selectWrap {
  float: left;
}
.selectCont .selectWrap + .selectWrap {
  margin-left: 24px;
}
.selectCont .selectWrap select {
  border-bottom: none;
}
.selectCont:after {
  content: "";
  display: block;
  clear: both;
}

.roomIntro + .roomIntro {
  margin-top: 80px;
}
.roomIntro dl {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.roomIntro .roomName {
  display: block;
  font-size: 22px;
  padding-top: 39px;
  margin-bottom: 10px;
  font-family: playfair;
  font-weight: 600;
}
.roomIntro .roomName:first-of-type {
  padding-top: 5px;
}
.roomIntro .keyword {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}
.roomIntro .roomBenefit {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.roomIntro .btnView {
  margin-top: 13px;
}
.roomIntro .btnView + .priceWrap {
  margin-top: 21px;
}
.roomIntro .date {
  margin: 23px 0 0;
  font-family: gothamL;
  color: #777;
}
.roomIntro .priceWrap {
  margin-bottom: 36px;
}
.roomIntro .priceWrap > * {
  display: block;
}
.roomIntro .priceWrap .price {
  font-size: 14px;
  font-family: gothamL;
}
.roomIntro .priceWrap .price em {
  display: inline-block;
  vertical-align: middle;
  margin-right: 6px;
  font: 600 24px playfair;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 2px;
}
.roomIntro .priceWrap .day {
  font-family: gothamL;
  color: #777;
}

.opRoomList .btnRsv {
  position: relative;
  background: #fff;
  color: #000;
  padding: 11px 15px;
  border: 1px solid #000;
  text-align: left;
}
.opRoomList .btnRsv:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 17px;
  margin-top: -5px;
  border-width: 1px 1px 0 0;
  border-color: #000;
  border-style: solid;
  width: 6px;
  height: 6px;
  transform: rotate(-225deg);
}
.opRoomList.on .btnRsv:after {
  transform: rotate(-45deg);
  margin-top: -2px;
}
.opRoomList.on .opSelect {
  display: block;
}

.roomList > li:last-child {
  margin-bottom: 50px;
}

.toggleCont .subFrmCont {
  padding-left: 32px;
}
.toggleCont .subFrmCont .txt {
  color: #000;
}
.toggleCont .subFrmCont .intBox + .txtGuide {
  margin-top: 15px;
}
.toggleCont .subFrmCont .intBox {
  display: table;
  width: 100%;
}
.toggleCont .subFrmCont .frm {
  display: table-cell;
  vertical-align: top;
}

.intArea .countryTxt {
  display: block;
  margin-top: -12px;
  text-transform: uppercase;
}

/* 객실요금 선택 */
.opRoomList .opSelect {
  display: none;
}
.opRoomList .opSelect li {
  position: relative;
  margin: 26px 0;
  padding-bottom: 31px;
  border-bottom: 1px solid #e5e5e5;
}
.opRoomList .opSelect li[class*="type"] .titArea .tit {
  padding-left: 35px;
  text-transform: uppercase;
}
.opRoomList .opSelect li[class*="type"] .titArea .tit:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -11px;
  width: 24px;
  height: 22px;
  background: url(../../../images/ko/mo/HURE/ico_bed_view.png) no-repeat 0 0;
  background-size: 24px 66px;
}
.opRoomList .opSelect li.type02 .titArea .tit:before {
  background-position: 0 -22px;
}
.opRoomList .opSelect li.type03 .titArea .tit:before {
  background-position: 0 -44px;
}

.opRoomList .opSelect .frm,
.opRoomList .opSelect .frm label {
  display: block;
}
.opRoomList .opSelect .frm label {
  padding: 0 40px;
}
.opRoomList .opSelect .titArea {
  position: initial;
}
.opRoomList .opSelect .titArea + .price {
  margin-top: 11px;
}
.opRoomList .opSelect .titArea .tit {
  position: relative;
  font-size: 17px;
  font-family: gothamL;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.opRoomList .opSelect .titArea .infor {
  color: #333;
  margin: 2px 0 10px;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.opRoomList .opSelect .titArea .btnRoominfor {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 40px;
  color: transparent;
}
.opRoomList .opSelect .titArea .btnRoominfor:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 6px;
  margin-top: -5px;
  border-width: 1px 1px 0 0;
  border-color: #000;
  border-style: solid;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
}
.opRoomList .opSelect .date {
  display: block;
  margin: 12px 0 0;
  font-family: gothamL;
  color: #777;
}
.opRoomList .opSelect .price {
  display: block;
  margin: 0 0 10px;
  font-size: 14px;
  font-family: gothamL;
}
.opRoomList .opSelect .price em {
  font-size: 16px;
  font-family: playfair;
  font-feature-settings: "lnum", "pnum";
  font-weight: 600;
  margin-right: 5px;
  letter-spacing: 1px;
}
.opRoomList .opSelect .title {
  display: block;
  font-size: 22px;
  font-family: playfair;
  font-weight: 600;
  margin: 25px 0 -10px;
}
.opRoomList .opSelect .keyword-j {
  position: absolute;
  bottom: 2px;
  right: 22px;
}

/* 요금선택 토글 */
.totalWrap.type02 .infoCont {
  padding: 0;
  overflow-y: auto;
}
.totalWrap .totalCont .toggleList.noLine .priceInfo {
  border-bottom: 0;
}
.toggleList.noLine > li,
.toggleList.noLine > li:last-child {
  border: none;
}
.toggleList > li .titArea .intValue {
  position: absolute;
  right: 60px;
  font-size: 14px;
}
.toggleList > li .titArea .intValue span {
  font-size: 16px;
  margin-right: 8px;
  font-family: playfair;
  font-feature-settings: "lnum", "pnum";
}
.totalWrap.type02 .toggleList.noLine > li .toggleCont .toggleInner {
  border-top: none;
  padding: 0;
}

/* .totalWrap.type02 */
.totalWrap.type02 {
  height: 181px;
}
.totalWrap.type02 .totalCont {
  padding: 30px 20px 151px;
}
.totalWrap.type02 .totalCont.on {
  padding: 30px 20px 165px;
}
.totalWrap.type02 .totalCont .total {
  height: 113px;
}
.totalWrap.type02 .totalCont.on .total {
  height: 97px;
}
.totalWrap.type02 .total .tit {
  bottom: 56px;
}
.totalWrap.type02 .total .price {
  bottom: 20px;
}
.totalWrap.type02 .total .sTxt {
  bottom: 56px;
}
/*.totalWrap.type02{height:165px}
.totalWrap.type02 .totalCont{padding:30px 20px 135px}
.totalWrap.type02 .totalCont.on{padding:30px 20px 150px}
.totalWrap.type02 .totalCont .total{height:97px}
.totalWrap.type02 .totalCont.on .total{height:82px}
.totalWrap.type02 .total .tit{bottom:47px}
.totalWrap.type02 .total .price{bottom:13px}
.totalWrap.type02 .total .sTxt{bottom:47px}*/
.frm.btnFixed + .totalWrap {
  height: 220px;
}
.frm.btnFixed + .totalWrap .total {
  height: 100px;
  bottom: 120px;
}
.frm.btnFixed + .totalWrap .totalCont {
  padding-bottom: 190px;
}

/* 회원특가상품 layer popup */
.layerPop .specialPrice .layerInner {
  padding: 40px 20px;
  text-align: left;
}
.layerPop .specialPrice .tit {
  display: block;
  margin-bottom: 18px;
  font-size: 17px;
  font-family: gothamB;
  text-align: center;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.layerPop .specialPrice .txt {
  margin-top: 8px;
  font-size: 14px;
}
.layerPop .specialPrice .txt b {
  color: #989442;
  font-family: gothamM;
}
.layerPop .specialPrice .btmGuide {
  margin-top: 25px;
  padding-top: 15px;
  font-size: 14px;
  border-top: 1px solid #eee;
}
.layerPop .specialPrice .btmGuide .btnLine {
  margin-top: 10px;
  font-family: spoqaR;
}

/* 비교하기 */
.comparison {
  background: #807f6c;
  z-index: 999;
  color: #fff;
  border-radius: 10px 10px 0 0;
}
.comparison .compCont {
  display: none;
  padding: 15px 20px 25px 20px;
}
.comparison.on {
  display: block;
}
.comparison.on .btnComp.on + .compCont {
  display: block;
}
.comparison.on .btnComp {
  display: block;
}
.comparison .btnComp {
  display: none;
  height: 48px;
  width: 100%;
  line-height: 48px;
  text-align: center;
}
.comparison .btnComp span {
  display: inline-block;
  position: relative;
  padding-right: 13px;
  color: #fff;
}
.comparison .btnComp span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -2px;
  width: 6px;
  height: 4px;
  background: url(../../../images/ko/mo/common/ico_comparison.png) no-repeat -6px 0;
  background-size: 12px auto;
}
.comparison.on .btnComp.on span:after {
  background-position: 0 0;
}
.comparison .compList li {
  position: relative;
  padding: 24px 15px;
  border: 1px solid rgba(255, 255, 255, 0.5);
}
.comparison .compList li + li {
  margin-top: -1px;
}
.comparison .compList li .btnDel {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 0;
  color: transparent;
  width: 12px;
  height: 12px;
  padding: 14px;
  background: url(../../../images/ko/mo/common/btn_del.png) no-repeat 50%;
  background-size: 12px auto;
}
.comparison .compList .compWrap .tit,
.comparison .compList .compWrap .txt {
  font-size: 14px;
  font-family: gothamL;
  display: block;
  color: #fff;
}
.comparison .compList .compWrap .tit {
  font-weight: 500;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.comparison .compList .compWrap .txt {
  margin-top: 12px;
}
.comparison .compList .compWrap.noCont {
  color: #c0bfb6;
}
.comparison .compList .compWrap.noCont .txt {
  margin: 0;
  opacity: 0.5;
}
.comparison .btnWrap {
  margin-top: 24px;
  text-align: center;
}
.comparison .btnWrap button {
  font-size: 15px;
  border: 1px solid #fff;
  color: #fff;
  background: transparent;
}
.comparison .btnWrap .txtGuide {
  margin-top: 12px;
  display: inline-block;
  color: #fff;
  opacity: 0.5;
}

.layerPop .layerComparison {
  padding: 68px 20px 40px;
}
.layerPop .layerComparison .inner {
  height: 100%;
  padding: 32px 0 0;
}
.layerComparison ul:after {
  content: "";
  display: block;
  clear: both;
}
.layerComparison ul,
.layerComparison ul li,
.layerComparison dl {
  height: 100%;
  overflow-y: scroll;
}
.layerComparison li {
  position: relative;
  width: 50%;
  float: left;
  padding: 39px 10px 70px 0;
}
.layerComparison li + li {
  padding: 39px 0 70px 10px;
}
.layerComparison dt {
  height: 50px;
  font-size: 17px;
  font-family: gothamL;
  font-weight: 600;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.layerComparison dd .infoTxt {
  height: 42px;
  margin-top: 8px;
  font-size: 14px;
  color: #333;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.layerComparison dd .price {
  margin-top: 14px;
  font-size: 14px;
  font-family: gothamL;
}
.layerComparison dd .price em {
  display: inline-block;
  margin-right: 7px;
  font-size: 16px;
  font-family: playfair;
  font-feature-settings: "lnum", "pnum";
  font-weight: 600;
}
.layerComparison dd .date {
  display: block;
  margin-top: 26px;
  padding-top: 26px;
  border-top: 1px solid #e5e5e5;
  font-family: gothamL;
  font-size: 14px;
}
.layerComparison dd .tit {
  display: block;
  margin-top: 12px;
  color: #989442;
  font-family: gothamB;
}
.layerComparison dd .txt {
  margin-top: 14px;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
.layerComparison li dd .btnDel {
  position: absolute;
  left: 0;
  top: 0;
}
.layerComparison li + li dd .btnDel {
  position: absolute;
  left: 10px;
  top: 0;
}
.layerComparison li .btnSC {
  position: absolute;
  left: 0;
  right: 10px;
  bottom: 0;
  width: auto;
}
.layerComparison li + li .btnSC {
  right: 0;
  left: 10px;
}

/* 목록없음 */
.noData {
  text-align: center;
  padding: 20px 0 55px;
}
.noData .txt:before {
  content: "";
  display: block;
  width: 2px;
  height: 37px;
  margin: 0 auto 18px;
  background: url(../../../images/ko/mo/common/ico_nodata.gif) no-repeat 0 0;
  background-size: 2px auto;
}
.noData .txtGuide {
  display: inline-block;
}

/* 비회원 일떄 */
.noMemTxt {
  background: #f9f9f9;
  padding: 25px 20px;
  margin: 0 -20px 40px;
}
.noMemTxt .txt {
  font-family: gothamB;
  margin-bottom: 10px;
}
/* 210511 추가 */
.noMemTxt .tit {
  font-family: gothamM;
  font-size: 14px;
  font-weight: bold;
}
.noMemTxt .tit + .txt {
  margin-top: 8px;
}
/* // 210511 추가 */

/* 객실로 보기 */
.roomList .imgCont {
  margin: 0 -20px 32px;
}

/* 옵션선택 */
.opSelectList .intList .intWrap .tit {
  margin: 0;
}
.opSelectList .intList .tit {
  margin: 4px 0 23px;
  display: inline-block;
  font-family: gothamM;
  font-size: 14px;
  line-height: 1;
  font-weight: 600;
  color: #333;
  text-transform: uppercase;
}
.opSelectList .intList .tit label {
  font: inherit;
}
.opSelectList .intList li:first-child .tit {
  margin-top: 0;
}
.opSelectList .numArea li {
  position: relative;
  padding-right: 145px;
  margin-top: 17px;
}
.opSelectList .numArea li:first-child {
  margin-top: 0;
}
.opSelectList .numArea .txt {
  display: block;
  font-size: 16px;
  line-height: 16px;
  word-break: break-all;
}
.opSelectList .numArea .price {
  display: block;
  font-size: 14px;
  font-family: gothamL;
  margin-top: 8px;
}
.opSelectList .numArea .price em {
  font: 600 16px playfair;
  font-feature-settings: "lnum", "pnum";
  margin-right: 5px;
  letter-spacing: 1px;
}
.opSelectList .numArea .numCont {
  position: absolute;
  top: 0;
  right: 0;
  width: 122px;
}
.opSelectList .intList .txtGuide {
  margin-top: 10px;
}
.opSelectList li .titArea {
  padding: 0;
}

.intInner textarea {
  width: 100%;
  border: none;
  border-bottom: 1px solid #ccc;
  padding: 8px 13px 8px 0;
  margin-top: 8px;
}
.intInner textarea:focus {
  border-bottom: 1px solid #000;
}

/* 옵션선택 이미지보기 */
.swipeWrap.product .btnSwipe {
  position: absolute;
  border-width: 1px 1px 0 0;
  border-color: #000;
  border-style: solid;
  width: 18px;
  height: 18px;
}
.swipeWrap.product .btnSwipe.btnPrev {
  top: 30%;
  left: 20px;
  transform: rotate(-135deg);
  z-index: 99;
}
.swipeWrap.product .btnSwipe.btnNext {
  top: 30%;
  right: 20px;
  transform: rotate(45deg);
  z-index: 99;
}
.swipeWrap.product .swipeCont .tit,
.swipeWrap.product .swipeCont .txt {
  text-align: center;
  width: 100%;
  padding: 0 40px;
}
.swipeWrap.product .swipeCont .tit {
  margin-top: 17px;
  font-size: 22px;
}
.swipeWrap.product .swipeCont .txt {
  margin-top: 11px;
  font-size: 15px;
  height: 44px;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.swipeWrap.product .numPagingCont {
  text-align: center;
  margin-top: 56px;
}
.swipeWrap.product .numPaging {
  display: inline-block;
  padding: 0 14px;
  border-radius: 15px;
  background: #7f7f7f;
  line-height: 24px;
  color: #fff;
  margin: 0;
}
.swipeWrap.product .numPaging span {
  opacity: 0.6;
  color: #fff;
}
.swipeWrap.product .numPaging .now {
  opacity: 1;
}

/* 예약자 정보 입력 */
.layerInner .guideTxt {
  position: absolute;
  bottom: 104px;
}

.titDep2 + .pointGuideBox {
  margin-top: -7px;
}
.pointGuideBox .point {
  text-align: right;
  padding-right: 24px;
  background: url(../../../images/ko/mo/HURE/ico_point_symbol.png) no-repeat 100% 50%;
  background-size: 16px auto;
}
.pointGuideBox .havePoint:after {
  content: "";
  display: block;
  clear: both;
}
.pointGuideBox .havePoint .pTxt {
  float: left;
  font-weight: 500;
}
.pointGuideBox .havePoint .point {
  float: right;
}
.pointGuideBox .usePoint {
  position: relative;
  margin-top: 30px;
  font-weight: 500;
}
.pointGuideBox .usePoint .frm {
  position: absolute;
  top: 0;
  right: 0;
}

/* 객실 예약 완료 */
.titDep2 + .adTxt {
  margin: -2px 0 25px;
}
.titDep2 + .infoArea {
  margin-top: 22px;
}
.adTxt span {
  display: block;
}
.noSpace {
  margin: 0 -20px;
}
.toggleList.noSpace > li .toggleCont .toggleInner {
  padding: 0;
}
.inPayInfo .noSpace {
  margin: 0 -20px;
}
.inPayInfo {
  padding-bottom: 0;
}
.inPayInfo ul li:last-child {
  border-bottom: 0;
}
.inPayInfo .inPayInfo {
  padding: 0;
}
.inPayInfo .priceInfo {
  background: none;
}
.inPayInfo .priceInfo ul li .txt {
  color: #777;
}
.payTotalInfo {
  margin-top: 20px;
}
.payTotalInfo li:after {
  content: "";
  display: block;
  clear: both;
}
.payTotalInfo li + li {
  margin-top: 12px;
}
.payTotalInfo .tit {
  float: left;
  font-size: 15px;
}
.payTotalInfo .price {
  float: right;
  font-family: playfair;
  font-weight: 500;
  font-size: 16px;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.05em;
}
.payTotalInfo + .payTotal {
  margin-top: 20px;
  border-top: 1px solid #e5e5e5;
}
.payTotalInfo.payTotal .price {
  margin-top: 18px;
}

.pbSpace {
  padding-bottom: 68px;
}

/* 다이닝 예약 */
.dnWrap .selectCont {
  margin: 0;
}
.toggleList.diningSel > li {
  display: block;
  position: relative;
  background: #fff;
  font-size: 16px;
  border: none;
}
.toggleList.diningSel .titArea {
  padding: 28px 25px;
}
.toggleList.diningSel > li + li {
  margin-top: 12px;
}
.toggleList.diningSel > li .toggleCont .toggleInner {
  padding: 0 0 25px;
  border: none;
}
.rsvList + .dnCont {
  display: none;
  margin-top: 30px;
  margin-bottom: -40px;
  padding: 0 20px 100px;
}
.dnCont {
  padding: 0 20px 66px;
  background: #fff;
  margin: 0 -20px;
}
.dnCont .imgCont {
  margin: 0 -20px;
}
.dnCont .titDep2 {
  margin: 23px 0 25px;
}
.dnCont .adTxt {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.dnCont .titBox {
  padding: 16px 0;
}
.dnCont .titBox .tit {
  font-weight: 500;
}
.dnCont .titBox .txt {
  margin-top: 5px;
}

.swipeWrap.dining {
  position: relative;
}
.swipeWrap.dining .numPaging {
  position: absolute;
  right: 20px;
  bottom: 17px;
  margin: 0;
}
.swipeWrap.dining .numPaging {
  display: inline-block;
  padding: 0 14px;
  border-radius: 15px;
  background: rgba(000, 000, 000, 0.5);
  line-height: 24px;
  color: #fff;
  margin: 0;
}
.swipeWrap.dining .numPaging span {
  opacity: 0.6;
  color: #fff;
}
.swipeWrap.dining .numPaging .now {
  opacity: 1;
}
.topArea .titArea .infoTxt {
  margin: 21px 0 7px;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  text-transform: uppercase;
  font-family: gothamL, spoqaL;
}

.numArea.simpleType li + li {
  margin-top: 27px;
}
.numArea.simpleType .txt {
  line-height: 23px;
  height: 33px;
  display: inline-block;
  padding-top: 3px;
}

.promotionBox {
  padding: 32px 20px;
  margin: 0 -20px;
  background: #f9f9f9;
}
.promotionBox .tit {
  display: block;
  font-size: 17px;
}
.promotionBox .date,
.promotionBox .txt {
  display: block;
  font-size: 15px;
  margin-top: 10px;
}
.promotionBox .txt .point {
  color: #777;
}
.promotionBox .txtGuide {
  margin-top: 10px;
}

.calNotiCont {
  padding: 32px 20px;
  margin: 0 -20px;
  background: #f9f9f9;
}
.calNotiCont .tit {
  display: block;
  font-size: 17px;
}
.calNotiCont .date,
.calNotiCont .txt {
  display: block;
  font-size: 15px;
  margin-top: 10px;
}
.calNotiCont .txt .point {
  color: #777;
}
.calNotiCont .txtGuide {
  margin-top: 10px;
}

.rsvDnList {
  padding-top: 40px;
}
.rsvDnList .frmList > li {
  flex: 0 50%;
}
.wrapper.bgGrey .container {
  background: #f2f3f5;
}
/*.toggleList > li .toggleCont .toggleInner.type02{border-top:0;padding:0 0 25px;}
.toggleInner.type02 .frmList > li{flex:1 100%;}*/
/*.frmList.type02 > li{flex:1 100%;}
.frmList.type03 > li{flex:1 100%;}
.frmList.type03 > li label{padding-left:16px;text-align:left}*/

/* 다이닝 예약 완료 */
.finishWrap {
  padding-bottom: 68px;
}

.totalWrap.dnTotal .total .tit {
  bottom: 77px;
}
.totalWrap.dnTotal .total .price {
  bottom: 43px;
}
.totalWrap.dnTotal .total .sTxt {
  bottom: 77px;
}
.totalWrap.dnTotal {
  height: 260px;
}
.totalWrap.dnTotal .totalCont {
  padding: 30px 20px 230px;
}

.totalWrap .sortList {
  padding: 6px 0 10px;
  border-bottom: 1px solid #e5e5e5;
  margin: 0 20px;
}
.totalWrap .sortList li {
  position: relative;
  float: left;
  width: 50%;
}
.totalWrap .sortList li + li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  height: 35px;
  width: 1px;
  background: #f2f2f2;
  transform: translateY(-50%);
}
.totalWrap .sortList li + li {
  padding-left: 20px;
}
.totalWrap .sortList .tit {
  display: block;
}
.totalWrap .sortList .price {
  display: block;
  font-family: gothamL;
  margin-top: 3px;
}

/* 다이닝 예약 달력 */
.calContainer.calSingle .btnMonth {
  display: block;
  position: absolute;
  top: 200px;
  text-indent: -9999px;
  overflow: hidden;
  width: 10px;
  height: 18px;
  background: url(../../../images/ko/pc/common/ico_calendar_single.png) no-repeat;
}
.calContainer.calSingle .prevMonth {
  top: 41px;
  left: 35px;
  background-position: 0 0;
}
.calContainer.calSingle .nextMonth {
  top: 41px;
  right: 35px;
  background-position: -10px 0;
}

/*.calContainer.calSingle .calendar td.revOn a{background:#006633 !important}*/
.calContainer.calSingle .calendar td.revOn.promotion a:after {
  background: #fff !important;
  opacity: 1;
}
.calContainer.calSingle .calendar td.promotion a:after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 50%;
  margin-left: -1px;
  width: 3px;
  height: 3px;
  background: #72715c;
  opacity: 0.5;
  border-radius: 50%;
}
.calContainer.calSingle .calendar td.revOn:after {
  display: none;
}
.calContainer.calSingle.calInner {
  float: none;
  width: auto;
}

.calContainer.calSingle {
  text-align: center;
}
.calContainer.calSingle .calMonth {
  font-size: 22px;
}
.calContainer.calSingle .calendar {
  margin-top: 10px;
}

/*.diningSelectCont{padding-bottom:30px;}
.diningSelectCont+.rsvDnList{margin-top:-30px;padding-bottom:80px;}*/

.diningSelectCont .notiDiv {
  text-align: right;
  margin-top: 10px;
  padding-bottom: 30px;
}
.diningSelectCont .notiTxt {
  position: relative;
  display: inline-block;
  padding-left: 7px;
}
.diningSelectCont .notiTxt:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -2px;
  width: 3px;
  height: 3px;
  background: #72715c;
  border-radius: 50%;
}

/*.diningSelectCont .calNotiCont{margin-top:30px}*/

.addDiningOption {
  margin-top: 27px;
}

/* 251114 다이닝 예약 UIUX 2단계 추가 */
.diningSubStep .tabType01 {
  padding: 0 20px;
}
.diningSubStep .tabCont {
  padding-top: 32px;
}
.diningSubStep .hotelResSelect {
  padding: 0 20px 32px;
}
.diningSubStep .hotelResSelect .frmList {
  gap: 8px;
  margin: 0;
}
.diningSubStep .hotelResSelect .frmList > li {
  padding: 0;
  margin-top: 0;
}

.resBook_area {
  padding: 0 20px 50px;
}
.resBook_area .resBook_cont {
  display: none;
}
.resBook_area .resBook_cont.on {
  display: block;
}
.resBook_area .thum > img,
.diningSelectCont .thum > img {
  width: 100%;
  height: 100%;
}
.resBook_area .resBook_tit {
  font-size: 24px;
  color: #000;
  font-weight: 600;
  margin: 50px 0 20px;
}
.resBook_area .resBook_list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 0;
  width: 100%;
}
.resBook_list > li {
  position: relative;
  width: 100%;
  cursor: pointer;
}
.resBook_list > li > .thum {
  position: relative;
}
.resBook_list > li > .btn_select {
  margin-top: 20px;
}
.resBook_list > li > .detail {
  margin-top: 20px;
}
.resBook_list > li > .detail .tit {
  font: 400 22px playfair;
}
.resBook_list > li > .detail .text {
  font-size: 15px;
  color: #000;
  font-weight: 400;
  margin-top: 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.resBook_list > li > .detail + .btnResSelect {
  margin-top: 20px;
}
.dining_detail_area .diningSelectCont {
  display: none;
  border-top: 1px solid #000;
  padding: 0 20px;
}
.dining_detail_area .diningSelectCont.on {
  display: block;
}
.dining_detail_area .diningSelectCont .dnCont .thum {
  margin: 0 -20px;
}
.hasFixedBtn {
  padding-bottom: 120px;
}

/* 멤버십 예약 */
.frmList.listType02 > li {
  flex: 0 1 100%;
}
.frmList.listType02 .tit {
  display: block;
  font-family: gothamM;
}
.frmList.listType02 .txt {
  font-family: gothamL;
}
.frmList.listType02 .frmRadio label {
  text-align: center;
}

/* activityWrap */
.activityWrap {
  padding-top: 10px;
}
.activityWrap .selectCont {
  margin-bottom: 0;
}
.activityWrap .selectCont:after {
  display: flow-root;
}
.activityWrap .selectCont li {
  margin-bottom: 60px;
}
.activityWrap .selectCont + .btnMore {
  margin-top: -60px;
}
.activityWrap .selectCont li:nth-child(odd) a {
  padding-left: 20px;
}
.activityWrap .selectCont li:nth-child(even) a {
  padding-right: 20px;
}
.activityWrap .selectCont li:nth-child(even) .txtCont {
  padding-left: 20px;
}
.activityWrap .selectCont li a {
  display: block;
}

.selectDiv .selectWrap {
  display: inline-block;
  width: 130px;
  padding-left: 20px;
  margin-right: 12px;
}
.selectDiv .selectWrap select {
  border: none;
}
.selectDiv.tRight {
  text-align: right;
}

.txtCont {
  position: relative;
  padding-top: 20px;
}
.txtCont .category {
  display: inline-block;
  font-family: gothamB;
  font-size: 12px;
  line-height: 28px;
  padding: 0 8px;
  background: #f2f2f2;
  text-transform: uppercase;
}
.txtCont .tit {
  display: block;
  margin-top: 17px;
  font: 500 22px playfair, spoqaR;
  font-feature-settings: "lnum", "pnum";
}
.txtCont .tit02 {
  margin-top: 0;
}
.txtCont .date {
  display: block;
  margin-top: 5px;
  font-family: gothamL;
  font-size: 14px;
  color: #777;
}
.txtCont .txt {
  display: -webkit-box;
  max-height: 46px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-top: 10px;
}
.txtCont .frmBm02 {
  position: absolute;
  right: 0;
  top: 20px;
}
.txtCont .frm.frmBm02 input[type="checkbox"] + label {
  font-size: 0;
  color: transparent;
  padding: 7px;
  width: 19px;
  height: 16px;
  display: inline-block;
  vertical-align: top;
}
.txtCont .frm.frmBm02 input[type="checkbox"] + label:before {
  margin: 0;
}
.txtCont .frm.frmBm02:before {
  display: none;
}
.txtCont .category span + span:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 8px;
  background: #fff;
}

.btnMore {
  width: 100%;
  display: block;
  text-align: center;
  padding: 45px 0 55px;
}
.btnMore .btnLine {
  color: #333;
  font-family: gothamL;
  font-size: 14px;
}

/* activityDtailWrap */
.activityDtailWrap .infoArea {
  margin-top: 33px;
}
/*.activityDtailWrap .promotion .promList > li a, .activityDtailWrap .promotion .promList > li >div{padding-top:110%}*/
.topViewCont {
  margin-top: -56px;
  position: relative;
  overflow: hidden;
  height: 100vh;
  z-index: 90;
}
.topViewCont .img {
  position: relative;
}
.topViewCont .img:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.2;
}
.topViewCont .img {
  height: 100%;
}
.topViewCont img {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  width: auto;
}
.topViewCont .txtCont {
  position: absolute;
  top: 50%;
  left: 50%;
  text-align: center;
  transform: translate(-50%, -50%);
  width: 100%;
}
.topViewCont .txtCont .tit {
  font-size: 32px;
  color: #fff;
  padding: 0 20px;
  margin: 0;
}
.topViewCont .txtCont .txt {
  display: block;
  max-height: inherit;
  overflow: visible;
  margin-top: 12px;
  font-size: 14px;
  color: #fff;
  padding: 0 20px;
  font-family: gothamL;
}
.topViewCont .txtCont .category {
  color: #fff;
  background: transparent;
}
.topViewCont .txtCont .categoryv + .category {
  margin-left: 7px;
}
.topViewCont .txtCont .keyword {
  margin-top: 27px;
}
.topViewCont .txtCont .keyword > span {
  color: #fff;
  border: 1px solid #fff;
  background: transparent;
}
.topViewCont button {
  position: absolute;
  bottom: 40px;
  left: 50%;
  margin-left: -25px;
  background: url(../../../images/ko/mo/common/btn_view_more.png) no-repeat 50% 50%;
  background-size: auto 16px;
  width: 50px;
  height: 50px;
}
.topViewCont + .inner {
  padding-bottom: 25px;
}

.boWrap {
  position: relative;
  margin: 0 -20px;
}
.btnOption {
  display: table;
  width: 100%;
  table-layout: fixed;
  background: #f9f9f9;
}
.btnOption > * {
  display: table-cell;
}

/* btn color 추가 240905 */
.btnOption > a {
  font-size: 14px;
  padding: 20px 0;
  text-align: center;
}
.btnOption .btnGJC {
  background: #164438;
  color: #fff;
}

.btnOption .btnShare:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 7px;
  width: 15px;
  height: 17px;
  background: url(../../../images/ko/mo/common/ico_share.png) no-repeat 0 0;
  background-size: 15px 17px;
}
.frm.frmBm02:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -6px;
  width: 1px;
  height: 12px;
  background: #ccc;
}
.frm.frmBm02 input[type="checkbox"] + label {
  display: block;
  padding: 20px 0;
  font-size: 14px;
  color: #777;
  text-align: center;
}
.frm.frmBm02 input[type="checkbox"] + label:before {
  display: inline-block;
  vertical-align: middle;
  position: inherit;
  top: 0;
  margin-right: 7px;
  width: 17px;
  height: 15px;
  background: url(../../../images/ko/mo/common/ico_bookmark.png) no-repeat 0 0;
  background-size: 34px 15px;
}
.frm.frmBm02 input[type="checkbox"]:checked + label {
  color: #000;
}
.frm.frmBm02 input[type="checkbox"]:checked + label:before {
  background-position: -17px 0;
}

.noShow {
  border-top: 1px solid #e6e6e6;
  margin-top: 20px;
  padding-top: 20px;
}

/* My Page(공통) */
abbr,
abbr[title="Josun Point"] {
  display: inline;
  font-family: playfair;
  text-decoration: none;
}
.txtGuide abbr {
  font-family: gothamL, spoqaL;
}
.tblH th abbr,
.tblH td abbr {
  font-family: gothamL, spoqaL;
  text-decoration: none;
}
.hBar {
  display: inline-block;
  margin: 0 20px;
  font-size: 30px;
  vertical-align: middle;
}
.vBar {
  position: relative;
  margin-left: 15px;
  padding-left: 15px;
}
.vBar::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 1px;
  height: 11px;
  background: #ccc;
}
.btnLine.more {
  display: block;
  margin: 25px auto 30px;
  font: 500 17px/32px gothamL;
  letter-spacing: -0.01em;
}
.inner .btnLine.more {
  margin-bottom: 0;
}
.btnPrint.small {
  top: 0;
  padding: 6px 0;
  font-size: 16px;
}
.swipeWrapArea .swiper-button-disabled {
  cursor: default;
}
.pointTxt {
  color: #989442;
}
.toggleList .notiTxt + .frmWrap .frm {
  width: 49%;
  margin-bottom: 4px;
  vertical-align: top;
  margin-left: 0;
}
.toggleList .notiTxt + .frmWrap .frm.widthNone {
  width: 100%;
}
.toggleList .notiTxt {
  font-size: 16px;
  color: #000;
  margin-bottom: 15px;
}
.toggleList .notiTxt + .notiTxt {
  margin-top: 10px;
}
.toggleList .notiTxt + table {
  margin-top: 20px;
}
.toggleList .frmWrap + .tblH {
  margin-top: 20px;
}
.divTop.mar-20 {
  margin: 55px -20px 0;
}

.myPage .opValueBar,
.membership .opValueBar {
  position: relative;
  margin-left: 12px;
  padding-left: 12px;
}
.myPage .opValueBar::before,
.membership .opValueBar::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1px;
  height: 12px;
  background: #ccc;
}
.myPage .promotion.type02 {
  padding-bottom: 0;
}
.myPage .promotion.type02 .titDep2 {
  margin-top: 30px;
}
.app .myPage.container {
  padding: 56px 0 68px;
}
.app .myPage02.container {
  padding: 56px 0 0;
}

.myBox .inner + .toggleList {
  margin-top: -40px;
}
.myBox .inner + .toggleList > li .toggleCont .toggleInner {
  padding-bottom: 40px;
}
.myBox .toggleList.cautionBox .listTit {
  font-family: gothamL, spoqaL;
}
.cautionBox {
  padding-bottom: 68px;
}
.myBox.cautionBox {
  padding-bottom: 40px;
}
/* My Page > tab(tabScroll) */
.tabType01.tabScroll a {
  color: #777;
  font-family: gothamL, spoqaL;
}
.tabType01.tabScroll .on > a {
  color: #000;
}
.tabType01.tabScroll + .tabCont .toggleList > li {
  border-top-color: #e5e5e5;
}
.myBox.cautionBox .txtCl-link {
  color: #008bd3;
}

/* My Page > searchBox(공통) */
.searchBox {
  margin: 0 -20px;
  padding: 32px 20px;
  background: #f9f9f9;
}
.searchBox .selectWrap {
  vertical-align: top;
}
.searchBox .selectWrap,
.searchBox .selectWrap select,
.searchBox .selectWrap .ui-selectmenu-button,
.searchBox .intArea input {
  background-color: transparent;
}
.searchBox .selectWrap + .frmList.periodOp {
  margin: 24px 0 12px;
}
.searchBox .searchOp {
  position: relative;
  margin-bottom: 24px;
}
.searchBox .period {
  display: table;
}
.searchBox .intArea,
.searchBox .intArea + .hBar {
  display: table-cell;
}
.searchBox .intArea + .hBar {
  padding: 0 12px;
  color: #ccc;
}
.searchBox .intArea input {
  border-bottom: 1px solid #ccc;
}
.searchBox .frmList.periodOp {
  display: table;
  width: 100%;
  table-layout: fixed;
  margin: 0 0 12px;
}
.searchBox .frmList.periodOp .frmRadio {
  display: table-cell;
}
.searchBox .frmList.periodOp .frmRadio label {
  width: inherit;
  max-width: inherit;
  height: 32px;
  margin-left: -1px;
  padding: 6px 0 4px;
  font-size: 13px;
  text-align: center;
}
.searchBox .frmList.periodOp .frmRadio input[type="radio"]:checked + label {
  z-index: 3;
}
.searchBox .searchOp > input {
  margin-top: 15px;
  background: transparent;
}
.searchBox + .txtGuide {
  margin: 20px 0 40px;
}
.searchBox + .txtGuide .btnLine {
  margin-left: 8px;
  color: #000;
  vertical-align: top;
}
.searchBox + .txtGuide .btnLine:after {
  margin-top: -2px;
}
.period input {
  background: url(../../../images/ko/pc/common/ico_diary.png) no-repeat right 50%;
  cursor: pointer;
}
.searchBox.mg0 {
  margin: 0;
}

/* My Page > cardList(공통) */
.cardList.noData {
  padding: 70px 0;
}
.cardList {
  width: 100%;
}
.cardList li {
  width: 100%;
}
.cardList li .cardInner {
  display: block;
  position: relative;
  padding: 27px 40px 27px 20px;
  border-bottom: 1px solid #ccc;
}
.cardList li .cardInner::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 8px;
  height: 15px;
  background: url(../../../images/ko/pc/common/ico_arr_10x18.png) no-repeat right 50%;
}
.cardList li .cardInner .status {
  display: block;
  color: #989442;
  font: 500 13px spoqaR;
  text-transform: uppercase;
}
/*221130 no_show / 방문완료*/
.cardList li .cardInner .status.st02 {
  color: #aaa;
}
/*221130 취소*/
.cardList li .cardInner .status.st03 {
  color: #b01414;
}
/* // 221130 상태디자인 추가*/
.cardList li .cardInner .keyword {
  display: block;
  color: #989442;
  font: 500 13px spoqaR;
}
.cardList li .cardInner .tit {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
  max-height: 2.66em;
  word-wrap: break-word;
  overflow: hidden;
  margin: 6px 0 12px;
  font: 500 22px/1.33 gothamM, spoqaR;
  letter-spacing: -0.025em;
}
.cardList li .cardInner .info {
  margin-bottom: 3px;
  color: #000;
  font: 500 15px gothamL, spoqaL;
  text-transform: uppercase;
}
.cardList li .cardInner .number {
  margin-bottom: 3px;
  color: #000;
  font: 400 14px gothamL;
  letter-spacing: -0.01em;
}
.cardList li .cardInner .info + .number {
  margin-bottom: 13px;
}
.cardList li .cardInner .number em {
  font-size: 15px;
}
.cardList li .cardInner .date {
  color: #777;
  font: 400 14px gothamL;
  letter-spacing: -0.01em;
}
.cardList li .cardInner .period {
  color: #777;
  font: 400 14px gothamL;
  letter-spacing: -0.01em;
}
.cardList li .cardInner .period em {
  font-size: 14px;
}
.cardList li .cardInner .couponInfo {
  margin-top: 33px;
  color: #666;
  font: 400 15px spoqaL;
}
.cardList li .cardInner .couponInfo .btnArr {
  position: relative;
  padding-right: 20px;
  color: #000;
  font: 400 15px/1.5 spoqaL;
}
.cardList li .cardInner .couponInfo .btnArr:after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 5px;
  width: 7px;
  height: 12px;
  background: url(../../../images/ko/pc/common/ico_arr_10x18.png) no-repeat right 50%;
}

.cardList.coupon li .cardInner {
  display: block;
  position: relative;
  margin: 16px 20px;
  padding-right: 84px;
  border: 1px solid #e5e5e5;
}
.cardList.coupon li .cardInner::after {
  right: 72px;
  width: 1px;
  height: 100%;
  background: none;
  border-left: 1px dashed #e5e5e5;
}
/*.cardList.coupon li:last-child .cardInner{margin-bottom:0}*/
.cardList.coupon + .btnArea > .btnLine.more {
  margin-top: 5px;
}
.cardList.coupon li .cardInner .tit {
  font-size: 17px;
}
.cardList.coupon li .cardInner .number {
  margin-bottom: 20px;
}
.cardList.coupon li .cardInner .number em {
  margin-left: 5px;
}
.cardList.coupon li .cardInner .couponInfo {
  width: 72px;
  margin: 0;
  position: absolute;
  box-sizing: border-box;
  padding: 0 10px;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  text-align: center;
  font-size: 14px;
}
.cardList.coupon li .cardInner .couponInfo.offline {
  color: #000;
}
.cardList.expiration li .cardInner > .keyword,
.cardList.expiration li .cardInner > .tit,
.cardList.expiration li .cardInner > p {
  color: #ccc;
}

/* 210506 추가 */
.cardList.coupon li .cardInner .couponImg {
  height: 52px;
  margin: 10px 0 15px;
  text-align: left;
}
.cardList.coupon li .cardInner .couponImg img {
  width: auto;
  height: 100%;
  object-fit: contain;
}
.cardList.coupon li .cardInner .couponImg + .tit {
  margin: 0;
}
.cardList.coupon li .cardInner .keywordGroup {
  display: flex;
}
.cardList.coupon li .cardInner .keywordGroup .keyword {
  position: relative;
  padding: 0 8px;
}
.cardList.coupon li .cardInner .keywordGroup .keyword + .keyword {
  color: #000;
}
.cardList.coupon li .cardInner .keywordGroup .keyword:first-child {
  padding-left: 0;
}
.cardList.coupon li .cardInner .keywordGroup .keyword::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  display: inline-block;
  width: 1px;
  height: 0.8em;
  background-color: #999;
  transform: translateY(-50%);
}
.cardList.coupon li .cardInner .keywordGroup .keyword:last-child::after {
  display: none;
}
.cardList.coupon li .cardInner .couponBgTit {
  display: inline-block;
  padding: 5px 10px;
  font-size: 15px;
}
.cardList.coupon li .cardInner .couponBgTit.type01 {
  background-color: #2c4942;
  color: #fff;
}
.cardList.coupon li .cardInner .couponBgTit.type02 {
  background-color: #bb7e54;
  color: #fff;
}
.cardList.coupon li .cardInner .couponBgTit + * {
  margin: 13px 0 0;
}
.cardList.coupon li .cardInner .benefitDetail {
  margin-top: 15px;
}
.couponTop {
  padding: 0 20px;
}
.couponTop .tit {
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  margin: 14px 0;
}
.inputGroup {
  display: flex;
}
.inputGroup.row {
  flex: 1;
  flex-wrap: nowrap;
  flex-direction: row;
}
.inputGroup > input {
  border: 1px solid #ccc;
  padding: 0 10px;
}
.inputGroup > input + button {
  max-width: 80px;
  margin-left: 5px;
}
.inputGroup + .btnSub {
  margin-top: 8px;
}
.couponTop .noteGuide {
  text-align: center;
  margin: 15px 0;
  font-weight: 600;
}
.layerPop .popTit {
  padding-top: 20px;
  text-align: center;
  font-weight: 600;
}
.layerPop .popTit + .layerInner {
  padding: 25px 20px 30px;
}
.layerPop.couponError .btnArea {
  padding: 0 20px 20px;
}
.layerPop.couponError .btnArea .btn {
  background-color: #fdb417;
  padding: 8px 0;
  border: 0;
  color: #000;
  font-weight: bold;
}
.layerPop.couponResult .btnArea {
  padding: 0 20px 20px;
}
.layerPop.couponResult .btnArea .btn {
  background-color: #f1ded7;
  padding: 8px 0;
  border: 0;
  color: #000;
  font-weight: bold;
}

.layerPop.couponSelect .layerCont {
  background-color: #fff;
}
.layerPop.couponSelect .layerInner {
  padding: 25px 20px 20px;
}
.layerPop.couponSelect .btnArea {
  display: flex;
  justify-content: center;
  padding-bottom: 15px;
}
.layerPop.couponSelect .btnArea button {
  width: auto;
  width: 80px;
  background-color: #535353;
  border: 0;
  padding: 3px 0;
  margin-right: 10px;
  color: #fff;
}
.layerPop.couponSelect .btnArea button:last-child {
  margin-right: 0;
}
/* // 210506 추가 */

.layerPop .cardList.coupon li .cardInner {
  margin: 16px 0;
}
.layerPop .cardList.coupon li .cardInner::after {
  display: none;
}
.layerPop .cardList.coupon li:first-child .cardInner {
  margin-top: 26px;
}
/*.layerPop .layerInner .scrollWrap .cardList.coupon + .btnArea{position:static;margin-bottom:0}*/

.myPage.container {
  padding: 56px 0 0;
  overflow: hidden;
}
.myPage .inner {
  position: relative;
  overflow: hidden;
}
.myPage .topArea {
  position: relative;
  width: auto;
  height: auto;
  padding: 55px 20px;
}
.myPage .pageGuide {
  font-size: 15px;
}
.myPage .txtBox {
  padding: 30px 0 20px;
  background-color: #fff;
}
.myPage .txtBox .titDep2 {
  margin-top: 35px;
}
.myPage .txtBox .listDep1 {
  letter-spacing: -0.025em;
}
.myPage .txtBox .description {
  margin-bottom: 40px;
  font-size: 14px;
}
.myPage .txtBox .loginFrm {
  position: relative;
  margin-bottom: 10px;
}
.myPage .txtBox .loginFrm input {
  width: 100%;
  padding: 20px 17px;
  border: none;
  background-color: #f9f9f9;
}
.myPage .txtBox .loginFrm input::placeholder,
.myPage .txtBox .loginFrm input:-ms-input-placeholder {
  color: #777;
}
.myPage .txtBox .loginFrm.error input {
  border: 1px solid #b01414;
}
.myPage .loginFrm .alertMessage {
  display: none;
  margin-bottom: 8px;
  color: #b01414;
  font: 600 14px/1 spoqaL;
}
.myPage .listDep1 + .btnArea {
  margin: 40px 0 20px;
}

.myPage .inner.txtBox {
  padding: 30px 20px 20px;
}
.myPage .inner.txtBox .tit {
  display: block;
  margin: 32px 0 12px;
  font-size: 24px;
}
.myPage .tabCont > .hidden + .toggleList {
  margin-top: -1px;
}

.myBox {
  position: relative;
  width: auto;
  height: auto;
}
.myBox .titDep2 {
  margin: 52px 0 25px;
  font: 500 24px gothamR, spoqaR;
}
.myBox .infoArea li .tit {
  color: #333;
}
.myBox .infoArea + .txtGuide {
  margin-top: 25px;
}
.myBox .payTotalCont {
  padding-bottom: 0;
}
.myBox .payTotalCont + .txtGuide {
  margin-top: 25px;
}
.myBox .btnArea {
  margin: 25px 0 20px;
}
.myBox .inner .btnArea {
  margin: 25px 0 0;
}
.myBox .userInfo {
  display: block;
  margin: 0 -20px 34px;
  padding: 20px;
  background-color: #f9f9f9;
}
.myBox .userInfo dt {
  margin-bottom: 2px;
  font-size: 22px;
  font-weight: 500;
}
.myBox .userInfo dt i {
  text-decoration: normal;
  font: 400 15px/25px "gothamL";
}
.myBox .userInfo dd {
  font: 400 15px/25px "gothamL";
  letter-spacing: -0.01em;
}
.myBox .userInfo .editMbsBtn {
  margin-top: 20px;
}
.myBox .intList > li {
  position: relative;
}
.myBox .intList > li.intList-address .tit + .intBox + .intInner input[type="text"] {
  height: auto;
  margin-top: 20px;
  padding: 0;
}
.myBox .intList > li.intList-address .tit + .intBox + .intInner + .intInner input[type="text"][readonly] {
  height: auto;
  padding: 0;
}
.myBox .intList > li.myCard .tit {
  font-size: 14px;
  line-height: 22px;
  font-family: gothamM;
  color: #333;
  text-transform: uppercase;
}
.creditInfo {
  margin: 30px 6%;
  height: 176px;
  background: #333;
  border-radius: 12px;
}
.creditInfo > * {
  color: #fff;
  font: 16px gothamL;
}
.creditName {
  padding: 28px 23px 0;
}
.creditNum {
  padding: 54px 23px 7px;
}
.creditNum span + span {
  margin-left: 8px;
}
.creditNum span:nth-of-type(2),
.creditNum span:nth-of-type(3) {
  vertical-align: -3px;
}
.creditPeriod {
  padding: 0 23px 27px;
}

.myBox .intList > li .intInner.birth {
  display: table;
}
.myBox .intList > li .intInner.birth .intArea {
  display: table-cell;
  width: 33.33%;
}
.myBox .intList > li .intInner.birth .intArea + .intArea > input,
.myBox .intList > li .intInner.birth .intArea + .intArea:last-child > input {
  width: 80%;
  margin-left: 20%;
}

.myBox .toggleList i.op {
  margin-left: 4px;
  color: #72715c;
  font-style: normal;
}
.myBox .toggleList .titArea {
  margin: 0 20px;
  padding: 19px 0 21px;
}
.myBox .toggleList .titArea .listTit {
  font-family: gothamL, spoqaL;
}
.myBox .toggleList .titArea .frm {
  width: 90%;
  z-index: 15;
} /* 240812 추가 */
.myBox .toggleList .frm.frmAll label {
  font-weight: 500;
}
.myBox .toggleList > li:last-child {
  border-bottom: 0;
}
.myBox .toggleList > li .toggleCont .toggleInner {
  padding: 25px 0 40px;
  font-size: 15px;
  word-break: break-all;
} /* 20200626 유의사항(확인) 15 → 40 */
.myBox .toggleList > li .btnToggle:after {
  right: 0;
}
.myBox .frmList.snsLogin li.frmCheck {
  flex: 0 1 100%;
  display: block;
  position: relative;
}
.myBox .frmList.snsLogin .frmCheck label {
  width: auto;
  max-width: inherit;
  padding: 12px 52px 12px 52px;
  font-size: 15px;
  color: #565656;
  opacity: 0.7;
}
.myBox .frmList.snsLogin .frmCheck label:before {
  right: 18px;
  top: inherit;
  bottom: 15px;
  width: 26px;
  height: 1px;
  background: #989442;
}
.myBox .frmList.snsLogin .frmCheck label:after {
  content: "연결 하기";
  overflow: hidden;
  display: block;
  color: #464300;
  font-size: 14px;
  position: absolute;
  right: 18px;
  top: 12px;
  width: 28px;
  height: 24px;
  background: transparent;
}
.myBox .frmList.snsLogin .frmCheck input[type="checkbox"]:checked + label {
  opacity: 1;
  background-size: 16px 16px;
  font-weight: 500;
}
.myBox .frmList.snsLogin .frmCheck input[type="checkbox"] {
  opacity: 0;
}
.myBox .frmList.snsLogin .frmCheck input[type="checkbox"]:checked + label:before {
  background: #000;
}
.myBox .frmList.snsLogin .frmCheck input[type="checkbox"]:checked + label:after {
  content: "해지 하기";
  color: #000;
}
.myBox .frmList.snsLogin .frmCheck input[type="checkbox"]:checked + label {
  border-color: #ccc;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 20px 50%;
}
.myBox .frmList.snsLogin .frmCheck label {
  background-repeat: no-repeat;
  background-position: 20px 50%;
  background-size: 16px 16px;
}
.myBox .frmList.snsLogin .frmCheck.google label {
  background-image: url(../../../images/ko/mo/HULO/ico_sns-google.png);
}
.myBox .frmList.snsLogin .frmCheck.facebook label {
  background-image: url(../../../images/ko/mo/HULO/ico_sns-facebook.png);
}
.myBox .frmList.snsLogin .frmCheck.naver label {
  background-image: url(../../../images/ko/mo/HULO/ico_sns-naver.png);
}
.myBox .frmList.snsLogin .frmCheck.kakao label {
  background-image: url(../../../images/ko/mo/HULO/ico_sns-kakao.png);
}
.myBox .frmList.snsLogin .frmCheck.apple label {
  background-image: url(../../../images/ko/mo/HULO/ico_sns-apple.png);
}

.myBox .frmList.type03 li.frmCheck {
  flex: 0 1 100%;
  margin: 0 0 0 3px;
}
.myBox .frmList.type03 .frmCheck label {
  display: block;
  width: 100%;
  padding-left: 25px;
  border: 0;
  font-family: gothamL, spoqaL, playfair;
}
.myBox .frmList.type03 .frmCheck label::before {
  left: 0;
}
.myBox .frmList.type03 .frmCheck input[type="checkbox"]:checked + label {
  background: #fff;
  border: 0;
}
.myBox .toggleList li {
  position: relative; /*letter-spacing:-.05em*/
}
.myBox .toggleList .btnLine.reset {
  position: absolute;
  top: 22px;
  right: 60px;
  z-index: 2;
}
.myBox .side {
  position: absolute;
  top: 0;
  right: 0;
}
.mypage .myBox .toggleList > li .btnToggle {
  left: inherit;
  right: -20px;
  width: 58px;
}
.mypage .myBox .toggleList > li .btnToggle:after {
  right: 20px;
}

.addItemArea {
  position: relative;
}
.addItemArea.maginBtm {
  margin-bottom: 68px !important;
}
.addItemArea.disabled .addItemDimmed {
  display: block;
}
.addItemDimmed {
  display: none;
  position: absolute;
  top: 0;
  bottom: -75px;
  left: 0;
  right: 0;
  background: #fff;
  opacity: 0.8;
  z-index: 50;
}
.myBox.divTop.addItemDimmed.disabled { 
  display: none !important;
}
.myBox.divTop.addItemDimmed { 
  display: block !important;
  position: static !important;
}
.addItemDimmed .txt {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  padding: 0.75em 0;
  font-size: 15px;
  background: #f3f3f3;
  text-align: center;
}
.addItemArea.disabled .side {
  background: #fff;
  opacity: 0.2;
}

.myBox .addItemArea .frm {
  display: inline-block;
  width: 49%;
  margin: 5px 0;
}
.myBox .addItemArea .side {
  top: -45px;
  background: none;
}
.myBox .familyInfo {
  margin: 27px 0 0 20px;
}
.myBox .familyInfo li {
  position: relative;
  list-style: decimal;
}
.myBox .familyInfo li::after {
  content: "";
  display: block;
  margin: 30px 0 30px -20px;
  height: 1px;
  background: #ccc;
}
.myBox .familyInfo li:last-child::after {
  margin-bottom: 0;
}
.myBox .familyInfo li span {
  display: block;
}

/* My Page > account/membership */
.myAccountInfo dd .tit {
  margin-right: 4px;
  color: #333;
  font: 500 15px spoqaR;
}
.myAccountInfo dd .accountNum {
  color: #989442;
  font: 600 15px playfair, spoqaL;
  letter-spacing: 0.075em;
}
.myAccountInfo dd .accountTag {
  margin-top: 10px;
}
.myAccountInfo dd .accountTag span {
  display: inline-block;
  padding: 0.5em 0.6em;
  font: 400 12px gothamL, spoqaL;
  background: #f2f2f2;
}
.myAccountInfo dd .accountTag span + span {
  margin-left: 6px;
}

.myAccountBox {
  position: relative;
  background-color: #fff;
}
.myAccountBox + .hidden + .toggleList > li {
  border: 0;
}

.myAccountInfo {
  display: block;
  padding: 52px 20px 28px;
  text-align: center;
}
.myAccountInfo .userName {
  margin-bottom: 7px;
  font: 500 24px spoqaR;
}
.myAccountInfo .userName em {
  margin-right: 6px;
}
.myAccountInfo .rewardsNum {
  margin-bottom: 20px;
  font: 500 22px playfair;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.075em;
}
.myAccountInfo .btnArea button + button {
  margin-left: 18px;
}
.myAccountInfo dl + .txtGuide {
  margin: 7px 0 0 -3px;
  text-align: left;
}
.myAccountInfo dl {
  position: relative;
  display: block;
  margin-top: 18px;
  text-align: center;
}
.myAccountInfo dl::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-bottom: 18px;
  background: #ccc;
}
.myAccountInfo dt {
  position: absolute;
  top: 25px;
  left: 0;
  z-index: 2;
  font-size: 15px;
  font-family: gothamM, spoqaR;
}
.myAccountInfo dt.number {
  top: 19px;
}
.myAccountInfo dt > abbr[title="Josun Point"] {
  margin-right: 4px;
  font-family: gothamL, spoqaL;
}
.myAccountInfo dd {
  position: relative;
  display: block;
  overflow: hidden;
  font-size: 14px;
  font-family: gothamM, spoqaR;
  text-align: right;
}
.myAccountInfo dd a {
  position: relative;
}
.myAccountInfo dd a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 1px;
  width: 100%;
  height: 1px;
  background: #989442;
}
.myAccountInfo dd span {
  position: relative;
  font: 500 22px/1.5 playfair, spoqaR;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.05em;
}
.myAccountInfo dd span.rewardsNum {
  display: block;
  margin-bottom: 4px;
}
.myAccountInfo dd span.usablePoint {
  padding-right: 22px;
}
.myAccountInfo dd span.expirePoint {
  padding-right: 18px;
}
.myAccountInfo dd span.usablePoint {
  color: #989442;
}
.myAccountInfo dd span.expirePoint {
  color: #000;
}
.myAccountInfo dd span.usablePoint::after,
.myAccountInfo dd span.expirePoint::after {
  content: "Josun Point";
  font-size: 0;
  position: absolute;
  top: 50%;
  right: 0;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
}
.myAccountInfo dd span.usablePoint::after {
  background: url(../../../images/ko/mo/common/ico_point_symbol-gold.png) 100% 50% no-repeat;
  background-size: 16px;
}
.myAccountInfo dd span.expirePoint::after {
  background: url(../../../images/ko/mo/common/ico_point_symbol-black.png) 100% 50% no-repeat;
  background-size: 16px;
}
/* 마이페이지 > 리워드 바코드(L) */
.layerS .layerInner2 {
  padding: 20px;
  text-align: center;
}
.layerS .layerInner2 .tit {
  display: block;
  padding: 14px 0 9px;
  font-size: 17px;
}
.layerS .layerInner2 .txt {
  padding: 0 20px;
  font-size: 14px;
}
.layerS .layerInner2 .barcodeArea {
  padding: 20px 0;
  background: #fff;
}
/* 마이페이지 > 리워드 혜택(L) */
.layerInner .benefit dt {
  margin: 34px 0 8px;
  font: 500 14px gothamM;
  text-transform: uppercase;
}
.layerInner .benefit dd {
  margin-bottom: 4px;
}
.layerInner .benefit dd abbr {
  font-family: gothamL;
}
.layerInner .benefit dd + dt {
  margin-top: 41px;
}
.promotion.type02 h4.titDep3 {
  display: block;
  font: 500 24px spoqaR;
}
.promotion.type02 .locationTag {
  top: 0;
  left: 0;
}
/* 마이페이지 > 혜택 및 쿠폰보기(L) */
.layerInner .tabType01 {
  margin: 0 -20px;
}
/*.layerInner .divTop{margin:0 -20px}*/
.layerInner .tabCont .titDep3 {
  margin: 33px 0 30px;
  font-weight: 500;
  text-transform: uppercase;
  font-family: gothamL, spoqaL;
}
.topLine {
  margin: 55px 0 38px;
  padding-top: 40px;
  border-top: 1px solid #e5e5e5;
}

/* My Page > point/coupon */
.usablePoint {
  padding: 0 22px 2px;
}
.expirePoint {
  padding-right: 18px;
  font-family: gothamL !important;
}
.hasPoint + abbr,
.exchanPoint + abbr {
  margin-left: 2px;
  font: 500 19px gothamL;
  vertical-align: 1px;
}
.expirePoint {
  color: #000;
}
.usablePoint,
.exchanPoint,
.exchanPoint + abbr,
.hasPoint,
.hasPoint + abbr {
  color: #989442;
}
.usablePoint::after,
.expirePoint::after {
  content: "Josun Point";
  font-size: 0;
  position: absolute;
  top: 50%;
  right: 0;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  margin-top: 1px;
}
.usablePoint::after {
  background: url(../../../images/ko/mo/common/ico_point_symbol-gold.png) 100% 50% no-repeat;
  background-size: 16px;
}
.expirePoint::after {
  background: url(../../../images/ko/mo/common/ico_point_symbol-black.png) 100% 50% no-repeat;
  background-size: 16px;
}

.myPointBox {
  position: relative;
}
.myPointBox .myPointInfo {
  display: block;
  padding: 50px 0 30px;
}
.myPointInfo dl {
  display: block;
  padding: 0 20px;
  text-align: center;
}
.myPointInfo dt {
  padding-bottom: 3px;
  font-size: 14px;
  font-family: gothamM, spoqaR;
}
.myPointInfo dt em {
  margin-right: 4px;
  font-size: 30px;
}
.myPointInfo dd {
  position: relative;
  display: block;
  overflow: hidden;
  font-size: 14px;
  font-family: gothamM, spoqaR;
}
.myPointInfo dd.date {
  color: #777;
  font-weight: 400;
  font-family: gothamL;
}
.myPointInfo dd span {
  position: relative;
  font: 500 30px playfair, spoqaR;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.05em;
}
/* 마이페이지 > 포인트 */
.myPointInfo dl + dl {
  display: block;
  margin-top: 38px;
}
.myPointInfo dl + dl::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-bottom: 30px;
  background: #ccc;
}
.myPointInfo dl + dl dt {
  position: absolute;
  left: 20px;
  z-index: 2;
}
.myPointInfo dl + dl dd {
  text-align: right;
}
.myPointInfo dl + dl dd span {
  font-size: 16px;
}
/* 멤버십전환 > 포인트변경 */
.myPointInfo.type02 {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 25px 0;
}
.myPointInfo.type02 dl {
  display: table-cell;
  margin: 0;
  text-align: left;
}
.myPointInfo.type02 dl:first-child {
  padding-left: 0;
}
.myPointInfo.type02 dl + dl {
  border-left: 1px solid #e5e5e5;
}
.myPointInfo.type02 dl + dl::before {
  display: none;
}
.myPointInfo.type02 dl dt {
  position: static;
  line-height: 1;
  padding-bottom: 5px;
}
.myPointInfo.type02 dl + dl dd {
  text-align: left;
}
.myPointInfo.type02 dl dd span {
  font: 500 22px/1 playfair, spoqaR;
}

.myPointTxt {
  position: relative;
  padding: 20px;
  background: #f9f9f9;
}
.myPointTxt .tit {
  display: block;
  margin-bottom: 10px;
  font: 500 14px spoqaR;
}
.myPointTxt .description {
  margin-bottom: 12px;
  font: 400 14px spoqaL;
  letter-spacing: -0.01em;
}
.myPoint li {
  display: table;
  width: 100%;
  border-bottom: 1px solid #ccc;
}
.myPoint .lCont {
  display: table-cell;
  width: 60%;
  padding: 5.7% 0 5.7% 5.5%;
}
.myPoint .rCont {
  display: table-cell;
  width: 40%;
  padding: 5.7% 5.5%;
  text-align: right;
  line-height: 2.25;
  position: relative;
}
.myPoint .tit {
  display: -webkit-box;
  margin-bottom: 12px;
  font-size: 17px;
  max-height: 76px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.myPoint .date {
  display: block;
  margin-bottom: 5px;
  color: #777;
  font-family: gothamL, spoqaL;
}
.myPoint li.noData {
  padding-top: 55px;
}
.myPoint {
  margin-bottom: 20px;
}
.myPoint + .btnArea > .btnLine.more {
  margin-top: 5px;
}

.myPoint .point {
  display: block;
  font-size: 16px;
}
.myPoint .point > abbr[title="Josun Point"] {
  display: inline-block;
  margin-left: 4px;
  font: 14px gothamL;
  vertical-align: 1px;
}
.myPoint .pointTxt {
  display: block;
  font-size: 14px;
  position: absolute;
  right: 20px;
  bottom: 21px;
}
.myPoint .pointType01 {
  color: #989442;
}
.myPoint .pointType02 {
  color: #b01414;
}
.myPoint .pointType03 {
  color: #777;
}

.myCouponBox {
  display: table;
  width: 100%;
  table-layout: fixed;
  padding: 24px 0 31px;
  background: #f9f9f9;
}
.myCouponBox dl {
  position: relative;
  display: table-cell;
  vertical-align: top;
  padding: 0 20px;
  text-align: center;
}
.myCouponBox dl + dl {
  border-left: 2px solid #f2f2f2;
}
.myCouponBox dt {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-left: -20px;
  text-align: center;
  font: 400 14px spoqaL;
}
.myCouponBox dd {
  padding-bottom: 15px;
}
.myCouponBox dd em {
  font-size: 20px;
  font-family: gothamM;
}
.myCouponBox dd a em {
  text-decoration: underline;
}

.myMembershipArea .membershipFree + .tabScroll {
  margin-top: 25px;
}
.myMembershipArea .tabScroll.tabType01 li a {
  height: 36px;
  line-height: 36px;
}
.myMembershipArea .btnWhite {
  border-color: #000;
}
.myMembershipArea .btnTrans {
  background: transparent;
  border: 1px solid #fff;
}
.myMembershipArea .btnGJC {
  background: #164438;
  border: none;
  color: #fff;
}

/* 멤버십 구매내역(common) */
.membershipView {
  position: relative;
}
.membershipView h2.titDep2 {
  display: inline-block;
  margin: 52px 0 0;
  padding: 0 20px;
  font: 500 24px gothamB, spoqaL;
}
.membershipView .myMembershipList {
  position: relative;
}
.myMembershipList .thum {
  position: relative;
  display: block;
  width: 71%;
  margin: 34px auto 35px;
} /* w/m(공통) */
.myMembershipList .thum img {
  width: 100%;
}
.myMembershipList .info {
  margin-bottom: 7px;
  padding-top: 5px;
  text-align: center;
}
.myMembershipList .icoAdd {
  position: relative;
  display: inline-block;
  padding: 5px 10px;
  font: 400 12px/1.5 gothamL, notokr;
  background: #f2f2f2;
}
.myMembershipList .icoAdd::before {
  content: "+";
  display: inline-block;
  margin-right: 5px;
}
.myMembershipList .icoAdd.plusNone {
  padding: 7px 30px;
}
.myMembershipList .icoAdd.plusNone::before {
  display: none;
}
.myMembershipList .membershipName {
  display: block;
  font: 600 22px/1.5 gothamL, spoqaL;
  text-align: center;
}
.myMembershipList .btnArea {
  margin: 6px 0;
  text-align: center;
  margin-top: 34px;
}
.myMembershipList .btnArea .btnLine + .btnLine {
  margin-left: 16px;
}
.myMembershipList .infoArea {
  margin: 30px 20px;
}
.myMembershipList.noData {
  padding: 60px 0 65px;
}

/* 멤버십 구매내역(swiper) */
.membershipView .swipeSlide {
  overflow: visible;
}
.membershipView .swipeWrapArea .swipeSlide.swiper-slide-next .myMembershipList .thum {
  margin-left: -13.8%;
}
.membershipView .swipeWrapArea .swipeSlide.swiper-slide-prev .myMembershipList .thum {
  margin-right: -19.8%;
}
.swipeWrapArea .myMembershipList {
  border-bottom: 0;
}
.swipeWrapArea .myMembershipList .infoArea {
  position: relative;
  margin: 30px 40px;
}
.swipeWrapArea .myMembershipList .infoArea::after {
  content: "";
  position: absolute;
  bottom: -30px;
  display: block;
  width: 100%;
  height: 1px;
  background: #ccc;
}
.swipeWrapArea .myMembershipList .myCouponBox {
  padding: 24px 20px;
  background: transparent;
}

/*.membershipView .swipeSlide .thum{width:57%;margin:45px auto 35px}*/
.membershipView .swipeSlide.swiper-slide-active .thum {
  width: 64%;
  width: 179px;
  height: 285px;
  margin: 36px auto 35px;
}
.membershipView .swipeSlide.swiper-slide-active .thum img {
  width: 100%;
  margin: 0;
  transform: scale(100% 100%);
  transform-origin: center;
  -webkit-transform: scale(100% 100%);
  -webkit-transform-origin: center;
}
.membershipView .swipeSlide .thum {
  width: 64%;
  width: 164px;
  height: 259px;
  margin: 36px auto 35px;
  display: flex;
  align-items: center;
  position: relative;
}
.membershipView .swipeSlide .thum img {
  width: 90.44%;
  transform: scale(90.44% 90.44%) rotate(90deg);
  transform-origin: center;
  -webkit-transform: scale(90.44% 90.44%) rotate(90deg);
  -webkit-transform-origin: center;
  transition: 0.5s;
  margin: 8px auto;
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
}
.membershipView .subAdd {
  position: absolute;
  bottom: -70px;
  left: 50%;
  transform: translateX(-50%);
  font: 300 12px gothamL;
  background: #f2f2f2;
  display: inline-block;
  padding: 7px 30px;
}
.membershipView .swipeSlide .btnArea {
  margin-top: 92px;
}

/* 멤버십(공통) */
.membershipBenetfit {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.membershipBenetfit::after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: #1e1e1e;
  z-index: -1;
}
.membershipBenetfit.premier::after {
  background: #30505f;
}
.membershipBenetfit.gold::after {
  background: #6c533f;
}
.membershipBenetfit.platinum::after {
  background: #505962;
}
.membershipBenetfit.black::after {
  background: #383840;
}
.membershipBenetfit.grandjosun::after {
  background: #837f7d;
} /* 240910 수정 */
.membershipBenetfit.grandjosun_co::after {
  background: #6a7370;
} /* 240910 수정 */
.membershipBenetfit.titanium::after {
  background: #636466;
} /* 240809 추가 */
.membershipBenetfit .cardName {
  display: block;
  padding-top: 40px;
  color: #fff;
  font: 500 32px/1.5 playfair, gothamL, spoqaL;
  text-align: center;
  letter-spacing: 0.075em;
}
.membershipBenetfit .bill {
  margin-bottom: 20px;
  color: #fff;
  font-size: 15px;
  line-height: 1.5;
  font-family: gothamB, spoqaR;
  text-align: center;
}
.membershipBenetfit .bill em {
  font-size: 14px;
  letter-spacing: 0.025em;
}
.membershipBenetfit .bill i {
  font: 400 14px/1.5 gothamL, spoqaL;
}
.membershipBenetfit .thum {
  position: relative;
  display: block;
  width: 65%;
  margin: 0 auto;
}
.membershipBenetfit .thum img {
  box-shadow: 15px 15px 40px rgba(0 0 0 /6%);
}
.membershipBenetfit .btnArea {
  margin: 0;
  padding: 0 20px 40px;
  text-align: center;
}
.membershipBenetfit .btnLine {
  margin-bottom: 30px;
  color: #fff;
  border-color: #fff;
}
.membershipBenetfit .btnLineInline {
  margin-bottom: 30px;
  color: #fff;
  border-color: #fff;
}
.membershipBenetfit .benetfitPrev {
  margin: 15px 30px 40px;
  display: flex;
  flex-flow: row wrap;
  position: relative;
} /* 240910 수정 */
.membershipBenetfit .benefitPrevTit {
  font: 500 16px spoqaM;
  color: #fff;
  padding: 40px 40px 0;
} /* 240910 수정 */
.benetfitPrevList {
  width: 50%;
  padding: 15px 10px 30px;
  position: relative;
}
.benetfitPrevList::before {
  content: "";
  position: absolute;
  top: 0;
  left: 10px;
  width: calc(100% - 40px);
  height: 1px;
  display: block;
  background: rgba(255, 255, 255, 0.4);
}
.benetfitPrevList .tit {
  display: block;
  margin-bottom: 5px;
  color: #eee;
  font: 400 13px spoqaL;
}
.benetfitPrevList .tax {
  display: block;
  margin-bottom: 4px;
  color: #fff;
  font: 500 22px playfair, gothamL, spoqaL;
  font-feature-settings: "lnum", "pnum";
}
.benetfitPrevList .tax .hTxt {
  font: 500 18px spoqaR;
}
.benetfitPrevList .tax .txt2 {
  display: block;
  font: 500 15px spoqaR;
} /* 240812 추가 */
.benetfitPrevList .tax .unit {
  display: inline-block;
  margin-left: 4px;
  font: 500 16px gothamL, spoqaL;
}
.benetfitPrevList .tax .unit.type03 {
  font: 400 13px gothamL, notokrL;
} /* krw */

.benetfitPrevList .txt {
  display: block;
  color: rgba(255, 255, 255, 0.4);
  font: 400 12px/1.5 gothamL, spoqaL;
}
.container.membership .frm.btnFixed {
  margin-bottom: 90px;
  padding-left: 15px;
  z-index: 90;
}
.membershipBenetfit .benetfitPrev .premierInfo {
  width: 100%;
  text-align: center;
  font-size: 13px;
  color: #fff;
  text-transform: uppercase;
}
.membershipBenetfit .benetfitPrev .premierInfo + .premierInfo {
  margin-top: 10px;
}
.membershipBenetfit .benetfitPrev .grandjosunPInfo {
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  text-align: center;
  font-size: 13px;
  color: #fff;
  text-transform: uppercase;
}

/* 멤버십(통합멤버십소개) */
.tabSwipe .membershipBenetfit {
  margin-top: 37px;
}
.tabSwipe .membershipBenetfit::after {
  top: 112px;
  height: calc(100% - 112px);
}
.tabSwipe .membershipBenetfit .bill {
  color: #000;
  font: 600 14px/1 gothamM, spoqaR;
}
.tabSwipe .membershipBenetfit .bill em {
  font-size: 16px;
}
.tabSwipe .membershipBenetfit .bill i {
  margin-left: 4px;
  color: #777;
  font: 400 14px/1 gothamL, spoqaL;
}
.tabSwipe .membershipBenetfit .thum {
  width: 71%;
}
.tabSwipe .membershipBenetfit .thum::before,
.tabSwipe .membershipBenetfit .thum::after {
  display: none;
  content: "";
  position: absolute;
  top: 5%;
  width: 100%;
  height: 90%; /*background:url(../../../images/ko/mo/HUME/img_membership-platinum.png) 0 0 no-repeat;*/
  background-size: contain;
}
.tabSwipe .membershipBenetfit .thum::before {
  left: -108%;
  background-position: 100% 0;
}
.tabSwipe .membershipBenetfit .thum::after {
  right: -108%;
  background-position: 0 0;
}

/* 멤버십구매완료 카드이미지 */
.imgMembershipCard {
  text-align: center;
}
.imgMembershipCard img {
  width: 50%;
}

/* 241030 주요혜택 추가 */
.majorBenefitsBox {
  background-color: #f8f8f8;
  padding: 30px 20px;
  margin-top: 40px;
  margin-bottom: 40px;
}
.majorBenefitsBox > .titDep2 {
  font-size: 18px;
  margin-top: 20px;
  margin-bottom: 5px;
  padding-top: 0;
}
.majorBenefitsBox > .titDep2:first-child {
  margin-top: 0;
}

/* club josun vip */
.tabSwipe .membershipBenetfit.premier .thum::after {
  background-image: url(../../../images/ko/mo/HUME/img_membership-gold_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}
.tabSwipe .membershipBenetfit.gold .thum::before {
  background-image: url(../../../images/ko/mo/HUME/img_membership-premier_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}
.tabSwipe .membershipBenetfit.gold .thum::after {
  background-image: url(../../../images/ko/mo/HUME/img_membership-platinum_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}
.tabSwipe .membershipBenetfit.platinum .thum::before {
  background-image: url(../../../images/ko/mo/HUME/img_membership-gold_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}
.tabSwipe .membershipBenetfit.platinum .thum::after {
  background-image: url(../../../images/ko/mo/HUME/img_membership-black_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}
.tabSwipe .membershipBenetfit.black .thum::before {
  background-image: url(../../../images/ko/mo/HUME/img_membership-platinum_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}
.tabSwipe .membershipBenetfit.black .thum::after {
  background-image: url(../../../images/ko/mo/HUME/img_membership-grandjosun_personal_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
} /* 240812 추가*/
.tabSwipe .membershipBenetfit.grandjosun .thum::before {
  background-image: url(../../../images/ko/mo/HUME/img_membership-black_V.png);
  box-shadow: 15px 15px 40px rgba(0 0 0 / 6%);
  border-radius: 14px;
}

/* club josun vip+ 240812 추가 */
.plusMembers .tabSwipe .membershipBenetfit.gold .thum::before {
  display: none;
}
.plusMembers .tabSwipe .membershipBenetfit.black .thum::after {
  display: none;
}

.tabSwipe .membershipBenetfit .btnArea {
  margin-top: 33px;
  position: relative;
}
.tabSwipe .membershipBenetfit .btnArea .btnTrans + .btnTrans {
  margin-top: 10px;
}
.tabSwipe .membershipBenetfit .btnArea .btnTrans + .btnGJC {
  margin-top: 10px;
}
.tabSwipe .membershipBenetfit .benetfitPrev {
  margin: 35px 10px 0 20px;
}
.tabSwipe .swipeWrap {
  margin: 0;
}
.tabSwipe .swiper-slide-active .membershipBenetfit .thum::before,
.tabSwipe .membershipBenetfit .thum::after {
  display: block;
}
.tabSwipe .membershipBenetfit .premierInfo {
  display: block;
  width: 100%;
  color: #fff;
  font: 400 14px/1.5 gothamL, spoqaL;
  text-transform: uppercase;
  padding: 0 20px;
  text-align: left;
  position: static;
  transform: translateX(0);
}
.tabSwipe .membershipBenetfit .grandjosunPInfo {
  display: block;
  width: 100%;
  color: #fff;
  font: 400 14px/1.5 gothamL, spoqaL;
  text-transform: uppercase;
  padding: 0 20px;
  text-align: left;
  position: static;
  transform: translateX(0);
}

.myReserveBox h2.titDep2 {
  display: inline-block;
  margin: 50px 0 4px;
  padding: 0 20px;
  font-weight: 500;
}
.myReserveBox .cardList {
  margin-bottom: 0;
}
.myReserveBox .cardList li .cardInner .info {
  margin: 2px 0 1px;
}
.myReserveBox .cardList li .cardInner .intValue {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 40px;
}
.myReserveBox .cardList + .txtGuide {
  margin: 20px;
}
.myReserveBox .cardList.type04 li:last-child .cardInner {
  border: 0;
}
.myReserveBox .cardList.type04 li .cardInner {
  margin: 0 20px;
  padding: 27px 0;
}
.myReserveBox .cardList.type04 li .cardInner::after {
  display: none;
}
.myReserveBox .cardList.type04 .btnLine {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  margin-top: -2px;
}

/* My Page > 예약 내역(list) */
.listBox {
  position: relative;
  margin-top: -1px;
}
.listBox .countList {
  padding: 4px 20px 4px 20px;
}
.listBox .countList .tabType01 {
  margin-bottom: 20px;
}
.listBox .countList .count {
  position: relative;
  display: inline-block;
  margin-right: 12px;
  padding: 15px 15px 14px 0;
  color: #333;
  font-size: 14px;
  line-height: 26px;
  font-family: gothamB, spoqaR;
  letter-spacing: -0.01em;
}
.listBox .countList .count:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 1px;
  height: 14px;
  background: #ccc;
}
.listBox .countList .selectWrap {
  display: inline-block; /*;width:auto !important*/
}
.listBox .countList .selectWrap select {
  border: 0;
}
.listBox .countList .selectWrap .ui-selectmenu-button {
  border: 0;
  font-size: 16px;
}
.listBox .countList .selectWrap .ui-selectmenu-button-open {
  border-bottom: 1px solid #000;
}
.listBox .countList .selectWrap .ui-menu-item {
  font-size: 16px;
}

/* 250116 제휴사/프로모션명 입력란 추가 */
.prmCode_box,
.option_box {
  margin-top: 40px;
}
.option_box .intList > li .tit {
  margin-bottom: 5px;
}
.option_box .intList > li h3.tit{
  font-family: gothamR, spoqaR;
  font-size:18px;
  font-weight: 500;
}
.prmCode_box .intList > li .tit label,
.option_box .intList > li .tit label {
  font: 500 18px gothamR, spoqaR;
}
.option_box .intList > li .intBox {
  height: auto;
  padding: 16px 0 0 0;
}
.option_box .intList > li .intBox .frm {
  width: 100%;
}
.option_box .intList > li .intBox .frm + .frm {
  margin-top: 15px;
}

/* My Page > myContents(list) */
.listAllChk {
  position: relative;
  margin: 20px 0 0;
}
.listAllChk .frm label {
  font-size: 14px;
}
.side {
  position: absolute;
  top: 0;
  right: 0;
}
.side button + button {
  margin-left: 8px;
}
.watchList li > a {
  display: block;
}
.watchListCont {
  position: relative;
}
.watchListCont .frm {
  position: absolute;
  top: 0;
  left: -40px;
}
.watchListCont .frm input[type="checkbox"] + label:before {
  top: 50%;
  transform: translateY(-50%);
  margin-top: -7px;
}
.watchListCont .locationTag {
  left: -20px;
}
.watchListCont .thum {
  position: relative;
  margin: 0 -20px;
}
.watchListCont .txtCont {
  margin: 30px 0;
  padding: 0;
}
.watchListCont .txtCont .tit {
  display: block;
  margin: 7px 0 15px;
  font: 22px playfair;
}
.watchListCont .txtCont .benefit {
  display: -webkit-box;
  max-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.watchListCont .txtCont .date {
  margin-top: 20px;
  color: #777;
}
.watchListCont .txtCont .date span {
  display: block;
  font: 14px/21px spoqaL;
}
.watchListCont .txtCont .date span em {
  margin-left: 6px;
  font: 14px gothamL;
}
.watchListCont.expiration .thum::after {
  content: "";
  position: absolute;
  top: 0;
  left: -20px;
  width: 100%;
  height: 100%;
  padding: 0 20px;
  background: #fff;
  opacity: 0.7;
  z-index: 2;
}
.watchList > li {
  margin-top: 40px;
}
.watchList > li:first-child {
  margin-top: 35px;
}
.watchList > li + li {
  margin-top: 80px;
}
.watchList > li.noData {
  margin: 0;
}
.watchList.noData {
  padding: 190px 0;
}
.watchList.edit {
  position: static;
  width: 100%;
  margin-left: 40px;
}
.watchList.edit .watchListCont .thum {
  margin: 0;
  height: 250px;
}
.watchList.edit .watchListCont .thum img {
  width: inherit;
  height: 100%;
}
.watchList.edit .watchListCont .benefit {
  margin-right: 20px;
}
.watchList.edit .watchListCont .locationTag {
  left: 0;
}
.watchList .frm {
  display: none;
}
.watchList.edit .frm {
  display: block;
}

/* My Page > myContents(상세) */
.myPage .topArea .tit {
  display: block;
  font: 600 24px/1 gothamL;
  text-transform: uppercase;
}
.myPage .topArea .category + .tit {
  margin: 28px 0 7px;
}
.myPage .topArea .category {
  position: absolute;
  top: 22%;
  left: 50%;
  transform: translateX(-50%);
  display: inline-block;
  padding: 0 10px;
  font-weight: 500;
  font-size: 12px;
  line-height: 28px;
  background: #f2f2f2;
}
.myPage .topArea .categoryTxt {
  font-family: gothamL, spoqaL;
}
.myPage .topArea .categoryTxt em {
  color: #989442;
  font-weight: 600;
  font-family: playfair;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.05em;
}
.myBox h3.titDep3 {
  margin: 80px 0 30px;
  font: 600 24px/32px spoqaL;
  letter-spacing: -0.025em;
}
.myBox .toggleList .opValue {
  display: block;
  font: 400 14px/22px gothamL, spoqaL;
  text-transform: uppercase;
}
.myBox .toggleList.noSpace > li .toggleCont .toggleInner {
  padding: 0;
}
.myBox .toggleList > li .titArea .intValue {
  right: 40px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  line-height: 2;
  font-family: gothamL, spoqaL;
}
.myBox .toggleList > li .titArea .intValue em {
  margin-right: 4px;
  font: 600 16px playfair, gothamL, spoqaL;
  font-feature-settings: "lnum", "pnum";
  letter-spacing: 0.05em;
}
.myBox .toggleList > li .titArea.nonBtn .intValue {
  right: 0;
}
.myBox .priceInfo {
  background: transparent;
}
.myBox .priceInfo + .opInfo,
.myBox .toggleInner .opInfo:first-child {
  margin-top: 0;
}
.myBox .toggleInner .opInfo:first-child {
  border-top: none;
}
.myBox .opInfo {
  position: relative;
  padding-top: 32px;
  margin-top: 32px;
  border-top: 1px solid #e5e5e5;
}
.myBox .opInfo:last-child {
  padding-bottom: 35px;
}
.myBox .opInfo dl dt + dd,
.priceInfo dl dd + dd {
  margin-top: 10px;
}
.myBox .opInfo dl dt {
  font-weight: 500;
}
.myBox .opInfo dl dd {
  color: #777;
  word-break: break-all;
}
.myBox .opInfo .side {
  top: 30px;
}
.myBox.inPayInfo {
  padding-bottom: 0;
}
.myBox .opInfo dd > .btnArea.type02 span + span::before {
  content: none;
}
.myBox .opInfo dd > .btnArea.type02 span {
  padding-right: 4px;
}
.myBox .opInfo dd > .btnArea.type02 span:nth-child(2) {
  padding-left: 4px;
}

/* My Page > layerPop */
.layerPop .reserveOpArea {
  position: relative;
}
.layerPop .reserveOpArea .txtConfirm {
  margin-bottom: 15px;
  font: 500 17px spoqaR;
  margin-top: -20px;
}
.layerPop .reserveOpArea .description {
  margin-bottom: 25px;
  color: #333;
  font-size: 14px;
}
.layerPop .reserveOpArea .txtGuide {
  text-align: left;
}
.layerPop .reserveOpArea .reserveAlert {
  margin-bottom: 20px;
  padding: 1.5em;
  text-align: center;
  background-color: #f9f9f9;
}
.layerPop .reserveOpArea .txtAlert {
  margin-bottom: 12px;
  font-size: 14px;
  font-family: gothamB, spoqaR;
}
.layerPop .reserveOpArea .txtAlert em {
  color: #989442;
}
.layerPop .reserveOpArea .reserveList span {
  color: #333;
  font: 400 14px gothamL, spoqaL;
}
.layerPop .reserveOpArea .reserveList span + span::before {
  content: "/";
  display: inline-block;
  margin: 0 4px;
}
.layerPop .reserveOpArea .total {
  margin: 30px 0 20px;
  padding: 1.5em 1.35em;
  background-color: #f9f9f9;
}
.layerPop .reserveOpArea .total:after {
  content: "";
  display: block;
  clear: both;
}
.layerPop .reserveOpArea .total .totalWrap {
  float: left;
  width: 100%;
  height: auto;
}
.layerPop .reserveOpArea .total .tit {
  float: left;
  color: #777;
  font: 14px/2 gothamB, spoqaR;
  text-align: left;
}
.layerPop .reserveOpArea .total .pay {
  float: right;
  font: 15px/2 gothamB, spoqaR;
  text-align: right;
}
.layerPop .reserveOpArea .total .totalWrap.type02:before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: 12px 0;
  background: #ccc;
}
.layerPop .reserveOpArea .total .totalWrap.type02 .tit {
  float: none;
  display: block;
  color: #000;
}
.layerPop .reserveOpArea .total .totalWrap.type02 .pay {
  line-height: 1;
}
.layerPop .reserveOpArea .total .totalWrap.type02 .pay em {
  margin-right: 4px;
  font: 600 16px playfair, gothamL, spoqaL;
  letter-spacing: 0.075em;
  font-feature-settings: "lnum", "pnum";
}
.layerPop .reserveOpArea .titDep2 {
  display: block;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 40px;
}
.reserveOpArea .frmList {
  margin: 25px -4px 0;
}
.type04{
  margin: 0 !important;
}
.reserveOpArea .frmList label {
  display: flex;
  width: auto;
  max-width: inherit;
  height: 48px;
  padding: 0 32px 0 15px;
  line-height: 1.33;
  align-items: center;
}
.reserveOpArea .frmList > li {
  flex: 1 100%;
}

/* My Page > 검색(datepicker 공통) */
.datepicker-wrapper .btnClose {
  overflow: hidden;
  text-indent: -9999px;
  position: fixed;
  left: inherit !important;
  right: 20px !important;
  width: 48px;
  height: 48px;
  background: url(../../../images/ko/mo/common/btn_close_36x36_w.png) no-repeat 50% 50%;
  background-size: 18px 18px;
  z-index: 999999;
}
.datepicker-wrapper .ui-datepicker {
  display: none;
  position: absolute;
  margin-top: -1px;
  padding: 30px 20px;
  border: 1px solid #000;
  background: #fff;
  z-index: 2;
  top: 50% !important;
  left: 50% !important;
  transform: translateY(-50%) translateX(-50%);
  width: 84%;
}
.datepicker-wrapper .ui-datepicker .ui-datepicker-header {
  margin-bottom: 16px;
  text-align: center;
}
.datepicker-wrapper .ui-datepicker .ui-datepicker-header .calMonth {
  font-size: 22px;
  font-family: gothamB, spoqaR;
  line-height: 1;
  letter-spacing: -0.025em;
}
.datepicker-wrapper .ui-datepicker .btnMonth {
  display: block;
  position: absolute;
  top: 200px;
  text-indent: -9999px;
  overflow: hidden;
  width: 10px;
  height: 18px;
  background: url(../../../images/ko/mo//common/ico_arr_datepicker.png) no-repeat;
}
.datepicker-wrapper .ui-datepicker .prevMonth {
  top: 36px;
  left: 10%;
  background-position: 0 0;
}
.datepicker-wrapper .ui-datepicker .nextMonth {
  top: 36px;
  right: 10%;
  background-position: -10px 0;
}
.datepicker-wrapper .ui-datepicker .calendar {
  table-layout: fixed;
  margin: 0 auto;
  padding: 0;
  border: 0;
}
.datepicker-wrapper .ui-datepicker .calendar th,
.datepicker-wrapper .ui-datepicker .calendar td {
  text-align: center;
}
.datepicker-wrapper .ui-datepicker .calendar th {
  height: 35px;
  color: #000;
  font: 400 13px gothamL;
}
.datepicker-wrapper .ui-datepicker .calendar th.fRed {
  color: red;
}
.datepicker-wrapper .ui-datepicker .calendar td {
  position: relative;
  height: 38px;
  font: 400 14px gothamL;
}
.datepicker-wrapper .ui-datepicker .calendar td .default {
  color: #bbb;
}
.datepicker-wrapper .ui-datepicker .calendar td a {
  display: block;
  position: relative;
  padding: 11px 0 11px;
  color: #000;
  text-align: center;
}
.datepicker-wrapper .ui-datepicker .calendar td.ui-datepicker-today a em {
  overflow: hidden;
  font: 0/0 Roboto, spoqaL;
}
.datepicker-wrapper .ui-datepicker .calendar td.ui-datepicker-today {
  background: #f0f0f0;
  border-radius: 100%;
}
.datepicker-wrapper .ui-datepicker .calendar td.sel a {
  color: #fff;
  background: #006633 !important;
  border-radius: 100%;
}
.datepicker-wrapper .ui-datepicker .calendar td.fRed a.ui-state-default {
  color: red;
}
.datepicker-wrapper .ui-datepicker .calendar td.fRed.sel a.ui-state-active {
  color: #fff;
}

/* My Page > layerPop */
.layerPop .pointArea {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.layerPop .pointArea h2.titDep2 {
  display: block;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 40px;
}
.fileUpload label[for="uploadBtn"][class="btnSC btnM btnWhite"] {
  margin-top: 20px;
}
.fileUpload {
  position: Realetive;
}
.fileUpload + .alertMessage {
  top: -47px !important;
}
.fileUpload input[type="file"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.fileUpload input.fileName {
  border: 0;
  width: auto;
  padding-left: 24px;
  background: url(../../../images/ko/mo/common/ico_file.png) 0 50% no-repeat;
  background-size: 16px;
}
.fileUpload input.fileName + .btnDel {
  position: absolute;
  right: 0;
  bottom: 17px;
  font-size: 0;
  width: 20px;
  height: 20px;
  background: url(../../../images/ko/mo/common/btn_fileDel.png) 0 50% no-repeat;
  background-size: 20px;
  vertical-align: middle;
}
.fileUpload textarea {
  width: 100%;
  height: 160px;
  padding: 15px;
  border: 1px solid #ccc;
}
.layerPop .pointArea .answerBox {
  margin-top: 24px;
}
.layerPop .printLayer .myContents {
  margin-top: 40px;
}

/* 스페셜 오퍼 */
.frmList.listType03 li {
  flex: 0 1 25%;
  margin: 0;
  padding: 0;
}
.frmList.listType03 li:first-child label {
  border-left: 1px solid #ccc;
}
.frmList.listType03 li label {
  border-width: 1px 1px 1px 0;
  position: relative;
}
.frmList.listType03 li input[type="radio"]:checked + label {
  border-width: 1px 1px 1px 0;
}
.frmList.listType03 li:first-child input[type="radio"]:checked + label {
  border-left: 1px solid #ccc;
}
.frmList.listType03 li input[type="radio"]:checked + label {
  border-color: transparent;
}
.frmList.listType03 li input[type="radio"]:checked + label:after {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  border: 1px solid #000;
}

.toggleList.bgGray .toggleCont {
  background: #f9f9f9;
}
.toggleList.bgGray > li .toggleCont .toggleInner {
  border-top: 0;
}
.toggleList.bgGray .selectWrap select {
  background: transparent;
}

.specialList .selectCont {
  padding: 0 20px;
}
.specialList .selectCont > li {
  margin-bottom: 60px;
}
.specialList .selectCont .noData {
  margin-bottom: 0;
}
.specialList .selectCont + .btnMore {
  margin-top: -60px;
}
.specialList .selectCont a {
  display: block;
}
.specialList .noData {
  padding: 200px 0;
}
.specialList .selectDiv + .selectCont .noData {
  padding: 40px 0;
}
.specialList .frmList + .btnSC {
  margin-top: 25px;
}

.specialList .selectWrap select {
  border: none;
}
.specialList .toggleList .listTit span:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 12px;
  margin: 0 10px;
  background: #ccc;
}

.specialList .txtCont .price {
  margin-top: 5px;
}
.specialList .txtCont .price em {
  display: inline-block;
  vertical-align: -3px;
  font-size: 24px;
  margin-right: 5px;
  font-family: playfair;
  font-weight: 700;
  font-feature-settings: "lnum", "pnum";
}
.specialList .txtCont .keyword {
  display: block;
  margin-bottom: 15px;
}
.specialList .txtCont .keyword .locationTag {
  position: static;
  min-width: 9.166em;
  padding-left: 0;
  padding-right: 0;
  font: 400 12px/1.5 gothamL;
}
.specialList .txtCont .keyword .locationTag.FPBSS,
.specialList .txtCont .keyword .locationTag.FPBSM {
  padding: 5px;
}
.specialList .txtCont .tit {
  font-size: 22px;
  margin: 10px 0 15px;
  font-family: playfair;
}
.specialList .txtCont .tit,
.specialList .txtCont .benefit {
  display: -webkit-box;
  max-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.specialList .txtCont .date {
  margin-top: 20px;
  color: #777;
}
.specialList .txtCont .date span {
  display: block;
  font: 14px/21px spoqaL;
}
.specialList .txtCont .date span .hidden + em {
  margin: 0;
}
.specialList .txtCont .date span em {
  margin-left: 6px;
  font: 14px gothamL;
}

.specialList .selectCont {
  padding: 0;
}
.specialList .selectCont .txtCont {
  padding: 20px 20px 0 20px;
}
.specialList .selectCont .txtCont .frmBm02 {
  right: 15px;
}
.specialList .thum {
  position: relative;
  margin: 0;
}

.frmList + button {
  margin-top: 24px;
}

/* 스페셜 오퍼 detail */
.specialOfferWrap .titArea span:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 12px;
  margin: 0 13px 0 12px;
  vertical-align: middle;
  background: #ccc;
}
.specialOfferWrap .infoArea {
  margin-top: 33px;
}
.specialOfferWrap .toggleList.noBB li:first-child {
  border-top: 0;
}
.specialOfferWrap .toggleList > li .titArea {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.specialOfferWrap .packageCont .titDep2 {
  margin-bottom: 20px;
  font-size: 28px;
  text-align: center;
  font-weight: 600;
}
.specialOfferWrap .packageCont .titDep2 .subTitDep2 {
  font: 500 20px playfair;
  color: #666;
}

.service-items {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.service-items + .service-items {
  margin-top: 35px;
  justify-content: flex-start;
}
.service-items .service-item {
  position: relative;
  width: 33.333%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.service-items .service-item:nth-child(n + 4) {
  justify-self: flex-start;
}
.service-items .service-item::after {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 50%;
  top: 13%;
  right: 0;
  background: #d0d0d0; /*transform:translateY(-50%);*/
}
.service-items .service-item:nth-child(3n)::after,
.service-items .service-item:last-child::after {
  display: none;
}
.service-items .service-item:nth-child(n + 4) {
  margin-top: 35px;
}
.service-item .service-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 33%;
  max-width: 60px;
}
.service-item .service-icon img {
  display: block;
  max-width: 100%;
}
.service-item .service-desc {
  margin-top: 10px;
  font: 600 14px notokrM;
}
.specialOfferWrap .packageCont .cont-desc {
  margin-top: 40px;
  text-align: left;
  color: #666;
}

.specialOfferWrap .serviceCont {
  border-top: 1px solid #000;
  padding-top: 50px;
}
.specialOfferWrap .serviceCont .cont-tit {
  display: block;
  margin: 35px 0 20px;
  font: 400 20px notokr, playfair;
}
.specialOfferWrap .serviceCont .cont-tit:first-child {
  margin-top: 0;
}
.specialOfferWrap .serviceCont .cont-desc {
  color: #666;
}
.specialOfferWrap .packageContImg {
  padding: 50px 0;
}
.specialOfferWrap .titPoint {
  font: 500 30px gothamM;
}
.specialOfferWrap .serviceCont02 {
  background: #f9f9f9;
  margin: 0 -20px;
  padding: 50px 20px;
}
.specialOfferWrap .serviceCont02 .cont-tit {
  display: block;
  margin: 35px 0 20px;
  font: 500 20px playfair;
}
.specialOfferWrap .serviceCont02 .cont-tit:first-child {
  margin-top: 0;
}
.specialOfferWrap .serviceCont02 .cont-desc {
  color: #666;
}
/* 주요혜택 */
.benefitCont li + li {
  margin-top: 80px;
}
.benefitCont .thum {
  margin: 0 -20px;
}
.benefitCont .txtCont .tit {
  display: block;
  font-size: 22px;
  margin-top: 10px;
}
.benefitCont .txtCont .benefit {
  display: block;
  font-size: 15px;
  margin-top: 5px;
}
.benefitCont .txtCont .date {
  font-size: 14px;
  margin-top: 17px;
}
.benefitCont .txtCont .date span {
  display: block;
  color: #777;
  font-family: gothamL;
}
.benefitCont .txtCont .txtGuide {
  margin-top: 5px;
}
.benefitCont .txtCont .btnLine {
  margin-top: 13px;
}
.layerPop .benefitCont li + li {
  margin-top: 0;
}
.layerPop .benefitCont li {
  padding: 30px 0;
  border-top: 1px solid #ccc;
}
.layerPop .benefitCont li:first-child {
  border-color: #000;
}

/* 객실 요금 선택 */
.packageList > li {
  position: relative;
  padding-bottom: 40px;
}
.packageList > li:last-child {
  padding-bottom: 0;
}
.packageList .package-pic {
  position: relative;
  margin: 0 -20px;
}
.packageList .package-content {
  position: relative;
  padding-top: 20px;
}
.packageList .package-head {
  padding-bottom: 12px;
  border-bottom: 1px solid #e5e5e5;
}
.package-tit .package-tit-item {
  font: 400 20px/1 "notokrR";
}
.package-tit .ft-playfair {
  font: 400 20px/1 "playfair";
}
.package-tit + .package-desc {
  margin-top: 12px;
}
.package-desc {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.package-desc dt {
  display: block;
  width: 72px;
  font: 300 15px/1.2 "notokrL";
  color: #000;
}
.package-desc dd {
  display: block;
  width: calc(100% - 72px);
  font: 300 14px/1.2 "gothamL";
  color: #000;
}
.packageList .txtCont .benefit {
  display: block;
  font-size: 15px;
  margin-top: 5px;
}
.packageList .txtCont .date {
  font-size: 14px;
  margin-top: 17px;
}
.packageList .txtCont .date span {
  display: block;
  color: #777;
  font-family: gothamL;
}
.packageList .txtCont .txtGuide {
  margin-top: 5px;
}
.packageList .txtCont .btnLine {
  margin-top: 13px;
}

.packageList .package-body {
  padding-top: 12px;
}
.list-middot > li {
  position: relative;
  padding-left: 10px;
  color: #666;
  font: 300 14px "notokrL";
}
.list-middot > li::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 2px;
  height: 2px;
  background: #666;
  border-radius: 50%;
}
.packageList .price {
  display: flex;
  align-items: center;
  margin-top: 12px;
  font: 400 28px/1 "playfair";
  font-feature-settings: "lnum", "pnum";
}
.packageList .price-unit {
  display: inline-block;
  margin-left: 5px;
  font: 400 16px "gothamL";
}
.msg-reference {
  margin-top: 5px;
  color: #666;
  font: 300 12px "notokrL";
}
.msg-reference::before {
  content: "\203B";
  display: inline-block;
  margin-right: 3px;
  color: #666;
}
.packageList .btn-group {
  display: flex;
  margin-top: 23px;
}
.packageList .btn-group .btnM {
  height: 45px;
  padding: 0;
  line-height: 45px;
  border-color: #a2664e;
}
.packageList .btn-group .btnSC {
  background: #a2664e;
}
/*.packageList .btn-group .btn-detail{width:45px;min-width:45px;height:45px;margin-right:8px;background:transparent url("../../../images/ko/pc/common/ico_detail_23x22.png") center center / 50% no-repeat;border:1px solid #4b4b4b;font:400 17px 'gothamL';color:transparent;text-indent:-9999px;}*/
.packageList .titDep2 {
  margin-top: 40px;
}
.packageList .btn-list-vertical {
  padding-top: 10px;
  border-top: 2px solid #666666;
  margin-top: 25px;
}

.packageThemeWrap {
  padding-bottom: 20px;
}
.packageThemeWrap article:first-child .titDep2 {
  margin-top: 0;
  padding-top: 35px;
}
.packageThemeWrap .packageCont .titDep2,
.packageThemeWrap .titDep2 {
  font-size: 20px;
}
.packageThemeWrap .titPoint {
  font-size: 22px;
}
.packageThemeWrap .packageCont .titDep2 .subTitDep2 {
  font-size: 15px;
}
.packageThemeWrap .packageCont .cont-desc {
  margin-top: 35px;
  font-size: 12px;
}
.packageThemeWrap .serviceCont .cont-tit {
  margin: 30px 0 15px;
  font-size: 15px;
}
.packageThemeWrap .serviceCont .cont-desc {
  font-size: 12px;
}
.packageThemeWrap .serviceCont {
  padding-top: 30px;
}
.packageThemeWrap .serviceCont02 {
  margin: 0 -24px;
  padding: 35px 24px;
}
.packageThemeWrap .serviceCont02 .cont-tit {
  margin: 30px 0 15px;
  font-size: 16px;
}
.packageThemeWrap .serviceCont02 .cont-desc {
  font-size: 12px;
}
.packageThemeWrap .service-item .service-desc {
  font-size: 12px;
}
.packageThemeWrap article:first-child .packageContImg {
  margin-top: 0;
}
.packageThemeWrap .packageContImg {
  margin-left: -24px;
  margin-right: -24px;
  margin-top: 40px;
  padding: 0;
}

/*.priceCont{padding-top:20px}*/
.priceCont > li + li {
  margin-top: 30px;
}
.priceCont .tit {
  font-size: 22px;
  font-weight: 400;
  font-family: gothamL;
  text-transform: uppercase;
}
.priceCont .txt {
  float: left;
  font-size: 16px;
  line-height: 24px;
  font-family: gothamL;
}
.priceCont .price {
  float: right;
  font-size: 14px;
  line-height: 24px;
  font-family: gothamL;
}
.priceCont .price em {
  font-size: 24px;
  vertical-align: -4px;
  margin-right: 5px;
  font-weight: 500;
  font-family: playfair;
  font-feature-settings: "lnum", "pnum";
}
.priceCont dd {
  margin-top: 10px;
}
.priceCont dd:after {
  content: "";
  display: block;
  clear: both;
}
.priceCont .txtGuide {
  border-top: 1px solid #e5e5e5;
  margin-top: 25px;
}
.priceCont .txtGuide li:first-child {
  margin-top: 17px;
}
/* (가상 블릿 없는 목록 추가) */
.priceCont .topLineList {
  border-top: 1px solid #e5e5e5;
  margin-top: 25px;
}
.priceCont .topLineList li {
  margin-top: 10px;
  color: #333;
  font-size: 14px;
}
.priceCont .topLineList li:first-child {
  margin-top: 17px;
}

/* 스페셜오퍼 하단 플로팅 팝업 */
.totalWrapSet {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: -310px;
  z-index: 82;
}
.totalWrapSet .dimmed {
  z-index: inherit;
}
.totalWrap.opType {
  height: 242px;
}
.totalWrap.opType .totalCont {
  padding: 30px 20px 280px;
}
.totalWrap.opType .totalCont .total {
  height: 212px;
  background: #f2f3f5;
  padding: 20px;
}
.totalWrap.opType + .btnArea {
  margin: 0;
}

/* 객실 */
.propertyList > li {
  position: relative;
  margin-bottom: 40px;
}
.propertyList > li:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 320px;
}
.propertyList > li:nth-child(odd):before {
  background: #164438;
}
.propertyList > li:nth-child(even):before {
  background: #e5cfc7;
}
.propertyList > li .swipeWrap.gallery {
  padding-bottom: 0;
}
.propertyList > li .inner {
  padding: 45px 20px 40px;
}
.propertyList > li .swipeWrap.gallery .numPaging {
  position: absolute;
  right: 20px;
  bottom: 20px;
  margin: 0;
  color: #fff;
}
.propertyList > li .swipeWrap.gallery .numPaging span {
  color: #fff;
}
.propertyList > li .swipeWrap.gallery .btnSwipe {
  margin-top: -8px;
}
.propertyList > li.noData:before {
  display: none;
}
.propertyList .txtCont .txt {
  display: block;
  max-height: inherit;
}
.propertyList .gallery {
  position: relative;
}

.hotelService .titDep2 {
  margin: 47px 0 26px 20px;
}
.hotelService .grayBox {
  position: relative;
  background: #f9f9f9;
  padding: 20px;
  margin: 35px -20px -25px;
}
.hotelService .grayBox .txt {
  font-size: 14px;
}
.hotelService .grayBox .btnLine {
  position: absolute;
  right: 20px;
  top: 20px;
}
.hotelService .toggleList > li .titArea .listTit {
  font: 500 20px playfair;
  text-transform: uppercase;
}
.hotelService .toggleInner .infoArea.type02 {
  margin-top: -15px;
}
.hotelService .toggleInner .infoArea.type02 li .txt {
  margin: 8px 0 20px;
  font-family: gothamL, spoqaL;
}
.tabType01.txt-upper li a {
  text-transform: uppercase;
}

.srvList > li + li {
  margin-top: 20px;
}
.srvList > li > * {
  display: block;
  font-size: 14px;
}
.srvList > li strong {
  font-family: gothamB;
}
.srvList > li span {
  margin-top: 3px;
}

.irdCont {
  position: relative;
  padding: 20px;
}
.irdCont strong {
  display: block;
  margin-bottom: 15px;
  font: 500 20px playfair;
  text-transform: uppercase;
}
.irdCont .btnLine {
  position: absolute;
  right: 20px;
  top: 20px;
}

.irdLayer {
  padding-top: 15px;
}
.irdLayer .irdCont {
  padding: 0;
}
.irdLayer .irdCont .titDep3 {
  font: 500 20px playfair;
  margin: 30px 0 0;
}
.irdLayer .irdCont .time {
  font-family: gothamL;
  padding: 10px 0 20px;
}
.irdLayer .irdCont .divTop {
  margin: 0 -20px;
}
.irdLayer .irdCont .inner {
  padding: 0 20px 45px;
}
.irdLayer .irdCont .srvList > li + li {
  margin-top: 25px;
  border-top: 1px solid #e5e5e5;
}
.irdLayer .irdCont .srvList > li > * {
  display: block;
  font-size: 14px;
}
.irdLayer .irdCont .srvList > li strong {
  font-family: spoqaR;
  font-weight: 500;
  font-size: 17px;
  margin: 20px 0 5px;
}
.irdLayer .irdCont .srvList > li span {
  margin-top: 3px;
}
.irdLayer .irdCont .srvList > li span {
  margin-top: 3px;
}
.irdLayer .irdCont .srvList > li .price {
  font-size: 14px;
  font-family: gothamL;
  margin-top: 10px;
}
.irdLayer .irdCont .srvList > li .price em {
  display: inline-block;
  font: 600 16px playfair;
  margin-right: 7px;
  letter-spacing: 1px;
  font-feature-settings: "lnum", "pnum";
}
.specialSrv .titDep2 {
  margin: 48px 0 25px 20px !important;
}
.specialSrv .tit {
  display: block;
  font: 22px/1.33 gothamB;
  margin-bottom: 12px;
}
.specialSrv .txt {
  margin-bottom: 24px;
}
.specialSrv .thum {
  margin: 0 -20px 26px;
}
.specialSrv .infor dt {
  display: block;
  margin-bottom: 4px;
  color: #777;
  font: 400 14px gothamL, spoqaL;
}
.specialSrv .infor dd {
  margin-bottom: 18px;
  font: 400 14px gothamL, spoqaL;
}
.specialSrv .infor + .txtGuide {
  margin: 7px 0 5px;
}

.layerPop .specialSrv h2 + ul {
  margin-bottom: 48px;
}
.layerPop .specialSrv h2 + ul:before {
  content: "";
  display: block;
  margin: 0 20px;
  width: calc(100% - 40px);
  height: 1px;
  background: #000;
}
.layerPop .specialSrv h2 + ul > li:after {
  content: "";
  display: block;
  margin: 0 20px;
  width: calc(100% - 40px);
  height: 1px;
  background: #ccc;
}
.layerPop .detailCont .divTop.specialSrv .inner {
  padding: 34px 20px 31px;
}

.mapImg {
  margin: 0 -20px;
}

/* 미팅룸 */
.meetingTxtCont .txt {
  margin-top: 25px;
}
.meetingTxtCont .btnArea {
  margin-top: 25px;
}
.meetingTxtCont .btnArea a + a {
  margin-top: 8px;
}
.meetingList .infoCont .txtCategory {
  font-family: gothamB;
  font-size: 12px;
  color: #777;
  margin: 3px 0 0 0;
}
.meetingList .infoCont .tit {
  margin-top: 0;
}
.meetingList .infoCont .btnLine {
  margin-top: 25px;
}
.meetingList .btnArea.btns a {
  font-family: gothamB;
  margin-top: 15px;
  border-color: #000;
}

.meetingInfo .titDep2 {
  margin: 50px 0 15px;
}
.meetingInfo .titDep2 + .titDep3 {
  margin-top: 0;
}
.meetingInfo .titDep3 {
  display: block;
  margin: 25px 0 0;
  font-size: 22px;
  font-family: playfair;
}
.meetingInfo .titDep3 span {
  font-family: spoqaL;
}
.meetingDtailWrap .imgCont {
  margin-top: 30px;
}
.meetingDtailWrap .txt {
  margin-top: 15px;
}
.meetingDtailWrap .txt + .infoArea {
  border-top: 1px solid #e5e5e5;
}
.meetingDtailWrap .txt + .infoArea li:first-child {
  margin-top: 25px;
}
.meetingDtailWrap .inner .imgCont {
  margin: 30px -20px 0;
}
.meetingDtailWrap .btnArea.btns a {
  margin-top: 30px;
}
.meetingDtailWrap .btnArea.btns a + a {
  margin-top: 10px;
}
.meetingDtailWrap .promotion {
  margin: -10px 0 -67px;
}
.meetingDtailWrap .promotion .titDep2 {
  border-top: 1px solid #e5e5e5;
  padding-top: 27px;
}
.meetingDtailWrap .promotion .promList > li a {
  padding-top: 76%;
}

.enquiryLayer .divTop {
  margin: 0 -20px;
}
.enquiryLayer .divTop .inner {
  padding: 0 20px 45px;
}
.enquiryLayer .title {
  display: none;
  font-size: 24px;
  font-weight: 400;
}
.enquiryLayer .title + .toggleList.agreeCon .toggleOn {
  border-top: 1px solid #ccc;
}
input.attendees {
  text-align: right;
  padding-right: 24px;
  font-size: 16px;
}
.attValue {
  position: absolute;
  bottom: 17px;
  right: 0;
}

.dateList li {
  position: relative;
  padding-left: 53px;
}
.dateList li + li {
  margin-top: 10px;
}
.dateList li .tit {
  position: absolute;
  top: 16px;
  left: 0;
  font-size: 15px;
  color: #989442;
}
.intInner .selectArea {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.intInner .selectArea > * {
  display: table-cell;
}
.intInner .selectArea .intArea + .hBar {
  padding: 0 12px;
  width: 35px;
  box-sizing: border-box;
}

.tableTypeInp {
  margin-top: 20px;
}
.tableTypeInp li {
  float: left;
  width: 50%;
}
.tableTypeInp li:nth-child(n + 3) {
  margin-top: 35px;
}
.tableTypeInp li:after {
  content: "";
  display: block;
  clear: both;
}
.tableTypeInp li .frm label:before {
  top: 13px;
}
.tableTypeInp li .frm,
.tableTypeInp li label {
  display: block;
}
.tableTypeInp li label {
  padding-bottom: 77px;
  letter-spacing: 2px;
}
.tableTypeInp li label:after {
  content: "";
  display: block;
  position: absolute;
  left: 40px;
  bottom: 0px;
  width: 62px;
  height: 55px;
  background: url(../../../images/ko/mo/BSBM/bg_table.png) no-repeat;
  background-size: 62px 165px;
}
.tableTypeInp li label.classType:after {
  background-position: 0 0;
}
.tableTypeInp li label.roundType:after {
  background-position: 0 -55px;
}
.tableTypeInp li label.theaterType:after {
  background-position: 0 -110px;
}

.enquiryLayer .inner .infoArea li:first-child {
  margin-top: 0;
}
.enquiryLayer .inner .intList > li:first-child {
  margin-top: 32px;
}

/* 통합 멤버십 */
.memberDetail .tit {
  margin: 34px 0 35px;
  font-size: 22px;
  font-family: playfair;
  font-weight: 600;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.memberDetail .txt {
  margin: 30px 0 10px;
  font-size: 15px;
}

.specialNewsList li {
  border-bottom: 1px solid #ccc;
}
.specialNewsList li a {
  display: block;
  padding: 30px 20px;
}
.specialNewsList li .sort {
  display: block;
  font-size: 14px;
}
.specialNewsList li .tit {
  display: block;
  font-size: 17px;
  font-family: gothamL;
  margin-top: 5px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.specialNewsList li .date {
  display: block;
  font-size: 14px;
  color: #777;
  font-family: gothamL;
  margin-top: 10px;
}

.pagination {
  margin: 37px 0;
  text-align: center;
}
.pagination > * {
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  color: #777;
  font-family: gothamL;
}
.pagination .current {
  color: #000;
}
.pagination .first,
.pagination .prev,
.pagination .next,
.pagination .last {
  position: relative;
  vertical-align: top;
}
.pagination .first:before,
.pagination .prev:before,
.pagination .next:before,
.pagination .last:before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -7px 0 0 -7px;
  content: "";
  background: url(../../../images/ko/mo/common/ico_paging.png) no-repeat 0 0;
  width: 14px;
  height: 13px;
  background-size: auto 25px;
}
.pagination .first:before {
  background-position: 0 0;
}
.pagination .prev:before {
  background-position: -35px 0;
}
.pagination .next:before {
  background-position: 2px -13px;
}
.pagination .last:before {
  background-position: -34px -13px;
}

.detailView {
  padding: 0 20px 40px;
}
.detailView .sort {
  display: block;
  font-size: 14px;
  margin: 38px 0 4px;
}
.detailView .tit {
  display: block;
  font-family: gothamB;
  font-size: 22px;
  line-height: 27px;
  margin-bottom: 7px;
}
.detailView .date {
  display: block;
  font-family: gothamL;
  font-size: 14px;
  color: #777;
  margin-bottom: 14px;
}
.detailView .fileCont {
  margin: 0 -20px 40px;
  padding: 20px;
  background: #f9f9f9;
}
.detailView .fileCont a {
  position: relative;
  display: block;
  padding-left: 25px;
  font-size: 14px;
  color: #333;
  background: url(../../../images/ko/mo/common/ico_file.png) 0 50% no-repeat;
  background-size: 16px;
}
.detailView .fileCont a + a {
  margin-top: 13px;
}
.detailView .fileCont a:before {
  content: "";
  display: block;
  position: absolute;
}
.detailView .txtBox > * {
  font: 400 15px spoqaL, gothamL, playfair !important;
}
.detailView .txtBox .thum {
  margin-top: 30px;
}
.shortList li {
  display: table;
  width: 100%;
  table-layout: fixed;
  padding: 0 20px;
  border-bottom: 1px solid #ccc;
}
.shortList li span {
  display: table-cell;
  width: 60px;
  font-size: 12px;
  line-height: 60px;
  color: #333;
  vertical-align: middle;
}
.shortList li a {
  display: table-cell;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  line-height: 60px;
}

.toggleOn > a {
  display: block;
}

/* 통합 멤버십(멤버십안내) */
.clubJosunView {
  display: block;
  width: 100%;
  height: 345px;
  padding: 20px;
  background: #1e1e1e;
}
.clubJosunView > * {
  display: flex;
  color: #fff;
  text-align: center;
}
.clubJosunView .tit {
  height: 43.5%;
  flex-flow: column-reverse;
  padding-bottom: 6px;
  font: 400 30px playfair;
}
.clubJosunView .txt {
  height: 56.5%;
  flex-flow: column;
}
.membershipFree {
  position: relative;
  display: block;
  padding: 0 20px;
}
.membershipFree .titDep2 {
  font-family: gothamL;
  text-transform: uppercase;
  margin: 50px 0 15px;
}
.membershipFree .txt {
  margin-bottom: 20px;
}
.membershipFree .titDep3 {
  font-family: gothamL;
  text-transform: uppercase;
  font-family: playfair;
}
.membershipFree .side {
  top: 5px;
}
.membershipFree .listDep1 {
  margin-bottom: 22px;
  font-family: gothamL, spoqaL;
}
.membershipFree .listDep1 .info {
  display: block;
  color: #333;
  font-size: 14px;
}
.membershipFree .listDep1 abbr {
  font-family: gothamL;
}
.membershipFree .btnArea {
  margin: 34px 0 40px;
}
.membershipFree .btnArea > .btnWhite {
  border-color: #000;
}
.membershipBox {
  display: table;
  table-layout: fixed;
  width: calc(100% + 24px);
  margin: 0 -12px;
  border-spacing: 12px;
}
.membershipCard {
  display: table-cell;
  padding: 40px;
  background-color: #f8f8f8;
}
.membershipCard > * {
  display: block;
}
.membershipCard img {
  margin-bottom: 30px;
}
.membershipCard .tit {
  margin-bottom: 12px;
  font: 500 20px gothamL, spoqaR;
}
.membershipCard .txt {
  margin-bottom: 24px;
  font: 500 18px gothamL, spoqaR;
}
.membershipCard .txt em {
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
  font: 600 28px playfair, gothamL, spoqaL;
  letter-spacing: 0.075em;
}
.membershipCard .txt i {
  margin-left: 4px;
  color: #888;
  font: 400 16px spoqaL;
  letter-spacing: -0.01em;
  font-style: normal;
}
.membershipCard dl {
  display: block;
  margin-top: 32px;
}
.membershipCard dt {
  margin-bottom: 16px;
  color: #989442;
  font-size: 14px;
  font-family: gothamM, spoqaR;
}
.membershipCard dd {
  position: relative;
  padding-left: 10px;
  margin-bottom: 6px;
  color: #666;
  font: 400 16px gothamL, spoqaL;
  letter-spacing: -0.01em;
}
.membershipCard dd::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 11px;
  width: 5px;
  height: 3px;
  margin-right: 5px;
  background-color: #000;
  border-radius: 50%;
}
.membershipFree .prevBfBtn {
  font: 400 15px spoqaR;
  color: #000;
  height: auto;
  line-height: inherit;
  padding: 13px 0;
  margin-bottom: 30px;
  border-color: #cdcdcd;
}

/* 통합 멤버십(멤버십 상세) */
.myMembership {
  position: relative;
}
.myMembership h2.titDep2 {
  display: inline-block;
  margin: 45px 0 15px;
  padding: 0 20px;
  font-weight: 500;
}
.myMembership .basicInfor {
  position: relative;
  padding: 20px 40px 24px 20px;
}
.myMembership .benetfitTit .tit {
  font: 400 16px spoqaL;
}
.myMembership .benetfitTit .opValue {
  position: absolute;
  top: 20px;
  right: 60px;
  color: #989442;
  font: 400 16px gothamL, spoqaL;
}
.myMembership .benetfitPrev {
  font: 400 18px gothamL, spoqaL;
  letter-spacing: -0.01em;
}
.myMembership .benetfitPrev li {
  margin-bottom: 4px;
}
.benetfitTit + .benetfitPrev {
  padding-top: 25px;
  margin-top: 25px;
  border-top: 1px solid #e5e5e5;
}
.benetfitCardCont {
  padding: 0 20px 40px;
}
.cardList.boxType > li .txtGuide li {
  color: #000;
  font-size: 15px;
}
.cardList.boxType > li a {
  border: 1px solid #e5e5e5;
  margin: 18px 0;
}
.cardList.boxType > li:last-child a {
  margin-bottom: 0;
}

.benetfitViewWrap .titDep3 + .titDep4 {
  margin-top: 0;
}
.benetfitViewWrap .titDep4 {
  display: block;
  font-size: 17px;
  font-weight: 500;
  margin: 32px 0 15px;
}
.benetfitViewWrap .titDep4 + .subTxt {
  font-size: 14px;
  color: #333;
}
.benetfitViewWrap .titDep5 {
  font-size: 14px;
  font-family: spoqaL;
  font-weight: 500;
  margin: 10px 0;
}
.benetfitViewWrap .benetfitViewBox {
  padding-bottom: 30px;
}
.benetfitViewWrap .benetfitViewBox .subTxt,
.benetfitViewWrap .benetfitViewBox .listDep1 {
  margin-bottom: 15px;
}
.benetfitViewWrap .benetfitViewBox .titDep5 {
  margin-top: 20px;
}
.benetfitViewWrap .agreeCon .toggleOn {
  border-top: 1px solid #ccc;
}

.benetfitViewWrap table + .listDep1 {
  margin-top: 20px;
}

.txtGuide .tit,
.txtGuide .stxt {
  display: block;
  font-size: 14px;
  color: #333;
}

.intBox {
  padding: 16px 0 0 0;
}
.intBox:after {
  content: "";
  display: block;
  clear: both;
}
.intBox .frm {
  width: 50%;
  float: left;
}
.membership .intBox {
  height: 60px;
  padding: 16px 0 17px 0;
}
.intList > li .phoneInp .intArea {
  display: table-cell;
  width: 33%;
}
.intList > li .phoneInp .dash {
  display: table-cell;
  padding: 0 17px;
}

/*.bottomFloating{display:none;position:fixed;left:0;right:0;bottom:-310px;z-index:82}*/
.bottomFloating {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 82;
}
.bottomFloating .membershipInfoArea {
  height: 110px;
}
.bottomFloating .membershipInfo {
  position: relative;
  padding: 25px 20px 87px;
  background-color: #fff;
  border-top: 1px solid #000;
}
.bottomFloating .membershipInfo .tit {
  margin-bottom: 7px;
  display: block;
  font: 500 14px spoqaR;
}
.bottomFloating .membershipInfo .txt {
  display: block;
  color: #666;
  font: 400 13px spoqaR;
}
.bottomFloating .membershipInfo .btnLine {
  position: absolute;
  top: 27px;
  right: 20px;
  z-index: 101;
}

.layerInner .benetfitViewBox + .benetfitViewBox {
  margin-top: -30px;
} /* 기타특전 */
.layerInner .listDep1 + h3.titDep3,
.layerInner .frmInfo + h3.titDep3 {
  margin-top: 30px;
}
.layerInner .listDep1:last-child {
  margin-bottom: 30px;
}
.layerInner .intInner + .txtGuide {
  margin-top: 20px;
}
.layerInner .scrollWrap .listDep1 li div.info {
  display: block;
  margin: 9px 0;
  font-size: 14px;
}
.layerInner .scrollWrap .listDep1 li div strong {
  display: block;
  margin-bottom: 2px;
}
.layerCont .membershipConsult {
  position: relative;
  padding: 68px 0;
}
.layerCont .membershipConsult .toggleList > li .toggleTit {
  position: relative;
  padding: 20px;
}
.layerCont .membershipConsult .toggleList > li .scrollWrap {
  height: 250px;
  margin-top: 0;
  padding: 25px 20px; /*margin:0 -20px;*/
  border-top: 1px solid #e5e5e5;
  overflow-y: scroll;
}
.layerCont .membershipConsult .frmInfo {
  padding: 0 20px 40px;
}
.layerCont .membershipConsult .frm {
  z-index: 11;
}
.layerCont .inner > .frmInfo {
  padding: 0 20px 0;
}

.topArea.cInfo {
  width: auto;
  height: auto;
  padding: 52px 20px 56px;
  text-align: center;
}
.topArea.cInfo .titDep2 {
  font-weight: 500;
}
.topArea.cInfo .titDep2 + .pageGuide {
  margin-top: 10px;
}

/* 멤버십 구매 완료 250325 */
.membershipDoneArea .f24 {
  font-weight: 600;
}
.membershipDoneArea .pageGuide {
  margin-top: 50px;
}

/* Our business */
.infoArea .sTit:first-child {
  margin-top: 0;
}
.infoArea .sTit {
  display: block;
  margin-top: 5px;
  font-weight: 600;
}
.txtBoxWrap .swipeCont > li a,
.txtBoxWrap .swipeCont > li div {
  padding: 30px 25px 40px;
  border: 1px solid #e5e5e5;
  height: 100%;
}
.selNotiBox .tit {
  display: block;
  font-size: 22px;
  font-weight: 500;
  margin: 50px 0 20px;
}
.selNotiBox .titDep2 + .tit,
.selNotiBox .tit:first-child {
  margin-top: 0;
}
.bannerTxtCont .txt {
  font-family: gothamL;
  margin-top: 22px;
}
.bannerTxtCont .txt + .btnLine {
  margin-top: 10px;
}
.tabCont .swipeWrap.gallery {
  margin: 25px -20px 0;
}
.selNotiBox .listDep1 {
  font-family: gothamL, spoqaL;
}

/* 다이닝(공통) */
.container.type02 {
  padding-bottom: 68px;
}
.container.type02 .totalWrap.type02 {
  height: 113px;
}
.dining .inner .titDep2 {
  margin: 51px 0 6px;
}
.dining .promotion.type02 .titDep2 {
  margin: 12px 0 23px;
}
.dining .propertyList > li {
  margin-bottom: 40px;
}
.txtLine {
  padding: 35px 0 34px;
  border-bottom: 1px solid #e5e5e5;
}
.infoArea + .txtGuide {
  margin-top: 18px;
}
/* 다이닝 추가(.category.type02) */
.propertyList .infoCont .btnLine {
  margin-top: 25px;
}
.propertyList .infoCont .category.type02 + .tit {
  margin-top: 3px;
}
.propertyList .infoCont .category.type02 {
  padding: 0;
  color: #777;
  font-weight: 600;
  line-height: inherit;
  background: transparent;
  text-transform: uppercase;
}
.topViewCont .txtCont .category.type02 {
  margin-top: 0;
  line-height: 1;
  color: #fff;
  border: 0;
  text-transform: uppercase;
}
.topViewCont .txtCont .category.type02 + .tit {
  margin-top: 0;
}
.topViewCont .txtCont .category.type02 + .tit + .txt {
  margin-top: 8px;
}

/* 메뉴판(layer) 공통 */
.opCont {
  display: none;
}
.menuPanInner {
  padding: 0 0 0 !important;
  overflow-y: hidden !important;
}
.selOp {
  position: fixed;
  left: 0;
  top: 68px;
  right: 0;
  padding: 13px 20px 24px;
  background: #fff;
  z-index: 20;
}
.selOp::after {
  content: "";
  position: fixed;
  display: block;
  width: 100%;
  top: 159px;
  left: 0;
  height: 9px;
  border-top: 1px solid #e1e1e1;
  background: #edeef0;
}
.menuPanArea {
  position: relative;
  padding: 160px 0 68px;
  height: 100vh;
  overflow-y: auto;
}
.menuPanArea .opCont {
  padding: 25px 20px 68px;
}
.menuPanView .menuPan {
  margin-bottom: -1px;
}
.menuPanView .menuPan + .menuPan {
  padding-top: 35px;
}
.menuPanView .menuPan.type02 {
  padding-bottom: 20px;
  border-bottom: 1px solid #e8e8e8;
}
.menuPanView .notiBox {
  /*margin:0 -20px;*/
  padding: 20px;
  font: 400 14px/1.5 gothamL, spoqaL;
  background: #f9f9f9;
}
/*.menuPanView .notiBox:last-of-type{margin-bottom:-25px}*/
.menuPanView .notiBox + .menuPan {
  margin-top: 25px;
}
.menuPan .tit {
  display: block;
  color: #989442;
  font: 500 17px/1.5 playfair, gothamL, spoqaL;
  text-align: left;
}
.menuPan .txt {
  padding: 0.5em 0;
  font: 400 14px/1.62 gothamL, spoqaL;
}
.menuPan .bill {
  font: 600 14px/1.5 gothamL, spoqaL;
}
.menuPan .txtGuide {
  margin: 20px 0 35px 0;
}
.menuPan .txtGuide span[lang] {
  display: block;
}
.menuPan.type01 .menuList {
  display: block;
}
.menuPan.type01 .menuList li {
  border-bottom: 1px solid #e8e8e8;
}
.menuPan.type01 .menuList .txt {
  display: block;
  padding-top: 1em;
}
.menuPan.type01 .menuList li:first-child .txt {
  padding-top: 0.5em;
}
.menuPan.type01 .menuList .txt em {
  display: block;
}

.menuPan.type01 .menuList .txt .txtGuide {
  display: block;
  margin: 0.6em 0 0.4em;
  font-size: 13px;
  color: #333;
  text-align: left;
}
.menuPan.type01 .menuList .bill {
  display: block;
  padding: 0 0 1.2em;
}
.menuPan.type02 .menuList {
  display: block;
}
.menuPan.type02 .menuList .txt {
  display: block;
}
.menuPan.type02 .menuList .txt span[lang] {
  display: block;
}
.menuPan.type02 .bill {
  display: block;
}
.menuPan.type03 .tit span + span::before {
  content: "/";
  padding: 0 0.2em;
}
.menuPan.type03 .tit span[lang="ko"] {
  display: block;
}
.menuPan.type03 .menuList {
  display: block;
}
.menuPan.type03 .menuList .txt {
  display: block;
}
.menuPan.type03 .menuList .txt span[lang] {
  display: block;
}
.menuPan.type03 .menuList .txt span[lang]::after {
  content: "/";
  padding: 0 0.2em;
}
.menuPan.type03 .menuList .txt span[lang]:last-child::after {
  display: none;
}
.menuPan.type03 .bill {
  display: block;
}

/* contInfo(공통) */
.contInfo {
  margin-top: 15px;
}
.contInfo + .contInfo {
  margin-top: 40px;
}
.contInfo:after {
  content: "";
  display: block;
  clear: both;
}
.contInfo .title {
  display: block;
  margin-bottom: 15px;
  font: 600 15px/1.5 gothamL, spoqaL;
}
.contInfo ul {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.contInfo li {
  display: table-row;
}
.contInfo li .tit,
.contInfo li .txt {
  display: table-cell;
  padding: 0.4em 0;
  font: 400 14.8px/1.5 gothamL, spoqaL;
}
.tabCont .contInfo .title {
  margin-top: 30px;
}
/* contInfo.type01(운영시간) */
.contInfo.type01 ul {
  padding: 0.6em 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #ccc;
}

/* 부대시설 */
.tabCont .infoArea {
  margin-top: 33px;
}
.bnTxtCont .titDep2 + .tit {
  margin-top: 25px;
}
.bnTxtCont .tit {
  display: block;
  margin: 30px 0 15px;
  font-family: gothamL;
  font-size: 22px;
  font-weight: 500;
}
.bnTxtCont .txt {
  font-size: 15px;
  font-family: gothamL, spoqaL;
}

.bannerTxtCont.type02 {
  padding: 0 20px 20px;
}
.bannerTxtCont .tit {
  display: block;
  margin: 20px 0 5px;
  font-family: gothamL;
  font-size: 14px;
}
.bannerTxtCont.type02 .txt {
  font-size: 14px;
}

.bnInfoCont h2 {
  margin: 30px 0 25px;
}
.bnInfoCont .infoArea02 {
  margin-top: -20px;
}
.bnInfoCont .toggleInner dl:first-child dt {
  margin-top: 0;
}
.bnInfoCont .benetfitView dt {
  margin: 23px 0 5px;
  color: #333;
  font-size: 14px;
  font-family: gothamL;
  font-weight: 600;
}
.bnInfoCont .benetfitView dd {
  font-size: 14px;
  font-family: gothamL;
  color: #333;
}
.bnInfoCont .benetfitView dd .listDep1 {
  color: #333;
  margin-top: 10px;
}
.bnInfoCont .benetfitView dd .listDep1 li {
  font-size: 14px;
}
.bnInfoCont .hTxt {
  font-size: 14px;
  color: #333;
}
.bnInfoCont table {
  margin-top: 10px;
}
.bnInfoCont table + .txtGuide {
  margin-top: 15px;
}

.benetfitView .bankList {
  margin-top: 23px;
}
.bankList {
  padding: 23px 20px;
  background: #f9f9f9;
}
.bankList > li {
  position: relative;
}
.bankList > li + li {
  margin-top: 15px;
}
.bankList .tit {
  position: absolute;
  top: 0;
  left: 0;
  color: #777;
}
.bankList .txt {
  padding-left: 82px;
  color: #333;
}
.bankList + .txtGuide {
  margin-top: 15px;
}

.tblH.type02 .cGray {
  color: #333;
}
.tblH.type02 thead tr th:first-child {
  border-left: none;
}
.tblH.type02 thead tr th {
  border-bottom: none;
  background: #f9f9f9;
  border-left: 1px solid #e5e5e5;
  color: #555;
}
.tblH.type02 tbody tr td {
  border-left: 1px solid #e5e5e5;
}
.tblH.type02 tbody tr:last-child th,
.tblH.type02 tbody tr:last-child td {
  border-bottom: 1px solid #e5e5e5;
}
.tblH.type02 tbody tr td {
  border-bottom: none;
}
.tblH.type02 tbody th {
  text-align: center;
}

.membershipBenetfit.type02 .thum:before,
.membershipBenetfit.type02 .thum:after {
  display: none;
}
.membershipBenetfit.type02 .bnOutlineList {
  font-size: 17px;
  color: #eee;
  margin: 35px 30px 64px;
}
.membershipBenetfit.type02 .bnOutlineList li {
  position: relative;
  padding-left: 25px;
}
.membershipBenetfit.type02 .bnOutlineList li + li {
  margin-top: 30px;
}
.membershipBenetfit.type02 .bnOutlineList .num {
  position: absolute;
  top: 0;
  left: 0;
}
.membershipBenetfit.type02 .bnOutlineList .tit {
  display: block;
}
.membershipBenetfit.type02 .bnOutlineList .sTxt {
  display: block;
  font-size: 13px;
  margin-top: 5px;
}

/* About(공통) */
i.dot {
  display: inline-flex;
  width: 3px;
  height: 3px;
  margin: 0 2px;
  background: #000;
  border-radius: 50%;
}
.about .inner .btnArea {
  margin: 25px 0 0;
}
.grayBox {
  background: #f9f9f9;
  padding: 20px;
}
/* About(.propertyIntro.type02 소개) */
.propertyIntro.type02 {
  padding: 0 20px 50px;
}
.propertyIntro.type02 .tit {
  display: block;
  margin: 35px 0 16px;
  font: 500 22px/1.35 gothamL, spoqaR;
}
.propertyIntro.type02 .txt {
  margin-top: 25px;
  display: table;
  table-layout: auto;
  width: 100%;
  font: 400 15px/1.5 gothamL, spoqaL;
  word-break: break-all;
}
.propertyIntro.type02 .txt dl {
  display: table-cell;
  position: relative;
}
.propertyIntro.type02 .txt dt {
  margin-bottom: 4px;
  color: #666;
  font: 400 13px/1.5 notokr;
}
.propertyIntro.type02 .txt dd {
  margin-right: 35px;
  font: 600 22px/1.5 playfair, gothamL, spoqaL;
  font-feature-settings: "lnum", "pnum";
}
.propertyIntro.type02 .txt span {
  display: block;
}
.propertyIntro.type02 .txt span.unit {
  display: inline;
}
/* About(.businessRoomList 소개) */
.businessRoomList {
  margin-bottom: 40px;
  display: block;
}
.businessRoomList.type02 > li {
  margin-bottom: 45px;
}
.businessRoomList.type02 > li:first-child {
  margin-bottom: 60px;
}
.businessRoomList.type02 > li:nth-child(odd) .info > .thum {
  padding-right: 20px;
}
.businessRoomList.type02 > li:nth-child(even) .info > .thum {
  padding-left: 20px;
}
.businessRoomList.type02 .thum {
  display: block;
}
.businessRoomList.type02 .tit {
  display: block;
  padding: 30px 15px 0 20px;
  font: 500 22px gothamM, spoqaR;
}
.businessRoomList.type02 .txt {
  display: block;
  padding: 20px 15px 0 20px;
}
.businessRoomList.type02 .txt > p + p {
  margin-top: 10px;
}
/* About(.businessRoomList 소개/ci) */
.businessRoomList.ci {
  margin: 0 20px 40px;
}
.businessRoomList.ci li + li {
  margin-top: 10px;
}
.businessRoomList.ci li > .info {
  display: table;
  width: 100%;
  height: 120px;
}
.businessRoomList.ci .ciImg {
  display: table-cell;
  background: #f9f9f9;
  text-align: center;
  vertical-align: middle;
}
.businessRoomList.ci .ciImg img {
  vertical-align: middle;
}
.businessRoomList.ci .ciImg.vType {
  padding: 0 30.3%;
}
.businessRoomList.ci .ciImg.hType {
  padding: 0 16.4%;
}
.ciTit {
  padding: 30px 20px 20px;
  font: 500 18px gothamM, spoqaR;
  text-transform: uppercase;
}
/* About(연혁) */
.historyList {
  margin-top: 35px;
  padding-bottom: 60px;
}
.historyList li {
  position: relative;
  padding-left: 20px;
  padding-bottom: 50px;
}
.historyList li:last-child {
  padding-bottom: 0;
}
.historyList li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 22px;
  width: 1px;
  height: 100%;
  background: #ccc;
}
.historyList dl {
  display: block;
  position: relative;
  padding: 0 20px;
}
.historyList dt {
  position: relative;
  padding-bottom: 10px;
  font: 600 15px/1.5 gothamL, spoqaL;
}
.historyList dt::before {
  content: "";
  position: absolute;
  top: 8px;
  left: -20px;
  width: 5px;
  height: 5px;
  background: #000;
  border-radius: 50%;
  z-index: 2;
}
.historyList li:last-child dl dt:last-of-type,
.historyList li:last-child dl dd:last-of-type {
  position: relative;
}
.historyList li:last-child dl dt:last-of-type::after {
  content: "";
  position: absolute;
  top: 8px;
  left: -18px;
  width: 1px;
  height: 100%;
  background: #fff;
}
.historyList li:last-child dl dd::after {
  content: "";
  position: absolute;
  top: 8px;
  left: 2px;
  width: 1px;
  height: 100%;
  background: #fff;
}
.historyList li:last-child dl dd:last-of-type::after {
  left: -18px;
}
.historyList dd + dt {
  margin-top: 30px;
}
.historyList dd > ul li {
  margin-bottom: 0;
  padding-bottom: 0;
  border: 0;
}
.historyList dd + dd {
  margin-top: 25px;
}
.historyList dd .txt > i {
  display: block;
  color: #333;
  font-style: normal;
  font-size: 14px;
}

.tabContScroll .tabToggle {
  background: #fff;
  z-index: 3;
  margin-top: 0;
  padding-top: 6px;
}
.tabContScroll .tabInner {
  overflow-y: auto;
}

/* About(공고) */
.about .inner > .selectWrap {
  margin: 13px 0 -8px 0;
}
.about .inner + .inner > .titDep2 {
  margin-top: 0px;
}
/* About(오시는길) */
.mapTit {
  padding: 36px 20px 35px;
}
.mapTit .txt > span {
  display: block;
}
.locationInfo {
  margin-bottom: 22px;
}
.locationInfo > * {
  font-size: 15px;
}
.locationInfo .tit {
  display: block;
  margin-bottom: 12px;
  font-weight: 600;
}
.locationInfo .txt {
  font-family: gothamL, spoqaL;
}
.locationInfo .txt + .tit {
  margin-top: 25px;
}
.mapArea {
  z-index: 1;
}

/* About(주요활동) */
.traceArea {
  position: relative;
}
.traceArea.bgGray {
  background: #f9f9f9;
}
.traceTit {
  padding: 35px 20px 0;
}
.traceTit .tit {
  display: block;
  margin-bottom: 10px;
  font-size: 22px;
  font-family: gothamM, spoqaR;
}
.traceList {
  padding: 20px 0;
}
.traceList li {
  margin-bottom: 20px;
  padding: 25px 16px;
  background: #fff;
  text-align: center;
}
.traceList li dt {
  display: block;
  margin-bottom: 12px;
  font: 500 17px gothamB, spoqaR;
  text-transform: uppercase;
}
.traceList li dd {
  text-transform: uppercase;
}
.activities > * {
  text-align: center;
}
/* About(Social) + About(주요활동) */
.cardList.social {
  margin-top: 30px;
  padding: 0 20px 40px;
}
.cardList.social li + li {
  margin-top: 12px;
}
.cardList.social li .cardInner {
  display: block;
  position: relative;
  padding: 26px 20px;
  border: 1px solid #e5e5e5;
}
.cardList.social li .cardInner::after {
  display: none;
}
.cardList.social .place {
  display: block;
  margin-bottom: 30px;
  font-weight: 500;
  font-size: 22px;
  text-align: center;
}
.cardList.social .link {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.cardList.social .link span {
  position: relative;
  display: table-cell;
  padding: 0 15px;
  background-repeat: no-repeat;
  background-position: 0 50%;
  text-align: center;
}
.cardList.social .link span + span::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 1px;
  height: 16px;
  background: #ccc;
}
.cardList.social .link a {
  display: block;
}
.cardList.social .link a::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 15px;
  margin-bottom: 2px;
  margin-right: 5px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  vertical-align: middle;
}
.cardList.social .link a.youtube::before {
  background-image: url(../../../images/ko/pc/HUAB/ico_sns-youtube.png);
}
.cardList.social .link a.facebook::before {
  background-image: url(../../../images/ko/pc/HUAB/ico_sns-facebook.png);
}
.cardList.social .link a.instagram::before {
  background-image: url(../../../images/ko/pc/HUAB/ico_sns-instagram.png);
}
.cardList.social .link a.kakao::before {
  background-image: url(../../../images/ko/pc/HUAB/ico_sns-kakao.png);
}
.cardList.social li .cardInner.social-boxty01 {
  padding: 26px 0;
}
.cardList.social .social-boxty01 .link {
  text-align: center;
}
.cardList.social .social-boxty01 .link span {
  padding: 0 10px;
  display: inline-block;
}
/* About(채용) */
.recruitFlow {
  display: flex;
  justify-content: space-between;
}
.recruitFlow li {
  flex: 1;
  width: 30vw;
  height: 25vw;
  padding: 6.5vw 0;
  text-align: center;
  position: relative;
}
.recruitFlow li + li {
  margin: 0 0 0 8%;
}
.recruitFlow li + li::before {
  content: "";
  position: absolute;
  left: -23px;
  top: 50%;
  width: 12px;
  height: 12px;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  transform: translateY(-50%) rotate(135deg);
}
.recruitFlow li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 100%;
  text-align: center;
  background: #f9f9f9;
  border-radius: 50% 50%;
  z-index: -1;
}

/* 티저 객실 상세보기 레이어팝업 */
.layerCont .detailCont {
  position: relative;
  padding: 68px 0;
}
.layerCont .detailCont .topCont {
  padding: 0 20px 40px;
  z-index: 89;
}
.layerCont .detailCont .title {
  margin: 5px 0 16px;
  font: 400 20px/1.1 playfair;
}
.layerCont .detailCont .txtCont {
  padding: 0;
}
.layerCont .detailCont .txtCont p {
  font-size: 15px;
}
.layerCont .detailCont .imgCont {
  margin-top: 26px;
}
.layerCont .detailCont .infoArea {
  margin-top: 25px;
}
.layerCont .detailCont .innerCont {
  padding: 0 20px 36px;
}
.layerCont .detailCont .innerCont .titDep2 {
  margin: 55px 0 15px;
  font-weight: 500;
  line-height: 1.1;
  font: 400 20px/1.1 spoqaL, playfair, gothamL;
}
.layerCont .detailCont .tabType01 {
  margin: 0 -20px;
}
.layerCont .detailCont .tabType01 li a {
  text-transform: uppercase;
}
.layerCont .detailCont .divTop .inner {
  padding: 32px 20px 40px !important;
}

/* 객실 상세보기(L) 20200803(new) */
.layerCont.roomViewLayer .detailCont .scrollWrap > .imgCont {
  margin-top: -25px;
}
.layerCont.roomViewLayer .layerInner > .titDep2 {
  font: 24px/68px playfair;
}

/* 티저(비회원 예약확인) */
.reservation .topArea {
  padding: 55px 20px 35px;
}
.reservation .loginFrm + .btnArea {
  margin-top: 20px;
}

/* 객실혜택(채용) */
.cardList.roomBenefit {
  padding-top: 10px;
}
.cardList.roomBenefit li .cardInner {
  padding: 0;
  border: 0;
}
.cardList.roomBenefit li .cardInner::after {
  display: none;
}
.cardList.roomBenefit .cardInner .tit {
  margin: 3px 0 6px;
  font-size: 17px;
  text-transform: uppercase;
}
.cardList.roomBenefit .cardInner .txt {
  font-size: 15px;
  text-transform: uppercase;
}
.cardList.roomBenefit li + li .cardInner::before {
  content: "";
  display: block;
  margin-top: 19px;
  padding-top: 17px;
  border-top: 1px solid #ccc;
}

/* 호텔소개 */
.propertyIntro.type03 {
  padding: 60px 20px 40px;
  background: #f9f9f9;
}
.propertyIntro.type03 .imgCont {
  margin-right: -20px;
}
.propertyIntro.type03 .title {
  font-size: 15px;
  margin: 27px 0 0 0;
  font-family: spoqaL;
  font-weight: 600;
}
.propertyIntro.type03 .txt {
  font-size: 15px;
  margin: 15px 0 0 0;
  font-family: spoqaL;
}
.propertyIntro.type03 .txt + .btnArea {
  margin-top: 30px;
}
.propertyIntro.type03 .tit {
  display: block;
  margin: 0 0 32px;
  font: 500 22px/1.35 gothamL, spoqaL;
}
.propertyIntro.type03 .btnTrans {
  background: transparent;
  color: #000;
  border-color: #000;
}

.aboutTour .propertyIntro.type02 {
  padding-bottom: 0px;
}
.aboutTour .propertyIntro.type02 .tit {
  margin: 55px 0 30px;
}

.aboutTour .swipeWrap .swipeSlide > div {
  display: flex;
  align-items: center;
}
.aboutTour .swipeWrap .swipeSlide > div + div {
  margin-top: 36px;
}
.aboutTour .swipeWrap .swipeSlide .txtInfo {
  width: 50%;
  padding: 0 20px;
}
.aboutTour .swipeWrap .swipeSlide .txtInfo .tit {
  display: block;
  margin-bottom: 10px;
}
.aboutTour .swipeWrap .swipeSlide .thum {
  width: 50%;
}
.aboutTour .swipeWrap .swipeSlide .type01 {
  flex-flow: row-reverse;
}
.aboutTour .swipeWrap .swipeSlide .type02 .txtInfo {
  width: 70%;
}
.aboutTour .swipeWrap .swipeSlide .type02 .thum {
  width: 30%;
}

/* 호텔소개 - 갤러리 */
.aboutGallery li:first-child {
  margin-top: 32px;
}
.aboutGallery li {
  margin-top: 12px;
}
.aboutGallery .thum {
  position: relative;
}
.aboutGallery .thum .gName {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  word-break: break-all;
  text-align: left;
  padding: 15px 20px;
  font-size: 22px;
  color: #fff;
  line-height: 28px;
  font-family: gothamL;
  text-transform: uppercase;
}

/* Brand(공통) */
.brandIntro {
  margin: 0 auto;
}
.brandIntro .tit {
  display: block;
  padding: 35px 0 12px;
  font-weight: 600;
}
.brand .txt {
  word-break: break-all;
}

.brandSlogan {
  position: relative;
  margin: 22px 20px;
}
.brandSlogan > * {
  color: #ba998c;
}
.brandSlogan .tit {
  display: block;
  font: 500 36px/1.45 playfair;
  text-transform: capitalize;
}
.brandSlogan .tit .fRight {
  float: right;
}

.brand .brandSlogan .tit > p {
  position: relative;
  display: block;
  margin: 0 -23px;
  overflow: hidden;
}
.brand .brandSlogan .tit > p > span {
  display: inline-block;
  background: #fff;
  padding: 0 23px;
}
.brand .brandSlogan .tit > p:after {
  content: "";
  position: absolute;
  top: 29px;
  left: 20px;
  right: 0;
  width: calc(100% - 45px);
  height: 1px;
  background: #ba998c;
  z-index: -1;
}
.brand .brandSlogan .tit > p.noLine:after {
  display: none;
}
@media (max-width: 320px) {
  .brandSlogan .tit {
    letter-spacing: -3px;
  }
  .brand .brandSlogan .tit > p {
    margin: 0 -15px;
  }
  .brand .brandSlogan .tit > p > span {
    padding: 0 15px;
  }

  .app .btnLine {
    font-size: 0.9em;
  }
  .app .tabType01 li a {
    font-size: 0.9em;
  }
}
@media (min-width: 321px) and (max-width: 360px) {
  .brandSlogan .tit {
    letter-spacing: -1px;
  }
  .brand .brandSlogan .tit > p {
    margin: 0 -20px;
  }
  .brand .brandSlogan .tit > p > span {
    padding: 0 20px;
  }
}

.brandSlogan .tit::after {
  content: "";
  display: block;
  clear: both;
}
.brandSlogan .txt {
  display: block;
  padding: 16px 0 14px;
}
.brandStory {
  position: relative;
  margin-bottom: 45px;
  background: #296658;
}
.brandStory .thum {
  position: relative;
  display: block;
  margin-left: 20px;
  z-index: 1;
}
.brandStory .thum:before {
  content: "";
  display: block;
  position: absolute;
  left: -20px;
  right: 0;
  top: 0;
  height: 80%;
  background: #fff;
  z-index: -1;
}
.brandStory .tit,
.brandStory .txt {
  display: block;
  color: #fff;
}
.brandStory .tit {
  padding: 1em 0;
  font: 500 24px gothamM;
}
/* Brand(SIGNATURE) */
.brand .titDep3 {
  margin: 0 0 27px;
  font: 500 24px/1.8 gothamM;
}
.brandSignatureList {
  margin: 0 -20px 0 28px;
}
.brandSignatureList li {
  display: block;
}
.brandSignatureList .info {
  margin-bottom: 37px;
  vertical-align: top;
}
.brandSignatureList .info figure {
  position: relative;
  margin: 0;
}
.brandSignatureList .info .tit {
  display: block;
  margin: 27px 0 11px;
  font-weight: 600;
  font-family: gothamM, spoqaR;
  text-transform: uppercase;
}
.brandSignatureList .info .txt {
  display: block;
  padding-right: 20px;
}
.brandSignatureList figure.thum > figcaption {
  position: absolute;
  top: -1px;
  left: -30px;
  transform: rotate(-90deg) translateX(-100%);
  transform-origin: left top;
  color: #c28168;
  font: 400 12px/1 gothamL;
  letter-spacing: 0.167em;
}
.brand .activityDtailWrap > .inner:last-child {
  padding: 0 20px 70px;
}

/* Brand(그랜드 조선 제주) */
/* Brand(레스케이프 호텔) */
.brand.escape .brandSlogan > * {
  color: #b79d59;
}
.brand.escape .brandSlogan .tit > p:after {
  background: #b79d59;
}
.brand.escape .brandStory {
  background: #000;
}
.brand.escape .brandSignatureList figure.thum > figcaption {
  color: #b79d59;
}
.brand.escape .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(서울 웨스틴조선호텔) */
.brand.wstSeoul .brandSlogan > * {
  color: #6d494d;
}
.brand.wstSeoul .brandSlogan .tit > p:after {
  background: #6d494d;
}
.brand.wstSeoul .brandStory {
  background: #676c72;
}
.brand.wstSeoul .brandSignatureList figure.thum > figcaption {
  color: #6d494d;
}
.brand.wstSeoul .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(부산 웨스틴조선호텔) */
.brand.wstBusan .brandSlogan > * {
  color: #374767;
}
.brand.wstBusan .brandSlogan .tit > p:after {
  background: #374767;
}
.brand.wstBusan .brandStory {
  background: #676c72;
}
.brand.wstBusan .brandSignatureList figure.thum > figcaption {
  color: #374767;
}

/* Brand(포포인츠 바이 쉐라톤 서울 남산) */
.brand.ppSeoul .brandSlogan > * {
  color: #6da4ab;
}
.brand.ppSeoul .brandSlogan .tit > p:after {
  background: #6da4ab;
}
.brand.ppSeoul .brandStory {
  background: #3797d3;
}
.brand.ppSeoul .brandSignatureList figure.thum > figcaption {
  color: #6da4ab;
}
.brand.ppSeoul .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(포포인츠 바이 쉐라톤 서울 명동) */
.brand.ppSeoul .brandSlogan > * {
  color: #3b90c6;
}
.brand.ppSeoul .brandSlogan .tit > p:after {
  background: #3b90c6;
}
.brand.ppSeoul .brandStory {
  background: #1d5172;
}
.brand.ppSeoul .brandSignatureList figure.thum > figcaption {
  color: #3b90c6;
}
.brand.ppSeoul .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(그래피티 판교) */
.brand.gravity .brandSlogan > * {
  color: #000;
}
.brand.gravity .brandSlogan .tit > p:after {
  background: #000;
}
.brand.gravity .brandStory {
  background: #000;
}
.brand.gravity .brandSignatureList figure.thum > figcaption {
  color: #888;
}
.brand.gravity .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(조선 팰리스 서울 강남) */
.brand.palace .brandSlogan > * {
  color: #c0a75a;
}
.brand.palace .brandSlogan .tit > p:after {
  background: #c0a75a;
}
.brand.palace .brandStory {
  background: #c0a75a;
}
.brand.palace .brandSignatureList figure.thum > figcaption {
  color: #d19dae;
}
.brand.palace .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(파라스파라 서울) */
.brand.ppj .brandSlogan > * {
  color: #000;
}
.brand.ppj .brandSlogan .tit > p:after {
  background: #000;
}
.brand.ppj .brandStory {
  background: #48655b;
}
.brand.ppj .brandSignatureList figure.thum > figcaption {
  color: #000;
}
.brand.ppj .brandSlogan .tit {
  font-size: 34px;
}

/* Brand(양양호텔) */
.brand.corallo .brandSlogan > * {
  color: #e1625e;
}
.brand.corallo .brandSlogan .tit > p:after {
  background: #e1625e;
}
.brand.corallo .brandStory {
  background: #e1625e;
}
.brand.corallo .brandSignatureList figure.thum > figcaption {
  color: #e1625e;
}
.brand.corallo .brandSlogan .tit {
  font-size: 34px;
}

/* App(추가) - 공통(중복 확인 후, 삭제 가능) */
.app.gnbMenu .gnbArea .tabCont .tabInner {
  padding: 16px 0 51px;
} /* (모바일웹에서 확인 시, 마지막 메뉴 확인용) */
.app.wrapper {
  padding-bottom: 0;
  width: 100%;
  min-height: 100vh;
}
.app input[type="text"],
.app input[type="password"],
.app input[type="tel"],
.app input[type="email"],
.app input[type="number"] {
  height: 56px;
}
.app .selectWrap {
  height: 56px;
}
.app .selectWrap select {
  height: 56px;
  line-height: 56px;
}
.app .tabType01 {
  margin-top: 14px;
}
.app .tabType01 li a {
  height: 46px;
  line-height: 46px;
  color: #777;
}
.app .tabType01 li.on a {
  color: #000;
}
.app input,
.app textarea,
.app select,
.app table,
.app th,
.app td {
  font-size: 16px;
}
.app .btnWhite {
  background: #fff;
}
.app .btnM {
  padding: 13px 0 11px;
}
.app .frmWrap .frm + .frm {
  margin-left: 11px;
}
.app .btnLine + .btnLine {
  margin-left: 11px;
}

.app.layerPop {
  background: transparent;
}
.app.layerPop .layerInner {
  height: 100vh;
  background: #fff;
}
.app .layerInner.membership .mid .info dt {
  color: #777;
}
.app .btnArr,
.app + .favoriteSelectArea .btnArr {
  position: relative;
  display: inline;
  font-size: 14px;
  padding: 0 15px 0 0;
}
.app .btnArr::before,
.app + .favoriteSelectArea .btnArr::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 1px;
  width: 8px;
  height: 16px;
  background: url(../../../images/ko/mo/common/ico_arr_10x18.png) no-repeat 0 0;
  background-size: 100%;
}
.app .btnArr + .btnArr {
  margin-left: 15px;
}

/* 회원가입(추가) */
.app .join .btnArr {
  position: relative;
  display: block;
  padding: 12px 15px 13px;
  font-size: 15px;
}
.app .join .btnArr + .btnArr {
  margin-left: 0;
}
.app .join .btnArr::before {
  top: 50%;
  margin-top: -1px;
}

.app .header .headArea.noLine {
  border: 0;
}
.app .header .headArea.noLine .titDep3 {
  padding-top: 7px;
  font-size: 20px;
}
.app .header button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  text-indent: -9999px;
  width: 45px;
  height: 45px;
  overflow: hidden;
  background-repeat: no-repeat;
  background-size: 150px auto;
}
.app .header .btnAlarm {
  left: 10px;
  background-image: url(../../../images/ko/mo/common/btn_alarm.png);
  background-size: auto 63%;
  background-position: 122% 44%;
}
.app .header .btnAlarm.new::after {
  content: "새로운 알림";
  width: 3px;
  height: 3px;
  background: #5e5c36;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 10px;
  left: 31px;
}
.app .header .btnBarcodeWrap {
  position: absolute;
  top: 0;
  right: 53px;
  height: 56px;
  line-height: 56px;
}
.app .header .btnBarcode {
  right: 0;
  background-image: url(../../../images/ko/mo/common/btn_barcode.png);
  background-size: auto 63%;
  background-position: 122% 44%;
}
.app .header .txtBarcode {
  padding-right: 46px;
  color: #000;
  font: 500 14px/1 gothamM, spoqaR;
  vertical-align: 2px;
}
.app .header .txtBarcode abbr {
  font-family: gothamM, spoqaR;
}
.app .header .btnMenu {
  background-position: 122% 44%;
  background-size: auto 63%; /*width:56px;height:56px*/
  right: 5px;
}
.app .header .btnBack {
  left: 10px;
  background-position: -113px 11px;
  background-size: 150px auto;
}
.app .btnTabInner {
  position: absolute;
  left: 19px;
  bottom: 24px;
  width: 30%;
  z-index: 5;
  background: #f9f9f9;
}
.app .btnTabInner a {
  display: block;
  color: #999;
  font-size: 13px;
}
.app .btnTabInner a + a {
  margin-top: 13px;
}
.app .btnTabInner a::after {
  content: "";
  display: inline-block;
  margin-left: 4px;
  width: 14px;
  height: 14px;
  background: url(../../../images/ko/mo/APAB/ico_btnTabInner.png) no-repeat 0 0;
  background-size: 100%;
  vertical-align: -2px;
}
.app .btnTabInner a.btnCall::after {
  background-position: 0 0;
}
.app .btnTabInner a.btnSearch::after {
  background-position: 0 100%;
}

/* 로그인 */
.app .login .loginFrm,
.app .login .selectWrap {
  margin-bottom: 8px;
}
.app .login .loginBox {
  margin-bottom: 0;
  padding-top: 23px;
}
.app .login .loginBox .frmWrap {
  margin: 14px 0 22px;
}
.app .findingBox .txtBox .tit {
  margin-bottom: 9px;
}
.app .findingBox .btnArea {
  margin: 20px 0 15px;
}
.app .login > .btnArea {
  margin: 0;
}
.app .loginFrm2 {
  margin-bottom: 16px;
}
.app .login .nonMembersLogin .btnArea {
  margin: 16px 0 10px;
}

.bioArea {
  position: relative;
  height: 309px;
  text-align: center;
  border-bottom: 1px solid #e5e5e5;
}
.btnBio {
  position: absolute;
  left: 50%;
  top: 61px;
  margin-left: -45px;
  width: 100px;
  height: 77px;
  background: url(../../../images/ko/mo/APAB/ico_bio.png) no-repeat 50% 50%;
  background-size: contain;
}
.bioArea.face {
  height: 281px;
  border-bottom: 0;
}
.bioArea .txt {
  position: absolute;
  top: 167px;
  width: 100%;
  text-align: center;
}
.app .snsLoginWrap {
  display: block;
  margin-top: 50px;
  margin-bottom: 33px;
}
.app .snsLogin {
  display: flex;
  margin: 15px 17px 0;
}
.app .snsLogin > a::before {
  display: none;
}
.app .snsLogin > a {
  height: 40px;
  font-size: 0;
  border: 0;
  text-align: left;
  padding: 0;
  margin: 0;
}
.app .snsLogin > .google {
  background: url(../../../images/ko/mo/APAB/ico_sns-google.png) no-repeat 50% 0;
  background-size: 40px;
}
.app .snsLogin > .facebook {
  background: url(../../../images/ko/mo/APAB/ico_sns-facebook.png) no-repeat 50% 0;
  background-size: 40px;
}
.app .snsLogin > .naver {
  background: url(../../../images/ko/mo/APAB/ico_sns-naver.png) no-repeat 50% 0;
  background-size: 40px;
}
.app .snsLogin > .kakao {
  background: url(../../../images/ko/mo/APAB/ico_sns-kakao.png) no-repeat 50% 0;
  background-size: 40px;
}
.app .snsLogin > .apple {
  background: url(../../../images/ko/mo/APAB/ico_sns-apple.png) no-repeat 50% 0;
  background-size: 40px;
}
.app .login .membersLogin,
.app .login .nonMembersLogin {
  margin-top: 0;
}

/* 비회원 예약확인 */
.btnArea + .loginLinkGuide {
  margin-top: 34px;
}
.loginLinkGuide {
  position: relative;
  padding: 20px 20px 21px;
  background: #f9f9f9;
}
.loginLinkGuide .tit {
  font: 500 14px gothamL, spoqaL;
  display: block;
}
.loginLinkGuide .txt {
  font: 400 14px gothamL, spoqaL;
  display: block;
  margin-top: 8px;
}
.loginLinkGuide .btnLine {
  position: absolute;
  top: 22px;
  right: 20px;
}

/* intro */
.app .intro {
  margin-top: -56px;
  overflow: hidden;
}
.introArea {
  position: relative;
  height: 100vh;
}
.introArea .introInner {
  position: relative;
  height: 100%;
}
.introArea .introInner .swipeWrap {
  width: 100%;
  z-index: 10;
  margin: 0;
}
.introArea .introBg {
  position: relative;
  height: 100%;
}
.introArea .introBg img {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
}
.introArea .introTxt {
  position: absolute;
  top: 30%;
  left: 50%;
  text-align: center;
  width: 65%;
  transform: translate(-50%, -125%);
  z-index: 10;
  padding: 0 20px;
}
.introArea .btnArea {
  position: absolute;
  left: 0;
  bottom: 38px;
  padding: 0 20px;
}
.introArea .btnArea .btnM {
  padding: 12px 0;
  font-size: 15px;
}
.introArea .btnArea .btn button + button {
  margin-top: 8px;
}
.introArea .btnTrans {
  background: transparent;
  border: 1px solid #fff;
}
.introArea .innerbtn {
  margin-top: 35px;
  text-align: center;
}
.introArea .innerbtn button {
  color: #fff;
  border-color: #fff;
}

/* 관심호텔설정 */
.favoriteSetting {
  padding: 25px 20px 127px;
}
.layerCont .favoriteSetting {
  padding-bottom: 84px;
}
.favoriteSetting abbr {
  text-decoration: none;
}
.favoriteSetting .frmList {
  margin: 0;
}
.favoriteSetting .frmList > li {
  flex: 100%;
  margin-top: -1px;
  padding: 0;
}
.favoriteSetting .frmList .frmRadio label {
  color: #777;
  text-align: left;
  padding: 12px 14px 13px;
}
.favoriteSetting .frmList .frmRadio input[type="radio"]:checked + label {
  margin-bottom: 1px;
  padding: 12px 14px;
  color: #000;
  background: #fff;
}
.favoriteSetting .hotelList {
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  margin-top: -2px;
}
.revSet {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  font: 500 10px/2 gothamM;
  text-align: center;
  border-radius: 50%;
  background: #eee;
}
.revSet + .revSet {
  margin-left: 5px;
}
.rsvBoxTit {
  display: block;
  margin: 25px 0 17px;
  font-size: 17px;
}
.rsvBox {
  padding: 10px 20px 13px;
  background: #f9f9f9;
}
.rsvBox li {
  float: left;
  width: 33.3333%;
  padding: 6px 0 7px;
}
.rsvBox li:first-child {
  width: 32.5%;
}
.rsvBox li:nth-child(2) {
  width: 38.5%;
}
.rsvBox li:nth-child(3) {
  width: 29%;
}
.rsvBox li .revSet:after {
  content: "" attr(title) "";
  position: absolute;
  margin-left: 13px;
  text-transform: uppercase;
}
.rsvBox + .txtGuide {
  margin-top: 16px;
}

/* 관심호텔설정(메인 > select > layer)  */
.favoriteSelectArea {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  background: #fff;
  z-index: 110;
}
.txtOp {
  padding: 28px 20px 20px;
}
.txtOp .tit {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 54px;
  line-height: 54px;
  font-weight: 500;
  padding-left: 20px;
  background: #f9f9f9;
}
.txtOp .tit .btnArr {
  position: relative;
  display: block;
  height: 54px;
  padding: 12px 14px 13px 0;
}
.txtOp .tit .btnArr::before {
  width: 6px;
  height: 10px;
}

.txtOp .frmList > li {
  flex: 100%;
  margin-top: 5px;
}
.txtOp .frmList .frmRadio {
  display: block;
}
.txtOp .frmList .frmRadio label {
  padding: 13px 0 12px;
  color: #777;
  font-size: 15px;
  font-family: spoqaL;
  border: 0;
  text-align: left;
}
.txtOp .frmList .frmRadio input[type="radio"]:checked + label {
  color: #000;
  border: 0;
  background: inherit;
}
.favoriteSelectCont {
  position: relative;
  padding: 0 0 54px;
}
.favoriteSelectCont .btnClose {
  position: absolute;
  right: 12px;
  top: -30px;
  text-indent: -9999px;
  width: 18px;
  height: 18px;
  overflow: hidden;
  background: url(../../../images/ko/mo/common/btn_close_36x36_w.png) no-repeat 50% 50%;
  background-size: 18px 18px;
  z-index: 101;
}

/* 바코드(메인 >header > layer) */
.layerInner.membership .mid {
  margin-top: -19px;
}
.barcodeArea {
  padding: 24px 30px 21px;
  background: #f9f9f9;
}
.barcodeView {
  margin: 0 auto;
  height: 60px;
  margin: 0 -20px;
  overflow: hidden !important;
}
.barcodeNum {
  margin: 7px auto 0;
  max-width: 260px;
  height: 12px;
  color: #333;
  font: 400 12px/1 gothamB;
  letter-spacing: 0.2em;
  text-align: center;
}
.barcodeNum span + span {
  margin-left: 17px;
}
.membershipLink {
  margin-top: 16px;
  padding-bottom: 113px;
}
.membershipLink .btnArr {
  display: block;
  padding: 18px 0;
  font-size: 15px;
}
.membershipLink .noneLink {
  display: flex;
  justify-content: space-between;
  padding: 18px 0;
}
.membershipLink .noneLink strong {
  font-weight: 600;
}
.membershipBanner {
  position: fixed;
  bottom: 68px;
  right: 0;
  left: 0;
  width: 100%;
  height: 93px;
  padding: 26px 20px 25px;
  background: url(../../../images/ko/mo/APAB/bg_membershipBanner.jpg) no-repeat 0 0;
  background-size: cover;
}
.membershipBanner a {
  display: block;
}
.membershipBanner .tit {
  display: block;
  color: #fff;
  font: 14px gothamB;
}
.membershipBanner .txt {
  display: inline-block;
  color: #fff;
  margin-top: 5px;
  font-size: 14px;
}

/* 메인 */
.app.main .myAccount .userName {
  color: #fff;
}
.app.main .myAccount .reserveInfo * {
  color: #fff;
}
.app.main.revOn .mid .myAccount {
  margin: 0;
}
.app.main.revOn .myAccount {
  margin: 21px 18px 56px;
}
.rsvTxt .rsvViewBtn {
  display: block;
}
.rsvTxt .rsvViewBtn:after {
  content: "";
  display: block;
  width: 100%;
  height: 56px;
  background: url(../../../images/ko/mo/common/btn_view_more.png) no-repeat 50% 50%;
  background-size: 15px 8px;
}
.rsvTxt .rsvViewBtn.open:after {
  display: none;
}
.rsvTxt .rsvViewBtn .tit {
  display: block;
  margin-bottom: 10px;
  font: 500 28px/1.5 gothamM;
  text-transform: uppercase;
}
.rsvTxt .rsvViewBtn .txt {
  display: block;
  margin-bottom: 5px;
  font: 500 14px spoqaR;
  height: 20px;
  overflow: hidden;
}
.reserveList {
  margin-top: 37px;
}
.reserveList > li {
  position: relative;
  padding-left: 30px;
  padding-bottom: 49px;
}
.reserveList > li::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 3px;
  width: 2px;
  height: 100%;
  background: rgba(255, 255, 255, 0.4);
}
.reserveList > li:last-of-type {
  padding-bottom: 50px;
}
.reserveList > li:last-of-type::before {
  display: none;
}
.reserveList .preview {
  position: relative;
  margin-bottom: 9px;
  font: 400 14px gothamM;
}
.reserveList .preview > * {
  font: 400 14px gothamM;
}
.reserveList .preview::before {
  content: "";
  position: absolute;
  top: 5px;
  left: -28px;
  width: 4px;
  height: 4px;
  background: #fff;
  border-radius: 50%;
  z-index: 2;
}
.reserveList .keyword::before {
  content: "";
  display: inline-block;
  margin: 0 8px 0 5px;
  width: 1px;
  height: 11px;
  background: #ccc;
}
.reserveList .info {
  display: block;
}
.reserveList .tit {
  display: block;
  margin-bottom: 10px;
  font: 500 22px playfair;
}
.reserveList .txt > span + span::before {
  content: "";
  display: inline-block;
  margin: 0 8px;
  width: 1px;
  height: 11px;
  background: #ccc;
  transform: rotate(30deg);
}
.reserveList .btnBoxLine {
  display: inline-block;
  margin: 16px 0 5px;
  padding: 0.25em 0.75em;
  border: 1px solid #fff;
}
.icoMore {
  height: 56px;
  font-size: 0;
}
.icoMore::after {
  content: "";
  display: block;
  width: 15px;
  height: 8px;
  margin: 0 auto;
  background: url(../../../images/ko/mo/common/ico_toggle.png) no-repeat 100% 0;
  background-size: cover;
}

.productInfo {
  padding: 0 0 55px 30px;
}
.productInfo * {
  color: #fff;
}
.productInfo .tit {
  display: block;
  margin: -5px 0 23px;
  font-size: 17px;
}
.productList > li {
  display: table;
  margin-bottom: 24px;
}
.productList > li a {
  position: relative;
  display: table-cell;
  height: 64px;
  padding-left: 80px;
  vertical-align: middle;
}
.productList .thum {
  position: absolute;
  top: 0;
  left: 0;
  width: 64px;
  height: 64px;
}
.productList .thum img {
  border-radius: 50%;
}
.productList .name {
  display: block;
  margin-top: 3px;
  font-size: 14px;
  font-family: gothamB;
}

/* 메인(목록) */
.app.main .inner {
  margin-bottom: 68px;
  padding-bottom: 0;
}
.selectedBtnWrap {
  padding: 25px 0 32px;
  background: #fff;
}
.selectedBtnWrap .selectedBtn {
  position: relative;
  font: 500 28px gothamM;
  text-transform: uppercase;
  text-align: left;
}
.selectedBtnWrap .selectedBtn:after {
  content: "";
  display: inline-block;
  margin-left: 14px;
  vertical-align: middle;
  width: 10px;
  height: 6px;
  background: url(../../../images/ko/mo/APAB/ico_selectedBtn.png) no-repeat;
  background-size: 100%;
}
.mainPackList {
  margin: 0 -20px 0 28px;
}
.mainPackList + .btnArea + .txtGuide {
  padding-bottom: 40px;
}
.mainPackList li {
  display: block;
}
.mainPackList li:after {
  content: "";
  display: block;
  clear: both;
  height: 1px;
  visibility: hidden;
}
.mainPackList .info {
  margin-bottom: 69px;
  vertical-align: top;
}
.mainPackList .info > a {
  display: block;
}
.mainPackList .info figure {
  position: relative;
  margin: 0;
}
.mainPackList .info .tit {
  display: block;
  margin: 27px 0 11px;
  font-weight: 600;
}
.mainPackList .info .txt {
  display: block;
}
.mainPackList .info .date {
  margin-top: 11px;
}
.mainPackList .info .date span + span {
  display: block;
}
.mainPackList .info .more {
  display: block;
  margin-top: 22px;
}
.mainPackList figure.thum > figcaption {
  position: absolute;
  top: 0;
  left: -17px;
  transform: rotate(-270deg);
  transform-origin: left top;
  color: #c28168;
  font: 400 12px/1 gothamL;
  letter-spacing: 0.167em;
}
.mainPackList .roomIntro dl {
  padding: 18px 20px 0 0;
}
.mainPackList .roomIntro .roomName {
  padding-top: 0;
  margin-bottom: 8px;
  font-weight: 500;
  font-feature-settings: "lnum", "pnum";
}
.mainPackList .roomIntro .keyword {
  position: static;
  padding: 6px 0 6px;
}
.mainPackList .noData {
  padding-bottom: 0;
  text-align: left;
}

/* 메인(로그인 후, 예약이 있는 경우) */
.app.main.revOn {
  display: table;
  background: url(../../../images/ko/mo/APAB/bg_main.jpg) no-repeat fixed 0 0;
  background-size: cover;
}
.app.main.revOn .header {
  background: url(../../../images/ko/mo/APAB/bg_main.jpg) no-repeat fixed 0 0;
  background-size: cover;
}
.app.revOn .header .btnAlarm {
  background-position: -22% 44%;
}
.app.revOn .header .btnAlarm.new::after {
  background: #fff;
}
.app.revOn .header .btnBarcode {
  background-position: -22% 44%;
}
.app.revOn .header .txtBarcode {
  color: #fff;
}
.app.revOn .header .btnMenu {
  background-position: -22% 44%;
}

.innerBoxArea .inner {
  position: fixed;
  top: 59px;
  bottom: 0;
  z-index: 100;
  background: #fff;
  width: 100%; /*height:calc(100vh - 212px);*/
  overflow-y: auto;
  padding-bottom: 72px !important;
}
.innerBoxArea .btnSC {
  background: #000;
}
.innerBoxArea .btnSC.btnWhite {
  background: #fff;
}
.innerBoxArea .btnFixed {
  z-index: 101;
}
.revOn .innerBoxArea .inner {
  top: 210px;
}

/* 메인(호텔선택영역) 추가 */
.selectedBtnWrap.scrollTop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  padding: 17px 20px 17px;
}
.selectedBtnWrap.scrollTop .selectedBtn {
  font-size: 14px;
  transition: font-size 0.35s ease-in-out;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  height: 16px;
  width: 100%;
  padding-right: 20px;
}
.selectedBtnWrap.scrollTop .selectedBtn:after {
  margin-left: 6px;
  position: fixed;
  right: 20px;
  top: 25px;
}
.floatingWrap + .dimmed {
  z-index: 101;
}

/* floating(공통) */
.floatBtn {
  position: fixed;
  right: 20px;
  bottom: 88px;
  display: block;
  width: 40px;
  height: 40px;
  background: #94937a;
  border-radius: 50%;
  z-index: 100;
}
.floatBtn::before,
.floatBtn::after {
  content: "";
  position: absolute;
  top: 50%;
  height: 14px;
  width: 2px;
  transition: 0.35s;
  background: #fff;
}
.floatBtn::before {
  transform: translateY(-50%) rotate(0deg);
}
.floatBtn::after {
  transform: translateY(-50%) rotate(90deg);
}
.floatBtn.on {
  right: 20px;
  transition: 0.35s;
  z-index: 102;
}
.floatBtn.on::before {
  transform: translateY(-50%) rotate(225deg);
}
.floatBtn.on::after {
  transform: translateY(-50%) rotate(315deg);
}
.floatBtn.on + .dimmed,
.floatBtn.on + .floatingArea + .dimmed {
  z-index: 101;
  display: block;
}

.floatingArea {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 200;
  animation: fade_in_hide 0.35s;
}
.floatBtn.on + .floatingArea {
  animation: fade_in_show 0.35s;
}
@keyframes fade_in_show {
  0% {
    opacity: 0;
    transform: scale(0) translate(100%, 100%);
  }
  100% {
    opacity: 1;
    transform: scale(1) translate(-100%, -100%);
  }
}
@keyframes fade_in_hide {
  0% {
    opacity: 1;
    transform: scale(1) translate(-100%, -100%);
  }
  100% {
    opacity: 0;
    transform: scale(0) translate(100%, 100%);
  }
}
.floatBtnList button {
  position: relative;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  font: 400 14px/1 gothamL;
  color: #fff;
}
.floatBtnList button:after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background: url(../../../images/ko/mo/APAB/ico_float_btn.png) no-repeat 0 0;
  background-size: 14px auto;
}
.floatBtnList {
  position: absolute;
  right: 0;
  bottom: 120px;
}
.floatBtnList li {
  display: block;
  margin-top: 12px;
}
.floatBtnList button:before {
  position: absolute;
  right: 55px;
  min-width: 100px;
  text-align: right;
}
.floatBtnList .home:before {
  content: "HOME";
}
.floatBtnList .mypage:before {
  content: "MY PAGE";
}
.floatBtnList .tel:before {
  content: "TEL";
}
.floatBtnList .chat:before {
  content: "CHAT";
}
.floatBtnList .home:after {
  background-position: 0 0;
}
.floatBtnList .mypage:after {
  background-position: 0 -14px;
}
.floatBtnList .tel:after {
  background-position: 0 -28px;
}
.floatBtnList .chat:after {
  background-position: 0 -42px;
}

/* 토글 스위치 */
.switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
}
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e5e5e5; /*-webkit-transition:.4s;transition:.4s;*/
  border-radius: 34px;
}
.slider:before {
  position: absolute;
  content: "";
  height: 20px;
  width: 20px;
  left: 2px;
  bottom: 2px;
  background-color: white; /*-webkit-transition:.4s;transition:.4s;*/
  border-radius: 50%;
}
.switch.on .slider {
  background-color: #000;
}
.switch input {
  border: 0;
}
.switch.on .slider:before {
  left: initial;
  right: 2px;
}
/* (개발제어요청)
input:checked + .slider {background-color:#000}
input:focus + .slider {box-shadow:0 0 1px #2196F3}
input:checked + .slider:before {-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}
*/

/* 설정 */
.settingCont {
  padding: 17px 20px;
}
.settingWrap::before {
  content: "";
  display: block;
  height: 10px;
}
.settingCont + .settingCont {
  margin-top: 12px;
  padding: 24px 20px;
  border-top: 1px solid #e5e5e5;
}
.settingCont .tit {
  font: 400 13px/1.7 gothamL, spoqaL;
  color: #777;
}
.settingCont .tit + ul {
  margin-bottom: 6px;
}
.settingCont .tit + ul > li:first-child {
  margin-top: 25px;
}
.settingCont ul > li > .sTit {
  float: left;
  font: 500 15px/24px gothamL, spoqaL;
  color: #000;
}
.settingCont ul > li > .switch,
.settingCont ul > li > .txt,
.settingCont ul > li > button {
  float: right;
  font: 400 15px/24px gothamL, spoqaL;
}
.settingCont ul > li:after {
  content: "";
  display: block;
  clear: both;
}
.settingCont ul > li + li {
  margin-top: 28px;
}
.settingCont ul > li > button {
  width: auto;
  line-height: 1;
  padding: 11px 10px;
}
.settingCont .sTit.btnArr {
  display: block;
  width: 100%;
  position: relative;
  padding: 0 40px 0 0;
  font: 500 15px/24px gothamL, spoqaL;
  color: #000;
}
.settingCont .sTit.btnArr:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 8px;
  height: 15px;
  background: url(../../../images/ko/pc/common/ico_arr_10x18.png) no-repeat right 50%;
}
.settingCont .txtGuide {
  margin-top: 27px;
}
.settingCont .btnM {
  height: 32px;
  padding: 9px 12px;
  font-size: 13px;
  margin-top: -4px;
}
.agreeCont .settingCont {
  padding: 19px 20px 26px;
}

.layerCont .selectMain {
  padding: 10px 20px;
}
.layerCont .selectMain li + li {
  margin-top: 23px;
}
.layerCont .selectMain li .frm label {
  font-size: 17px;
  float: left;
  font: 500 17px gothamL, spoqaL;
}

/* 앱 권한설정 안내 */
.appAuthority {
  padding: 4px 20px 91px;
}
.appAuthority .txtCont {
  padding: 20px;
  background: #f9f9f9;
}
.appAuthority .txtCont li + li {
  margin-top: 23px;
}
.appAuthority .title {
  font: 500 17px/1 gothamL, spoqaL;
  margin: 40px 0 18px;
}
.appAuthority .txtCont .tit {
  font: 400 14px/1 gothamL, spoqaL;
  margin-top: 0;
}
.appAuthority .txtCont .txt {
  font: 400 14px/1 gothamL, spoqaL;
  color: #777;
}

/* 바이오 인증 설정 */
.bioBox .tTxt {
  text-align: center;
  font: 400 16px/1 gothamL, spoqaL;
  padding: 13px 0 38px;
}
.login .bioBox > .btnArea {
  margin: 18px 0 10px;
}

/* PUSH */
.pushWrap {
  overflow: hidden;
}
.pushWrap .listAllChk {
  margin: 19px 20px;
  height: 22px;
}
.pushWrap .watchList > li {
  padding: 36px 0px;
  margin: 0 20px;
}
.pushWrap .watchList > li + li {
  border-top: 1px solid #e5e5e5;
}
.pushWrap .watchList > li:last-child {
  border-bottom: 1px solid #e5e5e5;
}
.pushWrap .noData {
  padding: 165px 0;
}
.pushWrap .watchList .tit {
  font: 500 16px/1 gothamL, spoqaL;
  display: block;
}
.pushWrap .watchList .sTit {
  font: 400 14px/20px gothamL, spoqaL;
  display: block;
  margin: 10px 0 0 0;
}
.pushWrap .watchList .thum,
.pushWrap .watchList.edit .watchListCont .thum {
  margin: 20px 0;
}
.pushWrap .watchList .date {
  font: 400 14px/1 gothamL;
  display: block;
  margin: 20px 0 0 0;
  color: #777;
}

.pushWrap .listAllChkWrap {
  position: relative;
}
.pushWrap .listAllChkWrap .selectDiv {
  position: absolute;
  top: -17px;
  left: 20px;
  z-index: 1;
}
.pushWrap .listAllChkWrap .selectDiv .txt {
  vertical-align: -1px;
  font: 500 14px/1 gothamL, spoqaL;
}
.pushWrap .listAllChkWrap .selectDiv .txt + .selectWrap:before {
  content: "";
  position: absolute;
  left: 11px;
  top: 50%;
  margin-top: -6px;
  display: inline-block;
  width: 1px;
  height: 12px;
  background: #ccc;
}
.pushWrap .listAllChkWrap .selectDiv .selectWrap {
  padding-left: 25px;
  width: 130px;
}
.pushWrap .topTxt {
  margin: 25px 20px 0;
}

/* Amenity */
.amenity .tabType01 {
  margin: 0;
  padding: 10px 20px;
}
.amenity .tabType01 li a {
  height: 39px;
  line-height: 39px;
}
.amenityCont .infoCont {
  padding: 31px 20px 26px;
}
.amenityCont .infoCont.type02 {
  padding-top: 39px;
}
.amenityCont .sInfoCont {
  padding: 32px 20px;
}
.amenityCont .infoCont + .sInfoCont {
  padding-top: 0;
}
.amenityCont .infoCont + .sInfoCont .btnLine {
  margin-top: -21px;
}
.amenityCont .state {
  font: 500 13px/1 gothamL, spoqaL;
  color: #989442;
  display: block;
}
.amenityCont .state em {
  font: 400 14px/1 gothamL, spoqaL;
  color: #777;
}
.amenityCont .state em:before {
  content: "";
  display: inline-block;
  vertical-align: -2px;
  width: 1px;
  height: 13px;
  background: #ccc;
  margin: 0 12px 0 10px;
}
.amenityCont .aTit {
  font: 500 22px/1 playfair;
  display: block;
  margin-top: 12px;
}
.amenityCont .roomInfo {
  font: 400 15px/1 gothamL, spoqaL;
  display: block;
  margin-top: 18px;
}
.amenityCont .date {
  font: 400 14px/1 gothamL, spoqaL;
  color: #777;
  display: block;
  margin-top: 7px;
}
.amenityCont .sInfoCont {
  position: relative;
}
.amenityCont .roomNum {
  font: 400 14px/1 gothamL, spoqaL;
  display: block;
}
.amenityCont .roomNum em {
  font: 500 22px/1 playfair;
  font-feature-settings: "lnum", "pnum";
  vertical-align: -3px;
  padding-right: 5px;
}
.amenityCont .roomPerson {
  font: 400 14px/1 gothamL, spoqaL;
  color: #777;
  display: block;
  margin-top: 10px;
}
.amenityCont .aTxt {
  font: 400 14px/1 gothamL, spoqaL;
  display: block;
}
.amenityCont .btnLine {
  font: 400 14px/1 gothamL, spoqaL;
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -8px;
}
.amenityCont .sInfoCont + .sInfoCont:before {
  content: "";
  position: absolute;
  top: 0;
  right: 20px;
  left: 20px;
  height: 1px;
  background: #e5e5e5;
}
.amenityCont .state + .roomNum {
  margin-top: 11px;
}
.amenityCont .infoArea li {
  margin-top: 13px;
}
.amenityCont .infoArea li .tit {
  color: #777;
}

.amenity .inner {
  padding: 0 20px 104px;
}
.amenity .inner > .titDep2 {
  margin-bottom: 17px;
  font-family: gothamL;
  text-transform: uppercase;
}
.amenity .reserveOpArea .frmList {
  margin: 17px -4px 0;
}
.tabCont .amenityCont .infoArea {
  margin: 25px 0 10px;
}

.app .numPeople {
  position: relative;
  height: 24px;
}
.app .numPeople span {
  display: block;
  text-align: center;
  padding: 0 24px;
  font-size: 16px;
  line-height: 24px;
  color: #666;
}
.app .numPeople button {
  display: block;
  position: absolute;
  top: 0;
  width: 24px;
  height: 24px;
  overflow: hidden;
  text-indent: -9999px;
  border: 1px solid #ccc;
  background: #fff;
}
.app .numPeople button.blank {
  border: 1px solid #e5e5e5;
}
.app .numPeople button:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
}
.app .numPeople button.btnDown {
  left: 0;
}
.app .numPeople button.btnDown:before {
  background: url(../../../images/ko/mo/common/ico_down_10x10.png) no-repeat 50% 50%;
  background-size: 10px 10px;
}
.app .numPeople button.btnDown.blank:before {
  background: url(../../../images/ko/mo/common/ico_down_gray_10x10.png) no-repeat 50% 50%;
  background-size: 10px 10px;
}
.app .numPeople button.btnUp {
  right: 0;
}
.app .numPeople button.btnUp:before {
  background: url(../../../images/ko/mo/common/ico_up_10x10.png) no-repeat 50% 50%;
  background-size: 10px 10px;
}
.app .numPeople button.btnUp.blank:before {
  background: url(../../../images/ko/mo/common/ico_up_gray_10x10.png) no-repeat 50% 50%;
  background-size: 10px 10px;
}
.app .numPeople button[disabled] {
  cursor: default;
  border: 1px solid #e5e5e5;
}
.app .numPeople button[disabled].btnDown:before {
  background: url(../../../images/ko/mo/common/ico_down_gray_10x10.png) no-repeat 50% 50%;
  background-size: 10px 10px;
}
.app .numPeople button[disabled].btnUp:before {
  background: url(../../../images/ko/mo/common/ico_up_gray_10x10.png) no-repeat 50% 50%;
  background-size: 10px 10px;
}
.app .numArea.simpleType li + li {
  margin-top: 20px;
}
.app .opSelectList .numArea .numCont {
  width: 100px;
}

/* .totalWrap.setType */
.totalWrap.setType {
  height: auto;
  display: none;
}
.totalWrap.setType .totalCont {
  padding: 30px 20px 59px;
}
.totalWrap.setType .totalCont.on {
  padding: 30px 20px 68px;
}
.totalWrap.setType .totalCont .total {
  height: 113px;
}
.totalWrap.setType .totalCont.on .total {
  height: 30px;
}
.totalWrap.setType .infoCont {
  padding: 0;
  overflow-y: auto;
}
.totalWrap.setType .toggleList.noLine > li .toggleCont .toggleInner {
  border-top: none;
  padding: 0;
}

.totalWrap.setType .selectList > .tit {
  font: 400 16px/1 gothamL;
  margin: 25px 20px;
  display: block;
}
.totalWrap.setType .selectList .numArea {
  background: #f9f9f9;
  padding: 25px 20px;
}
.totalWrap.setType .selectList .numArea .txt {
  min-height: 24px;
  height: 24px;
  padding-top: 0;
  font-size: 15px;
}

/* 고객센터 */
.fileUpload > ul {
  margin-top: 20px;
}
.fileUpload > ul > li {
  position: relative;
  margin-top: -20px;
}
.boldTxt {
  font: 500 15px spoqaR;
  text-decoration: underline;
}

.ctmService .txtBox {
  position: relative;
  font: 500 14px/32px spoqaR;
  padding: 23px 20px;
}
.ctmService .txtBox .btnLine {
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -6px;
}
.ctmService .intList > li:first-child {
  margin-top: 50px;
}
.ctmService .intBox .frm:nth-child(n + 3) {
  margin-top: 16px;
}
.ctmService .toggleList.noBtn > li,
.toggleList.noBtn > li .toggleCont .toggleInner {
  border: none;
}
.ctmService .toggleList.noBtn .titArea {
  padding: 0;
}
/*.ctmService .toggleList li{border-top:0;border-bottom:1px solid #ccc}*/
.tblV.lineType tr:first-child th,
.tblV.lineType tr:first-child td {
  border-top: 0;
}
.tblV.lineType tr th,
.tblV.lineType tr td {
  border-top: 1px solid #e5e5e5;
}
.tblV.lineType td + td {
  border-left: 1px solid #e5e5e5;
}

.searchBox.bgWhite {
  background: #fff;
}

.toggleList.ctmType li:first-child {
  border-top: 0;
}
.toggleList.ctmType .titArea {
  display: table;
  width: 100%;
}
.toggleList.ctmType .titArea .listTit {
  display: table-cell;
  width: 30%;
}
.toggleList.ctmType .titArea .opValue {
  display: table-cell;
  width: 70%;
  padding-left: 25px;
  font-size: 16px;
}

/* 약관 */
.topInner.termsTop .selectWrap {
  margin-top: 22px;
}

/* 공유하기 레이어팝업 */
.shareLayerpop {
  display: none;
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 999;
}
.shareLayerpop .shareLayer {
  background: #fff;
  padding: 10px 0 20px;
}
.shareLayerpop .shareLayer ul > li > a {
  display: block;
  position: relative;
  font-size: 16px;
  padding: 10px 0 10px 70px;
}
.shareLayerpop .shareLayer ul > li > a:before {
  content: "";
  display: block;
  position: absolute;
  left: 25px;
  top: 50%;
  margin-top: -9px;
  width: 26px;
  height: 18px;
  background: url(../../../images/ko/mo/common/ico_share02.png) no-repeat 0 0;
  background-size: 26px 72px;
}
.shareLayerpop .shareLayer ul > li.kakao > a:before {
  background-position: 0 0;
}
.shareLayerpop .shareLayer ul > li.email > a:before {
  background-position: 0 -18px;
}
.shareLayerpop .shareLayer ul > li.url > a:before {
  background-position: 0 -36px;
}
.shareLayerpop .shareLayer ul > li.sms > a:before {
  background-position: 0 -54px;
}
.shareLayerpop .btnClose {
  position: absolute;
  top: -30px;
  left: 0;
  width: 100%;
  height: 30px;
  color: transparent;
  z-index: 99;
  background: #fff;
  border-top: 1px solid #000;
}
.shareLayerpop .btnClose:after {
  content: "";
  display: block;
  position: absolute;
  top: 12px;
  left: 50%;
  margin-left: -18px;
  clear: both;
  width: 36px;
  height: 4px;
  border-radius: 4px;
  background: #e5e5e5;
  z-index: 99;
}

/* josun junior */
.juniorCont .aloneTxt {
  padding: 30px 20px;
}
.juniorCont .juniorDl {
  padding-top: 20px;
}
.juniorCont .juniorDl dt {
  font: 400 14px gothamM;
  text-transform: uppercase;
  color: #333;
  padding: 30px 0 8px;
}
.juniorCont .juniorDl dd {
  font-size: 14px;
}
.juniorCont .bgGray {
  background: #f9f9f9;
}
.juniorCont .bgGray .inner {
  padding: 55px 20px 40px;
}
.juniorCont .bgGray .titDep2 {
  margin-top: 0;
}
.juniorCont .gallery {
  margin: 0 -20px;
}

/* entertainment */
.enterList > li:first-child {
  margin-top: 35px;
}
.enterList > li {
  margin-top: 60px;
}
.enterList > li dl dt {
  padding: 25px 0 10px;
  font-family: spoqaR;
  text-transform: uppercase;
}
.enterList > li dl dd.infor {
  padding-top: 20px;
  color: #777;
}
.enterList > li dl dd.infor .inforList > li {
  position: relative;
  padding-left: 50px;
  font-size: 14px;
}
.enterList > li dl dd.infor .inforList > li .sTit {
  position: absolute;
  left: 0;
  top: 0;
}

/* activityDtailWrap/specialOfferWrap/dining > (공통) 버튼아래, 추천상품 있고 없음 */
.activityDtailWrap .divTop > .btnInner,
.specialOfferWrap .divTop > .btnInner,
.dining .divTop > .btnInner {
  padding-bottom: 100px;
}
.activityDtailWrap .divTop + .promotion.type02,
.specialOfferWrap .divTop + .promotion.type02 {
  margin-top: -68px;
  padding-bottom: 68px;
}
.dining .divTop + .cautionBox {
  margin-top: -68px;
}

/* S: Reservation 2020-11-20 add */
.w0_5 {
  position: relative;
}
.w0_5 {
  border: 0 !important;
  box-shadow: 0.5px 0.5px #fff;
}
.w0_5:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  box-shadow: inset 0.5px 0.5px #fff;
}
.introReservation .header {
  background: transparent;
}
.introReservation .header .btnAlarm,
.introReservation .header .btnBarcode,
.introReservation .header .btnMenu {
  background-position: -24% 44%;
}
/* S: 2020-12-14 modify */
.introReservation .packageCont {
  position: relative; /* display:flex;justify-content:center;align-items:center; */
  width: 100%;
  height: 100vh;
}
.introReservation .packageInner {
  width: calc(100% - 40px);
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  transform: translate(-50%, -50%);
}
.introReservation .packageInner .pTit {
  display: block;
  font: 500 26px playfair;
  color: #fff;
  line-height: 1.3;
}
.introReservation .btnGroup {
  font-size: 0;
}
.introReservation .packageInner .btnLine {
  margin-top: 28px;
  padding: 10px 4px 12px;
  width: 120px;
  height: 36px;
  line-height: 36px;
  font: 500 12px gothamB;
  letter-spacing: 0.025em;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.5);
}
.introReservation .btnLine + .btnLine {
  margin-left: 0;
  border-left: none;
}
.introReservation .btnLine + .btnLine.w0_5:before {
  box-shadow: inset 0 0.5px #fff;
}
/* .introReservation .packageCont.cont01{background:url(../../../images/ko/mo/APP/bg_intro_package01.jpg) no-repeat 50% 50%;background-size:cover}
.introReservation .packageCont.cont02{background:url(../../../images/ko/mo/APP/bg_intro_package02.jpg) no-repeat 50% 50%;background-size:cover}
.introReservation .packageCont.cont03{background:url(../../../images/ko/mo/APP/bg_intro_package03.jpg) no-repeat 50% 50%;background-size:cover}
.introReservation .packageCont.cont04{background:url(../../../images/ko/mo/APP/bg_intro_package04.jpg) no-repeat 50% 50%;background-size:cover}
.introReservation .packageCont.cont05{background:url(../../../images/ko/mo/APP/bg_intro_package05.jpg) no-repeat 50% 50%;background-size:cover} */
.introReservation .packageCont .packageBg {
  position: relative;
  height: 100%;
}
.introReservation .packageCont .packageBg img {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
}
/* E: 2020-12-14 modify */
.introReservation .swipeWrapArea .indicator {
  display: block;
  position: absolute;
  left: auto;
  bottom: 36px;
  margin: 0;
  width: 100%;
  z-index: 10;
  text-align: center;
  line-height: 1;
}
.introReservation .swipeWrapArea .indicator .num:after {
  width: 4px;
  height: 4px;
  margin: -2px 0 0 -2px;
  background: #727070;
}
.introReservation .swipeWrapArea .indicator .num.on:after {
  width: 12px;
  margin: -2px 0 0 -6px;
}
.introReservation .swipeWrapArea .indicator .on:after {
  background: #fff;
}
.introReservation .listReservation {
  display: flex;
  justify-content: space-between;
  margin-top: 18px;
}
.introReservation .listReservation li {
  flex: 1;
}
.introReservation .listReservation a {
  display: block;
}
.introReservation .listReservation .itemNum,
.introReservation .listReservation .itemDesc {
  display: block;
}
.introReservation .listReservation .itemNum {
  font: 500 20px playfair, gothamB, notokrR;
  color: #fff;
  line-height: 1;
  font-feature-settings: "lnum", "pnum";
  -moz-font-feature-settings: "lnum", "pnum";
  -webkit-font-feature-settings: "lnum", "pnum";
}
.introReservation .listReservation .itemDesc {
  margin-top: 9px;
  font: 100 11px gothamL;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1;
}
.introReservation .packageInner .listReservation + .btnGroup .btnLine {
  margin-top: 32px;
}

.reservationInner {
  display: flex;
  flex-wrap: wrap;
  padding: 56px 20px;
  width: 100%;
  height: 100%;
  background: url(../../../images/ko/mo/APP/bg_reservation.jpg) no-repeat 50% 50%;
  background-size: cover;
}
.reservationInner > a {
  display: flex;
  align-items: center;
  width: 100%;
  font-family: playfair;
  font-size: 18px;
  line-height: 1;
  color: #fff;
  text-align: center;
  border: 1px solid #fff;
}
.reservationInner > a:first-child {
  margin-top: 14px;
}
.reservationInner > a.w0_5 {
  box-shadow: 0.5px 0.5px rgba(255, 255, 255, 0.5);
}
.reservationInner > a.w0_5:before {
  box-shadow: inset 0.5px 0.5px rgba(255, 255, 255, 0.5);
}
.reservationInner > a ~ a {
  margin-top: 12px;
}
.reservationInner > a .txtInfo {
  margin: auto;
}
.reservationInner > a .txtInfo > span {
  display: block;
}
.reservationInner > a strong {
  position: relative;
  display: inline-block;
  margin-top: 14px;
  font-size: 10px;
  font-family: "spoqaR";
}
.reservationInner > a strong:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #fff;
}
.layerPop.introReservation .btnClose {
  top: 4px;
  right: 5px;
  background: url(../../../images/ko/mo/common/btn_close_36x36_w.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}

.layerPop.packageLayerPop {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  bottom: -100%;
  height: 100%;
  background-color: #fff;
  z-index: 101;
}
.layerPop.packageLayerPop .btnClose {
  position: absolute;
  top: 4px;
  right: 5px;
}
.layerPackageCont {
  padding: 56px 20px 44px;
  height: 100%;
  text-align: center;
  overflow-y: auto;
  overflow-scrolling: touch;
  -webkit-overflow-scrolling: touch;
}
.packageLayerPop.introReservation .layerPackageCont {
  padding: 0;
} /*20201203 추가*/
.layerPackageCont .itemPackage {
  position: relative;
  color: #111;
}
.layerPackageCont .txtTag {
  padding: 3px 4px;
  min-width: 90px;
  color: #fff;
  font-size: 12px;
  position: absolute;
  left: -20px;
  top: 0;
  z-index: 10;
  background: #111;
}
.layerPackageCont .packageImg {
  margin: 0 -20px;
}
.layerPackageCont .titPackage a {
  display: block;
  margin-top: 20px;
  font: 100 20px playfair;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1;
}
.layerPackageCont .txtDate {
  margin: 16px 0 40px;
  font: 100 13px gothamL, spoqaL;
  text-transform: uppercase;
}
.layerPackageCont .btnPackageList {
  display: block;
  height: 48px;
  line-height: 48px;
  padding: 12px 20px;
  font: 500 15px spoqaR;
  border: 0.5px solid #000;
}

.layerPop.hotelBgPop {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  bottom: -100%;
  height: 100%;
  z-index: 101;
}
.layerPop.hotelBgPop.is-show {
  position: absolute;
  height: auto;
}
.hotelAbout {
  display: block;
  transition: background-color 1s ease;
}
.layerHotelCont {
  height: 100%;
  overflow-y: auto;
  overflow-scrolliitemdescng: touch;
  -webkit-overflow-scrolling: touch;
}
.layerHotelCont .hotelPanel:first-child {
  padding-top: 56px;
}
.layerHotelCont .hotelPanel {
  min-height: 100vh;
  padding-top: 60px;
  color: #fff;
  text-align: center;
}
.layerHotelCont .itemSection {
  position: relative;
}
.layerHotelCont .itemSection.left {
  padding-right: 52px;
  padding-bottom: 52px;
  text-align: right;
}
.layerHotelCont .itemSection.right {
  padding-left: 52px;
  padding-bottom: 60px;
  text-align: left;
}
.layerHotelCont .bgPanel {
  position: relative;
}
.layerHotelCont .bgPanel img {
  width: 100%;
}
.layerHotelCont .txtNum {
  position: absolute;
  bottom: 116px;
  min-width: 250px;
  color: rgba(255, 255, 255, 0.4);
  transform: rotate(-90deg);
  font: 100 18px playfair, gothamB, notokrR;
  line-height: 1;
  text-align: left;
  font-feature-settings: "lnum", "pnum";
  -moz-font-feature-settings: "lnum", "pnum";
  -webkit-font-feature-settings: "lnum", "pnum";
}
.layerHotelCont .itemSection.left .txtNum {
  left: calc((100% - 125px) + 24px);
}
.layerHotelCont .itemSection.right .txtNum {
  right: calc((100% - 125px) + 28px);
}
.layerHotelCont .txtNum span {
  position: relative;
  padding-left: 75px;
  margin-left: 15px;
}
.layerHotelCont .txtNum span:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: 2px;
  width: 60px;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.4);
}
.layerHotelCont .txtSlogan {
  margin-top: 24px;
  font: 100 20px playfair;
  line-height: 1.3;
}
.layerHotelCont .titHotelName {
  margin-top: 18px;
  font: 100 13px/1 gothamL;
  text-transform: uppercase;
  line-height: 1;
}
.color-gray {
  background-color: #666d76;
}
.color-green {
  background-color: #164438;
}
.color-black {
  background-color: #111;
}
.color-blue {
  background-color: #1d5172;
}
.color-gold {
  background-color: #b59e55;
}
.introReservation .header.on ~ .hotelBgPop.is-show .btnClose {
  position: fixed;
}
.hotelBgPop .btnClose {
  position: absolute;
  z-index: 9;
  top: 4px;
  right: 5px;
  background: url(../../../images/ko/mo/common/btn_close_36x36_w.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}
.btnTelephone {
  position: fixed;
  bottom: 24px;
  right: 20px;
  width: 36px;
  height: 36px;
  background: url(../../../images/ko/mo/APP/ico_telephone.png) no-repeat 0 0;
  background-size: 36px 36px;
  z-index: 10;
  font-size: 0;
  color: transparent;
  text-indent: -9999px;
}
.btnTelephone:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 36px;
  height: 36px;
  background: #94937a;
  opacity: 0.45;
  border-radius: 50%;
}
/* E:Reservation 2020-11-20 add */

/* csr hotline 제보 추가 */
.btnDC_frm {
  width: 100%;
  padding: 0.45em 0.6em 0.35em;
  margin-top: 16px;
  font: 400 13px/1.5 gothamL;
  letter-spacing: -0.025em;
  border: 1px solid #ccc;
}
.titDep4 {
  font-size: 18px;
  font-weight: 600;
  margin: 56px 0 18px;
}
.titDep5 {
  font-size: 24px;
  font-weight: 600;
  margin: 56px 0 18px;
  text-align: center;
}
.txtGuide_wrap {
  text-align: center;
  margin-top: 20px;
}
.txtGuide02 {
  position: relative;
  display: inline;
  font-size: 14px;
  color: #333;
  padding-left: 13px;
}
p.txtGuide02:before {
  content: "＊";
  position: absolute;
  left: 0;
  top: 3px;
  font-size: 10px;
}

.btnFull {
  width: 100% !important;
}
.btnArea.tip {
  margin: 45px 0 0 0;
}
.btnArea.tip a + a {
  margin-top: 10px;
}

.icoArr {
  display: block;
  position: relative;
}
.icoArr::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 8px;
  height: 15px;
  background: url(../../../images/ko/pc/common/ico_arr_10x18.png) no-repeat right 50%;
}

.tipView_list_wrap {
  margin-top: 30px;
}
.tipView_list {
}
.tipView_list > li {
  width: 100%;
  margin-bottom: 36px;
}
.tip-left {
  width: 100%;
  border-bottom: 1px solid #ccc;
  padding: 0 0 15px;
}
.tip-left h4 {
  font-size: 24px;
  font-weight: 600;
}
.tip-right {
  padding-top: 15px;
}
.tip-info {
  display: inline-block;
  width: 13%;
}
.txtGuide.tip {
  margin-top: 10px;
}

.tipView_list_wrap ul.listDep1 li {
  margin-top: 5px;
}

/* offers 추가 */
.josunOffers-hub .inner {
  padding: 65px 40px 65px 20px;
  overflow: hidden;
}
.josunOffers-hub .titDep1 > a {
  display: block;
  position: relative;
}
.josunOffers-hub .titDep1 > a:after {
  content: "";
  display: block;
  position: absolute;
  right: -20px;
  bottom: 15px;
  width: 17px;
  height: 10px;
  background: url(../../../images/ko/mo/common/ico_btn_more.png) no-repeat 0 0;
  background-size: 17px 10px;
}
.josunOffers-hub .swipeWrapArea {
  margin-top: 12px;
}
.josunOffers-hub .swipeWrap {
  margin: 0;
  overflow: visible;
}
.josunOffers-hub .swipeWrap .swipeCont > li {
  position: relative;
  padding-right: 20px;
}
.josunOffers-hub .swipeWrap .swipeCont > li a {
  display: block;
  padding-bottom: 38px;
} /*20200810(추가) lsm */
.josunOffers-hub .swipeWrap .swipeCont > li .thum {
  position: relative;
  display: block;
  overflow: hidden;
}
.josunOffers-hub .swipeWrap .swipeCont > li .tit {
  font: 400 22px playfair;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 15px 0 10px;
}
.josunOffers-hub .swipeWrap .swipeCont > li .txt {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.josunOffers-hub .swipeWrap .swipeCont > li .date {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  font: 400 14px gothamL;
  color: #777;
}
.josunOffers-hub .swipeWrapArea .indicator {
  margin: 20px 0 0;
}

/* ESG */
.cardList.esgCard .link {
  margin-top: 20px;
}
.cardList.esgCard .link a {
  font-size: 14px;
}
.cardList.esgCard .link a span {
  display: inline-block;
  position: relative;
  padding: 0;
}
.cardList.esgCard .link a span:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  background: #333;
  position: absolute;
  left: 0;
  bottom: 0;
}
.cardList.esgCard .link a::before {
  display: none;
}

.esgArea .divTop.topnone:before {
  display: none;
}
.esgArea .businessRoomList.type02 > li:nth-child(odd) .info > .thum,
.esgArea .businessRoomList.type02 > li:nth-child(even) .info > .thum {
  padding: 0;
}
.esgArea .businessRoomList.type02 .tit,
.esgArea .businessRoomList.type02 .txt {
  padding-left: 0;
  padding-right: 0;
}
.esgArea .businessRoomList.type02 .tit {
  padding-top: 30px;
  font: 500 20px gothamM, spoqaR;
}
.esgArea .businessRoomList.type02 .txt {
  padding-top: 15px;
}
.esgArea .businessRoomList.type02 > li:last-child {
  margin-bottom: 0;
}
.esgArea .businessRoomList.botnone {
  margin-bottom: 0;
}
.esgArea .businessRoomList.martop {
  margin-top: 35px;
}
.esgArea .businessRoomList.type02 > li:first-child {
  margin-bottom: 45px;
}
.esgArea .dotList.dot01 {
  margin-top: 60px;
}
.esgArea .dotList .list p {
  font-size: 15px;
  font-weight: 400;
}
.esgArea .dotList .list + .list {
  padding-top: 25px;
}
.esgArea .dotList .titdot {
  position: relative;
  padding-left: 10px;
}
.esgArea .dotList .titdot:before {
  content: "";
  display: inline-block;
  width: 2px;
  height: 2px;
  background: #000;
  border-radius: 50%;
  position: absolute;
  top: 10px;
  left: 0;
}
.esgArea .dotList .subtxt {
  padding-left: 10px;
  padding-top: 5px;
}
.esgArea .dotList .subtxt li {
  position: relative;
  padding-left: 10px;
  color: #777777;
  font-size: 14px;
  font-weight: 300;
  padding-top: 3px;
}
.esgArea .dotList .subtxt li:before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 1px;
  background: #777777;
  position: absolute;
  top: 13px;
  left: 0;
}
.esgArea .dotList.info .subtxt li {
  font-size: 15px;
  color: #000;
}
.esgArea .dotList.info .subtxt li:before {
  background: #000;
}
.esgArea .traceTit {
  padding-top: 50px;
}
.esgArea .traceTit .tit {
  font-size: 24px;
  margin-bottom: 15px;
}
.esgArea .historyList {
  margin-top: 30px;
}
.esgArea .historyList dt {
  padding-bottom: 15px;
}
.esgArea .historyList dd + dd {
  margin-top: 15px;
}
.esgArea .historyList li.small {
  padding-bottom: 35px;
}
.esgArea .titDep2 {
  font: 500 24px gothamB, spoqaR;
  margin-top: 60px;
}
.esgArea .titDep2.marBot {
  margin-bottom: 50px;
}
.esgArea .titDep2.marBot2 {
  margin-bottom: 35px;
}
.esgArea .titDep3 {
  font: 400 22px gothamB, spoqaR;
  margin-top: 60px;
}
.esgArea .titDep3.marBot {
  margin-bottom: 50px;
}
.esgArea .titDep3.marBot2 {
  margin-bottom: 35px;
}
.esgArea .titDep3.marTopnone {
  margin-top: 0;
}
.esgArea .titDep4 {
  font: 400 21px gothamB, spoqaR;
  margin: 35px 0 15px;
}
.esgArea .inner {
  padding-bottom: 60px;
}
.esgArea .inner.small {
  padding-bottom: 35px;
}
.esgArea .visionArea .centerimg {
  padding: 0 20%;
}
.esgArea .visionArea .green {
  font: 400 17px spoqaR;
  color: #008e6d;
  text-align: center;
  display: block;
  margin: 25px 0 20px;
}
.esgArea .mission .centerimg {
  padding: 0 30px;
}
.esgArea .mission .bottom_ms {
  margin-top: 30px;
}
.esgArea .mission .bottom_ms ul {
  display: inline-block;
  width: 100%;
  padding: 8px 0;
  border: 1px solid #c1c1c1;
}
.esgArea .mission .bottom_ms li {
  float: left;
  width: 50%;
  text-align: center;
  font-size: 13px;
}
.esgArea .mission .bottom_ms li + li {
  border-left: 1px solid #b2b2b2;
}
.esgArea .environ .centerimg {
  padding: 0 20px;
  margin-top: 50px;
}
.esgArea .contTxt_list .tit {
  font-family: "spoqaR";
  padding-bottom: 15px;
}
.esgArea .contTxt_list .txt {
  font-size: 14px;
  color: #777;
}
.esgArea .contTxt_list .list + .list {
  margin-top: 30px;
}
.esgArea .ethicsArea {
  background: #f9f9f9;
  padding: 45px 0 60px;
}
.esgArea .ethicsArea .inner {
  padding: 0 40px;
}
.esgArea .ethicsArea .logo {
  padding-bottom: 30px;
}
.esgArea .btnArea.ethics {
  padding: 45px 20px 60px;
}
.esgArea .btnArea.ethics a {
  position: relative;
}
.esgArea .btnArea.ethics a:after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 20px;
  background: url("../../../images/ko/mo/HUAB/img_esg_19.png") no-repeat center;
  position: absolute;
  right: 15px;
  top: 15px;
  background-size: 50%;
}
.esgArea .tabType01 {
  position: fixed;
  top: 56px;
  background: #fff;
  margin-top: 0;
  z-index: 100;
  width: 100%;
}
.esgArea .tabType01 li a {
  font-family: "spoqaR";
}
.esgArea .tabType01 li button {
  display: block;
  position: relative;
  height: 50px;
  line-height: 50px;
  margin: 0 17px;
  color: #777;
  text-transform: uppercase;
  font-family: "spoqaR";
}
.tabCont.esgArea {
  padding-top: 51px;
}
.esgPopup .layerInner {
  padding: 68px 0px;
}
.esgPopup .txt {
  padding: 0 20px;
}
.esgPopup .tblH {
  margin: 20px 0 40px;
}
.esgPopup .tblH tbody tr:first-child td {
  border-top: 1px solid;
}
.esgNewsWrap .divTop.topnone:before {
  display: none;
}
.esgNewsWrap .titDep2 {
  font: 400 24px gothamB, spoqaR;
  margin-top: 60px;
}
.esgNewsWrap .titDep2.marBot {
  margin-bottom: 20px;
}
.esgNewsWrap .titDep2.marBot2 {
  margin-bottom: 35px;
}
.esgNewsWrap .inner {
  padding-bottom: 20px;
}
.esgNewsList .thum {
  display: block;
}
.esgNewsList .titArea {
  padding: 0 20px;
  display: block;
}
.esgNewsList .titArea .tit {
  display: block;
  font: 500 20px gothamM, notokrR;
  line-height: 1;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  white-space: nowrap;
  padding-top: 35px;
}
.esgNewsList .titArea .txt {
  display: block;
  padding-top: 10px;
  font: 300 15px spoqaL;
  width: 100%;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  white-space: nowrap;
}
.esgNewsList li {
  padding-bottom: 60px;
}
.esgNewsList .btnMore {
  padding-top: 0;
}
/* 230216 ESG 게시판 고도화 */
.esgNewsList .thum {
  position: relative;
}
.esgNewsList .thum .esgBadge {
  position: absolute;
  top: 0;
  right: 0;
}
.esgBadge {
  display: inline-block;
  font-size: 12px;
  min-width: 74px;
  padding: 5px 15px 4px;
  text-align: center;
  color: #fff;
  font-family: "gothamL";
}
.esgBadge.E01 {
  background: #005217;
} /*친환경*/
.esgBadge.E02 {
  background: #bb1b23;
} /*사회공헌*/
.esgBadge.E03 {
  background: #015dac;
} /*가치소비여행*/
.esgBadge.E04 {
  background: #000;
} /*윤리경영*/
.esgNewsList .selectDiv .selectWrap {
  width: 140px;
  margin-bottom: 10px;
}
.detailView .esgBadge {
  margin: 38px 0 15px;
}

/* 250312 안전보건경영 메뉴 추가 */
.tblWrap {
  margin-top: 45px;
}
.tblH > tfoot > tr > th,
.tblH > tfoot > tr > td {
  padding: 10px;
  font-family: gothamM, spoqaM;
  font-size: 12px;
  border-left: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  text-align: right;
  color: #666;
  background-color: #f9f9f9;
}
.tblH > tfoot > tr > th {
  text-align: center;
}
.tblH > tfoot > tr:last-child > th,
.tblH > tfoot > tr:last-child > td:first-child {
  border-left: none;
}
.tabToggleCont .tblH > tbody > tr:last-child > th,
.tabToggleCont .tblH > tbody > tr:last-child > td {
  border-bottom: 1px solid #e5e5e5;
}
.tabToggleCont .statsTable .tblH > tbody > tr > th {
  font-size: 12px;
}
.tabToggleCont .statsTable .tblH > tbody > tr > td {
  text-align: right;
}

.tabToggleCont .titDep2 {
  font: 500 24px gothamB, spoqaR;
  margin-top: 60px;
}
.tabToggleCont .titDep3 {
  font: 400 22px gothamB, spoqaR;
  margin-top: 60px;
}
.tabToggleCont .titDep3.marBot {
  margin-bottom: 50px;
}
.tabToggleCont .titDep3.marBot2 {
  margin-bottom: 15px;
}
.tabToggleCont .tblWrap .titDep3 {
  margin-top: 0;
}
.tabToggleCont .divTop.topnone:before {
  display: none;
}

/* 안전보건경영 소개 */
.cardListWrap {
  margin-top: 40px;
}
.cardTyList > li > .detail {
  padding: 0 20px;
  margin-top: 24px;
  text-align: center;
}
.cardTyList > li > .detail > dt {
  font-family: "spoqaR";
  font-size: 22px;
}
.cardTyList > li > .detail > dd {
  font-size: 15px;
}
.cardTyList > li > .detail > dt + dd {
  margin-top: 15px;
}

.cardTyList.boxTy > li {
  width: 100%;
  background-color: #fff;
  border: 1px solid #eee;
  padding: 20px;
  text-align: center;
}
.cardTyList.boxTy > li > em {
  display: block;
  font-family: "gothamB";
  font-size: 33px;
  font-weight: bold;
  line-height: 1;
}
.cardTyList.boxTy > li > span {
  display: block;
  font-family: "gothamL";
  font-size: 18px;
  color: #666;
  line-height: 1;
}
.cardTyList.boxTy > li > span > em {
  font-family: "gothamB";
  font-weight: bold;
}
.cardTyList.boxTy > li > h6 {
  font-family: "spoqaR";
  font-size: 20px;
  font-weight: 500;
}
.cardTyList.boxTy > li > p {
  font-size: 16px;
}

.cardTyList > li + li {
  margin-top: 45px;
}
.shmCardList .cardTyList > li + li {
  margin-top: 16px;
}
.cardTyList.imgTy > li + li {
  margin-top: 0;
}

.cardTyList.boxTy > li > em + span,
.cardTyList.boxTy > li > span + h6 {
  margin-top: 12px;
}
.cardTyList.boxTy > li > h6 + p {
  margin-top: 15px;
}

.cardTyList.imgTy {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 10px;
}
.cardTyList.imgTy > li {
  width: calc(50% - 5px);
}
.cardTyList.col1 > li {
  width: 100%;
}
.cardTyList.col3 > li {
  width: calc(33.33% - 7px);
}

.grayContBox {
  width: 100%;
  background-color: #f9f9f9;
  padding: 40px 25px;
  margin-top: 32px;
  text-align: center;
  box-sizing: border-box;
}
.grayContBox .cont > h5 {
  font-family: "spoqaR";
  font-size: 22px;
}
.grayContBox .cont > h6 {
  font-family: "spoqaR";
  font-size: 17px;
}
.grayContBox .cont > .corePhrase {
  margin-top: 12px;
}
.grayContBox .corePhrase {
  font-family: "gothamM";
  font-size: 25px;
}

.grayContBox.shmCoreValues {
  margin-top: 45px;
}
.grayContBox.shmPolicyBox {
  text-align: left;
}
.grayContBox.shmPolicyBox {
  padding: 35px 25px;
}

.quotationMarks::before,
.quotationMarks::after {
  content: "";
  display: inline-block;
  width: 32px;
  height: 22px;
  vertical-align: top;
}
.quotationMarks::before {
  background: url("../../../images/ko/mo/common/ico_dq_first.png") no-repeat 0 0;
  background-size: cover;
  margin-right: 18px;
}
.quotationMarks::after {
  background: url("../../../images/ko/mo/common/ico_dq_last.png") no-repeat 0 0;
  background-size: cover;
  margin-left: 18px;
}

.imgBox {
  margin-top: 40px;
}

/* 목표 및 계획 */
.numList {
  margin-top: 20px;
}
.numList > li + li {
  margin-top: 10px;
}

.cardListWrap.riskAP .cardTyList.boxTy > li {
  text-align: left;
}
.cardListWrap.riskAP .cardTyList.boxTy > li > em {
  font-family: "gothamL";
  font-size: 12px;
}
.cardListWrap.riskAP .cardTyList.boxTy > li > dl {
  margin-top: 14px;
}
.cardListWrap.riskAP .cardTyList.boxTy > li > dl > dt {
  font-family: "spoqaR";
  font-size: 17px;
}
.cardListWrap.riskAP .cardTyList.boxTy > li > dl > dd {
  position: relative;
  font-family: "spoqaL";
  font-size: 15px;
  color: #666;
  padding-left: 10px;
}
.cardListWrap.riskAP .cardTyList.boxTy > li > dl > dd::before {
  content: "";
  width: 3px;
  height: 3px;
  background-color: #666;
  border-radius: 50%;
  position: absolute;
  top: 10px;
  left: 0;
}
.cardListWrap.riskAP .cardTyList.boxTy > li > dl > dt + dd {
  margin-top: 10px;
}
.shActivityImg .cardTyList > li > p {
  font-size: 16px;
  padding-top: 10px;
}

/* 221019 쓱데이 이벤트 팝업 */
.layerPop.ssgdayevent .popTit {
  padding: 20px 20px 0;
}
.layerPop.ssgdayevent .ssgdaybtn {
  background-color: #ff7373;
  padding: 8px 0;
  border: 0;
  color: #fff;
  font-weight: bold;
}
.layerPop.ssgdayevent .aniTxt1,
.ssgdayevent .aniTxt2,
.ssgdayevent .aniTxt3 {
  opacity: 0;
  -webkit-animation: subTitAni 0.5s ease-in-out both;
  -moz-animation: subTitAni 0.5s ease-in-out both;
  -ms-animation: subTitAni 0.5s ease-in-out both;
  -o-animation: subTitAni 0.5s ease-in-out both;
  animation: subTitAni 0.5s ease-in-out both;
}

.layerPop.ssgdayevent .aniTxt2 {
  -webkit-animation-delay: 0.3s;
  -moz-animation-delay: 0.3s;
  -ms-animation-delay: 0.3s;
  -o-animation-delay: 0.3s;
  animation-delay: 0.3s;
}
.layerPop.ssgdayevent .aniTxt3 {
  -webkit-animation-delay: 0.6s;
  -moz-animation-delay: 0.6s;
  -ms-animation-delay: 0.6s;
  -o-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes subTitAni {
  from {
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

@keyframes subTitAni {
  from {
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

/*20221129 식음예약페이지 */
.drDining_st01 .titDep2 {
  font: 500 22px playfair, gothamL, spoqaR;
  margin: 35px 0 20px;
}

.drDining_st02 .topArea .titArea .infoTxt {
  margin: 15px 0 10px;
  line-height: 1;
}
.drDining_st02 .topArea {
  padding: 60px 20px 20px;
}
.drDining_st02 .stepWrap ol li em {
  font-family: "spoqaR";
}
.drDining_st02 .calContainer.calSingle .calendar td.promotion a:after {
  display: none;
}
.drDining_st02 .calNotiCont .tit {
  font-family: "spoqaR";
}
.drDining_st02 .calNotiCont .txt {
  margin-top: 20px;
}
.drDining_st02 .selectInfoWrap {
  margin-bottom: 30px;
}
.drDining_st02 .selectInfoWrap h2 {
  font-size: 17px;
  font-family: "spoqaR";
  margin: 40px 0 0;
}
.drDining_st02 .selectInfoWrap .inner {
  padding-bottom: 30px;
}
.drDining_st02 .opSelectList .intList .timeTittop {
  display: block;
  line-height: 23px;
  margin: 0 0 25px;
}
.drDining_st02 .manualInfoWrap {
  padding: 30px 20px;
  background: #f9f9f9;
}
.drDining_st02 .manualInfoWrap .txtWrap {
  display: inline-block;
  text-align: left;
}
.drDining_st02 .manualInfoWrap strong {
  color: #989442;
  font-size: 14px;
  line-height: 21px;
  display: inline-block;
  font-family: notokrR;
}
.drDining_st02 .manualInfoWrap .order_txt {
  font-size: 15px;
  line-height: 21px;
  font-weight: 300;
  margin-top: 15px;
  font-family: "spoqaR";
}
.drDining_st02 .manualInfoWrap .txtGuide {
  margin-top: 10px;
}
.drDining_st02 .allTimeWrap .titArea {
  padding: 0 20px;
}
.drDining_st02 .allTimeSwitch {
  display: block;
  height: 23px;
  line-height: 23px;
  float: right;
}
.drDining_st02 .allTimeSwitch span {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
.drDining_st02 .allTimeSwitch [type="checkbox"] {
  appearance: none;
  position: relative;
  border: max(2px, 0.1em) solid #bbb;
  border-radius: 1.25em;
  width: 36px;
  height: 23px;
  background: #bbb;
  cursor: pointer;
}
.drDining_st02 .allTimeSwitch [type="checkbox"]::before {
  content: "";
  position: absolute;
  left: 0;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  transform: scale(0.8);
  background-color: #fff;
  transition: left 250ms linear;
}
.drDining_st02 .allTimeSwitch [type="checkbox"]:checked {
  background-color: #000;
  border-color: #000;
}
.drDining_st02 .allTimeSwitch [type="checkbox"]:checked::before {
  background-color: #fff;
  left: 12px;
}
.drDining_st02 .allTimeSwitch [type="checkbox"]:focus-visible {
  outline-offset: max(2px, 0.1em);
  outline: max(2px, 0.1em) solid #000;
}

.drDining_st02 .timeSel {
  overflow: hidden;
}
.drDining_st02 .timeScroll {
  overflow-x: auto;
  white-space: nowrap;
  padding: 5px 20px;
}
.drDining_st02 .timeSel .frmList {
  flex-wrap: nowrap;
  margin: 0;
}
.drDining_st02 .timeSel .frmList li {
  margin-top: 0;
}
.drDining_st02 .frmList .frmRadio label {
  border: 1px solid #000;
  color: #000;
  text-align: center;
  min-width: 155px;
}
.drDining_st02 .frmList .frmRadio input[type="radio"]:checked + label {
  background: #000;
  color: #fff;
}
.drDining_st02 .frmList .frmRadio input:disabled + label {
  background: #f4f4f4;
  border-color: #f0f0f0;
  color: #ccc;
}
.drDining_st02 .frmList .frmRadio input:disabled:checked + label {
  background: #f4f4f4;
  border-color: #f0f0f0;
  color: #ccc;
}
.drDining_st02 .calInner .calendar td .default {
  color: #ccc;
  text-decoration: none;
}
.drDining_st02 .timeTit {
  display: block;
  padding: 0 20px 10px;
  font-size: 14px;
  color: #333;
}
.drDining_st02 .timeTit.bottom {
  padding-top: 40px;
}
.drDining_st02 .emptyTime {
  font-size: 14px;
  padding: 12px 0 13px;
  background: #f9f9f9;
  border: 1px solid #f0f0f0;
  color: #bbb;
  flex: 0 220px;
  text-align: center;
}

.drDining_st02 .timeGuideWrap {
  padding: 15px 0 58px;
}
.drDining_st02 .timeGuideWrap li {
  display: inline-block;
  padding-left: 26px;
  margin-left: 15px;
  position: relative;
  font-size: 14px;
  color: #333;
}
.drDining_st02 .timeGuideWrap li:first-child {
  margin-left: 20px;
}
.drDining_st02 .timeGuideWrap li:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  left: 0;
  top: 3px;
  border: 1px solid #fff;
}
.drDining_st02 .timeGuideWrap li.tg01:before {
  background: #000;
  border-color: #000;
}
.drDining_st02 .timeGuideWrap li.tg02:before {
  background: #f4f4f4;
  border-color: #f0f0f0;
}
.drDining_st02 .timeGuideWrap li.tg03:before {
  background: #fff;
  border-color: #000;
}
.drDining_st02 .rsvDnList {
  padding-top: 20px;
}

.drDining_st03 .titDep3 {
  font-family: "spoqaR";
  font-size: 24px;
  margin: 50px 0 20px;
}
.drDining_st03 .topArea .titArea .infoTxt {
  margin: 15px 0 10px;
  line-height: 1;
}
.drDining_st03 .topArea {
  padding: 60px 20px 20px;
}
.drDining_st03 .stepWrap ol li em {
  font-family: "spoqaR";
}
.drDining_st03 .numPeople button[disabled] {
  border: 1px solid #ccc;
}
.drDining_st03 .persontit .txtt {
  font-size: 16px;
  font-weight: 300;
  line-height: 1;
  padding-bottom: 10px;
}
.drDining_st03 .persontit p {
  font-size: 14px;
  font-family: "playfair";
  font-weight: 500;
}
.drDining_st03 .persontit p span {
  font-size: 13px;
  text-transform: uppercase;
  font-family: gothamL;
}
.drDining_st03 .opSelectList .numArea .numCont {
  top: 7px;
}
.drDining_st03 .verifiCodeBtn {
  height: 48px;
  line-height: 48px;
  background: #fff;
  border: 1px solid #ccc;
  color: #000;
  font-size: 15px;
  padding: 0;
  margin-top: 30px;
}
.drDining_st03 .verifiCodeBtn.active {
  background: #000;
  border-color: #000;
  color: #fff;
}
.drDining_st03 .verifiCode .intArea {
  position: relative;
}
.drDining_st03 .verifiCode .intArea .vertifiTime {
  position: absolute;
  right: 0;
  top: 0;
  font-family: gothamL;
}
.drDining_st03 p.txtGuide,
.drDining_st03 .txtGuide li {
  color: #777;
}
.drDining_st03 .toggleCont .tblH {
  border-bottom: 0;
}
.drDining_st03 .toggleCont .tblH tbody tr td {
  border-bottom: 1px solid #e4e4e4;
}
.drDining_st03 .totalWrap .chkTime {
  background: #000;
  color: #fff;
  font-size: 14px;
  font-weight: 300;
  padding: 10px 0;
  text-align: center;
}
.drDining_st03 .totalWrap .chkTime span {
  font-family: gothamM;
}
.drDining_st03 .totalWrap .txtGuide {
  position: absolute;
  bottom: auto;
  left: 20px;
  top: 90px;
}
.drDining_st03 .totalWrap .total .price {
  bottom: 54px;
}
.drDining_st03 .totalWrap .total .tit {
  bottom: 65px;
  font-family: "spoqaR";
}
.drDining_st03 .totalWrap .total {
  height: 149px;
}
.drDining_st03 .totalWrap .totalCont {
  padding: 53px 20px 165px;
}
.drDining_st03 .totalWrap {
  height: 150px;
}
/*230221 문구 두줄로*/
.drDining_st03 .totalWrap.type2 {
  height: auto;
}
.drDining_st03 .totalWrap.type2 .total {
  height: auto;
}
.drDining_st03 .totalWrap.type2 .txtGuide {
  position: none;
  position: initial;
  margin: 60px 20px 24px;
}
.drDining_st03 .totalWrap.type2 .total .price {
  bottom: auto;
  top: 60px;
}
.drDining_st03 .totalWrap.type2 .total .tit {
  bottom: auto;
  top: 60px;
}

.drDining_st03 .toggleListAll .clickBtn {
  position: relative;
  cursor: pointer;
  padding: 0;
}
.drDining_st03 .toggleListAll .btnToggle {
  position: relative;
  right: auto !important;
  left: auto !important;
  top: auto;
  width: auto !important;
  height: auto;
  overflow: visible;
  text-indent: 0;
  padding: 18px 60px 18px 20px;
  display: block;
}
.drDining_st03 .toggleListAll .btnToggle:after {
  display: none;
}
.drDining_st03 .toggleListAll .clickBtn:after {
  content: "";
  position: absolute;
  right: 20px;
  top: 23px;
  display: block;
  width: 18px;
  height: 10px;
  padding: 5px 0;
  background: url(../../../images/ko/pc/common/ico_toggle_18x10.png) no-repeat 0 5px;
}
.drDining_st03 .toggleListAll .toggleOn .clickBtn:after {
  background-position: -18px 5px;
}
.drDining_st03 .toggleListAll > li .toggleCont input[type="text"] {
  padding: 8px 13px 8px 0;
  padding: 7px 13px 9px 0\0IE;
  color: #000;
  border: solid #ccc;
  border-width: 0 0 1px 0;
  vertical-align: middle;
  font-size: 16px;
}
.drDining_st03 .toggleListAll .intList > li .requestArea input {
  font-size: 26px;
}
.drDining_st03 .frm.type03 .label {
  display: inline-block;
  position: relative;
  font-size: 16px;
  padding-left: 30px;
  font-family: gothamL, notokrL;
  text-transform: uppercase;
}
.drDining_st03 .frm.type03 .label:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  background: url(../../../images/ko/mo/common/spr_form.png) no-repeat;
  background-size: 150px auto;
}
.drDining_st03 .frm.type03 .label:before {
  background-position: 0 -8px;
  top: 2px;
  margin: 0;
}
.drDining_st03 .frm.type03 input[type="checkbox"]:checked + .label:before {
  background-position: -20px -8px;
}
.drDining_st03 .toggleListAll .txtGuide {
  margin: 0 20px 30px;
  padding-top: 20px;
  border-top: 1px solid #e5e5e5;
}
.drDining_st03 .toggleListAll .txtGuide:before {
  top: 23px;
}
.drDining_st03 .toggleListAll > li .toggleCont .toggleInner {
  border-top: 0;
  padding-top: 0;
}
.drDining_st03 .toggleListAll .titDep3 {
  margin: 0;
  padding: 5px 0 25px;
}
.drDining_st03 .emailInp .selectWrap {
  margin-top: 10px;
}

/*비회원/영문회원 추가*/
.drDining_st03 .selectWrap.eng {
  margin-top: 10px;
}
.drDining_st03 .phoneInp.eng {
  margin-top: 10px;
}
/* // 비회원/영문회원 추가*/

.drDining_st04 .pageGuide {
  font-size: 14px;
}
.drDining_st04 .f24.tit {
  font-family: "spoqaR";
}
.drDining_st04 .finishArea {
  padding: 60px 20px;
}
.drDining_st04 .titDep2 {
  margin: 60px 0 20px;
}
.drDining_st04 .payTotal .tit {
  font-family: "spoqaR";
}

.drDiningMypage .cardList li .cardInner .date {
  padding-top: 20px;
}
.drDiningMypage .noMemberLink {
  text-align: center;
  margin-top: 25px;
}
.drDiningMypage .topGuideArea {
  padding-top: 15px;
}
.drDiningMypage .categoryTxt {
  color: #989442;
  font-size: 15px;
  text-transform: uppercase;
}
.drDiningMypage .categoryTxt.st02 {
  color: #aaa;
}
.drDiningMypage .categoryTxt.st03 {
  color: #b01414;
}
.drDiningMypage .myBox .infoArea li .tit {
  color: #777;
}
.drDiningMypage .myBox .titDep2.extra {
  margin-top: 30px;
  margin-bottom: 15px;
}
.drDiningMypage .myBox .titDep2.menu {
  margin-top: 40px;
  margin-bottom: 15px;
}
.drDiningMypage .myBox .visitorInfoBtn {
  position: relative;
}
.drDiningMypage .myBox .modifyInfo {
  padding: 0 20px 130px;
}

.drDiningCancel .layerCont {
  border-radius: 0;
  height: calc(var(--vh, 1vh) * 70);
  overflow: visible;
}
.drDiningCancel .layerInner {
  padding-bottom: 100px;
  padding-top: 40px;
}
.drDiningCancel .btnArea {
  padding: 0;
}

.drDiningCancel .cancelArea {
  margin-top: 25px;
}
.drDiningCancel .cancelArea input {
  width: 100%;
  border-bottom: 1px solid #000;
}
.drDiningCancel .txtConfirm {
  font-family: "spoqaR";
  font-size: 14px;
}
.drDiningCancel .reserveOpArea .total {
  margin: 20px 0 15px;
}
.drDiningCancel .txtConfirmt {
  font-size: 17px;
  text-align: center;
  font-family: "spoqaR";
}

.drDiningCancel .btnClose {
  position: absolute;
  top: -48px;
  right: -15px;
  background: url(../../../images/ko/mo/common/btn_close_36x36_w.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}

/*다이닝예약안내 팝업*/
.drDiningPop .tit {
  font-size: 17px;
  margin-bottom: 30px;
  display: block;
  font-family: "spoqaR";
}
.drDiningPop .txt {
  text-align: left;
  color: #333;
  font-size: 14px;
  letter-spacing: -0.2px;
}
.drDiningPop .txt + .txt {
  margin-top: 15px;
}
.drDiningPop .txt b {
  font-family: "spoqaR";
  color: #000;
}
.drDiningPop .layerInner {
  padding: 40px 20px;
}

/* 221129 식음예약페이지 - 비회원로그인*/
.loginFrm3 {
  position: relative;
  margin-bottom: 24px;
}
.drDiningPhBtn {
  border: 1px solid #ccc;
  background: #fff;
  color: #000;
  margin-top: 20px;
}
.drLoginCode .vertifiTime {
  position: absolute;
  top: 16px;
  right: 16px;
  font-family: gothamL;
}
.drLoginCode button.dinigchk {
  margin-bottom: 10px;
}
.drLoginCode {
  display: none;
}
.drLoginCode.ok {
  display: block;
}

/* 221221 식음예약페이지 - 테이블/메뉴/세트선택 팝업*/
.diningSelectPop .priceWrap .chkTime {
  background: #000;
  border-bottom: 1px solid #3f3f3f;
  color: #fff;
  font-size: 14px;
  font-weight: 300;
  padding: 10px 0;
  text-align: center;
}
.diningSelectPop .priceWrap .chkTime span {
  font-family: gothamM;
}
.diningSelectPop .priceWrap {
  position: fixed;
  bottom: 68px;
  left: 0;
  width: 100%;
  background: #fff;
}
.diningSelectPop .priceWrap .total {
  padding: 40px 20px;
  position: relative;
}
.diningSelectPop .priceWrap .tit {
  position: absolute;
  left: 20px;
  bottom: 35px;
  font-family: "spoqaR";
}
.diningSelectPop .priceWrap .price {
  position: absolute;
  right: 20px;
  bottom: 25px;
  font-size: 14px;
  text-align: right;
  line-height: 30px;
  font-family: gothamL;
}
.diningSelectPop .priceWrap .price em {
  display: inline-block;
  vertical-align: -5px;
  font-size: 30px;
  margin-right: 5px;
  font-family: playfair;
  font-weight: 700;
  letter-spacing: 2px;
  font-feature-settings: "lnum", "pnum";
}
.diningSelectPop .layerInner {
  padding: 30px 20px 335px;
}
.diningSelectPop .compTit {
  font-size: 20px;
  font-family: "spoqaR";
  padding: 25px 20px;
}
.diningSelectPop .frmList > li {
  flex: 1 50%;
  text-align: center;
}
.diningSelectPop .dnSelectBox + .dnSelectBox {
  margin-top: 40px;
}
.diningSelectPop .dnSelectBox .boxTit {
  color: #333;
  font-size: 14px;
  font-family: "spoqaR";
  margin-bottom: 25px;
}
.diningSelectPop .dnSelectBox .boxTit.sSelects {
  margin-bottom: 10px;
}
.diningSelectPop .dnSelectBox .boxTit.stable {
  margin-bottom: 15px;
}
.diningSelectPop .selectWrap select {
  font-size: 16px;
}
.diningSelectPop .frm input[type="radio"] + label:before {
  background-position: 0 -8px;
}
.diningSelectPop .frm input[type="radio"]:checked + label:before {
  background-position: -20px -8px;
}
.diningSelectPop .menuSelcet {
  display: table;
  width: 100%;
}
.diningSelectPop .menuSelcet li {
  vertical-align: middle;
  padding-bottom: 25px;
}
.diningSelectPop .menuSelcet_li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.diningSelectPop .menuSelcet.type01 .txt {
  line-height: 22px;
  padding-right: 10px;
}
.diningSelectPop .menuSelcet_li .frm label {
  font-size: 16px;
}
.diningSelectPop .menuSelcet_li .price {
  display: inline-block;
  padding-left: 10px;
  font-family: gothamL, notokrL;
  text-align: right;
  font-size: 16px;
}
.diningSelectPop .menuSelcet.type02 .txt {
  font-size: 16px;
  line-height: 22px;
  padding-right: 20px;
  position: relative;
  width: 100%;
}
.diningSelectPop .menuSelcet.type02 .numPeople span {
  width: 38px;
}
.diningSelectPop .menuSelcet.type02 li:last-child {
  padding-bottom: 20px;
}
.diningSelectPop .infoArea + .txtGuide {
  margin-top: 30px;
}
.diningSelectPop .infoArea li .tit {
  font-size: 15px;
  color: #000;
}
.diningSelectPop .infoArea li .txt {
  font-size: 15px;
  color: #000;
}
.diningSelectPop .frmList input[disabled] + label {
  background: #f9f9f9;
  border-color: #f0f0f0;
  color: #bbb;
}
.diningSelectPop .frmList input[disabled]:checked + label {
  background: #f9f9f9 !important;
  border-color: #f0f0f0 !important;
  color: #bbb !important;
}
.diningSelectPop .manualInfoWrap {
  padding: 30px 20px;
  background: #f9f9f9;
}
.diningSelectPop .manualInfoWrap .txtWrap {
  display: inline-block;
  text-align: left;
}
.diningSelectPop .manualInfoWrap strong {
  color: #989442;
  font-size: 14px;
  line-height: 21px;
  display: inline-block;
  font-family: notokrR;
}
.diningSelectPop .manualInfoWrap .order_txt {
  font-size: 15px;
  line-height: 21px;
  font-weight: 300;
  margin-top: 15px;
  font-family: "spoqaR";
}
.diningSelectPop .manualInfoWrap .txtGuide {
  margin-top: 10px;
}
.diningSelectPop .add_Description {
  color: #888;
  font-size: 12px;
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: 36px;
  margin-top: 5px;
}
.diningSelectPop .menuSelcet li {
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.drDining_st04 .manualInfoWrap {
  text-align: center;
  margin-top: 25px;
}
.drDining_st04 .manualInfoWrap strong {
  color: #989442;
  font-size: 14px;
  line-height: 21px;
  display: inline-block;
  font-family: notokrR;
}
.drDining_st04 .manualInfoWrap .order_txt {
  font-size: 15px;
  line-height: 21px;
  font-weight: 300;
  margin-top: 15px;
  font-family: "spoqaR";
}
.drDining_st04 .manualInfoWrap .txtGuide {
  margin-top: 15px;
  display: inline-block;
}

.diningSelectPop .menuSelcet.type02 .badge_type {
  position: absolute;
  top: -21px;
  left: 0;
  background: #989442;
  color: #fff;
  display: inline-block;
  min-width: 31px;
  padding: 0 8px;
  height: 20px;
  line-height: 20px;
  font-size: 12px;
  text-align: center;
  letter-spacing: 0;
}
.diningSelectPop .menuSelcet .badge_txt {
  position: absolute;
  top: -21px;
  left: 0;
  color: #989442;
  display: inline-block;
  height: 20px;
  line-height: 20px;
  font-size: 12px;
  letter-spacing: 0;
}
.diningSelectPop .menuSelcet.badge_all li {
  padding-top: 21px;
}
.diningSelectPop .txtSelectBox .txtGuide {
  margin-top: 0;
}
.diningSelectPop .dnSelectBox.addMenu {
  margin-top: 30px;
  background: #f9f9f9;
  padding: 30px 20px;
}
.diningSelectPop .addMenu .menuSelcet.type02 .badge_type {
  background: #888;
}

.diningSelectPop .ico_ampersand {
  background: url(../../../images/ko/mo/common/ico_ampersand.png) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 11px;
  height: 10px;
  padding-right: 3px;
}
.diningSelectPop .dnSelectBox .smallTxt {
  font-size: 14px;
  color: #333;
  display: block;
  padding-top: 5px;
  font-family: "spoqaL";
}

.verifiCodeAddcont .verifiCodeBtn {
  margin-top: 20px;
}
.verifiCodeAddcont .verifiCode .intArea {
  position: relative;
}
.verifiCodeAddcont .verifiCode .intArea .vertifiTime {
  position: absolute;
  right: 0;
  top: 0;
  font-family: gothamL;
}

/*멤버십 정보 확인 및 환불 동의 - 팝업*/
.layerCont .membershiprefund {
  position: relative;
  padding: 68px 0;
}
.layerCont .membershiprefund .toggleList > li .toggleTit {
  position: relative;
  padding: 20px 40px 20px 20px;
}
.layerCont .membershiprefund .toggleList > li .scrollWrap {
  height: 250px;
  margin-top: 0;
  padding: 25px 20px;
  border-top: 1px solid #e5e5e5;
  overflow-y: scroll;
}
.layerCont .membershiprefund .frmInfo {
  padding: 0 20px 40px;
}
.layerCont .membershiprefund .frm {
  z-index: 11;
  display: block;
}
.layerCont .refundReason {
  padding: 40px 20px 40px;
}
.layerCont .refundReason .titDep3 {
  font: 700 16px/1 gothamB;
}
.layerCont .refundReason .titDep2 {
  margin: 0 0 15px;
  font: 500 20px gothamM, playfair, spoqaR;
}
.layerCont .refundReason .titDep2 span {
  font-weight: 400;
  font-size: 14px;
  display: block;
  font-family: spoqaL, gothamL, playfair;
}
.layerCont .refundReason .frm ul {
  margin-top: 8px;
}
.layerCont .refundReason .frm li + li {
  margin-top: 10px;
}
.layerCont .refundReason .refundEtcArea {
  display: none;
  width: 100%;
  height: 80px;
  margin-top: 15px;
  border-color: #ccc;
}
.layerCont .refundReason .refundEtcArea:focus {
  border-color: #000;
}
.layerCont .refundReason .refundEtcArea.open {
  display: block;
}

#couponRmLayerPop .layerInner {
  max-height: 40vh;
}
.cardList.coupon li .cardInner .couponInfo .btnLine + .btnLine {
  margin-top: 15px;
  margin-left: 0px;
}

/* 240610 멤버십 안내 추가 */
.bdTop {
  border-top: 1px solid #e5e5e5 !important;
}
.bdBottom {
  border-bottom: 1px solid #e5e5e5 !important;
}
.bdLeft {
  border-left: 1px solid #e5e5e5 !important;
}
.bdRight {
  border-right: 1px solid #e5e5e5 !important;
}

.benetfitViewBox .txtGuide {
  padding-bottom: 5px;
}

/* 241111 패키지 웨딩 프로모션 추가 */
.packagePromotionBox {
  position: relative;
  width: 100%;
}

/* 그래비티 판교 about */
.pg_partition {
  position: relative;
  padding: 36px 0 80px;
}
.pg_partition.intro {
  background: url("../../../images/ko/mo/GRAB/story01_bg.jpg") no-repeat;
  background-size: cover;
}
.pg_partition.second {
  background: url("../../../images/ko/mo/GRAB/story02_bg.jpg") no-repeat;
  background-size: cover;
}
.pg_partition.third::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url("../../../images/ko/mo/GRAB/story03_bg.jpg");
  background-repeat: repeat-x;
  background-size: cover;
  opacity: 0.5;
  animation: slideLeft 40s linear infinite;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.bg_black .tit > *,
.bg_black .desc > * {
  color: #f0f0f0;
}
.pg_partition .titBox {
  padding: 114px 0 40px;
}
.pg_partition .titBox .tit01 {
  font: 500 40px playfair;
  color: #f0f0f0;
  margin-bottom: 16px;
  text-align: center;
}
.pg_partition .titBox .txt01 {
  font-family: gothamL, notokrL;
  font-size: 16px;
  color: #f0f0f0;
  line-height: 1.6;
  letter-spacing: -0.01em;
  text-align: center;
}
.pg_partition .visualBox .storyInner {
  padding: 0 20px 70px;
}
.pg_partition .visualBox .storyInner > img {
  width: 100%;
}

.pg_partition .contRow {
  position: relative;
  display: flex;
  flex-direction: column;
}
.pg_partition .contRow .thum {
  position: relative;
  width: calc(100% - 40px);
  margin-bottom: 32px;
}
.pg_partition .contRow .thum > img {
  width: 100%;
}
.pg_partition .contRow .tit {
  padding: 0 20px;
}
.pg_partition .contRow .tit > em {
  font: 400 20px playfair;
  color: #b79d58;
  margin-bottom: 20px;
}
.pg_partition .contRow .tit > h3 {
  font: 500 52px playfair;
  margin-bottom: 40px;
}
.pg_partition .contRow .desc {
  padding: 0 40px;
}
.pg_partition .contRow .desc > h3 {
  font: 500 32px playfair;
  margin-bottom: 20px;
}
.pg_partition .contRow .desc > p {
  font-size: 16px;
}

.pg_partition .contRow.reverse .thum {
  margin-left: auto;
}
.pg_partition .contRow.center .thum {
  margin: 0 auto;
}

.objects.flowers {
  position: absolute;
  top: -32%;
  right: 0;
  width: 60%;
  z-index: -1;
}
.objects.fixtures [class^="fix_"] {
  position: absolute;
  top: -55px;
  width: 25%;
}
.objects .fix_left {
  left: -10px;
  animation: fixActionLeft 1s ease-in-out;
}
.objects .fix_right {
  right: -40px;
  animation: fixActionRight 1s ease-in-out;
}
@keyframes fixActionLeft {
  0% {
    left: -180px;
  }
  100% {
    left: -86px;
  }
}
@keyframes fixActionRight {
  0% {
    right: -180px;
  }
  100% {
    right: -86px;
  }
}

.pg_partition .contRow + .contRow {
  padding-top: 80px;
}
