.nm { width: 100%; }
.mb20 {margin-bottom: 20px;}
.mb05 { margin-bottom: 5px; }
.mb6::before {content: '' !important;}
.reser_dl { color: #000;}
.reser_wrap {
    width: 100%;
    background: #F6F4F1;
    /* background: url('/images/common/bg02.jpg') repeat; */
}
.sub_title {
    width: 100%;
    text-align: center;
    color: #393d3c;
    padding: 6% 0 1%;
}
.sub_title > h2 {
    position: relative;
    text-transform: uppercase;
    font-size: 2.2em;
    letter-spacing: 2.5px;
    color: #AF4600;
}
.sub_title > h2:after {
    content: ''; display: block; position: absolute;
    top: 90px; left: 50%; transform: translateX(-50%);
    width: 46px; height: 2px; 
    background-color: #AF4600;
}
.pen { /* 배경색 왼쪽 > 오른쪽 */
    padding: 0.2% 0.5%; 
    background: linear-gradient(to right, rgba(255,255,255,0) 50%, rgba(230,197,174,0.37) 50%); background-size: 200%; 
    transition: 2s; 
}
.pen.write { background-position: -100% 0; } 
.sub_title > p {
    padding-top: 60px;
    font-weight: 500;
    font-size: 0.9em;
}

.reserCon01 {
    width: 100%;
    background: url('/images/reser/01_01.jpg') no-repeat center center;
    background-size: cover;
    padding-bottom: 35%;
}

@media (max-width: 1200px) {
    .sub_title {padding-top: 15%; width: 100%; text-align: center; color: #393d3c; }
}

@media (max-width: 900px) {
    .sub_title > h2 { text-transform: uppercase; font-size: 1.5em; letter-spacing: 1.5px; }
    .sub_title > h2:after {
        top: 50px; 
    }
    .sub_title > p {margin-bottom: 3%; font-size: 0.6em; }
}



.reser_container{
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    
}
.reser_container .textbox{
    width: 100%;
    padding: 3%; 
    position: relative;
    line-height: 1.5em;
    background: #fff;
}
.reser_container .textbox h2{
    font-size: 2.2em;
    line-height: 1.5em;
    font-weight: bold;
    margin: 4% 0 6%;
    color: #AF4600;
}
.reser_container .textbox dl {
    display: flex;
   
}
.reser_container .textbox dt {
    display: inline-block;
    font-size: 1.4em;
    line-height: 1.5em;
    transform: translateY(2px);
}
.reser_container .textbox dd {
    font-size: 1.5em;
    line-height: 1.5em;
    word-break: keep-all;
}
.account_br {display: none;}
@media (max-width:1606px){
    .account_br {display: block;}
}
@media (max-width:1400px){
    .reser_container .textbox {
        font-size: 14px;
    }
}
@media (max-width:1251px){
    /* .account_br {display: none;} */
}
.reser_container .leftbox {
    position: relative;
    display: flex;
    border: 1px solid #b9a380;
    border-collapse: separate;
    border-radius: 60px;
    width: 74%;
    margin: 3% auto 6%;
    overflow: hidden;
}
.reser_container .leftbox img{
    width: 100%;
    object-fit: cover;
    max-width: 46%;
}
.reser_container .leftbox img.reser_mo {
    display: none;
}
.reser_container .leftbox .layer_mask {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 46%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(255,255,255,0) 50%,rgba(255,255,255,1) 100%);
}

@media (max-width:1200px){
    .reser_container .leftbox {
        width: 90%;
    }
    .reser_container .textbox {
        font-size: 13px;
    }
    .reser_container .textbox h2{
        margin: 4% 0 6%;
        
    }
    .reser_container .textbox dl {
        gap: 2%;
        padding-left: 2px;
    }
}

@media (max-width:768px){
    .reserCon01 {
        background: url('/images/reser/m/01_01.jpg') no-repeat center center;
        background-size: cover;
        padding-bottom: 100%;
    }
    .reser_container .leftbox {
        flex-wrap: wrap;
        /* width: 80%; */
        margin: 6% auto 9%;
        border-radius: 40px;
    }
    .reser_container .leftbox .textbox{
        width: 100%;
    }
    .reser_container .textbox {
        padding: 3% 5%;
    }
    .reser_container .textbox h2 {
        font-size: 24px;
        line-height: 40px;
        margin: 2% 0 4%;
    }
    .reser_container .textbox dt {
        font-size: 1.2em;
    }
    .reser_container .textbox dd {
        font-size: 1.3em;
    }
    .reser_container .leftbox img{
        width: 100%;
        object-fit: cover;
        max-width: 100%;
    }
    .reser_container .leftbox img.reser_pc {
        display: none;
    }
    .reser_container .leftbox img.reser_mo {
        display: inline-block;
        min-height: 150px;
    }
    .reser_container .leftbox .layer_mask {
        max-width: 100%;
        width: 100%;
        height: 47vw;
        background: linear-gradient(180deg, rgba(255,255,255,0) 60%,rgba(255,255,255,1) 100%);
    }
}
@media (max-width:400px){
    .reser_container .textbox {
        font-size: 12px;
    }
    .reser_container .textbox dt {
        font-size: 1.2em;
        transform: translateY(0px);
    }
    .reser_container .textbox dd {
        font-size: 1.2em;
    }
}
@media (max-width:359px){
    .reser_container .leftbox .layer_mask {
        /* height: 45vw; */
    }
}
.subCon01 {
    margin: 0 3%;
    display: flex;
    flex-direction: row-reverse;
    box-sizing: border-box;
}
@media(min-width:1280px){
    .subCon01.first_subcon {
        margin: 3% 3%;
    }
}

.subCon01.flexwrap {
    flex-wrap: wrap;
}
.subCon01.bottom {
    display: block;
    padding-left: 1%;
}
.subCon01.bottom .reserbox{
    margin-right: 0;
}
.red {font-weight: bold; color: red; }
.rsv_cal_h .ssn td { vertical-align: middle; }
.rsv_cal_b td.nm_room { vertical-align: middle;}

.reserCon { 
    margin:0 4%; 
    border-bottom:2px solid #707070;
}
.reserCon.cal {/* 달력 있는 박스 전체 */
    padding-bottom: 5%;
}

.reserCon:last-child { margin-bottom:0; border:none;}
.reserCon .flexwrap {margin: 3% 0; position: relative;}

/* 떠나요 달력 */
.reser_cal { margin: 0 auto; width:80%; overflow:hidden; }
.reser_cal * {
    font-family: 'GowunBatang-Regular' !important;
    font-weight: bold !important;
    font-size: 14px !important;
}
.reser_cal .rsv_cal_t {
    margin: 10px 0;
}
.reser_cal .rsv_cal_t p {
    font-size: 1.3em !important;
}
.reser_cal .rsv_cal_h .ssn td {background: #e5e5e5 !important;}
.reser_cal .rsv_cal_h .htr td {background: #f3f3f3 !important;}
.reser_cal .rsv_cal_b td {background: #fff;}
@media(max-width:768px){
    .reser_cal * {
        font-size: 12px !important;
    }
    .reser_cal .rsv_cal_t p {
        font-size: 1.2em !important;
        padding: 0 8px;
    }
}


/*요금안내 박스*/
.reserbtn_box {
    position: absolute;
    bottom: -8%;
    left: 50%; 
    transform: translateX(-50%);
}
.reserbtn_box a.reser_btn {
    position: relative;
    display: block;
    /* margin-top: 30px; */
    width: max-content;
    height: max-content;
    padding: 6px 65px 6px 25px;
    font-size: 22px;
    line-height: 38px;
    color: #fff;
    transition: 0.5s;
    border-radius: 33px;
    background: #E1592E;
    overflow: hidden;
}
.reserbtn_box a.reser_btn em {
    position: relative;
    z-index: 5;
    font-style: normal;
    font-weight: 500;
}
.reserbtn_box a.reser_btn .more_view {  /*이동 화살표 감싸는 박스*/
    position: absolute;
    bottom: 7px;
    right: 11px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid #fff;
    border-radius: 50%;
    transition: all 0.3s;
}
.reserbtn_box a.reser_btn .more_view img {
    width: 70%;
    max-width: 70%;
    margin-left: -4px;
    /* transition: all 0.3s ease; */
}
.reserbtn_box a.reser_btn .circle { /* 겹치는 원 박스 */
    position: absolute;
    bottom: 7px;
    right: 15px;
    display: block;
    width: 34px;
    height: 34px;
    border: 1px solid #fff;
    border-radius: 50%;
    transition: all 0.3s;
} 
.reserbtn_box a.reser_btn:hover .more_view {
    right: 13px;
    background: #fff;
}
.reserbtn_box a.reser_btn:hover .more_view img {
    margin-left: -3px;
    filter: invert(0.5);
}
.reserbtn_box a.reser_btn:hover .circle {
    right: 13px;
}


.reser_cont {
    width: 65%;
}
.reserbox  {margin-right: 3%; padding: 5% 0; border-bottom: 1px solid #dedede;}
.reser02_01 {padding: 16% 0;}
.reser01_03, .reser02_03 {border-bottom: none;}
.reserbox_img {
    display: flex;
    align-items: center;
    padding: 0 3%; 
}
.reserbox_img img { border-radius: 75px;}
/*위쪽 사진 포함한 예약안내 영역*/
.reser_dl {display: flex; align-items: center;}
.reser_dl dt {
    width: 35%; 
    font-size: 30px; line-height: 36px; color: #AF4600; font-weight: bold;
    /* -webkit-text-stroke: 0.5px #000;  */
}
.reser_dl dd { width: 65%; font-size: 17px; line-height: 33px;}
/*사진 미포함된 이용안내 및 환불 영역*/
.subCon01.bottom dt {width: 22.5%;}
.subCon01.bottom dd {width: 77.5%;}



.reser_li { margin:5% 0;}
.reser_li li { font-size:1.2em; line-height:1.8em;}
.reser_info { font-size:1.07em; line-height:1.8em;}

.reserTable { width:100%;border-collapse:collapse; border-top:1px solid #999;}
.reser .reserTable { margin-bottom:5%;}
.roomReser { margin-bottom:10px;}
.reser_name { text-align:center;}
.reser_name dt { font-size:1.35em; line-height:2em; font-weight:700;}
.reser_name dd {}
.reser_name dd p { font-size:1.1em; line-height:1.5em; margin-bottom:0.2em;}
.reserTable th, .reserTable td { padding:15px 2px; font-size:1em; line-height:1.5em; text-align:center; border-bottom:1px solid #999; font-weight:400;}
.reserTable th { background:#f9f9f9}
.reserTable thead { border-bottom:2px solid #333;}
.reserTable td.type { text-align:left; padding-left:10px;}
.reserTable th[scope=rowgroup] { position:relative; background:transparent; z-index:10; }
.reserTable th.seasonBg {background:#f9f9f9;}
.roomLink { position:absolute; width:1000%; height:100%; left:0; top:0; opacity:0;  filter: alpha(opacity=0;); z-index:5;}
.roomLink a { display:block; width:100%; height:100%;}
.reser .reserTable tbody:hover td, .reser .reserTable tbody:hover th {  -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -ms-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; background:#000; color:#fff; cursor:pointer;}

.cancelTable { width:100%; border-collapse:collapse; border-top:1px solid #999; margin-top:1%;}
.cancelTable.mo {display: none;}
.cancelTable th, .cancelTable td { padding:12px 3px; font-size:0.9em; line-height:1.5em; text-align:center; border-bottom:1px solid #999; font-weight:400; vertical-align: middle; word-break: keep-all;}
.cancelTable th { background:#E6C5AE54;}
.cancelTable .base th, .cancelTable .base td { color:#FF7800;}
.cancelTable thead { border-bottom:2px solid #333;}

.reser_frame {position:relative; z-index:3; }
.reser_frame iframe { display:block; width:94%; max-width:1420px; height:1200px; border:0; overflow-y:auto; padding:3% 0; margin:3% auto 6%; padding:3%; border:1px solid #eee; -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1); -moz-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1); box-shadow:2px 2px 3px rgba(0, 0, 0, 0.1);}

.active .reser01_0301 {opacity:1; filter: alpha(opacity=100;); transition: all 0.5s ease 1.3s;}

.list01 li {
    word-break: keep-all;
}
.list01 .indent {
    margin-left: 10px;
}
.list01 li::before {
    content: "ㆍ";
    display: inline-block;
    width: 1em;
    text-align: center;
    font-style: normal;
    margin-left: -1em;
}
.list01 li.dash::before {
    content: "-";
}
.list01 li.star::before {
    content: "*";
}
.list01 li.link_blog {
    word-break : break-all;
    transition: 0.5s;
}
.list01 li.link_blog:hover{
    color: #007b16;
    font-weight: bold;
    transform: translateX(10px);
}
@media  (max-width: 1280px){
    .reserbtn_box {
        /* bottom: 0px;
        right: 13px; */
        bottom: -6%;
    }
    .subCon01 {
        margin: 0 3%;
        padding-left: 1%;
        display: block;
    }
    .subCon01.bottom dt {width: 34.5%;}
    .reserCon { 
        margin:0 4% 5%;
    }
    .reserbox {
        margin-right: 0;
        padding: 3% 0;
        border-bottom: 1px solid #dedede;
    }
    .reserbox_img {
        text-align: center;
        padding: 0;
    }
    .reser_cont {
        width: 100%;
    }
    .reser_name { font-size:0.95em; margin-bottom:5px;}
    .reser_name strong { font-size:1.15em;}
    .reser_cal {width: 100%;}
    .reser_dl dt, .reser_dl dd{
        word-break: keep-all;
    }

    .room .reserTable { width:100%; margin-bottom:-1px;}
    .reser .reserTable thead { border-bottom:2px solid #555;}
    .reserTable th, .reserTable td, .cancelTable th, .cancelTable td { 
        width: 20%; padding:10px 50px; 
        font-size:15px; letter-spacing:-0.05em; line-height:1.5em;}
    .cancelTable.people th, .cancelTable.people td {
        padding:10px 20px;
    }
    .cancelTable.pc {display: none;}
    .cancelTable.mo {
        display: block;
        margin: 0 auto;
    }
   
}
@media (max-width:1024px) {
    .subCon01.bottom dt {
        width: 100%;
    }
    .reser_dl {
        display: block;
    }
    .reser_dl dt, .reser_dl dd, .subCon01.bottom dd {
        width: 100%;
    }
    .reser_dl dd {
        margin: 15px 0;
    }
    .reserve_bg {
        background-attachment: fixed;
        height: auto;
    }
    .reserve_bg p {
        padding: 130px 0 96px 0;
    }
}
@media (max-width:768px){
    
    .reserCon {
        margin: 0 2% 5%;
        border-bottom: 2px solid #707070;
    }
    .reserCon.cal {
        padding-bottom: 14%;
    }
    .reser_dl dt {
        font-size: 20px;
    }
    .reser_dl dd {
        font-size: 13px;
        line-height: 22px;
    }
    .reserbox_img {
        padding: 0;
    }
    .reserbox_img img {
        width: 100%;
        border-radius: 40px;
    }
    .reserbtn_box {
        /* position: static; */
        margin-bottom: 10px;
        bottom: -8%;
    }
    .reserbtn_box a.reser_btn {
        margin: 30px auto 0;
        padding: 6px 58px 6px 25px;
        font-size: 19px;
    }
    .reserbtn_box a.reser_btn .more_view {
        bottom: 9px;
        right: 11px;
        width: 30px;
        height: 30px;
        background: #fff;
    }
    .reserbtn_box a.reser_btn .more_view img {
        filter: invert(0.5);
        margin-left: 0px;
    }
    .reserbtn_box a.reser_btn .circle {
        display: none;
    }
}
@media  (max-width: 560px){
    .reserbtn_box {
        bottom: -8%;
    }  
    .reserCon.cal {
        padding-bottom: 25%;
    }
    .cancelTable th, .cancelTable td {
        padding: 10px 33px;
        font-size: 13px;
    }

}
/* 08.03 table 추가 */
#ptable {width:100%; border-bottom: #d9d9d9 1px solid; border-right: #d9d9d9 1px solid; margin-left: auto; margin-right: auto;}
#ptable tr {min-height: 40px;}
#ptable th {text-align: center; background: #ededed; color: #323232; padding: 1vh 0; border-top: #d9d9d9 1px solid; border-left: #d9d9d9 1px solid;}
#ptable td {font-size: 13px; line-height: 120%; text-align: center; padding: 12px 0 ; border-top: #d9d9d9 1px solid; border-left: #d9d9d9 1px solid;}

/*실시간 예약 바로가기 영역 */
.real_reserve{ 
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    min-height: 640px;
    margin: 3% auto 0;
    background-image: url("/images/reser/reser_banner.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    color: #fff;
}

.real_reserve .text {
    text-align: center;
} 
.real_reserve h2 {
    margin-bottom: 40px;
    font-size: 69px;
    line-height: 80px;
    color: #fff;
    text-align: center;
    font-weight: 400;
    font-family: 'gowun-dodum';
    -webkit-text-fill-color: transparent;
    color: transparent;
    -webkit-text-stroke: 1px #FFF;
    background: linear-gradient(90deg, #AF4600 0%, #AF4600 100%);
    background-size: 0% 100%;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
} 
.real_reserve .reserbtn_box {
    position: absolute;
    bottom: 35%;
    left: auto;
    right: 50%; 
    transform: translate(50%, 50%);
}
@media (max-width:768px){
    .real_reserve{ 
        background-image: url(/images/reser/m/reser_banner.jpg);
        background-position: center center;
        background-size: 100% 90%;
        max-height: 450px;
        min-height: 400px;
    }
    .real_reserve .text {
        
    } 
    .real_reserve h2 {
        margin-bottom: 30px;
        font-size: 34px;
        line-height: 56px;
        font-weight: normal;
    } 
}